let T be TopSpace; :: thesis: LattStr(# (Open_Domains_of T),(OPD-Union T),(OPD-Meet T) #) is B_Lattice
set L = LattStr(# (Open_Domains_of T),(OPD-Union T),(OPD-Meet T) #);
LattStr(# (Open_Domains_of T),(OPD-Union T),(OPD-Meet T) #) is Lattice-like
proof
thus
for
a,
b being
Element of
LattStr(#
(Open_Domains_of T),
(OPD-Union T),
(OPD-Meet T) #) holds
a "\/" b = b "\/" a
:: according to LATTICES:def 4,
LATTICES:def 10 :: thesis: ( LattStr(# (Open_Domains_of T),(OPD-Union T),(OPD-Meet T) #) is join-associative & LattStr(# (Open_Domains_of T),(OPD-Union T),(OPD-Meet T) #) is meet-absorbing & LattStr(# (Open_Domains_of T),(OPD-Union T),(OPD-Meet T) #) is meet-commutative & LattStr(# (Open_Domains_of T),(OPD-Union T),(OPD-Meet T) #) is meet-associative & LattStr(# (Open_Domains_of T),(OPD-Union T),(OPD-Meet T) #) is join-absorbing )
thus
for
a,
b,
c being
Element of
LattStr(#
(Open_Domains_of T),
(OPD-Union T),
(OPD-Meet T) #) holds
a "\/" (b "\/" c) = (a "\/" b) "\/" c
:: according to LATTICES:def 5 :: thesis: ( LattStr(# (Open_Domains_of T),(OPD-Union T),(OPD-Meet T) #) is meet-absorbing & LattStr(# (Open_Domains_of T),(OPD-Union T),(OPD-Meet T) #) is meet-commutative & LattStr(# (Open_Domains_of T),(OPD-Union T),(OPD-Meet T) #) is meet-associative & LattStr(# (Open_Domains_of T),(OPD-Union T),(OPD-Meet T) #) is join-absorbing )
thus
for
a,
b being
Element of
LattStr(#
(Open_Domains_of T),
(OPD-Union T),
(OPD-Meet T) #) holds
(a "/\" b) "\/" b = b
:: according to LATTICES:def 8 :: thesis: ( LattStr(# (Open_Domains_of T),(OPD-Union T),(OPD-Meet T) #) is meet-commutative & LattStr(# (Open_Domains_of T),(OPD-Union T),(OPD-Meet T) #) is meet-associative & LattStr(# (Open_Domains_of T),(OPD-Union T),(OPD-Meet T) #) is join-absorbing )
thus
for
a,
b being
Element of
LattStr(#
(Open_Domains_of T),
(OPD-Union T),
(OPD-Meet T) #) holds
a "/\" b = b "/\" a
:: according to LATTICES:def 6 :: thesis: ( LattStr(# (Open_Domains_of T),(OPD-Union T),(OPD-Meet T) #) is meet-associative & LattStr(# (Open_Domains_of T),(OPD-Union T),(OPD-Meet T) #) is join-absorbing )
thus
for
a,
b,
c being
Element of
LattStr(#
(Open_Domains_of T),
(OPD-Union T),
(OPD-Meet T) #) holds
a "/\" (b "/\" c) = (a "/\" b) "/\" c
:: according to LATTICES:def 7 :: thesis: LattStr(# (Open_Domains_of T),(OPD-Union T),(OPD-Meet T) #) is join-absorbing
thus
for
a,
b being
Element of
LattStr(#
(Open_Domains_of T),
(OPD-Union T),
(OPD-Meet T) #) holds
a "/\" (a "\/" b) = a
:: according to LATTICES:def 9 :: thesis: verum
end;
then reconsider L = LattStr(# (Open_Domains_of T),(OPD-Union T),(OPD-Meet T) #) as Lattice ;
L is Boolean
proof
thus
L is
lower-bounded
:: according to LATTICES:def 15,
LATTICES:def 20 :: thesis: ( L is upper-bounded & L is complemented & L is distributive )
thus
L is
upper-bounded
:: thesis: ( L is complemented & L is distributive )
thus
L is
complemented
:: thesis: L is distributive proof
let b be
Element of
L;
:: according to LATTICES:def 19 :: thesis: ex b1 being Element of the carrier of L st b1 is_a_complement_of b
reconsider B =
b as
Element of
Open_Domains_of T ;
B in { D where D is Subset of T : D is open_condensed }
;
then consider D being
Subset of
T such that A12:
(
D = B &
D is
open_condensed )
;
A13:
(
D is
condensed &
D is
open )
by A12, TOPS_1:107;
then
Int (B ` ) is
open_condensed
by A12, Th16, Th25;
then
Int (B ` ) in { K where K is Subset of T : K is open_condensed }
;
then reconsider a =
Int (B ` ) as
Element of
L ;
take
a
;
:: thesis: a is_a_complement_of b
[#] T is
open_condensed
by Th21;
then
[#] T in { K where K is Subset of T : K is open_condensed }
;
then reconsider c =
[#] T as
Element of
L ;
A14:
for
v being
Element of
L holds the
L_meet of
L . c,
v = v
thus a "\/" b =
Int (Cl (B \/ (Int (B ` ))))
by Def10
.=
Int ([#] T)
by Th9
.=
c
by TOPS_1:43
.=
Top L
by A14, LATTICE2:25
;
:: according to LATTICES:def 18 :: thesis: ( b "\/" a = Top L & a "/\" b = Bottom L & b "/\" a = Bottom L )
hence
b "\/" a = Top L
;
:: thesis: ( a "/\" b = Bottom L & b "/\" a = Bottom L )
{} T is
open_condensed
by Th20;
then
{} T in { K where K is Subset of T : K is open_condensed }
;
then reconsider c =
{} T as
Element of
L ;
A15:
for
v being
Element of
L holds the
L_join of
L . c,
v = v
A17:
B ` misses B
by XBOOLE_1:79;
thus a "/\" b =
(Int (B ` )) /\ B
by Def11
.=
(Int (D ` )) /\ (Int D)
by A12, A13, TOPS_1:55
.=
Int ((B ` ) /\ B)
by A12, TOPS_1:46
.=
Int ({} T)
by A17, XBOOLE_0:def 7
.=
Bottom L
by A15, LATTICE2:22
;
:: thesis: b "/\" a = Bottom L
hence
b "/\" a = Bottom L
;
:: thesis: verum
end;
thus
L is
distributive
:: thesis: verumproof
let a,
b,
c be
Element of
L;
:: according to LATTICES:def 11 :: thesis: a "/\" (b "\/" c) = (a "/\" b) "\/" (a "/\" c)
reconsider A =
a,
B =
b,
C =
c as
Element of
Open_Domains_of T ;
A18:
(
A in { D where D is Subset of T : D is open_condensed } &
B in { E where E is Subset of T : E is open_condensed } &
C in { F where F is Subset of T : F is open_condensed } )
;
then consider D being
Subset of
T such that A19:
(
D = A &
D is
open_condensed )
;
consider E being
Subset of
T such that A20:
(
E = B &
E is
open_condensed )
by A18;
consider F being
Subset of
T such that A21:
(
F = C &
F is
open_condensed )
by A18;
A22:
(
D is
open &
E is
open &
F is
open )
by A19, A20, A21, TOPS_1:107;
A23:
b "\/" c = Int (Cl (B \/ C))
by Def10;
A24:
a "/\" b = A /\ B
by Def11;
A25:
a "/\" c = A /\ C
by Def11;
thus a "/\" (b "\/" c) =
A /\ (Int (Cl (B \/ C)))
by A23, Def11
.=
(Int (Cl A)) /\ (Int (Cl (B \/ C)))
by A19, TOPS_1:def 8
.=
Int (Cl (D /\ (E \/ F)))
by A19, A20, A21, A22, Th7
.=
Int (Cl ((A /\ B) \/ (A /\ C)))
by A19, A20, A21, XBOOLE_1:23
.=
(a "/\" b) "\/" (a "/\" c)
by A24, A25, Def10
;
:: thesis: verum
end;
end;
hence
LattStr(# (Open_Domains_of T),(OPD-Union T),(OPD-Meet T) #) is B_Lattice
; :: thesis: verum