# Is the modern “is defined as” notation from computer programming?

To my knowledge, the symbol for "is defined as" historically has been the notation, $\equiv$ or $\triangleq$. More recently, however, the notation $:=$ seems to have overtaken the latter two notations (at least, this seems to be the case in modern texts).

It has been suggested that this notation was borrowed from the assignment operator in computer programming languages — in particular, from Pascal. Does there exist evidence of the use of this notation in mathematics for "is defined as" prior to its widespread use as the assignment operator in programming?

I did a bit of snooping, and followed the Wikipedia link you named to another subsection, which states

International Algebraic Language and ALGOL (1958 and 1960) therefore introduced ":=" for assignment, leaving the standard "=" available for equality, a convention followed by CPL, Algol W, BCPL, Simula, Algol 68, SETL, Pascal, Smalltalk, Modula2, Ada, Standard ML, OCaml, Eiffel, Delphi, Oberon, Dylan, VHDL, and several other languages.

The problem, of course, was that there are case where expressions such as

Variable = Variable + NewVariable

are valid. In mathematics, if the same statement was used, it would obviously be false if $\text{NewVariable}\neq1$. Therefore, it was decided to use :=.

I found the text of ALGOL 1958 (although not the subsequent 1960 text), and it admittedly does not explicitly support this interpretation anywhere. However, it strongly emphasizes the user of := in statements, while it does not list = as a building block for the language, so I think it's safe to say that this marked the transition, as claimed. We therefore have a date of the early use of :=: 1958.

I've found various texts and sites that use roughly the same wording when discussing the history of "is defined as" in mathematics. This, for example, states that

$:=$(the equal by definition sign) means “is equal by definition to”. This is a common alternate form of the symbol “$=_{\text{Def}}$”, which appears in the 1894 book Logica Matematica by the logician Cesare Burali-Forti (1861–1931). Other common alternate forms of the symbol “$=_{\text{Def}}$” include “[a]” and “$\equiv$”, the latter being especially common in applied mathematics.

Here, [a] is a stand-in for a symbol which does not properly render. On page 7 of a version of the book, I see a statement that appears to end with $$=1:=:D(xy,z)=1$$ which includes $:=:$, a possible variant of the symbol.

On page 26, however, he writes an expression that includes $$a=b:=_{\text{Def}}$$ However, I think that it is more likely that it is simply a use of the $:$ with $=_{\text{Def}}$, which he introduced further up the page.

I think that it is likely that Burali-Forti uses the symbol somewhere inside, but I'm, not certain. At any rate, it seems likely that "$=$", or some variant thereof, was used prior to 1958.

• Actually, prior to ALGOL 58 was the programming language IAL (noted above) which also used the := for both function definition (early versions) and variable assignment. ALGOL 58 is the direct descendent of IAL. Also, ALGOL 58 was the first programming language specified in Backus-Naur form where the early versions of Backus notation used := for definitions. One of Naur's changes was to use ::= instead of := for definitions. – K7PEH Sep 5 '15 at 16:43
• True, but IAL was developed no more than a few years before. I didn't know about Backus-Naur form, though. – HDE 226868 Sep 5 '15 at 16:55
• The "double dot" $:$ is part of the notation used to replace parentheses; it dates back to Peano and was widely used in W&P Principia. The formula of page 26 must be read (in modern notation) as : $(a \equiv b) =_{Def} (a \supset b) \land (b \supset a)$. – Mauro ALLEGRANZA Sep 5 '15 at 17:57
• Compare with Alfred North Whitehead & Bertrand Russell, Principia Mathematica to #56 (2nd ed - 1927), page 9 : The use of dots, and page 7 for the definition of Equivalence. – Mauro ALLEGRANZA Sep 5 '15 at 18:40
• @MauroALLEGRANZA but that doesn't have any relation to the use of $:=$ for "is defined as" though? – Chester Sep 5 '15 at 19:35