What is the meaning after a number with a ` symbol?
Clash Royale CLAN TAG#URR8PPP
up vote
3
down vote
favorite
Sometimes, when copy pasting some output obtained in Mathematica I obtained a weird comma after a number and then more numbers. Imagine, and output for a computation is
0.4244131815783875620503567023 m
where m is a variable. Then I copy paste this output and I obtain
0.42441318157838756205035670232670496542`27.98876486962581 m
Playing with expressions like this I think the 27 in 27.98876486962581 just means that the number before has 27 precision. But What does the 98876486962581 mean? What is the meaning of this seemingly weird number after the upward comma?
output
 |Â
show 1 more comment
up vote
3
down vote
favorite
Sometimes, when copy pasting some output obtained in Mathematica I obtained a weird comma after a number and then more numbers. Imagine, and output for a computation is
0.4244131815783875620503567023 m
where m is a variable. Then I copy paste this output and I obtain
0.42441318157838756205035670232670496542`27.98876486962581 m
Playing with expressions like this I think the 27 in 27.98876486962581 just means that the number before has 27 precision. But What does the 98876486962581 mean? What is the meaning of this seemingly weird number after the upward comma?
output
This means that the number0.42441318157838756205035670232670496542`27.98876486962581
has27.98876486962581
digits of precision. If there is no number after the backtick like in"0.4244131815783876`"
, then it means that the number is in machine precision.
– Henrik Schumacher
2 hours ago
1
Have a look at$NumberMarks
.
– J. M. is somewhat okay.♦
2 hours ago
@HenrikSchumacher what is the meaning of 27.98876486962581 digits of precision ?! they surely this should be an integer number (unless you have analytically extended the function in the complex digits of precision plane ( this is a joke))
– PhoenixPerson
2 hours ago
Well, that is one of the mysteries of the arbitrary floating point precision capabilities in Mathematica ;) Anyways, it has to do with the fact that floating point numbers are not stored in the "conventional way as lists of digits (see also fixed-point arithmetic) but as mantissa and exponent...
– Henrik Schumacher
2 hours ago
1
"Note that to achieve full consistency in the treatment of numbers, precision and accuracy often have values that do not correspond to integer numbers of digits."
– J. M. is somewhat okay.♦
2 hours ago
 |Â
show 1 more comment
up vote
3
down vote
favorite
up vote
3
down vote
favorite
Sometimes, when copy pasting some output obtained in Mathematica I obtained a weird comma after a number and then more numbers. Imagine, and output for a computation is
0.4244131815783875620503567023 m
where m is a variable. Then I copy paste this output and I obtain
0.42441318157838756205035670232670496542`27.98876486962581 m
Playing with expressions like this I think the 27 in 27.98876486962581 just means that the number before has 27 precision. But What does the 98876486962581 mean? What is the meaning of this seemingly weird number after the upward comma?
output
Sometimes, when copy pasting some output obtained in Mathematica I obtained a weird comma after a number and then more numbers. Imagine, and output for a computation is
0.4244131815783875620503567023 m
where m is a variable. Then I copy paste this output and I obtain
0.42441318157838756205035670232670496542`27.98876486962581 m
Playing with expressions like this I think the 27 in 27.98876486962581 just means that the number before has 27 precision. But What does the 98876486962581 mean? What is the meaning of this seemingly weird number after the upward comma?
output
output
asked 2 hours ago


PhoenixPerson
23718
23718
This means that the number0.42441318157838756205035670232670496542`27.98876486962581
has27.98876486962581
digits of precision. If there is no number after the backtick like in"0.4244131815783876`"
, then it means that the number is in machine precision.
– Henrik Schumacher
2 hours ago
1
Have a look at$NumberMarks
.
– J. M. is somewhat okay.♦
2 hours ago
@HenrikSchumacher what is the meaning of 27.98876486962581 digits of precision ?! they surely this should be an integer number (unless you have analytically extended the function in the complex digits of precision plane ( this is a joke))
– PhoenixPerson
2 hours ago
Well, that is one of the mysteries of the arbitrary floating point precision capabilities in Mathematica ;) Anyways, it has to do with the fact that floating point numbers are not stored in the "conventional way as lists of digits (see also fixed-point arithmetic) but as mantissa and exponent...
– Henrik Schumacher
2 hours ago
1
"Note that to achieve full consistency in the treatment of numbers, precision and accuracy often have values that do not correspond to integer numbers of digits."
– J. M. is somewhat okay.♦
2 hours ago
 |Â
show 1 more comment
This means that the number0.42441318157838756205035670232670496542`27.98876486962581
has27.98876486962581
digits of precision. If there is no number after the backtick like in"0.4244131815783876`"
, then it means that the number is in machine precision.
– Henrik Schumacher
2 hours ago
1
Have a look at$NumberMarks
.
– J. M. is somewhat okay.♦
2 hours ago
@HenrikSchumacher what is the meaning of 27.98876486962581 digits of precision ?! they surely this should be an integer number (unless you have analytically extended the function in the complex digits of precision plane ( this is a joke))
– PhoenixPerson
2 hours ago
Well, that is one of the mysteries of the arbitrary floating point precision capabilities in Mathematica ;) Anyways, it has to do with the fact that floating point numbers are not stored in the "conventional way as lists of digits (see also fixed-point arithmetic) but as mantissa and exponent...
– Henrik Schumacher
2 hours ago
1
"Note that to achieve full consistency in the treatment of numbers, precision and accuracy often have values that do not correspond to integer numbers of digits."
– J. M. is somewhat okay.♦
2 hours ago
This means that the number
0.42441318157838756205035670232670496542`27.98876486962581
has 27.98876486962581
digits of precision. If there is no number after the backtick like in "0.4244131815783876`"
, then it means that the number is in machine precision.– Henrik Schumacher
2 hours ago
This means that the number
0.42441318157838756205035670232670496542`27.98876486962581
has 27.98876486962581
digits of precision. If there is no number after the backtick like in "0.4244131815783876`"
, then it means that the number is in machine precision.– Henrik Schumacher
2 hours ago
1
1
Have a look at
$NumberMarks
.– J. M. is somewhat okay.♦
2 hours ago
Have a look at
$NumberMarks
.– J. M. is somewhat okay.♦
2 hours ago
@HenrikSchumacher what is the meaning of 27.98876486962581 digits of precision ?! they surely this should be an integer number (unless you have analytically extended the function in the complex digits of precision plane ( this is a joke))
– PhoenixPerson
2 hours ago
@HenrikSchumacher what is the meaning of 27.98876486962581 digits of precision ?! they surely this should be an integer number (unless you have analytically extended the function in the complex digits of precision plane ( this is a joke))
– PhoenixPerson
2 hours ago
Well, that is one of the mysteries of the arbitrary floating point precision capabilities in Mathematica ;) Anyways, it has to do with the fact that floating point numbers are not stored in the "conventional way as lists of digits (see also fixed-point arithmetic) but as mantissa and exponent...
– Henrik Schumacher
2 hours ago
Well, that is one of the mysteries of the arbitrary floating point precision capabilities in Mathematica ;) Anyways, it has to do with the fact that floating point numbers are not stored in the "conventional way as lists of digits (see also fixed-point arithmetic) but as mantissa and exponent...
– Henrik Schumacher
2 hours ago
1
1
"Note that to achieve full consistency in the treatment of numbers, precision and accuracy often have values that do not correspond to integer numbers of digits."
– J. M. is somewhat okay.♦
2 hours ago
"Note that to achieve full consistency in the treatment of numbers, precision and accuracy often have values that do not correspond to integer numbers of digits."
– J. M. is somewhat okay.♦
2 hours ago
 |Â
show 1 more comment
1 Answer
1
active
oldest
votes
up vote
4
down vote
This means that the number
0.42441318157838756205035670232670496542`27.98876486962581
has 27.98876486962581
digits of precision. If there is no number after the backtick like in
0.4244131815783876`
then it means that the number is in machine precision.
That non-integer numbers of "digits" may occur has to do with the way how floating point numbers are stored: In contrast to fixed point numbers which are stored as mere lists of binary digits, floating point numbers are stored by mantissa and exponent.
Moreover, Mathematica's arbitrary precision arithmetic tries to track the uncertainty of a number by actually treating finite precision numbers as intervals. The number of digits of a "number" $x pm delta/2$ is then computed as the (negative) logarithm of the width of this interval relative to its magnitude. More precisely, as can be read in the documentation cited by J.M.:
$$mathrmPrecision[x] = - log_10(delta / |x|).$$
If I am not mistaken, computations in arbitrary precision have to use interval arithmetic or at least have to provide upper bounds for the radius of uncertainty in order to keep track of the interval boundaries. This is a feature that computations in machine precision actually do not have.
Often, one says that a machine precision number "has about 16 significant digits" or it has "16 digits of precision". But "counting the digits" of a number does not tell you how many of these digits you may trust. Mathematica uses a much stronger notion of precision: If the arbitrary precision number x
is a result of a computation then its Precision
provides an upper bound of its relative error:
$$|x - x_mathrmtrue| leq |x| , 10^-mathrmPrecision[x].$$
A priorily, a result in machine precision can have arbitrarily high relative error, hence arbitrarily low precision in this stronger sense of precision. This is why Precision
returns MachinePrecision
of machine precision numbers: It just cannot tell how exact they are.
add a comment |Â
1 Answer
1
active
oldest
votes
1 Answer
1
active
oldest
votes
active
oldest
votes
active
oldest
votes
up vote
4
down vote
This means that the number
0.42441318157838756205035670232670496542`27.98876486962581
has 27.98876486962581
digits of precision. If there is no number after the backtick like in
0.4244131815783876`
then it means that the number is in machine precision.
That non-integer numbers of "digits" may occur has to do with the way how floating point numbers are stored: In contrast to fixed point numbers which are stored as mere lists of binary digits, floating point numbers are stored by mantissa and exponent.
Moreover, Mathematica's arbitrary precision arithmetic tries to track the uncertainty of a number by actually treating finite precision numbers as intervals. The number of digits of a "number" $x pm delta/2$ is then computed as the (negative) logarithm of the width of this interval relative to its magnitude. More precisely, as can be read in the documentation cited by J.M.:
$$mathrmPrecision[x] = - log_10(delta / |x|).$$
If I am not mistaken, computations in arbitrary precision have to use interval arithmetic or at least have to provide upper bounds for the radius of uncertainty in order to keep track of the interval boundaries. This is a feature that computations in machine precision actually do not have.
Often, one says that a machine precision number "has about 16 significant digits" or it has "16 digits of precision". But "counting the digits" of a number does not tell you how many of these digits you may trust. Mathematica uses a much stronger notion of precision: If the arbitrary precision number x
is a result of a computation then its Precision
provides an upper bound of its relative error:
$$|x - x_mathrmtrue| leq |x| , 10^-mathrmPrecision[x].$$
A priorily, a result in machine precision can have arbitrarily high relative error, hence arbitrarily low precision in this stronger sense of precision. This is why Precision
returns MachinePrecision
of machine precision numbers: It just cannot tell how exact they are.
add a comment |Â
up vote
4
down vote
This means that the number
0.42441318157838756205035670232670496542`27.98876486962581
has 27.98876486962581
digits of precision. If there is no number after the backtick like in
0.4244131815783876`
then it means that the number is in machine precision.
That non-integer numbers of "digits" may occur has to do with the way how floating point numbers are stored: In contrast to fixed point numbers which are stored as mere lists of binary digits, floating point numbers are stored by mantissa and exponent.
Moreover, Mathematica's arbitrary precision arithmetic tries to track the uncertainty of a number by actually treating finite precision numbers as intervals. The number of digits of a "number" $x pm delta/2$ is then computed as the (negative) logarithm of the width of this interval relative to its magnitude. More precisely, as can be read in the documentation cited by J.M.:
$$mathrmPrecision[x] = - log_10(delta / |x|).$$
If I am not mistaken, computations in arbitrary precision have to use interval arithmetic or at least have to provide upper bounds for the radius of uncertainty in order to keep track of the interval boundaries. This is a feature that computations in machine precision actually do not have.
Often, one says that a machine precision number "has about 16 significant digits" or it has "16 digits of precision". But "counting the digits" of a number does not tell you how many of these digits you may trust. Mathematica uses a much stronger notion of precision: If the arbitrary precision number x
is a result of a computation then its Precision
provides an upper bound of its relative error:
$$|x - x_mathrmtrue| leq |x| , 10^-mathrmPrecision[x].$$
A priorily, a result in machine precision can have arbitrarily high relative error, hence arbitrarily low precision in this stronger sense of precision. This is why Precision
returns MachinePrecision
of machine precision numbers: It just cannot tell how exact they are.
add a comment |Â
up vote
4
down vote
up vote
4
down vote
This means that the number
0.42441318157838756205035670232670496542`27.98876486962581
has 27.98876486962581
digits of precision. If there is no number after the backtick like in
0.4244131815783876`
then it means that the number is in machine precision.
That non-integer numbers of "digits" may occur has to do with the way how floating point numbers are stored: In contrast to fixed point numbers which are stored as mere lists of binary digits, floating point numbers are stored by mantissa and exponent.
Moreover, Mathematica's arbitrary precision arithmetic tries to track the uncertainty of a number by actually treating finite precision numbers as intervals. The number of digits of a "number" $x pm delta/2$ is then computed as the (negative) logarithm of the width of this interval relative to its magnitude. More precisely, as can be read in the documentation cited by J.M.:
$$mathrmPrecision[x] = - log_10(delta / |x|).$$
If I am not mistaken, computations in arbitrary precision have to use interval arithmetic or at least have to provide upper bounds for the radius of uncertainty in order to keep track of the interval boundaries. This is a feature that computations in machine precision actually do not have.
Often, one says that a machine precision number "has about 16 significant digits" or it has "16 digits of precision". But "counting the digits" of a number does not tell you how many of these digits you may trust. Mathematica uses a much stronger notion of precision: If the arbitrary precision number x
is a result of a computation then its Precision
provides an upper bound of its relative error:
$$|x - x_mathrmtrue| leq |x| , 10^-mathrmPrecision[x].$$
A priorily, a result in machine precision can have arbitrarily high relative error, hence arbitrarily low precision in this stronger sense of precision. This is why Precision
returns MachinePrecision
of machine precision numbers: It just cannot tell how exact they are.
This means that the number
0.42441318157838756205035670232670496542`27.98876486962581
has 27.98876486962581
digits of precision. If there is no number after the backtick like in
0.4244131815783876`
then it means that the number is in machine precision.
That non-integer numbers of "digits" may occur has to do with the way how floating point numbers are stored: In contrast to fixed point numbers which are stored as mere lists of binary digits, floating point numbers are stored by mantissa and exponent.
Moreover, Mathematica's arbitrary precision arithmetic tries to track the uncertainty of a number by actually treating finite precision numbers as intervals. The number of digits of a "number" $x pm delta/2$ is then computed as the (negative) logarithm of the width of this interval relative to its magnitude. More precisely, as can be read in the documentation cited by J.M.:
$$mathrmPrecision[x] = - log_10(delta / |x|).$$
If I am not mistaken, computations in arbitrary precision have to use interval arithmetic or at least have to provide upper bounds for the radius of uncertainty in order to keep track of the interval boundaries. This is a feature that computations in machine precision actually do not have.
Often, one says that a machine precision number "has about 16 significant digits" or it has "16 digits of precision". But "counting the digits" of a number does not tell you how many of these digits you may trust. Mathematica uses a much stronger notion of precision: If the arbitrary precision number x
is a result of a computation then its Precision
provides an upper bound of its relative error:
$$|x - x_mathrmtrue| leq |x| , 10^-mathrmPrecision[x].$$
A priorily, a result in machine precision can have arbitrarily high relative error, hence arbitrarily low precision in this stronger sense of precision. This is why Precision
returns MachinePrecision
of machine precision numbers: It just cannot tell how exact they are.
edited 1 hour ago
answered 2 hours ago


Henrik Schumacher
39.6k254118
39.6k254118
add a comment |Â
add a comment |Â
Sign up or log in
StackExchange.ready(function ()
StackExchange.helpers.onClickDraftSave('#login-link');
);
Sign up using Google
Sign up using Facebook
Sign up using Email and Password
Post as a guest
StackExchange.ready(
function ()
StackExchange.openid.initPostLogin('.new-post-login', 'https%3a%2f%2fmathematica.stackexchange.com%2fquestions%2f182696%2fwhat-is-the-meaning-after-a-number-with-a-symbol%23new-answer', 'question_page');
);
Post as a guest
Sign up or log in
StackExchange.ready(function ()
StackExchange.helpers.onClickDraftSave('#login-link');
);
Sign up using Google
Sign up using Facebook
Sign up using Email and Password
Post as a guest
Sign up or log in
StackExchange.ready(function ()
StackExchange.helpers.onClickDraftSave('#login-link');
);
Sign up using Google
Sign up using Facebook
Sign up using Email and Password
Post as a guest
Sign up or log in
StackExchange.ready(function ()
StackExchange.helpers.onClickDraftSave('#login-link');
);
Sign up using Google
Sign up using Facebook
Sign up using Email and Password
Sign up using Google
Sign up using Facebook
Sign up using Email and Password
This means that the number
0.42441318157838756205035670232670496542`27.98876486962581
has27.98876486962581
digits of precision. If there is no number after the backtick like in"0.4244131815783876`"
, then it means that the number is in machine precision.– Henrik Schumacher
2 hours ago
1
Have a look at
$NumberMarks
.– J. M. is somewhat okay.♦
2 hours ago
@HenrikSchumacher what is the meaning of 27.98876486962581 digits of precision ?! they surely this should be an integer number (unless you have analytically extended the function in the complex digits of precision plane ( this is a joke))
– PhoenixPerson
2 hours ago
Well, that is one of the mysteries of the arbitrary floating point precision capabilities in Mathematica ;) Anyways, it has to do with the fact that floating point numbers are not stored in the "conventional way as lists of digits (see also fixed-point arithmetic) but as mantissa and exponent...
– Henrik Schumacher
2 hours ago
1
"Note that to achieve full consistency in the treatment of numbers, precision and accuracy often have values that do not correspond to integer numbers of digits."
– J. M. is somewhat okay.♦
2 hours ago