# Boolean domain

In mathematics and abstract algebra, a **Boolean domain** is a set consisting of exactly two elements whose interpretations include *false* and *true*. In logic, mathematics and theoretical computer science, a Boolean domain is usually written as {0, 1},^{[1]}^{[2]}^{[3]} {false, true}, {F, T},^{[4]} ^{[5]} or ^{[6]}^{[7]}

The algebraic structure that naturally builds on a Boolean domain is the Boolean algebra with two elements. The initial object in the category of bounded lattices is a Boolean domain.

In computer science, a Boolean variable is a variable that takes values in some Boolean domain. Some programming languages feature reserved words or symbols for the elements of the Boolean domain, for example `false`

and `true`

. However, many programming languages do not have a Boolean datatype in the strict sense. In C or BASIC, for example, falsity is represented by the number 0 and truth is represented by the number 1 or −1, and all variables that can take these values can also take any other numerical values.

## GeneralizationsEdit

The Boolean domain {0, 1} can be replaced by the unit interval [0,1], in which case rather than only taking values 0 or 1, any value between and including 0 and 1 can be assumed. Algebraically, negation (NOT) is replaced with conjunction (AND) is replaced with multiplication ( ), and disjunction (OR) is defined via De Morgan's law to be .

Interpreting these values as logical truth values yields a multi-valued logic, which forms the basis for fuzzy logic and probabilistic logic. In these interpretations, a value is interpreted as the "degree" of truth – to what extent a proposition is true, or the probability that the proposition is true.

## See alsoEdit

## NotesEdit

**^**Dirk van Dalen,*Logic and Structure*. Springer (2004), page 15.**^**David Makinson,*Sets, Logic and Maths for Computing*. Springer (2008), page 13.**^**George S. Boolos and Richard C. Jeffrey,*Computability and Logic*. Cambridge University Press (1980), page 99.**^**Elliott Mendelson,*Introduction to Mathematical Logic (4th. ed.)*. Chapman & Hall/CRC (1997), page 11.**^**Eric C. R. Hehner,*A Practical Theory of Programming*. Springer (1993, 2010), page 3.**^**Ian Parberry (1994).*Circuit Complexity and Neural Networks*. MIT Press. p. 65. ISBN 978-0-262-16148-0.**^**Jordi Cortadella; et al. (2002).*Logic Synthesis for Asynchronous Controllers and Interfaces*. Springer Science & Business Media. p. 73. ISBN 978-3-540-43152-7.