Boolean Algebra Examples

0 views
Skip to first unread message

Rebecca Donnelly

unread,
Aug 3, 2024, 6:00:53 PM8/3/24
to urmannehou

Boolean Algebras that are complete as well as atomic (also called CABAs) are of course precisely those that are isomorphic to some power set (equipped with the obvious choices for the operations), or equivalently stated, those that form a category dually equivalent to $Set$.

The category of all Boolean algbras, however, is well-known to be equivalent to the category of Stone spaces (compact totally disconnected Hausdorff spaces) with continuous morphisms. Thus, for a Boolean algebra (of infinite cardinality), it is a very special case to be complete and atomic. My question is:

Please understand that I do not look for any kind of example (so the emphasis lies on the word "nice"). I am, for instance, aware that looking at free BAs would lead to such an example, and I also know the classic example of the BA that is formed by all finite and confinite sets of integers. Also, as mentioned above, I know how the Stone Duality transforms Stone spaces into Boolean algebras, so please don't simply say "the clopen subsets of a that-and-that Stone-Space form a Boolean algebra".

I admit that nice is a somewhat vague notion. What I mean are Boolean Algebras that arise naturally (except those I have already mentioned) and are of special interest for some reason (yes, I know that this formulation is not vague at all).

One naturally occurring "not complete or not atomic" Boolean algebra is the quotient of the algebra of Lebesgue measurable subsets of the reals modulo the ideal of measure-zero sets. This is complete but not atomic. If you just take the Lebesgue measurable sets (and don't divide by any ideal), you get an algebra that is atomic but not complete. Finally, for algebras that are neither atomic nor complete, Joel has given one of the most natural examples, but since you already mentioned it (under the guise of "free algebra") in the question, another "nice" example is the quotient of the power set of the natural numbers modulo the ideal of finite sets.

There is up to isomorphism a unique countably infinite atomless Boolean algebra (by a back-and-forth argument), making this algebra highly canonical. But it cannot be complete, since every infinite Boolean algebra has an infinite antichain, and so by completeness must have size at least continuum.

An example of an atomic but not complete boolean algebra is the set of all finite unions of cartesian products of two sets (with the restriction that these sets are subsets of some fixed "universal" set, to eliminate set-theory paradoxes) with join and meet being set-theoretic union and intersection.

Boolean algebra was introduced by George Boole in his first book The Mathematical Analysis of Logic (1847),[1] and set forth more fully in his An Investigation of the Laws of Thought (1854).[2]According to Huntington, the term "Boolean algebra" was first suggested by Henry M. Sheffer in 1913,[3] although Charles Sanders Peirce gave the title "A Boolian [sic] Algebra with One Constant" to the first chapter of his "The Simplest Mathematics" in 1880.[4] Boolean algebra has been fundamental in the development of digital electronics, and is provided for in all modern programming languages. It is also used in set theory and statistics.[5]

A precursor of Boolean algebra was Gottfried Wilhelm Leibniz's algebra of concepts. The usage of binary in relation to the I Ching was central to Leibniz's characteristica universalis. It eventually created the foundations of algebra of concepts.[6] Leibniz's algebra of concepts is deductively equivalent to the Boolean algebra of sets.[7]

Boole's algebra predated the modern developments in abstract algebra and mathematical logic; it is however seen as connected to the origins of both fields.[8] In an abstract setting, Boolean algebra was perfected in the late 19th century by Jevons, Schrder, Huntington and others, until it reached the modern conception of an (abstract) mathematical structure.[8] For example, the empirical observation that one can manipulate expressions in the algebra of sets, by translating them into expressions in Boole's algebra, is explained in modern terms by saying that the algebra of sets is a Boolean algebra (note the indefinite article). In fact, M. H. Stone proved in 1936 that every Boolean algebra is isomorphic to a field of sets.

In the 1930s, while studying switching circuits, Claude Shannon observed that one could also apply the rules of Boole's algebra in this setting,[9] and he introduced switching algebra as a way to analyze and design circuits by algebraic means in terms of logic gates. Shannon already had at his disposal the abstract mathematical apparatus, thus he cast his switching algebra as the two-element Boolean algebra. In modern circuit engineering settings, there is little need to consider other Boolean algebras, thus "switching algebra" and "Boolean algebra" are often used interchangeably.[10][11][12]

Efficient implementation of Boolean functions is a fundamental problem in the design of combinational logic circuits. Modern electronic design automation tools for very-large-scale integration (VLSI) circuits often rely on an efficient representation of Boolean functions known as (reduced ordered) binary decision diagrams (BDD) for logic synthesis and formal verification.[13]

Logic sentences that can be expressed in classical propositional calculus have an equivalent expression in Boolean algebra. Thus, Boolean logic is sometimes used to denote propositional calculus performed in this way.[14][15][16] Boolean algebra is not sufficient to capture logic formulas using quantifiers, like those from first order logic.

Although the development of mathematical logic did not follow Boole's program, the connection between his algebra and logic was later put on firm ground in the setting of algebraic logic, which also studies the algebraic systems of many other logics.[8] The problem of determining whether the variables of a given Boolean (propositional) formula can be assigned in such a way as to make the formula evaluate to true is called the Boolean satisfiability problem (SAT), and is of importance to theoretical computer science, being the first problem shown to be NP-complete. The closely related model of computation known as a Boolean circuit relates time complexity (of an algorithm) to circuit complexity.

Boolean algebra also deals with functions which have their values in the set 0,1. A sequence of bits is a commonly used example of such a function. Another common example is the totality of subsets of a set E: to a subset F of E, one can define the indicator function that takes the value 1 on F, and 0 outside F. The most general example is the set elements of a Boolean algebra, with all of the foregoing being instances thereof.

One might consider that only negation and one of the two other operations are basic because of the following identities that allow one to define conjunction in terms of negation and the disjunction, and vice versa (De Morgan's laws):[22]

All of the laws treated thus far have been for conjunction and disjunction. These operations have the property that changing either argument either leaves the output unchanged, or the output changes in the same way as the input. Equivalently, changing any variable from 0 to 1 never results in the output changing from 1 to 0. Operations with this property are said to be monotone. Thus the axioms thus far have all been for monotonic Boolean logic. Nonmonotonicity enters via complement as follows.[5]

The laws listed above define Boolean algebra, in the sense that they entail the rest of the subject. The laws complementation 1 and 2, together with the monotone laws, suffice for this purpose and can therefore be taken as one possible complete set of laws or axiomatization of Boolean algebra. Every law of Boolean algebra follows logically from these axioms. Furthermore, Boolean algebras can then be defined as the models of these axioms as treated in Boolean algebras.

Writing down further laws of Boolean algebra cannot give rise to any new consequences of these axioms, nor can it rule out any model of them. In contrast, in a list of some but not all of the same laws, there could have been Boolean laws that did not follow from those on the list, and moreover there would have been models of the listed laws that were not Boolean algebras.

This axiomatization is by no means the only one, or even necessarily the most natural given that attention was not paid as to whether some of the axioms followed from others, but there was simply a choice to stop when enough laws had been noticed, treated further in Axiomatizing Boolean algebra. Or the intermediate notion of axiom can be sidestepped altogether by defining a Boolean law directly as any tautology, understood as an equation that holds for all values of its variables over 0 and 1.[25][26] All these definitions of Boolean algebra can be shown to be equivalent.

There is nothing special about the choice of symbols for the values of Boolean algebra. 0 and 1 could be renamed to α and β, and as long as it was done consistently throughout, it would still be Boolean algebra, albeit with some obvious cosmetic differences.

A Venn diagram[27] can be used as a representation of a Boolean operation using shaded overlapping regions. There is one region for each variable, all circular in the examples here. The interior and exterior of region x corresponds respectively to the values 1 (true) and 0 (false) for variable x. The shading indicates the value of the operation for each combination of regions, with dark denoting 1 and light 0 (some authors use the opposite convention).

While we have not shown the Venn diagrams for the constants 0 and 1, they are trivial, being respectively a white box and a dark box, neither one containing a circle. However, we could put a circle for x in those boxes, in which case each would denote a function of one argument, x, which returns the same value independently of x, called a constant function. As far as their outputs are concerned, constants and constant functions are indistinguishable; the difference is that a constant takes no arguments, called a zeroary or nullary operation, while a constant function takes one argument, which it ignores, and is a unary operation.

c80f0f1006
Reply all
Reply to author
Forward
0 new messages