Align centered, ragged right and ragged left in align environment

Writing

\begin{align*}
&& a &= b\\
\Leftrightarrow&& b &= c\\
\Leftrightarrow&& c + 2 &= 3 + 5\\
\Leftrightarrow&& d + c + 1 &= 4 + 11 + 12
\end{align*}


gives .

Every \Leftrightarrow should be centred, everything left to the equals sign should be ragged left and everything right of the equal sign should be ragged left.

The huge white space, obviously, is a problem for me. How can I solve this issue (especially if I use align instead of align*)? Using the tabular environment as stated in a solution to another question that I asked, I am afraid, will not help.

You already have alignat

\documentclass{article}
\usepackage{amsmath}
\begin{document}
\begin{alignat*}{2}
&\;& a &= b\\
\Leftrightarrow && b &= c\\
\Leftrightarrow && c + 2 &= 3 + 5\\
\Leftrightarrow && d + c + 1 &= 4 + 11 + 12
\end{alignat*}
\end{document} You did say everything right of the equal sign should be ragged left. I don't think you meant it, but I show it as a possibility.

Done here with TABstacks, after showing the OP's original code.

\documentclass{article}
\usepackage{amsmath,tabstackengine}
\TABstackMath
\begin{document}
\begin{align*}
&& a &= b\\
\Leftrightarrow&& b &= c\\
\Leftrightarrow&& c + 2 &= 3 + 5\\
\Leftrightarrow&& d + c + 1 &= 4 + 11 + 12
\end{align*}
\setstackaligngap{6pt}% horizontal gap between align groups \alignCenterstack{ && a =& b\\ \Leftrightarrow&& b =& c\\ \Leftrightarrow&& c + 2 =& 3 + 5\\ \Leftrightarrow&& d + c + 1 =& 4 + 11 + 12 }
$\setstacktabbedgap{0pt}% horizontal gap between tabbed groups \tabbedCenterstack[r]{ & a =& b\\ \Leftrightarrow& b =& c\\ \Leftrightarrow& c + 2 =& 3 + 5\\ \Leftrightarrow& d + c + 1 =& 4 + 11 + 12 }$
\end{document} 