What exactly is the purpose of the \DTOSB in the definition of \iff? There is a mention in Is there a left-handed equivalent of \implies? that the \DOTSB makes \iff "dots aware". But, when I try to use \dots on either side I don't see any difference.
Egreg commented that you need \newcommand* in order for DOTSB to have an effect. But, it seems that the definition with using the star option in \newcommand* differs from the definition of \iff. Its the
\newcommand{\MyIffWithDotsbNonStar}{\DOTSB\;\Longleftrightarrow \;}
the produces the same meaning as \iff.
References:
- How do magic \dots work in amsmath?
- Is there a left-handed equivalent of \implies?
- How can I make amsmath's \dots look ahead after macro expansion?
MWE:
\documentclass{article}
\usepackage{mathtools}
\usepackage{xcolor}
\usepackage[paperwidth=10in]{geometry}% for better display of output
\newcommand{\MyIffWithDotsbNonStar}{\DOTSB;\Longleftrightarrow ;}
\newcommand{\MyIffWithoutDotsbNonStar}{;\Longleftrightarrow ;}
\newcommand{\MyIffWithDotsbStar}{\DOTSB;\Longleftrightarrow ;}
\newcommand{\MyIffWithoutDotsbStar}{;\Longleftrightarrow ;}
\begin{document}
\par \verb|\iff|: \texttt{\meaning\iff}
\par \verb|\MyIffWithDotsbNonStar|: \texttt{\meaning\MyIffWithDotsbNonStar}
\par \verb|\MyIffWithDotsbStar|: \texttt{\meaning\MyIffWithDotsbStar}
\medskip
\par $a \iff b$ using \verb|\iff|
\par $a \MyIffWithDotsbNonStar b$ using \verb|\MyIffWithDotsbNonStar|
\par $a \MyIffWithoutDotsbNonStar b$ using \verb|\MyIffWithoutDotsbNonStar|
\par $a \MyIffWithDotsbStar b$ using \verb|\MyIffWithDotsbStar|
\par $a \MyIffWithoutDotsbStar b$ using \verb|\MyIffWithoutDotsbStar|
\medskip
\par $a \dots \iff \dots b$ using \verb|\dots \iff \dots|
\par $a \dots \MyIffWithDotsbNonStar \dots b$ using \verb|\dots \MyIffWithDotsbNonStar \dots|
\par $a \dots \MyIffWithoutDotsbNonStar \dots b$ using \verb|\dots \MyIffWithoutDotsbNonStar \dots|
\par $a \dots \MyIffWithDotsbStar \dots b$ using \verb|\dots \MyIffWithDotsbStar \dots| \textcolor{red}{\bfseries DIFFERS}
\par $a \dots \MyIffWithoutDotsbStar \dots b$ using \verb|\dots \MyIffWithoutDotsbStar \dots|
\end{document}


\newcommand*in order\DOTSBto have an effect, see http://tex.stackexchange.com/a/266721/4427 – egreg Jan 02 '16 at 09:38\meaning\iffand\meaning\MyIffWithDotsbNonStar(defined with\newcommand(i.e. without the star option) gives the same meaning. – Peter Grill Jan 02 '16 at 10:08\iffhas a wrong definition inamsmath.sty– egreg Jan 02 '16 at 10:13mathtoolspackage? Is there some package that should be included that has these kinds of fixes? – Peter Grill Jan 02 '16 at 10:46mathtoolsdoesn't change the meaning of\iffas defined byamsmath. – egreg Jan 02 '16 at 10:49\renewcommand*{\iff}{\DOTSB\;\Longleftrightarrow\;}? – Peter Grill Jan 02 '16 at 10:57amsmath, i don't believe that\newcommand*existed when it was created; certainly\newcommand*is not even mentioned in lamport, nor is there any indication (p.192) that anything defined with\newcommandis automatically\long. i'm adding this problem to theamsmathbugs list, but please let me know what other commands are similarly erroneously\long. – barbara beeton Jan 05 '16 at 22:03