[Tex/LaTex] Symbol for “defined to be logically equivalent” (:⇔)

math-modemath-operatorsrelation-symbolssymbols

Is there a way to typeset the symbol ":⇔" correctly in LaTeX (i.e. with the right alignment and spacing)?
I know that using :\Leftrightarrow or :\Longleftrightarrow gets me the symbol I'm looking for (more or less), but the spacing doesn't look right to me. Constructions using \iff or \colon didn't really seem to do the trick, either.

Do I have to define such a symbol myself (if so: how?), or is there a package proving this? Unfortunately, I did not find anything myself (especially because I don't know what to search for exactly; I got the description "defined to be logically equivalent" from Wikipedia, since I didn't even know the correct name).

Best Answer

Package colonequals provides a vertically centered colon: \ratio. Both \ratio and \Leftrightarrow are of kind \mathrel, therefore TeX will not put additional space between them:

\documentclass{article}
\usepackage{colonequals}
\newcommand*{\logeq}{\ratio\Leftrightarrow}

\begin{document}
\[ A \logeq B \]
\end{document}

Result

When additional space is wanted between the colon and the arrow (see Raphaels's comment), then \colonsep can be defined and set between the symbols, e.g.:

\renewcommand*{\colonsep}{\mkern1mu\relax}% small extra space
\newcommand*{\logeq}{%
  \mathrel{\ratio\colonsep\Leftrightarrow}%
}

P.S. It does not matter here, whether the star form of \newcommand is used or not, because there aren't any argument and the definition is not empty. Therefore it is mostly a matter of taste here.

I prefer the star form, because I am thinking rather in terms of lower level commands. \newcommand* uses \def, whereas \newcommand uses \long\def. Without arguments I do not see a reason for \long, therefore I am using \newcommand*.