# Align equivalence arrows and equal signs without weird spacing

I want to achieve the following layout:

    1a = 1b
<=> 2a = 2b
<=> 3a = 3b


I.e., I want the \Leftrightarrows and the =signs to be aligned. Here's what I thought would do the trick:

\documentclass[]{article}
\usepackage{amsmath}
\begin{document}
Thus,
\begin{align*}
& 1a &= 1b  \\
\Leftrightarrow&  2a &= 2b  \\
\Leftrightarrow&  3a &= 3b.
\end{align*}
\end{document}


The spacing is clearly off. If I add another align indicator, I get the following result:

\documentclass[]{article}
\usepackage{amsmath}
\begin{document}
Thus,
\begin{align*}
&               & 1a &= 1b  \\
&\Leftrightarrow&  2a &= 2b \\
&\Leftrightarrow&  3a &= 3b.
\end{align*}
\end{document}


This looks better. But how do I get rid of the extra spacing between the arrows and the variables? A similar question couldn't really help me.

• You've discovered experimentally that n alignment points require 2n – 1 ampersands (n for the alignment points, and n – 1 to introduce each new alignment column) Nov 13 '20 at 16:03

Use the internal form aligned

\documentclass{article}

\usepackage{amsmath}

\begin{document}
Thus,
\begin{aligned} & & 1a &= 1b \\ &\Leftrightarrow& 2a &= 2b \\ &\Leftrightarrow& 3a &= 3b. \end{aligned}
\end{document}


If you want to control the spacing, alignedat is your friend

\begin{alignedat}{2} & & \quad 1a &= 1b \\ &\Leftrightarrow& 2a &= 2b \\ &\Leftrightarrow& 3a &= 3b. \end{alignedat} \qquad\text{or}\qquad \begin{alignedat}{2} & & \qquad 1a &= 1b \\ &\Leftrightarrow& 2a &= 2b \\ &\Leftrightarrow& 3a &= 3b. \end{alignedat}


Use \quad or \qquad or whatever spacing command introduces the amount of space you desire.

• Thank you. The first approach already solved the problem in this case. Nov 13 '20 at 15:42

In this case I would just use \iff instead of \Leftrightarrow, since \iff adds the proper spacing on both sides of the arrow and with form of the expression it is already aligned. In general you could use alignat* instead of align* to adjust the spacing between the arrows and the equalities as you wish.

Here's an example for both cases.

\documentclass{article}
\usepackage{amsmath}
\begin{document}
With \verb|\iff|:
\begin{align*}
1a &= 1b  \\
\iff 2a &= 2b \\
\iff 3a &= 3b.
\end{align*}
With \verb|alignat*|:
\begin{alignat*}{2}
&\qquad         & 1a &= 1b  \\
&\Leftrightarrow& 2a &= 2b \\
&\Leftrightarrow& 3a &= 3b.
\end{alignat*}
\end{document}

• While it's surely true that \iff adds some space (+1) the alignment is here a happy coincidence which won't in general present itself. Nov 13 '20 at 15:30
• @campa Thanks for pointing it out, I should indeed have mentioned it. Nov 13 '20 at 15:37
• Thank you for the answer! Nov 13 '20 at 15:43