COMPLETIONS OF BOOLEAN ALGEBRAS

advertisement
COMPLETIONS OF BOOLEAN ALGEBRAS
Let A be a lattice with 0. Let a  A.
a* is a pseudocomplement of a iff a*  A and a  a* = 0 and
for every b  A: if a  b = 0 then b ≤ a*.
An element can have at most one pseudocomplement: if b and c are both
pseudocomplements of a, then a  b = 0 and a  c = 0 and hence b ≤ c (since c is a
pseudocomplement of a) and c ≤ b (since b is too). Hence b = c.
A is pseudocomplemented iff every element of A has a pseudocomplement.
Let A be a pseudocomplemented lattice.
NA = {a*: a  A}, the set of pseudocomplements in A
NA = <NA, ≤N, N, N,N,0N,1N> where:
1. ≤N is defined by:
for every a,b  NA: a ≤N b iff a ≤A b
2. N is defined by:
for every a  NA: N(a) = a*
3. N is defined by:
for every a,b  NA: a N b = a A b
4. N is defined by:
for every a,b  NA: a N b = (a* A b*)*
5. 1N = 0A*
0N = 0A
LEMMA 1: a ≤N a**
PROOF:
a** is the peudocomplement of a*. Hence for every b  A such that b A a* = 0
b ≤A a**. Since a A a* = 0, a ≤A a**. Hence a ≤N a**. ◄
LEMMA 2: if a ≤N b then b* ≤N a*
PROOF:
Let a ≤N b. Then a ≤A b. So a A b = a.
b A b* = 0. Hence a A b A b* = 0, hence a  b* = 0. Hence b* ≤A a*,
hence b* ≤N a*. ◄
LEMMA 3: a* = a***
PROOF:
With lemma 1 and 2: a*** ≤ a*.
With lemma 1: a* ≤ a***
Hence: a* = a***. ◄
LEMMA 4: NA = {a  A: a = a**}
PROOF:
Obviously, if a = a** then a  NA.
If a  NA, then for some b  A: a = b*.
Then, a** = b***, and by lemma 3, a** = b*, hence a = a**. ◄
THEOREM 5: NA is a Boolean algebra.
PROOF:
1. for every a,b  NA: a N b  NA and N is meet under ≤N.
If a,b  NA, then a = a** and b = b**.
Since a A b ≤A a, with lemma 2, a* ≤A (a A b)*, and, again with lemma 2,
(a A b)** ≤A a. Similarly, (a A b)** ≤A b.
Hence (a A b)** ≤A (a A b).
By lemma 1, a A b ≤A (a A b)**,
hence a A b  NA, hence a N b  NA.
If x  NA and x ≤N a and x ≤N b, then x ≤A a and x ≤A b, then x ≤A (a A b), hence
x ≤N (a N b). So indeed N is meet in ≤N.
2. for every a,b  NA: a N b  NA and N is join under ≤N.
Let a,b  NA. Then, a*,b*  NA. Then, by 1., (a* A b*)  NA, hence
(a* A b*)*  NA, and hence (a N b)  NA.
a* A b* ≤A a*, hence, by lemma 1, a** ≤A (a* A b*)*, and, by lemma 4,
a ≤A (a* A b*)*. Similarly, b ≤A (a* A b*)*.
If x  NA and a ≤N x and b ≤N x, then a ≤A x and b ≤A x, then by lemma 2,
x* ≤A a* and x* ≤A b*, hence x* ≤A (a* A b*), hence, by lemma 2,
(a* A b*)* ≤A x**, hence, by lemma 4, (a* A b*)* ≤A x, hence
a N b ≤N x.
So, indeed N is join in ≤N.
3. 0N, 1N  NA and 0N and 1N are the bounds of NA.
Obviously 1N  NA, since 1N = 0A*.
Since for every x  NA, x A 0A = 0A, for every x  NA x ≤A 0A*, hence
x ≤N 1N.
0A*, 0A**  NA. Hence 0A* A 0A**  NA. But, of course, 0A* A 0A** = 0A.
Hence 0A  NA, hence 0N  NA.
Obviously, for every x  NA: 0A ≤A x. Hence for every x  NA : 0N ≤N x. ◄
So NA is a bounded lattice.
4. For every x  NA: N(x)  NA and
for every x  NA: x N N(x) = 0N and
for every x  NA: x N N(x) = 1N.
Let x  NA. Obviously, N(x)  NA.
x N N(x) = x N x* = ((x* A x**)* = (x* A x)* = 0A* = 1N.
x N N(x) = x A x* = 0A = 0N
So NA is a bounded complemented lattice.
5. Distributivity.
Let a,b,c  NA.
Since a ≤N a N (b N c), (a N c) ≤N a N (b N c).
Also (b N c) ≤N a N (b N c).
Obviously, if x ≤N y, then x N y* = 0N, since y  y* = 0N.
Hence, (a N c) N ( a N (b N c))* = 0N.
and (b N c) N ( a N (b N c))* = 0N.
i.e.
a N (c N ( a N (b N c))*) = 0N.
b N (c N ( a N (b N c))*) = 0N.
By definition of pseudocomplement:
c N ( a N (b N c))* ≤N a*
c N ( a N (b N c))* ≤N b*
Hence c N ( a N (b N c))* ≤N a* N b*
Once again, if x ≤N y, then x N y* = 0N,
Hence: c N ( a N (b N c))*  (a* N b*)* = 0N
And by definition of pseudocomplement:
c N (a* N b*)* ≤N (a N (b N c))**.
Now, by definition of N:
c N (a* N b*)* = c N (a N b)
And by lemma 4:
(a N (b N c))** = a N (b N c)
Hence: c N (a N b) ≤N a N (b N c)
As can be checked in the section on modularity and distributivity, this is
equivalent to distributivity.
Hence, indeed NA is a Boolean algebra. ◄
Example: Distributive lattice D3
17
14
15
11
16
12
13
7
9
10
8
4
6
5
1
3
2
0
D3 is pseudocomplemented:
0* = 17
1* = 10
2* = 9
3* = 7
8* = 11* = 12* = 13* = 14* = 15* = 16* = 17* = 0
6* = 10* = 1
5* = 9* = 2
4* = 7* = 3
The set of pseudocomplements form a Boolean algebra, but not a sublattice of D3:
while meets are preserved, joins are not:
17
14
11
15
16
12
13
7
9
8
4
6
5
1
3
2
0
10
Let A be a lattice with 0.
IA is the set of all ideals in A.
IA = <IA,≤I, I,I,0I,1I> where:
≤I = 
I I J = I  J
I I J = (I  J]
0I = 0A
1I = A
LEMMA 6: IA is a complete bounded lattice lattice.
PROOF:
1. The intersection of a set of ideals in A is an ideal in A if non-empty. If A has 0, 0
is in every ideal in A, hence the intersection of any set of ideals in A is in IA.
Thus IA is closed under I. Since. I is , it is obviously meet under . This means
that IA is a complete* meet semilattice. But since IAhas a maximum A, I(Ø) = A.
Thus, IA is a complete meet semilattice. As we have seen, that means that IA is a
complete lattice. That I(X} = (X], for X  IA is straightforward: by definition
(X] is the smallest ideal extending X. ◄
LEMMA 7: If A is a distributive lattice with 0, then IA is pseudocomplemented.
PROOF:
Let I  IA.
Take I* = {b  A: for every i  I: b  i = 0}.
I*  IA.
Namely:
If x  I* then for every i  I: x  i = 0. Let y ≤ x. Then, obviously, for every i  I:
y  i = 0, hence y  I*.
If x,y  I* then for every i  I: x  i = 0 and for every i  I: y  i = 0,
Hence for every i  I: (x  i)  (y  i) = 0.
With distributivity, for every i  I: i  (x  y) = 0, hence x  y  I*.
Hence I*  IA.
I  I* = I  {b  A: for every i  I: b  i = 0} = {0}.
Let I  J = {0}. Let j  J. Suppose that for some i  I: i  j  0. Then i  j  I  J,
since I and J are ideals. Hence I  J  {0}.
Hence for every i  I: j  i = 0, and hence J  I*.
Consequently, I* is the pseudocomplement of I, and IA is pseudocomplemented. ◄
CORROLLARY 8: If A is a distributive lattice with 0, IA is a complete
pseudocomplemented lattice.
Let A be a lattice with 0.
NIA, the set of normal ideals in A, is given by:
NIA = {I*  IA: I  IA}
Alternatively:
NIA = {I  IA: I = I**}
Thus, NIA is the set of pseudocomplements in IA
CORROLLARY 9: If A is a distributive lattice with 0, NIA is a complete Boolean
algebra.
PROOF:
Since IA is a complete pseudocomplemented lattice, NIA is a Boolean algebra, with
0NI = {0A} and 1NI = A. So we only need to prove that NIA is closed under complete
meet and join.
The argument that NIA is closed under NI is the same as the argument for the finite
operation: NI:
For X  NIA: NI(X) = {I  IA: I  X}.
Since for every I  IA: 0A  I, {I  IA: I  X}  Ø, hence
{I  IA: I  X}  IA.
For every I  INA: I = I**.
{I  IA: I  X}  I
Hence I*  {I  IA: I  X}*, hence for every I  NIA: {I  IA: I  X}**  I
Hence {I  IA: I  X}**  {I  IA: I  X}
{I  IA: I  X}  {I  IA: I  X}**,
hence {I  IA: I  X} = {I  IA: I  X}**,
hence {I  IA: I  X}  NIA.
Hence NI(X)  NIA
If J  NA and for every I  X: J  I: then J  {I  IA: I  X}, hence
NI is meet in ≤NI.
This means that NIA is itself a complete* meet semilattice. But,again, NIA has a
maximum 1NI. That means that 1NI = NI(Ø)  NIA. Hence NIA is a complete meet
semilattice. But that means that NIA is a complete lattice.
Hence, for every X  NIA:
For X  NIA:
NI(X)  NIA
NI(X) = (X]**
So NIA is indeed a complete Boolean algebra ◄
In the case that A is as distributive lattice, NIA doesn't give you much information
about A, since the join operation in A and the join operation in NIA are not
sufficiently related. But in the case that A is a Boolean algebra, the joins are
preserved:
THEOREM 10: Let B be a Boolean algebra.
Let h: B  IA be given by:
for every b  B: h(b) = (b].
Then h is an embedding of B into NIB
and h preserves all infinite joins and meets that exist in B.
PROOF:
1. Let a  B.
(Ba]* = {b  B: for every i  (Ba]: i B b = 0B} =
{b  B: for every i  B: if i ≤B Ba then i B b = 0B} = [Boolean]
{b  B: for every i  B: if i ≤B Ba then b ≤B Bi} = [Boolean]
{b  B: for every i  B: if a ≤B Bi then b ≤B Bi}=
{b  B: for every i  B: if a ≤B Bi then b ≤B Bi} =
{b  B: for every j  B: if a ≤B j then b ≤B j} = (a]
Hence, for every a  B: (a]  NIA.
So, h: B  NIA.
2. For every a,b  B: if a  b, then obviously (a]  (b]. So h is one-one.
3. Let X  B and B(X)  B.
Then h(B(X)) = (B(X)] and (B(X)]  NIB.
(B(X)] = {b  B: b ≤ B(X)} = {(b]: b  B} = NI((b]:b  B} =
NI{h(b):b  B}.
So h preserves all existing meets in B: which is all finite meets, plus those infinite
meets that exist in B.
4. Let X  B and B(X)  B.
Then h(B(X)) = (B(X)] and (B(X)]  NIB.
For any Y  NIA: NI(Y) = (Y]**
Hence
NI(h(x): x  X) = NI((x]: x  X) = ({(x]: x  X}]**
So we need to prove that: (B(X)] = ({(x]: x  X}]**
As we saw above, (Ba] = (a]*, hence (a] = I** iff (Ba] = I***, iff, by the lemma,
(Ba) = I*.
Hence, we need to prove: (BB(X)] = ({(x]: x  X}]*.
Let z  ({(x]: x  X}]*. Then for every i  ({(x]: x  X}]: i B z = 0B.
Hence for every i  ({(x]: x  X}]: z ≤B i.
Since for every x  X: x  ({(x]: x  X}], it follows that:
for every x  X: z ≤B Bx.
Then for every x  X: x ≤B Bz
Hence B(X) ≤B Bz.
Hence z ≤B BB(X).
Hence z  (BB(X)].
So: ({(x]: x  X}]*  (BB(X)]
Let z  (BB(X)].
Then z ≤B BB(X). Hence B(X) ≤B Bz
Hence for every x  X: x ≤B Bz, hence
For every x  X: x B z = 0N.
Let i  ({(x]: x  X}].
Then for some y1,...,yn  {(x]: x  X}: i ≤B y1 B ... B yn
But y1 B z = 0B,...,yn B z = 0B, hence
(y1 B z) B ... B (yn B z) = 0B, hence,
(y1 B ... B yn) B z = 0B,
and hence, i B z = 0B.
Thus, for every i  ({(x]: x  X}]: i B z = 0B.
Hence z  ({(x]: x  X}]*.
Hence (BB(X)]  ({(x]: x  X}]*.
Hence (BB(X)] = ({(x]: x  X}]*
And hence: h(B(X)) = NI(h(x): x  X).
So h preserves all existing joins in B, which is all finite joins plus those infinite joins
that exist in B.
5. h(a) = (a] = (a]* = NI(h(a))
h(0B) = (0B] = {0} = 0NI
h(1B) = (1B] = B = 1NI
This completes the proof. ◄
For Boolean algebra B we call NIB the completion of B.
We have proved that every Boolean algebra has a completion.
Note further:
LEMMA 11: For every I  NIB there is some set X  B such that
I = NI(h(x): x  X)
PROOF:
Let I  NIB.
Look at X = {i  B: (i]  I}. X  B.
{h(x): x  X} = {(i]: i  I}
For every i  I: (i]  I. Hence {(i]: i  I}  I.
Hence, since I is an ideal, ({(i]: i  I}]  I.
For every i  I: i  {(i]: i  I}, hence i  ({(i]: i  I}].
Hence I = ({(i]: i  I}]
Since I  NIB: I = I**,
so I = ({(i]: i  I}]** .= NI{(i]: i  I}.
Thus I = NI(h(x): x  X} ◄
BOOLEAN ALGEBRAS FREELY C-GENERATED
Let B = <B,≤,,,,0,1> be a Boolean algebra and X  B.
[X] is the sub-Boolean algebra of B generated by X: the intersection of all subBoolean algebras of B containing X, which is the smallest sub-Boolean algebra of B
containing X. Alternatively, [X] is the closure of X under ,,.
Let B = <B,≤,,,,0,1> be a complete Boolean algebra.
Bc = <B,≤,,,,0,1>, the algebra which has the complete join and meet as
operations.
Let X  B.
[X]c is the sub-Boolean algebra of B c-generated by X: the intersection of all subBoolean algebras of Bc containing X, which is the smallest sub-Boolean algebra of Bc
containing X, with the complete operations of join and meet replaced by the binary
ones. This is, of course, a sub-Boolean algebra of B (if B is complete).
Alternatively, [X]c is the closure of X under ,,.
B is generated by X, X is a set of generators for B iff B = [X]
B is c-generated by X, X is a set of c-generators for B iff B = [X]c.
A free Boolean algebra on α c-generators is a Boolean algebra B c-generated by a
set X with |X| = α such that:
1. The elements of X are incomparable in B.
2. For any Boolean algebra A and any function f: X  A, f can be extended
into a homomorphism from B into A
FACT 12:
FACT 13:
FACT 14:
FACT 15:
For every cardinality α, there is a free Boolean algebra on α c-generators.
The free Boolean algebra on α c-generators is unique up to isomorphism.
The free Boolean algebra on α c-generators has 22α elements.
Any Boolean algebra on β c-generators , with β ≤ α can be
embedded in the free Boolean algebra on α c-generators.
The proofs of facts 13 and 15 are sketched in Structures for Semantics. Facts 12 and
14 are mentioned there but not proved. They will not be proved here either.
LEMMA 16: Let B be a Boolean algebra on α generators.
Then NIB is a Boolean algebra on α c-generators.
PROOF:
Let B be a Boolean algebra on α generators.
h(B) is isomorphic to B, hence h(B) is also a Boolean algebra on α generators.
By the lemma, every element in NIB is the complete join of a subset of h(B), hence
h(B) c-generates NIB. This means that the set α generators of h(B) c-generates NIB. ◄
CORROLLARY 17: Any Boolean algebra on β generators, with β ≤ α can be
embedded in the free Boolean algebra on α generators.
PROOF:
Let B be a Boolean algebra on β generators, β ≤ α.
B can be embedded in NIB, which, by lemma 16, is a Boolean algebra on β
c-generators. By fact 15, NIB can be embedded in the free Boolean algebra on α cgenerators. Hence B can be embedded in the latter. ◄
Let X be a set.
For every x  X, Ux = {Y  X: x  Y}
U = {Ux: x  X}
LEMMA 18: |U| = |X|
PROOF: if x  y then {x}  Ux and {x}  Uy, hence Ux  Uy. ◄
LEMMA 19: pow(pow(X)) is c-generated by U.
PROOF:
For every Q  pow(pow(X)): Q = ({Ux: x  Z}: Z  Q}. ◄
CORROLLARY 20: If |X|= α, then pow(pow(X)) is up to isomorphism the free
Boolean algebra with α c-generators.
PROOF:
pow(pow(X)) is c-generated by U and |U| = α. Hence there is a homomorphism from
the free Boolean algebra with α c-generators onto pow(pow(X)). Since pow(pow(X))
and the free Boolean algebra on α c-generators have the same cardinality, this
homomorphism is an isomorphism. ◄
CORROLLARY 21: If |X|= α, then every Boolean algebra with β c-generators or β
generators, where β ≤ α, can be embedded in pow(pow(X)).
Download