Sometimes the symbol := is used to denote a definition. For example, X:=Y+Z means that X is defined to be Y+Z.

When using LaTeX, can I just use $:=$, or do I need to do something special?

  • Do you also know how to add the equal sign with a 'def' above it?
    – Anatoly
    Jan 18 '20 at 15:06

Many do, but then the colon isn't correctly centered. Better to use the package mathtools and \coloneqq. See the mathtools documentation for more information.


Unfortunately, with $:=$, the colon is not centred on the math axis. A solution comes from the mathtools package, which defines \vcentcolon and \coloneqq commands; these lead to two different results, as regards the horizontal spacing between the colon and the equality sign. Compare:





Let  $ a:  = b $

Let  $ a \vcentcolon  = b $

Let  $ a \coloneqq  b $


enter image description here

The \coloneq(one q!) symbol exists in mathabx, Mnsymbol and fdsymbol (at least). It's named \coloneqqin kpfonts and mdsymbol.


It is not necessary to do anything, LaTeX does it for you.

  • 9
    Yes, it does, but incorrectly; in most fonts, the colon is not vertically centred (it sits on the baseline, like a regular . does). This is of course wrong since the = is vertically centred and this assymetry is seriously ugly.
    – yo'
    Aug 1 '14 at 20:49

Not the answer you're looking for? Browse other questions tagged or ask your own question.