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]}^{[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.

## Generalizations

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 also

## References

**^**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.**^**Parberry, Ian (1994).*Circuit Complexity and Neural Networks*. MIT Press. pp. 65. ISBN 978-0-262-16148-0.**^**Cortadella, Jordi; et al. (2002).*Logic Synthesis for Asynchronous Controllers and Interfaces*. Springer Science & Business Media. p. 73. ISBN 978-3-540-43152-7.

## Further reading

- Steinbach, Bernd, ed. (2014-04-01) [2013-09-25].
*Recent Progress in the Boolean Domain*(1 ed.). Newcastle upon Tyne, UK: Cambridge Scholars Publishing. ISBN 978-1-4438-5638-6. Retrieved 2019-08-04. [1] (455 pages) - Steinbach, Bernd, ed. (2016-05-01).
*Problems and New Solutions in the Boolean Domain*(1 ed.). Newcastle upon Tyne, UK: Cambridge Scholars Publishing. ISBN 978-1-4438-8947-6. Retrieved 2019-08-04. (480 pages) - Steinbach, Bernd, ed. (2018-01-01).
*Further Improvements in the Boolean Domain*(1 ed.). Newcastle upon Tyne, UK: Cambridge Scholars Publishing. ISBN 978-1-5275-0371-7. Retrieved 2019-08-04. [2] (536 pages)