# Attempting to mimic the spacing from another line using \phantom and \mathrel doesn't work

Here is an example document.

\documentclass{amsart}

\begin{document}

We define two more $B$--symbols, $\zeta_1$ and $\zeta_2$, as follows: for each $x_J \in M(B)$ and each $j \in J$, $\zeta_1(B, J, j)$ and $\zeta_2(B, J, j)$ are integers given by:
\begin{align*}
\zeta_1(B, J, j) \; &:= \phantom{2} \mathrel{\phantom{\times}} |\{b \in B : b > j\}|
\\ \zeta_2(B, J, j) \; &:= 2 \times |\{b \in J : b > j\}|.
\end{align*}
We define the $B$--symbol $\zeta$ as follows: for each $x_J \in M(B)$ and each $j \in J$, $\zeta(B, J, j)$ is given by $\zeta_1(B, J, j) - \zeta_2(B, J, j)$.

\end{document}


Here is a close-up of the output:

The relevant code used to attempt to add the correct amount of extra spacing is this bit:

\phantom{2} \mathrel{\phantom{\times}}


But this isn't spaced correctly. It produces slightly too much spacing, as you can see from the picture. How come?

-

You can use

\phantom{2\times{}}


to get the proper spacing. The problem with your code is that \times is of type Bin and not Rel and, as egreg has pointed out in his comment, \mathbin and \mathrel produce different spaces (in general): \medmuskip and \thickmuskip, respectively. Using \mathbin instead of \mathrel in your code would have also produced the desired alignment.

-
I chose your answer because your solution works, but I am curious as to why my attempted solution didn't work. – Hammerite Nov 22 '11 at 13:40
The problem is exactly that \mathbin and \mathrel produce different spaces (in general): \medmuskip and \thickmuskip (they can be equal only if the glue in the line is stretched), which is not the case inside align*. – egreg Nov 22 '11 at 15:44
@egreg: I've included your comment in my answer. It's really a pleasure to have people like you around here. – Gonzalo Medina Nov 22 '11 at 17:08