05.08.2013 Views

Problems and Comments on Boolean Algebras

Problems and Comments on Boolean Algebras

Problems and Comments on Boolean Algebras

SHOW MORE
SHOW LESS

You also want an ePaper? Increase the reach of your titles

YUMPU automatically turns print PDFs into web optimized ePapers that Google loves.

<str<strong>on</strong>g>Problems</str<strong>on</strong>g> <str<strong>on</strong>g>and</str<strong>on</strong>g> <str<strong>on</strong>g>Comments</str<strong>on</strong>g> <strong>on</strong> <strong>Boolean</strong> <strong>Algebras</strong><br />

Rosen, Fifth Editi<strong>on</strong>: Chapter 10; Sixth Editi<strong>on</strong>:<br />

Chapter 11<br />

<strong>Boolean</strong> Functi<strong>on</strong>s<br />

Secti<strong>on</strong> 10. 1, <str<strong>on</strong>g>Problems</str<strong>on</strong>g>: 1, 2, 3, 4, 10, 11, 29, 36, 37 (fifth<br />

editi<strong>on</strong>); Secti<strong>on</strong> 11.1, <str<strong>on</strong>g>Problems</str<strong>on</strong>g>: 1, 2, 5, 6, 12, 13, 31, 40, 41<br />

(sixth editi<strong>on</strong>)<br />

The notati<strong>on</strong> "" forOR is bad <str<strong>on</strong>g>and</str<strong>on</strong>g> misleading. Just think that in the c<strong>on</strong>text of boolean<br />

functi<strong>on</strong>s, the author uses instead of ∨.The integers modulo 2, that is ℤ2 0,1,<br />

have an additi<strong>on</strong> where 1 1 0 while 1 ∨ 1 1.<br />

AsetA is partially ordered by a binary relati<strong>on</strong> ≤, if this relati<strong>on</strong> is reflexive, that is<br />

a ≤ a holds for every element a ∈ S,it is transitive, that is if a ≤ b <str<strong>on</strong>g>and</str<strong>on</strong>g> b ≤ c hold for<br />

elements a,b,c ∈ S, then <strong>on</strong>e also has that a ≤ c, <str<strong>on</strong>g>and</str<strong>on</strong>g> ≤ is anti-symmetric, that is a ≤ b<br />

<str<strong>on</strong>g>and</str<strong>on</strong>g> b ≤ a can hold for elements a,b ∈ S <strong>on</strong>ly if a b.<br />

The subsets of any set S are partially ordered by set inclusi<strong>on</strong>. that is the power set<br />

PS,⊆ is a partially ordered set. A partial ordering <strong>on</strong> S is a total ordering if for any<br />

two elements a,b of S <strong>on</strong>e has that a ≤ b or b ≤ a. The natural numbers ℕ,≤ with their<br />

ordinary ordering are totally ordered.<br />

A bounded lattice L is a partially ordered set where every finite subset has a least<br />

upper bound <str<strong>on</strong>g>and</str<strong>on</strong>g> a greatest lower bound.The least upper bound of the empty subset<br />

is defined as 0, it is the smallest element of L. This makes sense because any<br />

element of L is an upper bound for the empty set. If there were an element x in L<br />

which would not be an upper bound then we would have an element in x ∈∅such that<br />

notx ≤ a. But there is no element in ∅. Similarly, every element of L is a lower bound<br />

of ∅.Thus the greatest lower bound of ∅ must be the largest element of L.<br />

A lattice is a partially ordered set where every two element subset has a least upper<br />

bound <str<strong>on</strong>g>and</str<strong>on</strong>g> a greatest lower bound. It is then easy to see that in a lattice every finite<br />

n<strong>on</strong>-empty subset has a least upper bound <str<strong>on</strong>g>and</str<strong>on</strong>g> a largest lower bound. However,<br />

there might be no smallest or largest element. Lattices which have a smallest <str<strong>on</strong>g>and</str<strong>on</strong>g><br />

largest element are called bounded.<br />

Inacomplete lattice every subset has a least upper bound <str<strong>on</strong>g>and</str<strong>on</strong>g> a largest lower bound.<br />

In analysis, a least upper bound is also called supremum <str<strong>on</strong>g>and</str<strong>on</strong>g> a largest lower bound<br />

infimum.<br />

In a lattice, we define the least upper bound of two elements a <str<strong>on</strong>g>and</str<strong>on</strong>g> b as their join ∨<br />

<str<strong>on</strong>g>and</str<strong>on</strong>g> their largest lower bound as their meet ∧.Thus, meet <str<strong>on</strong>g>and</str<strong>on</strong>g> join are binary<br />

operati<strong>on</strong>s.<br />

Meet <str<strong>on</strong>g>and</str<strong>on</strong>g> join operati<strong>on</strong>s are commutative <str<strong>on</strong>g>and</str<strong>on</strong>g> associative. By the very definiti<strong>on</strong> we<br />

1


have that if u ≥ x <str<strong>on</strong>g>and</str<strong>on</strong>g> u ≥ y then u ≥ x ∨ y because x ∨ y is the smallest upper bound of<br />

x <str<strong>on</strong>g>and</str<strong>on</strong>g> y.Also the idempotency laws, that is x x ∨ x x ∧ x are trivial.<br />

Important for algebra is the lattice ℕ of natural numbers where ≤ | indicates<br />

divisibility: a ≤ b ↔ a|b ↔ ∃k k a b. We have that the largest lower bound of two<br />

elements n,m is the greatest comm<strong>on</strong> divisor <str<strong>on</strong>g>and</str<strong>on</strong>g> the least upper bound is the lowest<br />

comm<strong>on</strong> multiple:<br />

n ∧ m gcdn,m <str<strong>on</strong>g>and</str<strong>on</strong>g> n ∨ m lcmn,m<br />

Indeed, the greatest comm<strong>on</strong> divisor d of n <str<strong>on</strong>g>and</str<strong>on</strong>g> m divides n <str<strong>on</strong>g>and</str<strong>on</strong>g> divides m, d|n <str<strong>on</strong>g>and</str<strong>on</strong>g><br />

d|m.That is, d is a lower bound for n <str<strong>on</strong>g>and</str<strong>on</strong>g> m, <str<strong>on</strong>g>and</str<strong>on</strong>g> if e is a lower bound for n <str<strong>on</strong>g>and</str<strong>on</strong>g> m, then<br />

e divides n <str<strong>on</strong>g>and</str<strong>on</strong>g> m <str<strong>on</strong>g>and</str<strong>on</strong>g> therefore e divides d.<br />

A lattice is distributive if meet distributes over join <str<strong>on</strong>g>and</str<strong>on</strong>g> join distributes over meet:<br />

a ∧ b ∨ c a ∧ b ∨ a ∧ c <str<strong>on</strong>g>and</str<strong>on</strong>g> a ∨ b ∧ c a ∨ b ∧ a ∨ c<br />

The lattice ℕ,| is distributive. This is not so easy to prove.<br />

If X is any set, the powerset PX of X is the set of all subsets A of X. It is a bounded<br />

lattice where A ≤ B means that A is a subset of B,that is A ⊆ B.The empty set ∅ is the<br />

smallest element <str<strong>on</strong>g>and</str<strong>on</strong>g> X is the largest element of PX. Meet is intersecti<strong>on</strong> <str<strong>on</strong>g>and</str<strong>on</strong>g> join is<br />

uni<strong>on</strong>. It is very easy to see that this lattice is distributive.<br />

Propositi<strong>on</strong> Let D be a distributive lattice. Then <strong>on</strong>e has that:<br />

a ∧ x a ∧ y <str<strong>on</strong>g>and</str<strong>on</strong>g> a ∨ x a ∨ y implies that x y.<br />

Proof In any lattice we have that x x ∨ y holds in case that y ≤ x.Indeed, if<br />

u x ∨ y, then u ≥ x.But we also have x ≥ x <str<strong>on</strong>g>and</str<strong>on</strong>g> x ≥ y.Thatis, x ≥ u because u is<br />

the least upper bound of x <str<strong>on</strong>g>and</str<strong>on</strong>g> y.That is u x. Actually, we have that x x ∨ y is<br />

equivalent to x ≥ y.Similarly, x x ∧ y is equivalent to x ≤ y.<br />

The proof of the propositi<strong>on</strong> is based <strong>on</strong> a chain of calculati<strong>on</strong>s. Notice that<br />

x ≤ a ∨ x.<br />

x x ∧ a ∨ x x ∧ a ∨ y a ∧ x ∨ x ∧ y a ∧ y ∨ x ∧ y ≤ y<br />

Hence, x ≤ y. By symmetry, y ≤ x, thus x y.<br />

Definiti<strong>on</strong> In a bounded lattice an element c is called a complement of a in case that<br />

a ∧ c 0 <str<strong>on</strong>g>and</str<strong>on</strong>g> a ∨ c 1<br />

Corollary Let D be a bounded distributive lattice. Then an element x can have at most <strong>on</strong>e<br />

complement, called x ∗ . If x has complement x ∗ then x ∗ has complement x.<br />

Propositi<strong>on</strong> Let D be a bounded distributive lattice. If x has complement x∗ <str<strong>on</strong>g>and</str<strong>on</strong>g> y has<br />

complement y∗ then x ∧ y <str<strong>on</strong>g>and</str<strong>on</strong>g> x ∨ y have complements <str<strong>on</strong>g>and</str<strong>on</strong>g><br />

x ∧ y∗ x∗ ∨ y∗ <str<strong>on</strong>g>and</str<strong>on</strong>g> x ∨ y∗ x∗ ∧ y∗ These are called the De Morgan laws.<br />

Proof x ∧ y ∧ x∗ ∨ y∗ x ∧ y ∧ x∗ ∨ x ∧ y ∧ y∗ 0 ∨ 0 0 <str<strong>on</strong>g>and</str<strong>on</strong>g><br />

x ∧ y ∨ x∗ ∨ y∗ x ∨ x∗ ∨ y∗ ∧ y ∨ x∗ ∨ y∗ 1 ∧ 1 1.Thus, x∗ ∨ y∗ must be the complement of x ∧ y. The other law has a similar proof.<br />

Definiti<strong>on</strong> A bounded distributive lattice is called a boolean lattice if every element has a<br />

2


complement.<br />

Remark x ∧ y 0 iff y ≤ x∗ . That is, the complement x∗of x is the largest element<br />

whose meet with x is zero. Similarly, if x ∨ y 1, theny≥ x∗ , that is, x∗ is the<br />

smallest element whose join with x is <strong>on</strong>e.<br />

Proof Recall that in any lattice, x ≤ y is equivalent to x ∧ y x, as well as to<br />

x ∨ y y.Now, from x ∧ y 0 we get x ∧ y ∨ y∗ 0 ∨ y∗ y∗ .By distributivity<br />

this yields x ∨ y∗ ∧ y ∨ y∗ y∗ which is x ∨ y∗ ∧ 1 y∗ , or x ∨ y∗ y∗ .<br />

Hence x ≤ y∗ . By symmetry of our c<strong>on</strong>diti<strong>on</strong> x ∧ y 0 we also get<br />

y ≤ x∗ .C<strong>on</strong>versely, if we have y ≤ x∗ ,thenx∧ y ≤ x ∧ x∗ 0. Thus x ∧ y 0.<br />

A boolean lattice is also an algebra with two commutative binary operati<strong>on</strong>s, namely<br />

meet <str<strong>on</strong>g>and</str<strong>on</strong>g> join. Both have units, namely 0 is the unit for join, x ∨ 0 x, <str<strong>on</strong>g>and</str<strong>on</strong>g> 1 is the unit<br />

for meet, x ∧ 1 x. If <strong>on</strong>e stresses this algebraic structure, versus partial order, then<br />

<strong>on</strong>e calls the boolean lattice a boolean algebra. See Definiti<strong>on</strong> 1 <strong>on</strong> page 707, (page<br />

755, sixth ed.) From the algebraic structure <strong>on</strong>e can discover the lattice structure by<br />

defining x ≤ y iff x ∧ y x.<br />

Exercise Prove that for a boolean lattice <strong>on</strong>e has that x ≤ y iff x∗ ≥ y∗ .<br />

An algebraic structure A A,,−,0,∗,1 is called a ring, if is a binary operati<strong>on</strong> <strong>on</strong><br />

the set A which is commutative <str<strong>on</strong>g>and</str<strong>on</strong>g> associative, 0 is the additive unit for , that is<br />

a 0 a,− is a unary operati<strong>on</strong> <strong>on</strong> A which is inverse to ,that is a −a 0.The<br />

multiplicati<strong>on</strong> is associative, but not necessarily commutative, <str<strong>on</strong>g>and</str<strong>on</strong>g> 1 is the unit for<br />

∗,that is a ∗ 1 1 ∗ a a.Multiplicati<strong>on</strong> is distributive over additi<strong>on</strong>, both ways. That is<br />

a ∗ b c a ∗ b a ∗ c,b c ∗ a b ∗ c c ∗ a. The n n −matrices form a classical<br />

example of a ring.<br />

A ring is boolean if every element is idempotent, that is a ∗ a a holds for every a.<br />

Exercise In a boolean ring A <strong>on</strong>e has<br />

1. a −a, that is a a 2a 0.<br />

2. A is commutative.<br />

Hint: Calculate a b2 !<br />

A boolean ring A A, −,0,,1 becomes a boolean algebra B A,∧,∨, ∗ ,0,1 by<br />

defining<br />

a ∧ b a b,a ∨ b a b a b, a∗ 1 a.<br />

The 0 of the ring A serves also as the 0 of the boolean algebra B <str<strong>on</strong>g>and</str<strong>on</strong>g> the 1 of<br />

A serves as 1 of B.<br />

A boolean algebra B becomes a boolean ring by defining<br />

a b a ∧ b, a b a ∧ b∗ ∨ a∗ ∧ b,−a a∗ 0 <str<strong>on</strong>g>and</str<strong>on</strong>g> 1 of B serve as 0 <str<strong>on</strong>g>and</str<strong>on</strong>g> 1 of A.<br />

We state this just for reference. The proofs are not difficult but quite lengthy <str<strong>on</strong>g>and</str<strong>on</strong>g><br />

somewhat tricky.<br />

For us it is best to think in terms of boolean lattices.<br />

Overbars like x are a bit cumbersome to type. They are decorati<strong>on</strong>s <str<strong>on</strong>g>and</str<strong>on</strong>g> difficult to<br />

3


ead. I prefer x∗ .<br />

It is a very important fact that the classes of logically equivalent propositi<strong>on</strong>al formulas<br />

form a boolean lattice PROP. For example, the class of all tautologies is the unit 1,<br />

<str<strong>on</strong>g>and</str<strong>on</strong>g> the class of c<strong>on</strong>tradicti<strong>on</strong> is the 0 in that algebra.<br />

Recall that for any set X, the powerset PX is the prototype of a boolean algebra. For<br />

subsets A,B of X, the join A ∨ B is the uni<strong>on</strong> A B, the meet A ∧ B is the<br />

intersecti<strong>on</strong> A ∩ B, A∗ is the complement X\A, the zero 0 is the empty set ∅, <str<strong>on</strong>g>and</str<strong>on</strong>g> the<br />

unit 1 is the set X<br />

It is a very remarkable fact that every finite boolean algebra can be identified with a<br />

powerset algebra.<br />

Definiti<strong>on</strong> An element a of a boolean algebra A is called an atom if a 0 <str<strong>on</strong>g>and</str<strong>on</strong>g> if b is such<br />

that a ≥ b ≥ 0 then <strong>on</strong>e has that b aorb 0. In other words, an atom is a<br />

minimal element in A\0.<br />

Propositi<strong>on</strong> Let A be a finite boolean algebra. Then for every element b 0 of A <strong>on</strong>e has<br />

some atom a such that b ≥ a.<br />

Proof If b is not already an atom, then <strong>on</strong>e has some element b1 such that<br />

b b1 0.If b1 is an atom, we are d<strong>on</strong>e. Otherwise there is some b2 such that<br />

b1 b2 0.If b2 is an atom, we are d<strong>on</strong>e. Otherwise we c<strong>on</strong>tinue this process.<br />

Because A is finite, we must find at some point an atom a such that b a.<br />

Propositi<strong>on</strong> If b 0 is any element in the boolean algebra A <str<strong>on</strong>g>and</str<strong>on</strong>g> a any atom, then either<br />

b ≥ aorb∗ ≥ a.<br />

Proof We have b ∧ a ≤ a.Because a is an atom, we must have b ∧ a aor<br />

b ∧ a 0.This is b ≤ aorb≤ a∗ .<br />

Propositi<strong>on</strong> Let A be a finite boolean algebra. Then every element a ∈ A is the join of all<br />

atoms c where c ≤ a :<br />

a ∨c|c anatom,c≤a Proof Let b ∨c|c anatom,c≤a.Clearly, b ≤ a.Assume b a, then b∗ ∧ a 0<br />

because b∗ ∧ a 0 is equivalent to a ≤ b∗ ∗ b. Hence there is an atom<br />

c ≤ b∗ ∧ a.For this atom c we have c ≤ aaswellasc≤ b∗ .But for any atom<br />

c ≤ a we have c ≤ b. This c<strong>on</strong>tradicts c ≤ b∗ .Thus b a.<br />

Theorem Let AtomA̸ be the set of all atoms of the finite boolean algebra A. Wecan<br />

define a map from A into the powerset of AtomA:<br />

: A → PAtomA,a c|c anatom,c≤a For example,<br />

0 ∅,1 AtomA<br />

But also,<br />

a ∧ b a ∩ b,a ∨ b a b,a ∗ Atom\a<br />

The map is bijective with inverse<br />

: PAtomA → A,S ∨c|c ∈ S<br />

Proof Let c ∈ a ∨ b, then c is an atom <str<strong>on</strong>g>and</str<strong>on</strong>g> c ≤ a ∨ b.Thus,<br />

4


c ∧ a ∨ b c ∧ a ∨ c ∧ b c where we used distributivity. Because c is an<br />

atom, we have c ∧ a is either 0 or c <str<strong>on</strong>g>and</str<strong>on</strong>g> similarly, c ∧ b is either 0 or c. Butwe<br />

cannot have that c ∧ a <str<strong>on</strong>g>and</str<strong>on</strong>g> c ∧ b are both 0.Thus either c ∧ a c or<br />

c ∧ b c. Hence, c ≤ a or c ≤ b, thatis,c∈ a or c ∈ b.Thisis,<br />

a ∨ b ⊆ a b. Ofcourse,anatomc∈a b bel<strong>on</strong>gs to a or<br />

ab <str<strong>on</strong>g>and</str<strong>on</strong>g> is therefore an atom c ≤ a or c ≤ b <str<strong>on</strong>g>and</str<strong>on</strong>g> therefore c ≤ a ∨ b. That is<br />

c ∈ a ∨ b.This proves a ∨ b a b.<br />

a∗ Atom\a says that atoms which are not below a are below a∗ .But<br />

we have already shown this.<br />

Exercise Use a ∨ b a b <str<strong>on</strong>g>and</str<strong>on</strong>g> a∗ Atom\a in order to show<br />

a ∧ b a ∩ b<br />

In order to show that <str<strong>on</strong>g>and</str<strong>on</strong>g> are inverse to each other, let S be any set of atoms<br />

<str<strong>on</strong>g>and</str<strong>on</strong>g> a ∨c|c ∈ S. Of course, S ⊆ aa.Then if d is any atom such that d ≤ a,<br />

that is d ∈ aa, wehavedd∧a d ∧∨c|c ∈ S ∨d ∧ c where each term<br />

d ∧ c is either d or 0 because d is an atom. But then we must have d ∧ c d for at<br />

least <strong>on</strong>e c ∈ S. But this shows d ≤ c, <str<strong>on</strong>g>and</str<strong>on</strong>g> because also c is an atom, d c for<br />

some c ∈ S.This is aS S.<br />

According to the previous propositi<strong>on</strong>, we have a ∨c|c an atom, c ≤ a,<br />

that is a a.<br />

Thus <str<strong>on</strong>g>and</str<strong>on</strong>g> are inverse of each other.<br />

The essence of this theorem is<br />

Theorem Let A be a finite boolean algebra. Then via the map , the algebra A can be<br />

identified with the powerset algebra PAtomA.In particular, if A has n atoms,<br />

then A has 2n − many elements.<br />

Thus finite boolean algebras are essentially powerset algebras. For infinite boolean<br />

algebras this is not the case.<br />

Exercise Let S be any infinite set. Then the sets which are either finite, or where the<br />

complement is finite, form the boolean algebra CFS of finite-cofinite subsets of<br />

S.For S ℕ , this algebra is denumerable.<br />

Hint: That for any set S, CFS is a boolean algebra is straight forward <str<strong>on</strong>g>and</str<strong>on</strong>g> uses facts<br />

like that the uni<strong>on</strong> of finite sets is finite.<br />

A set is called denumerable if it is infinite <str<strong>on</strong>g>and</str<strong>on</strong>g> countable, that is its elements can be<br />

listed as an infinite sequence as s1,s2,…<br />

The following indicates a listing of all finite-cofinite sets:<br />

∅,ℕ;<br />

0,ℕ\0;<br />

1,0,1,ℕ\1,ℕ\0,1;<br />

2,0,2,1,2,0,1,2,ℕ\2,ℕ\0,2,ℕ\1,2,ℕ\0,1,2<br />

…<br />

What is the pattern? Where would you place 2,5,28?<br />

It is known from set theory, that no powerset algebra can be denumerable One can<br />

show that already Pℕ is uncountable. Hence, CFℕ cannot be a powerset algebra.<br />

5


Representing <strong>Boolean</strong> Functi<strong>on</strong>s<br />

Secti<strong>on</strong> 10.2, <str<strong>on</strong>g>Problems</str<strong>on</strong>g>: 1, 3, 4, 5, 9, 10 14 (fifth editi<strong>on</strong>);<br />

Secti<strong>on</strong> 11.2, <str<strong>on</strong>g>Problems</str<strong>on</strong>g> 1, 3, 4, 5, 9, 10, 14 (sixth editi<strong>on</strong>)<br />

The logical expressi<strong>on</strong> p ∧ q ∧ r is true if <str<strong>on</strong>g>and</str<strong>on</strong>g> <strong>on</strong>ly if we have that p T <str<strong>on</strong>g>and</str<strong>on</strong>g> q F<br />

<str<strong>on</strong>g>and</str<strong>on</strong>g> r T. Instead of q we can also use the notati<strong>on</strong> q∗ , <str<strong>on</strong>g>and</str<strong>on</strong>g> if we perceive logical<br />

c<strong>on</strong>juncti<strong>on</strong> as multiplicati<strong>on</strong>, then we may drop the ∧ sign. Thus for p ∧ q ∧ r we<br />

can write pq∗r The two element boolean algebra B B2 c<strong>on</strong>sists <strong>on</strong>ly of 0 <str<strong>on</strong>g>and</str<strong>on</strong>g> 1 which act like F <str<strong>on</strong>g>and</str<strong>on</strong>g><br />

T. The expressi<strong>on</strong> pq∗r is like a formula for a functi<strong>on</strong><br />

fp,q,r pq∗r which takes <strong>on</strong> the value 1 if <str<strong>on</strong>g>and</str<strong>on</strong>g> <strong>on</strong>ly if p 1,q 0,r 1.At all other values for the<br />

variables p,q,r the functi<strong>on</strong> f takes <strong>on</strong> the value 0.<br />

In the following, let B be the two element boolean algebra, B2 0,1. A boolean<br />

functi<strong>on</strong> of degree n is a map F : Bn → B. It can be given by a table, say<br />

x y F<br />

1 1 0<br />

1 0 1<br />

0 1 1<br />

0 0 0<br />

This functi<strong>on</strong> F is of degree 2 <str<strong>on</strong>g>and</str<strong>on</strong>g> takes <strong>on</strong> the value 1 if <str<strong>on</strong>g>and</str<strong>on</strong>g> <strong>on</strong>ly if for x 1,y 0 <str<strong>on</strong>g>and</str<strong>on</strong>g><br />

for x 0,y 1. We obviously have that<br />

Fx,y xy∗ ∨ x∗y Similarly, any boolean functi<strong>on</strong> of degree n is given by such a disjuncti<strong>on</strong> (the book<br />

∗ says sum) of a c<strong>on</strong>juncti<strong>on</strong> (or product) of the variables xi or xi .This is called the<br />

sum-of-products-expansi<strong>on</strong> or disjunctive normal form.<br />

The functi<strong>on</strong> F∗ has the table<br />

<str<strong>on</strong>g>and</str<strong>on</strong>g><br />

x y F∗ 1 1 1<br />

1 0 0<br />

0 1 0<br />

0 0 1<br />

F ∗ x,y xy ∨ x ∗ y ∗<br />

using that F ∗ ∗ F, we get by De Morgan’s laws that<br />

6


Fx,y xy ∨ x∗y ∗ ∗ x∗ ∨ y∗x ∨ y<br />

Here we have represented F as a c<strong>on</strong>juncti<strong>on</strong> (product) of disjuncti<strong>on</strong>s (sums). This<br />

canbecalledaproduct-of-sums-expansi<strong>on</strong> or c<strong>on</strong>junctive normal form.<br />

These normal forms show that every boolean functi<strong>on</strong> of degree n is an algebraic term<br />

in variables x1,…,xn using <strong>on</strong>ly ∗ ,∧,∨. Actually, every boolean functi<strong>on</strong> can be<br />

expressed in terms of ∧ <str<strong>on</strong>g>and</str<strong>on</strong>g> ∗ or in terms of ∨ <str<strong>on</strong>g>and</str<strong>on</strong>g> ∗ . This is because of:<br />

a ∧ b a∗ ∨ b∗ ∗ <str<strong>on</strong>g>and</str<strong>on</strong>g> a ∨ b a∗ ∧ b∗ ∗<br />

We say that ∧,∨ , ∗ , ∨, ∗ , ∧, ∗ are functi<strong>on</strong>ally complete. It is quite remarkable<br />

that <strong>on</strong>e binary operati<strong>on</strong> can express any propositi<strong>on</strong>al combinati<strong>on</strong>. The c<strong>on</strong>nective<br />

N<str<strong>on</strong>g>and</str<strong>on</strong>g> st<str<strong>on</strong>g>and</str<strong>on</strong>g>s for not_<str<strong>on</strong>g>and</str<strong>on</strong>g>. It is also called the Sheffer stroke ∣. Its truth table looks<br />

like:<br />

x y ∣<br />

1 1 0<br />

1 0 1<br />

0 1 1<br />

0 0 1<br />

Exercise Find the c<strong>on</strong>junctive <str<strong>on</strong>g>and</str<strong>on</strong>g> disjunctive normal form of the c<strong>on</strong>nective ∣.<br />

All propositi<strong>on</strong>al c<strong>on</strong>nectives are terms in ∣.This is Exercise 14 in the book.<br />

The boolean functi<strong>on</strong>s of degree n form a boolean algebra: If F <str<strong>on</strong>g>and</str<strong>on</strong>g> G are such<br />

functi<strong>on</strong>s, then the meet of F <str<strong>on</strong>g>and</str<strong>on</strong>g> G is the functi<strong>on</strong> F ∧ G for which<br />

F ∧ Gx1,…,xn Fx1,…,xn ∧ Gx1,…,xn,<str<strong>on</strong>g>and</str<strong>on</strong>g> similarly for the other boolean<br />

operati<strong>on</strong>s.<br />

Now, what are the atoms A of this boolean algebra? First, we must have A 0.Now,<br />

F ≥ G iff Fx1,…,xn ≥ Gx1,…,xn holds for all x1,…,xn ∈ Bn .Thus, A is an atom iff<br />

Ax1,…,xn 1 for exactly <strong>on</strong>e choice of x1,…,xn ∈ Bn , <str<strong>on</strong>g>and</str<strong>on</strong>g> 0 elsewhere. Thus, the<br />

disjunctive normal form of an atom A has exactly <strong>on</strong>e term, <str<strong>on</strong>g>and</str<strong>on</strong>g> the disjunctive normal<br />

form of F is the representati<strong>on</strong> of F as a join of atoms.<br />

There are 2n many atoms <str<strong>on</strong>g>and</str<strong>on</strong>g> the algebra of boolean functi<strong>on</strong>s F of degree n has<br />

22n −many elements. We denote this boolean algebra as Fn <str<strong>on</strong>g>and</str<strong>on</strong>g> it is also called the<br />

free boolean algebra, freely generated by n many elements.<br />

Special boolean functi<strong>on</strong>s of degree n are the n projecti<strong>on</strong>s Pi,i 1,…,n.The<br />

projecti<strong>on</strong> Pi assigns to the n − tuple x1,…,xn the value of the ith coordinate. For<br />

example, in case that n 3 <str<strong>on</strong>g>and</str<strong>on</strong>g> i 2, we have that P20,0,0 0 <str<strong>on</strong>g>and</str<strong>on</strong>g><br />

P21,1,1 1.The value of P2x1,x2,x3 is 1 if <str<strong>on</strong>g>and</str<strong>on</strong>g> <strong>on</strong>ly if x2 1.For the disjunctive<br />

normalform of P2 we have:<br />

∗ ∗ ∗ ∗ P2x1,x2,x3 x1x2x3 ∨ x1x2x3 ∨ x1x2x 3 ∨ x1x2x 3 ≡ x2<br />

If we denote the projecti<strong>on</strong>s Pi as xi, then we have in the algebra F3 of boolean<br />

functi<strong>on</strong>s of degree 3 that<br />

∗ ∗ ∗ ∗<br />

x2 x1x2x3∨x 1x2x3∨x 1x2x 3∨x1 x2x 3<br />

7


This is now an equality in the boolean algebra F3.<br />

More generally, we see that in the free boolean algebra Fn every element F admits a<br />

unique representati<strong>on</strong> as a disjuncti<strong>on</strong> of a product (that is a c<strong>on</strong>juncti<strong>on</strong>) of the<br />

projecti<strong>on</strong>s xi <str<strong>on</strong>g>and</str<strong>on</strong>g> their complements.<br />

Definiti<strong>on</strong> A homomorphism between boolean algebras A <str<strong>on</strong>g>and</str<strong>on</strong>g> B is a map : A → B such<br />

that<br />

0 0,1 1,<br />

a1 ∧ a2 a1 ∧ a2,a1 ∨ a2 a1 ∨ a2,<br />

a∗ a∗ Now let a1,…,an be any list of elements in a boolean algebra A.The assignment<br />

xi ai then can be extended to a map : Fn → A by replacing in the disjunctive<br />

∗ ∗ normal form of the element F each xi by ai <str<strong>on</strong>g>and</str<strong>on</strong>g> xi by ai .<br />

Exercise Show that the map is a homomorphism between the boolean algebras.<br />

Hint: IfF s1 ∨…∨sk <str<strong>on</strong>g>and</str<strong>on</strong>g> G t1 ∨…∨tl then F ∧ G u1 ∧…∧um where the ui are the<br />

comm<strong>on</strong> members in the disjuncti<strong>on</strong>. This is because si ∧ tj si in case that si tj or<br />

∗ 0 otherwise. Notice that if si ≠ tj at least <strong>on</strong>e of the x occurs in si as x but as x in tj,<br />

or the other way round. It is now easy to see that<br />

F ∧ G u1 ∧…∧um s1 ∨…∨sk ∧ t1 ∨…∨tl F ∧ G.Indeed<br />

if si ≠ tj then si ∧ tj 0 because the c<strong>on</strong>juncti<strong>on</strong> c<strong>on</strong>tains <strong>on</strong>e of the a<br />

complemented as well as uncomplemented. similar arguments apply to join <str<strong>on</strong>g>and</str<strong>on</strong>g><br />

complement.<br />

Definiti<strong>on</strong> A subset B of a boolean algebra A is called closed if it c<strong>on</strong>tains 0 <str<strong>on</strong>g>and</str<strong>on</strong>g> 1 <str<strong>on</strong>g>and</str<strong>on</strong>g> if<br />

it c<strong>on</strong>tains with a the complement a∗ <str<strong>on</strong>g>and</str<strong>on</strong>g> with a <str<strong>on</strong>g>and</str<strong>on</strong>g> b, also a ∧ b <str<strong>on</strong>g>and</str<strong>on</strong>g> a ∨ b..<br />

A closed subset of a boolean algebra is by itself a boolean algebra. Thus closed<br />

subsets are also called subalgebras. For any boolean algebra A, the subset 0,1 is<br />

the smallest closed subset of A.Somewhat more general, for any a ∈ A, the subset<br />

a,a ∗ ,0,1 is the smallest closed subset of A which c<strong>on</strong>tains a.For any set S, the<br />

algebra CFS of finite-cofinite subsets of S is a subalgebra of the powerset algebra<br />

PS.<br />

For any subset X of a boolean algebra A there is a smallest closed subset which<br />

c<strong>on</strong>tains X, namely the intersecti<strong>on</strong> of all closed subsets which c<strong>on</strong>tain X. This is so<br />

because the intersecti<strong>on</strong> of closed subsets is closed <str<strong>on</strong>g>and</str<strong>on</strong>g> the whole algebra, which of<br />

course is a closed subset, c<strong>on</strong>tains X<br />

The set X is said to generate the boolean algebra A,in case that A is the smallest<br />

closed subset that c<strong>on</strong>tains X. Of course, A is trivially generated by its underlying set<br />

A. For any A, the empty subset ∅ generates the smallest boolean subalgebra, namely<br />

the <strong>on</strong>e c<strong>on</strong>sisting <strong>on</strong>ly of 0 <str<strong>on</strong>g>and</str<strong>on</strong>g> 1.Important is the<br />

Example In the algebra Fn, the set x1,…,x n of the n projecti<strong>on</strong>s generates Fn.<br />

This is because every boolean functi<strong>on</strong> F is a "boolean" combinati<strong>on</strong> of projecti<strong>on</strong>s.<br />

Propositi<strong>on</strong> Every finite boolean algebra A is a homomorphic image of a free boolean<br />

algebra Fn for some n.<br />

8


Assume that the boolean algebra A is generated by a1,…,an.Then there is a unique<br />

homomorphism from Fn <strong>on</strong>to A.Thus A can have at most 22n −many elements.<br />

Definiti<strong>on</strong> A bijective homomorphism is called an isomorphism.<br />

Propositi<strong>on</strong> The inverse map of a bijective homomorphism is homomorphic. One writes<br />

A ≅ B in case that there is an isomorphism from A to B.<br />

This is an easy exercise. Isomorphic boolean algebras have the same cardinal <str<strong>on</strong>g>and</str<strong>on</strong>g> the<br />

same algebraic properties.<br />

Theorem Let G be a boolean algebra which is generated by n elements y1,y2,…,yn such<br />

that if A is any boolean algebra <str<strong>on</strong>g>and</str<strong>on</strong>g> a1,a2,…,an any list of elements in A, then<br />

there is a unique homomorphism form G to A such that yi ai.Then G ≅ Fn.<br />

Proof Because there must be a homomorphism from Fn <strong>on</strong>to G <str<strong>on</strong>g>and</str<strong>on</strong>g> a homomorphism<br />

from G <strong>on</strong>to Fn, both algebras have the same number of elements <str<strong>on</strong>g>and</str<strong>on</strong>g> therefore are<br />

isomorphic. However, there is a more c<strong>on</strong>ceptual argument: There is a unique<br />

homomorphism : Fn→ G,x i yi <str<strong>on</strong>g>and</str<strong>on</strong>g> a unique homomorphism<br />

: G → Fn,yi xi. The compositi<strong>on</strong> ∘ is a homomorphism<br />

G → G,yi yi.Hence ∘ must be the identity <strong>on</strong> G <str<strong>on</strong>g>and</str<strong>on</strong>g> similarly, ∘ must be<br />

the identity <strong>on</strong> Fn. Hence, <str<strong>on</strong>g>and</str<strong>on</strong>g> are inverse to each other.<br />

We have that Fn is the free boolean algebra, freely generated by n elements. Given an<br />

infinite set p1,p2,…,pn,…of propositi<strong>on</strong>al variables, we defined propositi<strong>on</strong>s as the<br />

boolean combinati<strong>on</strong>s of such variables. Two such propositi<strong>on</strong>s are equivalent, if<br />

p ↔ q is a tautology, that is its truth table is c<strong>on</strong>stant 1. Equivalence classes of<br />

propositi<strong>on</strong>s form a boolean algebra PROP. From an algebraic st<str<strong>on</strong>g>and</str<strong>on</strong>g>point, PROP is<br />

characterized as the free boolean algebra, freely generated by p1,p2,…,pn,…. That<br />

is, every assignment pi ai of the propositi<strong>on</strong>al variables by elements of an arbitrary<br />

boolean algebra A admits a unique homomorphic extensi<strong>on</strong>. If A is the two element<br />

boolean algebra T,F then a truth assignment <strong>on</strong> the variables pi leads to a truth<br />

evaluati<strong>on</strong> of the propositi<strong>on</strong>s p, according to the truth tables.<br />

Exercise The algebra PROP <str<strong>on</strong>g>and</str<strong>on</strong>g> the algebra CFN of finite-cofinite sets of natural<br />

numbers are not isomorphic.<br />

Hint:Are there any atoms in PRO?<br />

Logic Gates<br />

Secti<strong>on</strong> 10.3 <str<strong>on</strong>g>Problems</str<strong>on</strong>g>: 1-5, 6, 7, 8 (fifth editi<strong>on</strong>); Secti<strong>on</strong><br />

11.3 <str<strong>on</strong>g>Problems</str<strong>on</strong>g>1-5, 6, 7, 8(sixth editi<strong>on</strong>)<br />

The design of certain electr<strong>on</strong>ic circuits is based <strong>on</strong> boolean logic. Take for example<br />

the boolean functi<strong>on</strong> fx,y,z xy ∨ xz ∨ yz.This functi<strong>on</strong> takes <strong>on</strong> the value 1 if two of<br />

the three variables are 1. This functi<strong>on</strong> can be used to model majority voting am<strong>on</strong>gst<br />

three individuals.<br />

Electric circuits use as basic comp<strong>on</strong>ents logic gates. Any functi<strong>on</strong>ally complete set<br />

9


suffices. Most circuits are based <strong>on</strong> the Inverter, And Gate <str<strong>on</strong>g>and</str<strong>on</strong>g> the Or Gate. The<br />

inverter has <strong>on</strong>ly <strong>on</strong>e input arrow, And <str<strong>on</strong>g>and</str<strong>on</strong>g> Or gates can have any number of input<br />

arrows. All gates have <strong>on</strong>e output arrow. Inputs can be outputs of other gates. Input as<br />

well as output arrows have values which are either 0 or 1 <str<strong>on</strong>g>and</str<strong>on</strong>g> are calculated according<br />

to boolean logic.<br />

As an example c<strong>on</strong>sider the light in a hallway which is c<strong>on</strong>trolled by two light switches<br />

which can be either up or down. Any change of the positi<strong>on</strong> of <strong>on</strong>e switch changes the<br />

state of the light which can be either <strong>on</strong> or off. The following table models the situati<strong>on</strong>:<br />

x y L<br />

down up off<br />

up up <strong>on</strong><br />

up down off<br />

down down <strong>on</strong><br />

We can arbitrarily assign boolean values to the positi<strong>on</strong> of the switches, say<br />

down 0,up 1,off 0,<strong>on</strong> 1, then L is the boolean functi<strong>on</strong>:<br />

x y L<br />

1 1 1<br />

1 0 0<br />

0 1 0<br />

0 0 1<br />

which is given by the expressi<strong>on</strong> Lx,y xy ∨ x ∗ y ∗ . The logic circuit for this functi<strong>on</strong> is:<br />

10


Logic Gate for two switches c<strong>on</strong>trolling a light<br />

Of course, finding the electric wiring for this combinatorial situati<strong>on</strong> is a different<br />

matter.<br />

11

Hooray! Your file is uploaded and ready to be published.

Saved successfully!

Ooh no, something went wrong!