In this page, the relationship between the standard rule
for addition and the alternate rule for multiplication will be presented
in mathematical detail. The derivation involves only arithmetic with
logarithms and, to a lesser extent, modulo arithmetic - thus, it should
be accessible to a wide audience.
For addition and subtraction, uncertainty is conserved.
Consider the simple problem: x = y + z or x = y - zFor multiplication and division, precision (percent uncertainty) is conserved.The maximum error in the result is given by: Uncertainty(x) = Uncertainty(y) + Uncertainty(z)
The uncertainty can be related to the decimal place of the right-most significant digit (Px): Uncertainty(x) = 0.5 * 10Px
For example: P(3.01) = -2, P(48) = 0, or P(620) = 1
Consider the simple problem: x = y * z or x = y / zThe maximum error in the result is given by: Precision(x) = Precision(y) + Precision(z)
The precision can be related to the number of significant digits (Nx): Precision(x) = Cx * 10-Nx
Cx is a constant that ranges from approximately 0.5 to exactly 5 depending on the value of x. For example: Cx(10) = 5, Cx(5.0) = 1.0, or Cx(90.0) = 0.556
When treated as a multiplication problem, n is an "exact" number and therefore has an infinite number of known significant figures. The number of significant figures in the quantity y (Ny) must, therefor, be less than the number of significant figures associated with the quantity n. Thus the alternate rounding for multiplication and division predicts that Ny + 1 is the minimum number of significant figures needed to preserve precision in the result x. For comparison, the standard rounding rule for multiplication and division predicts that Ny is the appropriate number of significant digits in the result x.
Step 1) Consider the problem x = n * y as an addition problem.
In addition, uncertainty is preserved. This fact gives the following relationship:
(Eq 1) Uncertainty(x) = n * Uncertainty(y)
Subtituting the relationship Uncertainty(x)=0.5 * 10Px into (Eq 1) and simplifying yields:
(Eq 2) 10Px = 10Py + log(n)
Clearly (Eq 2) implies the following:
(Eq 3) Px = Py +
log(n)
Step 2) Identify a relationship that transforms Px and Py to Nx and Ny
The rounding rule for multiplication involves the number of significant figures, not the place of the right-most significant figure. We must, therefore, recast (Eq 3) in terms of Nx and Ny if we are to proceed. The following key relationship was discovered by Lee, Mulliss, & Chiu which provides the needed transformation:
(Eq 4) Px = fix( log(x) ) - Nx + 1 where fix( ) means "take the integer portion".
Substitution of (Eq 4) into (Eq 3) yields the following after some minor re-arangement:
(Eq 5) Nx = Ny +
{ [ fix( log(x) ) - fix( log(y) ) ] - log(n) }
Step 3) Evaluating the bracketed term.
For the problem we are considering ( x = n * y ), the quantity { [ log(x) - log(y) ] - log(n) } equals zero. One may be tempted to conclude that (Eq 5) implies that Nx = Ny. This conclusion is not always true due to the complications introduced by modulo arithmetic (i.e. the "fix" functions).
Consider the case where 10m <= n < 10m+1 , where m = 0, 1, 2, or any positive integer.
Extensive numerical testing (by Mulliss) has shown that the value [ fix( log(x) ) - fix( log(y) ) ] can only be m or m + 1.
(Eq 6) [ fix( log(x) ) - fix( log(y) ) ] = m or m + 1 for 10m <= n < 10m+1
The results described in (Eq 6) can be combined with (Eq 5) to place upper and lower limits on the value of Nx. This substitution yields:
(Eq 7) Nx >= Ny +
m - log(10m+1 - 1) where (10m+1
- 1) is the largest integer allowed for n
Nx <= Ny + (m + 1) - log(10m)
Because log(10m+1) > log(10m+1 - 1), we can further simplify (Eq 7) to the following:
(Eq 8) Nx > Ny +
m - log(10m+1)
Nx <= Ny + (m + 1) - log(10m)
Finally, we can reduce (Eq 8) once more to yield:
(Eq 9) Ny - 1 < Nx <= Ny + 1
Note: Because m cancels out, this result is valid no matter what the value of n is.
End of derivation.
[2] "On
the Standard Rounding Rule for Multiplication and Division"
by Christopher Mulliss & Wei Lee, Chinese Journal of Physics, 1998,
36(3),
479-487.
Recall that...
For multiplication and division, precision (percent uncertainty) is conserved.
Consider the simple problem: x = y * z or x = y / zThe maximum error in the result is given by: Precision(x) = Precision(y) + Precision(z)
The precision can be related to the number of significant digits (Nx): Precision(x) = Cx * 10-Nx
Cx is a constant that ranges from approximately 0.5 to exactly 5 depending on the value of x. For example: Cx(10) = 5, Cx(5.0) = 1.0, or Cx(90.0) = 0.556
By definition,
(Eq A1) Precision(x) = Uncertainty(x) / x
From the standard rule for addition and subtraction,
(Eq A2) Uncertainty(x) = 0.5 * 10Px
Substituting (Eq A2) into (Eq A1) yields:
(Eq A3) Precision(x) = ( 0.5 / x ) * 10Px
Substituting the key relationship (Eq 4) into (Eq A3) yields:
(Eq A4) Precision(x) = { ( 5 / x ) * 10fix( log(x) ) } * 10-Nx
Comparing (Eq A4) to relationship Precision(x) = Cx * 10-Nx, one immediately obtains:
(Eq A5) Cx = { ( 5 / x ) * 10fix( log(x) ) }
One can easily show that the functional form described in (Eq A5) reproduces the observed behavior of Cx.
All of the analyses of rounding rules, thus far, have assumed an uncertainty of plus or minus 1/2 in the right-most decimal place. This assumption can be easily generalized to the case where the uncertainty in the last decimal place is given by U. With this more general case, (Eq A2) and (Eq A4) become:
(Eq A6) Uncertainty(x)
= U * 10Px
Precision(x) = { ( 10*U / x ) * 10fix( log(x) ) } * 10-Nx
If one substitutes the above general expressions into the conservation equations (conservation of precision for multiplication & division and conservation of uncertainty for addition & subtraction) then the arbitrary uncertainty (U) cancels out. Thus all of the conclusions presented on these pages hold true regardless of what uncertainty is assumed to be present in the right-most significant figure.