[Tex/LaTex] avoid space after commas used as thousands separator in math mode

math-modepunctuationspacing

In math mode, LaTeX inserts a small space after a comma. This looks nice in $a,b,c$, for example. But I don't like the way it looks when using a comma as a thousands separator, e.g., $x = 100,000$. (There is no space after the comma when writing 100,000 outside of math mode.) Is there an easy way to avoid this? Some symbol I should be using instead of comma?

Best Answer

There are different classes of mathematical symbols in LaTeX, as discussed in this question: What is the difference between \mathbin vs. \mathrel?

Depending on the class of a math symbol, surrounding space will be modified in predictable, relevant ways. The comma is of the type \mathpunct (mathematic punctuation) which, when surrounded by math atoms, inserts a small amount of space after itself, in what would be a typical use of punctuation grammar.

The way to override the natural behavior of a symbol class is to isolate it from surrounding math, typically done by embracing the symbol in its own group, as in {,}. In this way, the comma is made unaware of the existence of surrounding math and therefore does not insert the customary space associated with its use.

Thus, to the specific question of the OP, the use of $x =100{,}000$ will insert the comma without the customary space associated with mathematical punctuation.

Just for completeness, one should note that one can do the opposite, as well; that is, inserting customary space even in the absence of surrounding math. One does that by inserting empty math groups adjacent to the symbol. In the case of a comma, ,{} is sufficient to trigger the insertion of the space, even if there are no surrounding (non-empty) math atoms.