Precision
Precision[x]
gives the effective number of digits of precision in the number x.
Details
- Precision[x] gives a measure of the relative uncertainty in the value of x.
- With absolute uncertainty dx, Precision[x] is -Log[10,dx/x].
- For exact numbers such as integers, Precision[x] is Infinity.
- Precision[x] does not normally yield an integer result.
- For any approximate number x, Precision[x] is equal to RealExponent[x]+Accuracy[x].
- For machine‐precision numbers, Precision[x] yields MachinePrecision.
- Numbers entered in the form digits`p are taken to have precision p.
- Numbers such as 0``a whose overall scale cannot be determined are treated as having zero precision.
- Numbers with zero precision are output in StandardForm as 0.10-a, where a is their accuracy.
- If x is not a number, Precision[x] gives the minimum value of Precision for all the numbers that appear in x. MachinePrecision is considered smaller than any explicit precision.
Examples
open allclose allScope (2)
The precision of z+1 is the same as the accuracy of z:
N attempts to get a result correct to the given precision:
This cannot always be achieved:
This is because relative error cannot be measured at zero and :
Generalizations & Extensions (1)
Properties & Relations (3)
All machine numbers have the same precision, MachinePrecision:
This is 53 bits or about 16 digits:
Real and imaginary parts of complex numbers can have different precisions:
Arithmetic operations will typically mix them:
But note that real and imaginary parts may still have different precisions:
The precision of the whole number lies in between these two precisions:
For approximate numbers, Precision[x]==RealExponent[x]+Accuracy[x]:
Possible Issues (4)
MachinePrecision is always considered effectively smaller than any explicit precision:
Numbers with sufficiently low precision are displayed with zero mantissa:
Since Precision is based on relative error, it is not measurable for zero:
You can measure the absolute size of the error with Accuracy:
If you expect the result to be near zero, you can specify accuracy as a goal for N:
Subnormal machine numbers violate the relationship Precision[x]==RealExponent[x]+Accuracy[x]:
Instead, all subnormal numbers have the same uncertainty as $MinMachineNumber:
Text
Wolfram Research (1988), Precision, Wolfram Language function, https://reference.wolfram.com/language/ref/Precision.html (updated 2003).
CMS
Wolfram Language. 1988. "Precision." Wolfram Language & System Documentation Center. Wolfram Research. Last Modified 2003. https://reference.wolfram.com/language/ref/Precision.html.
APA
Wolfram Language. (1988). Precision. Wolfram Language & System Documentation Center. Retrieved from https://reference.wolfram.com/language/ref/Precision.html