Sign up ×

If I compute, say, 1/3//N, Mathematica displays


as the result. When I copy that output to use elsewhere, the paste produces


What is the meaning and function of the backtick ?

I realize this must be quite elementary. I stand ready to be educated. :-)

share|improve this question

2 Answers 2

up vote 21 down vote accepted

The backtick is a short-hand to mark the precision of your output. If it is not followed by any number, it denotes machine precision. You can denote arbitrary precision by including a number, as for example, 0.3`20.

By default, these are not displayed in StandardForm, which is why you see them only when copying, at which point it gets converted to InputForm. You can show them with NumberMarks -> True. For example:

Sqrt[2] // N
(* 1.4142135623730951 *)

InputForm[Sqrt[2] // N, NumberMarks -> True]
(* 1.4142135623730951` *)
share|improve this answer
Thanks, this is very clear! – Joseph O'Rourke Mar 14 '12 at 1:10
InputForm? You mean StandardForm, isn't it? – Sjoerd C. de Vries Apr 28 '14 at 17:56
@SjoerdC.deVries Yes, StandardForm for the first half of the sentence. However, when editing the cell/copy pasting, it gets converted to InputForm (with NumberMarks -> True). – R. M. Apr 28 '14 at 18:36

The default value of


means that ` should by default be used in arbitrary-precision but not machine-precision numbers. Arbitrary-precision numbers can contain an arbitrary number of digits e.g. :

Sqrt[3`21] == 1.73205080756887729353

Machine numbers contain the same number of digits and maintain no information on their precision, e.g. :

{Sqrt[3`10] == Sqrt[3] // N, Sqrt[3`10]}
{True, 1.7320508076}

One can force machine numbers to be shown with number marks by :

Block[{$NumberMarks = True}, ToString[N[1/3], InputForm]]

Precision[x] yields the effective number of digits of precision in the number x.

Precision /@ {1/3, 1/3 // N}

enter image description here

Precision[1/3 // N] // N

You can count the number of digits before the backtick, namely 16.
The MachinePrecission is a real number because on the hardware level it is represented in the binary form. This needs 53 bits to represent almost 16 digits :

N@{MachinePrecision*Log[2, 10], MachinePrecision}
{53., 15.9546}  
share|improve this answer
Thank you! Strange that one needs to round MachinePrecision to see its value. – Joseph O'Rourke Mar 14 '12 at 1:10
@Joseph MachinePrecision is a symbolic constant like Pi and E. You can see its value using N[MachinePresicion] as well. This is what Artes did with Precision[1/3 // N] // N . Rounding gives the approximate (integer) number of digits of precision it corresponds to. – Szabolcs Mar 14 '12 at 5:55
@Szaboics: Thanks, that makes sense! – Joseph O'Rourke Mar 15 '12 at 0:42
This is indeed a very educational answer, Artes---Thanks! – Joseph O'Rourke Mar 15 '12 at 0:45
@Artes Oops. I had typed <dollar_sign>MachinePrecision. That dollar signa, apparently, gets munged. I might have caught it in a response. But not a comment, as they don't show what the result will look like. – Daniel Lichtblau Mar 19 '12 at 1:21

Your Answer


