:: WAYBEL_6 semantic presentation

scheme :: WAYBEL_6:sch 1
s1{ F1() -> non empty RelStr , F2() -> Subset of F1(), F3() -> non empty Subset of F1(), P1[ set , set ] } :
ex b1 being Function of F2(),F3() st
for b2 being Element of F1() st b2 in F2() holds
ex b3 being Element of F1() st
( b3 in F3() & b3 = b1 . b2 & P1[b2,b3] )
provided
E1: for b1 being Element of F1() st b1 in F2() holds
ex b2 being Element of F1() st
( b2 in F3() & P1[b1,b2] )
proof end;

definition
let c1 be LATTICE;
let c2 be non empty Subset of c1;
let c3 be Function of c2,c2;
let c4 be Element of NAT ;
redefine func iter as iter c3,c4 -> Function of a2,a2;
coherence
iter c3,c4 is Function of c2,c2
by FUNCT_7:85;
end;

definition
let c1 be LATTICE;
let c2, c3 be non empty Subset of c1;
let c4 be Function of c2,c3;
let c5 be Element of c2;
redefine func . as c4 . c5 -> Element of a1;
coherence
c4 . c5 is Element of c1
proof end;
end;

registration
let c1 be non empty Poset;
cluster -> directed filtered Element of bool the carrier of a1;
coherence
for b1 being Chain of c1 holds
( b1 is filtered & b1 is directed )
proof end;
end;

registration
cluster strict lower-bounded distributive continuous RelStr ;
existence
ex b1 being LATTICE st
( b1 is strict & b1 is continuous & b1 is distributive & b1 is lower-bounded )
proof end;
end;

theorem Th1: :: WAYBEL_6:1
for b1, b2 being Semilattice
for b3 being Function of b1,b2 holds
( b3 is meet-preserving iff for b4, b5 being Element of b1 holds b3 . (b4 "/\" b5) = (b3 . b4) "/\" (b3 . b5) )
proof end;

theorem Th2: :: WAYBEL_6:2
for b1, b2 being sup-Semilattice
for b3 being Function of b1,b2 holds
( b3 is join-preserving iff for b4, b5 being Element of b1 holds b3 . (b4 "\/" b5) = (b3 . b4) "\/" (b3 . b5) )
proof end;

theorem Th3: :: WAYBEL_6:3
for b1, b2 being LATTICE
for b3 being Function of b1,b2 st b2 is distributive & b3 is meet-preserving & b3 is join-preserving & b3 is one-to-one holds
b1 is distributive
proof end;

registration
let c1, c2 be complete LATTICE;
cluster sups-preserving M4(the carrier of a1,the carrier of a2);
existence
ex b1 being Function of c1,c2 st b1 is sups-preserving
proof end;
end;

Lemma4: for b1, b2 being non empty with_suprema Poset
for b3 being Function of b1,b2 st b3 is directed-sups-preserving holds
b3 is monotone
proof end;

theorem Th4: :: WAYBEL_6:4
for b1, b2 being complete LATTICE
for b3 being sups-preserving Function of b1,b2 st b2 is meet-continuous & b3 is meet-preserving & b3 is one-to-one holds
b1 is meet-continuous
proof end;

definition
let c1 be non empty reflexive RelStr ;
let c2 be Subset of c1;
attr a2 is Open means :Def1: :: WAYBEL_6:def 1
for b1 being Element of a1 st b1 in a2 holds
ex b2 being Element of a1 st
( b2 in a2 & b2 << b1 );
end;

:: deftheorem Def1 defines Open WAYBEL_6:def 1 :
for b1 being non empty reflexive RelStr
for b2 being Subset of b1 holds
( b2 is Open iff for b3 being Element of b1 st b3 in b2 holds
ex b4 being Element of b1 st
( b4 in b2 & b4 << b3 ) );

theorem Th5: :: WAYBEL_6:5
for b1 being up-complete LATTICE
for b2 being upper Subset of b1 holds
( b2 is Open iff for b3 being Element of b1 st b3 in b2 holds
waybelow b3 meets b2 )
proof end;

theorem Th6: :: WAYBEL_6:6
for b1 being up-complete LATTICE
for b2 being upper Subset of b1 holds
( b2 is Open iff b2 = union { (wayabove b3) where B is Element of b1 : b3 in b2 } )
proof end;

registration
let c1 be lower-bounded up-complete LATTICE;
cluster Open Element of bool the carrier of a1;
existence
ex b1 being Filter of c1 st b1 is Open
proof end;
end;

theorem Th7: :: WAYBEL_6:7
for b1 being lower-bounded continuous LATTICE
for b2 being Element of b1 holds wayabove b2 is Open
proof end;

theorem Th8: :: WAYBEL_6:8
for b1 being lower-bounded continuous LATTICE
for b2, b3 being Element of b1 st b2 << b3 holds
ex b4 being Open Filter of b1 st
( b3 in b4 & b4 c= wayabove b2 )
proof end;

theorem Th9: :: WAYBEL_6:9
for b1 being complete LATTICE
for b2 being upper Open Subset of b1
for b3 being Element of b1 st b3 in b2 ` holds
ex b4 being Element of b1 st
( b3 <= b4 & b4 is_maximal_in b2 ` )
proof end;

definition
let c1 be non empty RelStr ;
let c2 be Element of c1;
attr a2 is meet-irreducible means :Def2: :: WAYBEL_6:def 2
for b1, b2 being Element of a1 holds
( not a2 = b1 "/\" b2 or b1 = a2 or b2 = a2 );
end;

:: deftheorem Def2 defines meet-irreducible WAYBEL_6:def 2 :
for b1 being non empty RelStr
for b2 being Element of b1 holds
( b2 is meet-irreducible iff for b3, b4 being Element of b1 holds
( not b2 = b3 "/\" b4 or b3 = b2 or b4 = b2 ) );

notation
let c1 be non empty RelStr ;
let c2 be Element of c1;
synonym irreducible c2 for meet-irreducible c2;
end;

definition
let c1 be non empty RelStr ;
let c2 be Element of c1;
attr a2 is join-irreducible means :: WAYBEL_6:def 3
for b1, b2 being Element of a1 holds
( not a2 = b1 "\/" b2 or b1 = a2 or b2 = a2 );
end;

:: deftheorem Def3 defines join-irreducible WAYBEL_6:def 3 :
for b1 being non empty RelStr
for b2 being Element of b1 holds
( b2 is join-irreducible iff for b3, b4 being Element of b1 holds
( not b2 = b3 "\/" b4 or b3 = b2 or b4 = b2 ) );

definition
let c1 be non empty RelStr ;
func IRR c1 -> Subset of a1 means :Def4: :: WAYBEL_6:def 4
for b1 being Element of a1 holds
( b1 in a2 iff b1 is meet-irreducible );
existence
ex b1 being Subset of c1 st
for b2 being Element of c1 holds
( b2 in b1 iff b2 is meet-irreducible )
proof end;
uniqueness
for b1, b2 being Subset of c1 st ( for b3 being Element of c1 holds
( b3 in b1 iff b3 is meet-irreducible ) ) & ( for b3 being Element of c1 holds
( b3 in b2 iff b3 is meet-irreducible ) ) holds
b1 = b2
proof end;
end;

:: deftheorem Def4 defines IRR WAYBEL_6:def 4 :
for b1 being non empty RelStr
for b2 being Subset of b1 holds
( b2 = IRR b1 iff for b3 being Element of b1 holds
( b3 in b2 iff b3 is meet-irreducible ) );

theorem Th10: :: WAYBEL_6:10
for b1 being non empty antisymmetric upper-bounded with_infima RelStr holds Top b1 is meet-irreducible
proof end;

registration
let c1 be non empty antisymmetric upper-bounded with_infima RelStr ;
cluster irreducible Element of the carrier of a1;
existence
ex b1 being Element of c1 st b1 is meet-irreducible
proof end;
end;

theorem Th11: :: WAYBEL_6:11
for b1 being Semilattice
for b2 being Element of b1 holds
( b2 is meet-irreducible iff for b3 being non empty finite Subset of b1 st b2 = inf b3 holds
b2 in b3 )
proof end;

theorem Th12: :: WAYBEL_6:12
for b1 being LATTICE
for b2 being Element of b1 st (uparrow b2) \ {b2} is Filter of b1 holds
b2 is meet-irreducible
proof end;

theorem Th13: :: WAYBEL_6:13
for b1 being LATTICE
for b2 being Element of b1
for b3 being Filter of b1 st b2 is_maximal_in b3 ` holds
b2 is meet-irreducible
proof end;

theorem Th14: :: WAYBEL_6:14
for b1 being lower-bounded continuous LATTICE
for b2, b3 being Element of b1 st not b3 <= b2 holds
ex b4 being Element of b1 st
( b4 is meet-irreducible & b2 <= b4 & not b3 <= b4 )
proof end;

definition
let c1 be non empty RelStr ;
let c2 be Subset of c1;
attr a2 is order-generating means :Def5: :: WAYBEL_6:def 5
for b1 being Element of a1 holds
( ex_inf_of (uparrow b1) /\ a2,a1 & b1 = inf ((uparrow b1) /\ a2) );
end;

:: deftheorem Def5 defines order-generating WAYBEL_6:def 5 :
for b1 being non empty RelStr
for b2 being Subset of b1 holds
( b2 is order-generating iff for b3 being Element of b1 holds
( ex_inf_of (uparrow b3) /\ b2,b1 & b3 = inf ((uparrow b3) /\ b2) ) );

theorem Th15: :: WAYBEL_6:15
for b1 being lower-bounded up-complete LATTICE
for b2 being Subset of b1 holds
( b2 is order-generating iff for b3 being Element of b1 ex b4 being Subset of b2 st b3 = "/\" b4,b1 )
proof end;

theorem Th16: :: WAYBEL_6:16
for b1 being lower-bounded up-complete LATTICE
for b2 being Subset of b1 holds
( b2 is order-generating iff for b3 being Subset of b1 st b2 c= b3 & ( for b4 being Subset of b3 holds "/\" b4,b1 in b3 ) holds
the carrier of b1 = b3 )
proof end;

theorem Th17: :: WAYBEL_6:17
for b1 being lower-bounded up-complete LATTICE
for b2 being Subset of b1 holds
( b2 is order-generating iff for b3, b4 being Element of b1 st not b4 <= b3 holds
ex b5 being Element of b1 st
( b5 in b2 & b3 <= b5 & not b4 <= b5 ) )
proof end;

theorem Th18: :: WAYBEL_6:18
for b1 being lower-bounded continuous LATTICE
for b2 being Subset of b1 st b2 = (IRR b1) \ {(Top b1)} holds
b2 is order-generating
proof end;

theorem Th19: :: WAYBEL_6:19
for b1 being lower-bounded continuous LATTICE
for b2, b3 being Subset of b1 st b2 is order-generating & b2 c= b3 holds
b3 is order-generating
proof end;

definition
let c1 be non empty RelStr ;
let c2 be Element of c1;
attr a2 is prime means :Def6: :: WAYBEL_6:def 6
for b1, b2 being Element of a1 holds
( not b1 "/\" b2 <= a2 or b1 <= a2 or b2 <= a2 );
end;

:: deftheorem Def6 defines prime WAYBEL_6:def 6 :
for b1 being non empty RelStr
for b2 being Element of b1 holds
( b2 is prime iff for b3, b4 being Element of b1 holds
( not b3 "/\" b4 <= b2 or b3 <= b2 or b4 <= b2 ) );

definition
let c1 be non empty RelStr ;
func PRIME c1 -> Subset of a1 means :Def7: :: WAYBEL_6:def 7
for b1 being Element of a1 holds
( b1 in a2 iff b1 is prime );
existence
ex b1 being Subset of c1 st
for b2 being Element of c1 holds
( b2 in b1 iff b2 is prime )
proof end;
uniqueness
for b1, b2 being Subset of c1 st ( for b3 being Element of c1 holds
( b3 in b1 iff b3 is prime ) ) & ( for b3 being Element of c1 holds
( b3 in b2 iff b3 is prime ) ) holds
b1 = b2
proof end;
end;

:: deftheorem Def7 defines PRIME WAYBEL_6:def 7 :
for b1 being non empty RelStr
for b2 being Subset of b1 holds
( b2 = PRIME b1 iff for b3 being Element of b1 holds
( b3 in b2 iff b3 is prime ) );

definition
let c1 be non empty RelStr ;
let c2 be Element of c1;
attr a2 is co-prime means :Def8: :: WAYBEL_6:def 8
a2 ~ is prime;
end;

:: deftheorem Def8 defines co-prime WAYBEL_6:def 8 :
for b1 being non empty RelStr
for b2 being Element of b1 holds
( b2 is co-prime iff b2 ~ is prime );

theorem Th20: :: WAYBEL_6:20
for b1 being non empty antisymmetric upper-bounded RelStr holds Top b1 is prime
proof end;

theorem Th21: :: WAYBEL_6:21
for b1 being non empty antisymmetric lower-bounded RelStr holds Bottom b1 is co-prime
proof end;

registration
let c1 be non empty antisymmetric upper-bounded RelStr ;
cluster prime Element of the carrier of a1;
existence
ex b1 being Element of c1 st b1 is prime
proof end;
end;

theorem Th22: :: WAYBEL_6:22
for b1 being Semilattice
for b2 being Element of b1 holds
( b2 is prime iff for b3 being non empty finite Subset of b1 st b2 >= inf b3 holds
ex b4 being Element of b1 st
( b4 in b3 & b2 >= b4 ) )
proof end;

theorem Th23: :: WAYBEL_6:23
for b1 being sup-Semilattice
for b2 being Element of b1 holds
( b2 is co-prime iff for b3 being non empty finite Subset of b1 st b2 <= sup b3 holds
ex b4 being Element of b1 st
( b4 in b3 & b2 <= b4 ) )
proof end;

theorem Th24: :: WAYBEL_6:24
for b1 being LATTICE
for b2 being Element of b1 st b2 is prime holds
b2 is meet-irreducible
proof end;

theorem Th25: :: WAYBEL_6:25
for b1 being LATTICE
for b2 being Element of b1 holds
( b2 is prime iff for b3 being set
for b4 being Function of b1,(BoolePoset {b3}) st ( for b5 being Element of b1 holds
( b4 . b5 = {} iff b5 <= b2 ) ) holds
( b4 is meet-preserving & b4 is join-preserving ) )
proof end;

theorem Th26: :: WAYBEL_6:26
for b1 being upper-bounded LATTICE
for b2 being Element of b1 st b2 <> Top b1 holds
( b2 is prime iff (downarrow b2) ` is Filter of b1 )
proof end;

theorem Th27: :: WAYBEL_6:27
for b1 being distributive LATTICE
for b2 being Element of b1 holds
( b2 is prime iff b2 is meet-irreducible )
proof end;

theorem Th28: :: WAYBEL_6:28
for b1 being distributive LATTICE holds PRIME b1 = IRR b1
proof end;

theorem Th29: :: WAYBEL_6:29
for b1 being Boolean LATTICE
for b2 being Element of b1 st b2 <> Top b1 holds
( b2 is prime iff for b3 being Element of b1 st b3 > b2 holds
b3 = Top b1 )
proof end;

theorem Th30: :: WAYBEL_6:30
for b1 being lower-bounded distributive continuous LATTICE
for b2 being Element of b1 st b2 <> Top b1 holds
( b2 is prime iff ex b3 being Open Filter of b1 st b2 is_maximal_in b3 ` )
proof end;

theorem Th31: :: WAYBEL_6:31
for b1 being RelStr
for b2 being Subset of b1 holds chi b2,the carrier of b1 is Function of b1,(BoolePoset {{} })
proof end;

theorem Th32: :: WAYBEL_6:32
for b1 being non empty RelStr
for b2, b3 being Element of b1 holds
( (chi ((downarrow b2) ` ),the carrier of b1) . b3 = {} iff b3 <= b2 )
proof end;

theorem Th33: :: WAYBEL_6:33
for b1 being upper-bounded LATTICE
for b2 being Function of b1,(BoolePoset {{} })
for b3 being prime Element of b1 st chi ((downarrow b3) ` ),the carrier of b1 = b2 holds
( b2 is meet-preserving & b2 is join-preserving )
proof end;

theorem Th34: :: WAYBEL_6:34
for b1 being complete LATTICE st PRIME b1 is order-generating holds
( b1 is distributive & b1 is meet-continuous )
proof end;

theorem Th35: :: WAYBEL_6:35
for b1 being lower-bounded continuous LATTICE holds
( b1 is distributive iff PRIME b1 is order-generating )
proof end;

theorem Th36: :: WAYBEL_6:36
for b1 being lower-bounded continuous LATTICE holds
( b1 is distributive iff b1 is Heyting )
proof end;

theorem Th37: :: WAYBEL_6:37
for b1 being complete continuous LATTICE st ( for b2 being Element of b1 ex b3 being Subset of b1 st
( b2 = sup b3 & ( for b4 being Element of b1 st b4 in b3 holds
b4 is co-prime ) ) ) holds
for b2 being Element of b1 holds b2 = "\/" ((waybelow b2) /\ (PRIME (b1 opp ))),b1
proof end;

Lemma36: for b1 being complete continuous LATTICE st ( for b2 being Element of b1 ex b3 being Subset of b1 st
( b2 = sup b3 & ( for b4 being Element of b1 st b4 in b3 holds
b4 is co-prime ) ) ) holds
b1 is completely-distributive
proof end;

Lemma37: for b1 being completely-distributive complete LATTICE holds
( b1 is distributive & b1 is continuous & b1 ~ is continuous )
proof end;

Lemma38: for b1 being complete LATTICE st b1 is distributive & b1 is continuous & b1 ~ is continuous holds
for b2 being Element of b1 ex b3 being Subset of b1 st
( b2 = sup b3 & ( for b4 being Element of b1 st b4 in b3 holds
b4 is co-prime ) )
proof end;

theorem Th38: :: WAYBEL_6:38
for b1 being complete LATTICE holds
( b1 is completely-distributive iff ( b1 is continuous & ( for b2 being Element of b1 ex b3 being Subset of b1 st
( b2 = sup b3 & ( for b4 being Element of b1 st b4 in b3 holds
b4 is co-prime ) ) ) ) )
proof end;

theorem Th39: :: WAYBEL_6:39
for b1 being complete LATTICE holds
( b1 is completely-distributive iff ( b1 is distributive & b1 is continuous & b1 opp is continuous ) )
proof end;