[Tex/LaTex] How to get less spacing in math mode

math-modespacing

LaTeX commands like this:

Here again, four different simulations are run on networks of size 
$C^{G} = 25 \times\ 25 = 625$, $C^{G} = 50 \times\ 50 = 2500$, $C^{G}
= 250 \times\ 250 = 62500$, and $C^{G} = 500 \times\ 500 = 250000$...

When compiled generate the following:

Spacing in Math Mode

The spacing in math mode really irritates me. There's too much white space around the equal sign, and the multiplication sign has more right padding than left padding. Is there any way to reduce this spacing?

Best Answer

Spacing around operators and relations in math mode are governed by specific skip lengths: \thinmuskip (default is 3mu), \medmuskip (default is 4mu plus 2mu minus 4mu) and \thickmuskip (default is 5mu plus 5mu). All are given in math units.

Here is an illustration of how a modification (setting them to 0mu) to these lengths affect the output (I've removed the forced space after \times):

Spacing in math mode

\documentclass{article}
\setlength{\parindent}{0pt}% Just for this example
\begin{document}

\verb|Normal:| \par
Here again, four different simulations are run on networks of size 
$C^{G} = 25 \times 25 = 625$, $C^{G} = 50 \times 50 = 2500$, 
$C^{G} = 250 \times 250 = 62500$, and $C^{G} = 500 \times 500 = 250000$. Next,
for each network, the weights of the idiothetic connections are collected and
plotted based on radial distance, finally, they are averaged out over all
neurons and shifted and set about the centre of the graph.

\bigskip

\begingroup
\verb|\thinmuskip=0mu:| \par
\setlength{\thinmuskip}{0mu}
Here again, four different simulations are run on networks of size 
$C^{G} = 25 \times 25 = 625$, $C^{G} = 50 \times 50 = 2500$, 
$C^{G} = 250 \times 250 = 62500$, and $C^{G} = 500 \times 500 = 250000$. Next,
for each network, the weights of the idiothetic connections are collected and
plotted based on radial distance, finally, they are averaged out over all
neurons and shifted and set about the centre of the graph.
\endgroup

\bigskip

\begingroup
\verb|\medmuskip=0mu:| \par
\setlength{\medmuskip}{0mu}
Here again, four different simulations are run on networks of size 
$C^{G} = 25 \times 25 = 625$, $C^{G} = 50 \times 50 = 2500$, 
$C^{G} = 250 \times 250 = 62500$, and $C^{G} = 500 \times 500 = 250000$. Next,
for each network, the weights of the idiothetic connections are collected and
plotted based on radial distance, finally, they are averaged out over all
neurons and shifted and set about the centre of the graph.
\endgroup

\bigskip

\begingroup
\verb|\thickmuskip=0mu:| \par
\setlength{\thickmuskip}{0mu}
Here again, four different simulations are run on networks of size 
$C^{G} = 25 \times 25 = 625$, $C^{G} = 50 \times 50 = 2500$, 
$C^{G} = 250 \times 250 = 62500$, and $C^{G} = 500 \times 500 = 250000$. Next,
for each network, the weights of the idiothetic connections are collected and
plotted based on radial distance, finally, they are averaged out over all
neurons and shifted and set about the centre of the graph.
\endgroup

\end{document}

Grouping (\begingroup...\endgroup) localizes the effect of the length modification. \medmuskip is used around binary operators (like \times) and \thickmuskip is used around binary relations (like =). It's best to stick to the standard LaTeX spacing rather that insert your own.

A good source of reading material on this is Herbert Voss' mathmode document. In particular, section 11 Space (p 28 onward).


Inline math forms part of the regular text construction. That's why there is some stretch in \medmuskip and \thickmuskip, which allows spacing around math operators/operands to change depending on their location within the paragraph text. Removing this glue allows for a more consistent setting of inline expressions. See Keeping the distance between mathematical symbols consistent?

However, it can also have some problematic effects with regards to line breaking, as is shown below:

enter image description here

\documentclass{article}
\setlength{\parindent}{0pt}% Just for this example
\begin{document}

\verb|Normal:| \par
Here again, four different simulations are run on networks of size 
$C^{G} = 25 \times 25 = 625$, $C^{G} = 50 \times 50 = 2500$, 
$C^{G} = 250 \times 250 = 62500$, and $C^{G} = 500 \times 500 = 250000$. Next,
for each network, the weights of the idiothetic connections are collected and
plotted based on radial distance, finally, they are averaged out over all
neurons and shifted and set about the centre of the graph.

\bigskip

\begingroup
\verb|Math glue removed:| \par
\setlength{\medmuskip}{1\medmuskip}
\setlength{\thickmuskip}{1\thickmuskip}
Here again, four different simulations are run on networks of size 
$C^{G} = 25 \times 25 = 625$, $C^{G} = 50 \times 50 = 2500$, 
$C^{G} = 250 \times 250 = 62500$, and $C^{G} = 500 \times 500 = 250000$. Next,
for each network, the weights of the idiothetic connections are collected and
plotted based on radial distance, finally, they are averaged out over all
neurons and shifted and set about the centre of the graph.
\endgroup

\end{document}
Related Question