Booleaanse algebra

Uit Wikipedia, de vrije encyclopedie
Ga naar: navigatie, zoeken
Algebraïsche
structuren

Magma
Halfgroep
Monoïde
Groep
Ring / Ideaal
Lichaam/Veld

Moduul
Vectorruimte
Algebra

Categorie
Tralie
Boole-algebra

In de wiskunde, met name de abstracte algebra, en in de informatica is een booleaanse algebra of Boole-algebra een algebraïsche structuur met de logische operatoren AND (en), OR (of) en NOT (niet). Deze operatoren zijn direct gerelateerd aan de begrippen doorsnede, vereniging en complement uit de verzamelingenleer.

Zo is het logische "uitgesloten derde", dat stelt dat een uitspraak waar is of onwaar, equivalent met de regel dat de vereniging van een verzameling en z'n complement alle in het geding zijnde elementen bevat.

A \cup A^c = U.

Complementair daaraan is de logische vaststelling dat een uitspraak en z'n ontkenning niet samen waar kunnen zijn. Dit wordt voor verzamelingen weerspiegeld in de regel dat een verzameling en z'n complement geen gemeenschappelijk element hebben.

A \cap A^c = \empty.

De booleaanse operatoren zijn genoemd naar de Brit George Boole, die ze in het midden van de 19e eeuw invoerde. Een booleaanse algebra is een poging om algebraïsche technieken te gebruiken teneinde te kunnen omgaan met logische uitdrukkingen. Booleaanse algebra's vinden bijvoorbeeld toepassing in het samenstellen van digitale elektronische schakelingen, zoals die in computers worden gebruikt. In de praktijk kan men de werking ervan onder meer zien in sommige zoeksystemen voor internetpagina's.

Definitie[bewerken]

Een booleaanse algebra bestaat uit een verzameling A, voorzien van twee binaire bewerkingen \and (en, logische AND) en \or (of, logische OR), een unaire bewerking \lnot (niet, logische NOT), en twee elementen 0 (onwaar, logische FALSE) en 1 (waar, logische TRUE).

naam Engelse naam symbolen
en meet, and \and  \times
of join, or \or  +
niet not \lnot \sim
onwaar false 0
waar true 1

Andere bewerkingen zijn:

naam Engelse naam symbool
niet-en nand \lnot(a \and b)
niet-of nor \lnot(a \or b)
exclusieve of xor (a \or b) \and \lnot (a \and b)

Er is sprake van een booleaanse algebra, als voldaan is aan de volgende axioma's:

associativiteit

 a \or (b \or c) = (a \or b) \or c
 a \and (b \and c) = (a \and b) \and c

commutativiteit

 a \or b = b \or a
 a \and b = b \and a

absorptie

 a \or (a \and b) = a
 a \and (a \or b) = a

distributiviteit

 a \or (b \and c) = (a \or b) \and (a \or c)
 a \and (b \or c) = (a \and b) \or (a \and c)

complement

 a \or \lnot a = 1
 a \and \lnot a = 0

De eerste drie paren axioma's, associativiteit, commutativiteit en absorptie, houden in dat het drietal (A, \and, \or) een tralie is.

Uit de axioma's volgt dat in de partiële ordening van het tralie 0 het kleinste element is en 1 het grootste element. (Die partiële ordening wordt bepaald door a ≤ b te noemen als a=a\and b.)

Verder volgt uit de axioma's dat het complement ¬a van een element a eenduidig bepaald is en dat:

idempotentie

 a \or a = a
 a \and a = a

kleinste en grootste elementen

 a \or 0 = a
 a \and 1 = a
 a \or 1 = 1
 a \and 0 = 0

complementen

 \lnot 0 = 1
 \lnot 1 = 0

regels van de Morgan

 \lnot (a \or b) = \lnot a \and \lnot b
 \lnot (a \and b) = \lnot a \or \lnot b

involutie

 \lnot \lnot a = a .

Notatie[bewerken]

Soms wordt vanwege een zekere mate van overeenkomst een + gebruikt voor \or en een \cdot voor \and. Voor wie bekend is met getallenalgebra schept deze notatie verwarring, omdat deze symbolen, die ook in getallenalgebra worden gebruikt, hier een andere betekenis hebben.

+   betekent OR (OF)
·    betekent AND (EN)
\overline A betekent NOT A (NIET)

Een booleaanse algebra werkt met variabelen die slechts de waarden 0 en 1 aannemen. Voorbeelden van vergelijkingen:

\begin{matrix} 1+1=1 \end{matrix}
\begin{matrix} A+B\cdot C=(A+B)\cdot (A+C) \end{matrix}
\begin{matrix} A+ \overline{A}\cdot B=A+B \end{matrix}

Soms wordt ook een vierde booleaanse operator gehanteerd, de exclusive OR - XOR (EXCLUSIEVE OF, of exclusieve disjunctie), gedefinieerd door de regel

A\oplus B=A\cdot\overline B+B\cdot\overline A

(ook te schrijven als (A \and \lnot B) \or (B \and \lnot A))

De operator \oplus gedraagt zich ongeveer als de klassieke getallenoperator +, weliswaar met de eigenaardigheid dat 1\oplus1=0

Een volledig stel logische uitdrukkingen wordt gemodelleerd door een algebra van verzamelingen. Het is, in de formele zin, een associatieve algebra met eenheidselement over het lichaam (in België: veld) \mathbb{Z}/2\mathbb{Z}=\{0,1\} met de bewerkingen \oplus en .

Voorbeelden[bewerken]

De eenvoudigste booleaanse algebra bestaat slechts uit de elementen 0 en 1. De rekenregels volgen uit de axioma's:

\and 0 1
0 0 0
1 0 1
\or 0 1
0 0 1
1 1 1
a \lnot a
0 1
1 0

Een ander voorbeeld van een booleaanse algebra wordt gevormd door de machtsverzameling van een gegeven verzameling U, met de bekende bewerkingen vereniging, doorsnede en complement.

Zie ook[bewerken]