:: YELLOW16 semantic presentation

theorem Th1: :: YELLOW16:1
for b1, b2 being Relation holds b1 * b2 = b1 (#) b2
proof end;

theorem Th2: :: YELLOW16:2
for b1 being set
for b2 being non empty RelStr
for b3 being non empty SubRelStr of b2
for b4, b5 being Function of b1,the carrier of b3
for b6, b7 being Function of b1,the carrier of b2 st b6 = b4 & b7 = b5 & b4 <= b5 holds
b6 <= b7
proof end;

theorem Th3: :: YELLOW16:3
for b1 being set
for b2 being non empty RelStr
for b3 being non empty full SubRelStr of b2
for b4, b5 being Function of b1,the carrier of b3
for b6, b7 being Function of b1,the carrier of b2 st b6 = b4 & b7 = b5 & b6 <= b7 holds
b4 <= b5
proof end;

registration
let c1 be non empty RelStr ;
let c2 be non empty reflexive antisymmetric RelStr ;
cluster monotone directed-sups-preserving M5(the carrier of a1,the carrier of a2);
existence
ex b1 being Function of c1,c2 st
( b1 is directed-sups-preserving & b1 is monotone )
proof end;
end;

theorem Th4: :: YELLOW16:4
for b1, b2 being Function st b1 is idempotent & rng b2 c= rng b1 & rng b2 c= dom b1 holds
b1 * b2 = b2
proof end;

registration
let c1 be 1-sorted ;
cluster idempotent M5(the carrier of a1,the carrier of a1);
existence
ex b1 being Function of c1,c1 st b1 is idempotent
proof end;
end;

theorem Th5: :: YELLOW16:5
for b1 being non empty up-complete Poset
for b2 being non empty full directed-sups-inheriting SubRelStr of b1 holds b2 is up-complete
proof end;

theorem Th6: :: YELLOW16:6
for b1 being non empty up-complete Poset
for b2 being Function of b1,b1 st b2 is idempotent & b2 is directed-sups-preserving holds
Image b2 is directed-sups-inheriting
proof end;

theorem Th7: :: YELLOW16:7
canceled;

theorem Th8: :: YELLOW16:8
for b1, b2 being non empty 1-sorted
for b3 being Function of b2,b1
for b4 being Function of b1,b2 st b3 * b4 = id b1 holds
rng b3 = the carrier of b1
proof end;

theorem Th9: :: YELLOW16:9
for b1 being non empty RelStr
for b2 being non empty SubRelStr of b1
for b3 being Function of b1,b2 st b3 * (incl b2,b1) = id b2 holds
b3 is idempotent Function of b1,b1
proof end;

definition
let c1, c2 be non empty Poset;
let c3 be Function;
pred c3 is_a_retraction_of c2,c1 means :Def1: :: YELLOW16:def 1
( a3 is directed-sups-preserving Function of a2,a1 & a3 | the carrier of a1 = id a1 & a1 is full directed-sups-inheriting SubRelStr of a2 );
pred c3 is_an_UPS_retraction_of c2,c1 means :Def2: :: YELLOW16:def 2
( a3 is directed-sups-preserving Function of a2,a1 & ex b1 being directed-sups-preserving Function of a1,a2 st a3 * b1 = id a1 );
end;

:: deftheorem Def1 defines is_a_retraction_of YELLOW16:def 1 :
for b1, b2 being non empty Poset
for b3 being Function holds
( b3 is_a_retraction_of b2,b1 iff ( b3 is directed-sups-preserving Function of b2,b1 & b3 | the carrier of b1 = id b1 & b1 is full directed-sups-inheriting SubRelStr of b2 ) );

:: deftheorem Def2 defines is_an_UPS_retraction_of YELLOW16:def 2 :
for b1, b2 being non empty Poset
for b3 being Function holds
( b3 is_an_UPS_retraction_of b2,b1 iff ( b3 is directed-sups-preserving Function of b2,b1 & ex b4 being directed-sups-preserving Function of b1,b2 st b3 * b4 = id b1 ) );

definition
let c1, c2 be non empty Poset;
pred c1 is_a_retract_of c2 means :Def3: :: YELLOW16:def 3
ex b1 being Function of a2,a1 st b1 is_a_retraction_of a2,a1;
pred c1 is_an_UPS_retract_of c2 means :Def4: :: YELLOW16:def 4
ex b1 being Function of a2,a1 st b1 is_an_UPS_retraction_of a2,a1;
end;

:: deftheorem Def3 defines is_a_retract_of YELLOW16:def 3 :
for b1, b2 being non empty Poset holds
( b1 is_a_retract_of b2 iff ex b3 being Function of b2,b1 st b3 is_a_retraction_of b2,b1 );

:: deftheorem Def4 defines is_an_UPS_retract_of YELLOW16:def 4 :
for b1, b2 being non empty Poset holds
( b1 is_an_UPS_retract_of b2 iff ex b3 being Function of b2,b1 st b3 is_an_UPS_retraction_of b2,b1 );

theorem Th10: :: YELLOW16:10
for b1, b2 being non empty Poset
for b3 being Function st b3 is_a_retraction_of b2,b1 holds
b3 * (incl b1,b2) = id b1
proof end;

theorem Th11: :: YELLOW16:11
for b1 being non empty Poset
for b2 being non empty up-complete Poset
for b3 being Function st b3 is_a_retraction_of b2,b1 holds
b3 is_an_UPS_retraction_of b2,b1
proof end;

theorem Th12: :: YELLOW16:12
for b1, b2 being non empty Poset
for b3 being Function st b3 is_a_retraction_of b2,b1 holds
rng b3 = the carrier of b1
proof end;

theorem Th13: :: YELLOW16:13
for b1, b2 being non empty Poset
for b3 being Function st b3 is_an_UPS_retraction_of b2,b1 holds
rng b3 = the carrier of b1
proof end;

theorem Th14: :: YELLOW16:14
for b1, b2 being non empty Poset
for b3 being Function st b3 is_a_retraction_of b2,b1 holds
b3 is idempotent Function of b2,b2
proof end;

theorem Th15: :: YELLOW16:15
for b1, b2 being non empty Poset
for b3 being Function of b1,b1 st b3 is_a_retraction_of b1,b2 holds
Image b3 = RelStr(# the carrier of b2,the InternalRel of b2 #)
proof end;

theorem Th16: :: YELLOW16:16
for b1 being non empty up-complete Poset
for b2 being non empty Poset
for b3 being Function of b1,b1 st b3 is_a_retraction_of b1,b2 holds
( b3 is directed-sups-preserving & b3 is projection )
proof end;

theorem Th17: :: YELLOW16:17
for b1, b2 being non empty reflexive transitive RelStr
for b3 being Function of b1,b2 holds
( b3 is isomorphic iff ( b3 is monotone & ex b4 being monotone Function of b2,b1 st
( b3 * b4 = id b2 & b4 * b3 = id b1 ) ) )
proof end;

theorem Th18: :: YELLOW16:18
for b1, b2 being non empty Poset holds
( b1,b2 are_isomorphic iff ex b3 being monotone Function of b1,b2ex b4 being monotone Function of b2,b1 st
( b3 * b4 = id b2 & b4 * b3 = id b1 ) )
proof end;

theorem Th19: :: YELLOW16:19
for b1, b2 being non empty up-complete Poset st b1,b2 are_isomorphic holds
( b1 is_an_UPS_retract_of b2 & b2 is_an_UPS_retract_of b1 )
proof end;

theorem Th20: :: YELLOW16:20
for b1, b2 being non empty Poset
for b3 being monotone Function of b1,b2
for b4 being monotone Function of b2,b1 st b3 * b4 = id b2 holds
ex b5 being projection Function of b1,b1 st
( b5 = b4 * b3 & b5 | the carrier of (Image b5) = id (Image b5) & b2, Image b5 are_isomorphic )
proof end;

theorem Th21: :: YELLOW16:21
for b1 being non empty up-complete Poset
for b2 being non empty Poset
for b3 being Function st b3 is_an_UPS_retraction_of b1,b2 holds
ex b4 being directed-sups-preserving projection Function of b1,b1 st
( b4 is_a_retraction_of b1, Image b4 & b2, Image b4 are_isomorphic )
proof end;

theorem Th22: :: YELLOW16:22
for b1 being non empty up-complete Poset
for b2 being non empty Poset st b2 is_a_retract_of b1 holds
b2 is up-complete
proof end;

theorem Th23: :: YELLOW16:23
for b1 being non empty complete Poset
for b2 being non empty Poset st b2 is_a_retract_of b1 holds
b2 is complete
proof end;

theorem Th24: :: YELLOW16:24
for b1 being complete continuous LATTICE
for b2 being non empty Poset st b2 is_a_retract_of b1 holds
b2 is continuous
proof end;

theorem Th25: :: YELLOW16:25
for b1 being non empty up-complete Poset
for b2 being non empty Poset st b2 is_an_UPS_retract_of b1 holds
b2 is up-complete
proof end;

theorem Th26: :: YELLOW16:26
for b1 being non empty complete Poset
for b2 being non empty Poset st b2 is_an_UPS_retract_of b1 holds
b2 is complete
proof end;

theorem Th27: :: YELLOW16:27
for b1 being complete continuous LATTICE
for b2 being non empty Poset st b2 is_an_UPS_retract_of b1 holds
b2 is continuous
proof end;

theorem Th28: :: YELLOW16:28
for b1 being RelStr
for b2 being full SubRelStr of b1
for b3 being SubRelStr of b2 holds
( b3 is full iff b3 is full SubRelStr of b1 )
proof end;

theorem Th29: :: YELLOW16:29
for b1 being non empty transitive RelStr
for b2 being non empty full directed-sups-inheriting SubRelStr of b1
for b3 being non empty directed-sups-inheriting SubRelStr of b2 holds b3 is directed-sups-inheriting SubRelStr of b1
proof end;

theorem Th30: :: YELLOW16:30
for b1 being non empty up-complete Poset
for b2, b3 being non empty full directed-sups-inheriting SubRelStr of b1 st b2 is SubRelStr of b3 holds
b2 is full directed-sups-inheriting SubRelStr of b3
proof end;

definition
let c1 be Relation;
attr a1 is Poset-yielding means :Def5: :: YELLOW16:def 5
for b1 being set st b1 in rng a1 holds
b1 is Poset;
end;

:: deftheorem Def5 defines Poset-yielding YELLOW16:def 5 :
for b1 being Relation holds
( b1 is Poset-yielding iff for b2 being set st b2 in rng b1 holds
b2 is Poset );

registration
cluster Poset-yielding -> RelStr-yielding reflexive-yielding set ;
coherence
for b1 being Relation st b1 is Poset-yielding holds
( b1 is RelStr-yielding & b1 is reflexive-yielding )
proof end;
end;

definition
let c1 be non empty set ;
let c2 be non empty RelStr ;
let c3 be Element of c1;
let c4 be Subset of (c2 |^ c1);
redefine func pi as pi c4,c3 -> Subset of a2;
coherence
pi c4,c3 is Subset of c2
proof end;
end;

registration
let c1 be set ;
let c2 be Poset;
cluster K104(a1,a2) -> Poset-yielding ;
coherence
c1 --> c2 is Poset-yielding
proof end;
end;

registration
let c1 be set ;
cluster RelStr-yielding non-Empty reflexive-yielding Poset-yielding ManySortedSet of a1;
existence
ex b1 being ManySortedSet of c1 st
( b1 is Poset-yielding & b1 is non-Empty )
proof end;
end;

registration
let c1 be non empty set ;
let c2 be non-Empty Poset-yielding ManySortedSet of c1;
cluster product a2 -> transitive antisymmetric ;
coherence
( product c2 is transitive & product c2 is antisymmetric )
proof end;
end;

definition
let c1 be non empty set ;
let c2 be non-Empty Poset-yielding ManySortedSet of c1;
let c3 be Element of c1;
redefine func . as c2 . c3 -> non empty Poset;
coherence
c2 . c3 is non empty Poset
proof end;
end;

E25: now
let c1 be non empty set ;
let c2 be non-Empty Poset-yielding ManySortedSet of c1;
let c3 be Subset of (product c2);
deffunc H1( Element of c1) -> Element of the carrier of (c2 . a1) = sup (pi c3,a1);
consider c4 being ManySortedSet of c1 such that
E26: for b1 being Element of c1 holds c4 . b1 = H1(b1) from PBOOLE:sch 5();
E27: dom c4 = c1 by PBOOLE:def 3;
now
let c5 be Element of c1;
c4 . c5 = sup (pi c3,c5) by E26;
hence c4 . c5 is Element of (c2 . c5) ;
end;
then reconsider c5 = c4 as Element of (product c2) by E27, WAYBEL_3:27;
assume E28: for b1 being Element of c1 holds ex_sup_of pi c3,b1,c2 . b1 ;
take c6 = c5;
thus for b1 being Element of c1 holds c6 . b1 = sup (pi c3,b1) by E26;
thus c6 is_>=_than c3
proof
let c7 be Element of (product c2); :: according to LATTICE3:def 9
assume E29: c7 in c3 ;
now
let c8 be Element of c1;
( ex_sup_of pi c3,c8,c2 . c8 & c6 . c8 = sup (pi c3,c8) ) by E26, E28;
then ( c6 . c8 is_>=_than pi c3,c8 & c7 . c8 in pi c3,c8 ) by E29, CARD_3:def 6, YELLOW_0:30;
hence c7 . c8 <= c6 . c8 by LATTICE3:def 9;
end;
hence c7 <= c6 by WAYBEL_3:28;
end;
let c7 be Element of (product c2);
assume E29: c3 is_<=_than c7 ;
now
let c8 be Element of c1;
E30: ( c6 . c8 = sup (pi c3,c8) & ex_sup_of pi c3,c8,c2 . c8 ) by E26, E28;
c7 . c8 is_>=_than pi c3,c8
proof
let c9 be Element of (c2 . c8); :: according to LATTICE3:def 9
assume c9 in pi c3,c8 ;
then consider c10 being Function such that
E31: ( c10 in c3 & c9 = c10 . c8 ) by CARD_3:def 6;
reconsider c11 = c10 as Element of (product c2) by E31;
c11 <= c7 by E29, E31, LATTICE3:def 9;
hence c9 <= c7 . c8 by E31, WAYBEL_3:28;
end;
hence c6 . c8 <= c7 . c8 by E30, YELLOW_0:30;
end;
hence c6 <= c7 by WAYBEL_3:28;
end;

E26: now
let c1 be non empty set ;
let c2 be non-Empty Poset-yielding ManySortedSet of c1;
let c3 be Subset of (product c2);
deffunc H1( Element of c1) -> Element of the carrier of (c2 . a1) = inf (pi c3,a1);
consider c4 being ManySortedSet of c1 such that
E27: for b1 being Element of c1 holds c4 . b1 = H1(b1) from PBOOLE:sch 5();
E28: dom c4 = c1 by PBOOLE:def 3;
now
let c5 be Element of c1;
c4 . c5 = inf (pi c3,c5) by E27;
hence c4 . c5 is Element of (c2 . c5) ;
end;
then reconsider c5 = c4 as Element of (product c2) by E28, WAYBEL_3:27;
assume E29: for b1 being Element of c1 holds ex_inf_of pi c3,b1,c2 . b1 ;
take c6 = c5;
thus for b1 being Element of c1 holds c6 . b1 = inf (pi c3,b1) by E27;
thus c6 is_<=_than c3
proof
let c7 be Element of (product c2); :: according to LATTICE3:def 8
assume E30: c7 in c3 ;
now
let c8 be Element of c1;
( ex_inf_of pi c3,c8,c2 . c8 & c6 . c8 = inf (pi c3,c8) ) by E27, E29;
then ( c6 . c8 is_<=_than pi c3,c8 & c7 . c8 in pi c3,c8 ) by E30, CARD_3:def 6, YELLOW_0:31;
hence c7 . c8 >= c6 . c8 by LATTICE3:def 8;
end;
hence c6 <= c7 by WAYBEL_3:28;
end;
let c7 be Element of (product c2);
assume E30: c3 is_>=_than c7 ;
now
let c8 be Element of c1;
E31: ( c6 . c8 = inf (pi c3,c8) & ex_inf_of pi c3,c8,c2 . c8 ) by E27, E29;
c7 . c8 is_<=_than pi c3,c8
proof
let c9 be Element of (c2 . c8); :: according to LATTICE3:def 8
assume c9 in pi c3,c8 ;
then consider c10 being Function such that
E32: ( c10 in c3 & c9 = c10 . c8 ) by CARD_3:def 6;
reconsider c11 = c10 as Element of (product c2) by E32;
c11 >= c7 by E30, E32, LATTICE3:def 8;
hence c9 >= c7 . c8 by E32, WAYBEL_3:28;
end;
hence c6 . c8 >= c7 . c8 by E31, YELLOW_0:31;
end;
hence c6 >= c7 by WAYBEL_3:28;
end;

theorem Th31: :: YELLOW16:31
for b1 being non empty set
for b2 being non-Empty Poset-yielding ManySortedSet of b1
for b3 being Element of (product b2)
for b4 being Subset of (product b2) holds
( b3 is_>=_than b4 iff for b5 being Element of b1 holds b3 . b5 is_>=_than pi b4,b5 )
proof end;

theorem Th32: :: YELLOW16:32
for b1 being non empty set
for b2 being non-Empty Poset-yielding ManySortedSet of b1
for b3 being Element of (product b2)
for b4 being Subset of (product b2) holds
( b3 is_<=_than b4 iff for b5 being Element of b1 holds b3 . b5 is_<=_than pi b4,b5 )
proof end;

theorem Th33: :: YELLOW16:33
for b1 being non empty set
for b2 being non-Empty Poset-yielding ManySortedSet of b1
for b3 being Subset of (product b2) holds
( ex_sup_of b3, product b2 iff for b4 being Element of b1 holds ex_sup_of pi b3,b4,b2 . b4 )
proof end;

theorem Th34: :: YELLOW16:34
for b1 being non empty set
for b2 being non-Empty Poset-yielding ManySortedSet of b1
for b3 being Subset of (product b2) holds
( ex_inf_of b3, product b2 iff for b4 being Element of b1 holds ex_inf_of pi b3,b4,b2 . b4 )
proof end;

theorem Th35: :: YELLOW16:35
for b1 being non empty set
for b2 being non-Empty Poset-yielding ManySortedSet of b1
for b3 being Subset of (product b2) st ex_sup_of b3, product b2 holds
for b4 being Element of b1 holds (sup b3) . b4 = sup (pi b3,b4)
proof end;

theorem Th36: :: YELLOW16:36
for b1 being non empty set
for b2 being non-Empty Poset-yielding ManySortedSet of b1
for b3 being Subset of (product b2) st ex_inf_of b3, product b2 holds
for b4 being Element of b1 holds (inf b3) . b4 = inf (pi b3,b4)
proof end;

theorem Th37: :: YELLOW16:37
for b1 being non empty set
for b2 being RelStr-yielding non-Empty reflexive-yielding ManySortedSet of b1
for b3 being directed Subset of (product b2)
for b4 being Element of b1 holds pi b3,b4 is directed
proof end;

theorem Th38: :: YELLOW16:38
for b1 being non empty set
for b2, b3 being RelStr-yielding non-Empty ManySortedSet of b1 st ( for b4 being Element of b1 holds b3 . b4 is SubRelStr of b2 . b4 ) holds
product b3 is SubRelStr of product b2
proof end;

theorem Th39: :: YELLOW16:39
for b1 being non empty set
for b2, b3 being RelStr-yielding non-Empty ManySortedSet of b1 st ( for b4 being Element of b1 holds b3 . b4 is full SubRelStr of b2 . b4 ) holds
product b3 is full SubRelStr of product b2
proof end;

theorem Th40: :: YELLOW16:40
for b1 being non empty RelStr
for b2 being non empty SubRelStr of b1
for b3 being set holds b2 |^ b3 is SubRelStr of b1 |^ b3
proof end;

theorem Th41: :: YELLOW16:41
for b1 being non empty RelStr
for b2 being non empty full SubRelStr of b1
for b3 being set holds b2 |^ b3 is full SubRelStr of b1 |^ b3
proof end;

definition
let c1, c2 be non empty RelStr ;
let c3 be set ;
pred c1 inherits_sup_of c3,c2 means :Def6: :: YELLOW16:def 6
( ex_sup_of a3,a2 implies "\/" a3,a2 in the carrier of a1 );
pred c1 inherits_inf_of c3,c2 means :Def7: :: YELLOW16:def 7
( ex_inf_of a3,a2 implies "/\" a3,a2 in the carrier of a1 );
end;

:: deftheorem Def6 defines inherits_sup_of YELLOW16:def 6 :
for b1, b2 being non empty RelStr
for b3 being set holds
( b1 inherits_sup_of b3,b2 iff ( ex_sup_of b3,b2 implies "\/" b3,b2 in the carrier of b1 ) );

:: deftheorem Def7 defines inherits_inf_of YELLOW16:def 7 :
for b1, b2 being non empty RelStr
for b3 being set holds
( b1 inherits_inf_of b3,b2 iff ( ex_inf_of b3,b2 implies "/\" b3,b2 in the carrier of b1 ) );

theorem Th42: :: YELLOW16:42
for b1 being non empty transitive RelStr
for b2 being non empty full SubRelStr of b1
for b3 being Subset of b2 holds
( b2 inherits_sup_of b3,b1 iff ( ex_sup_of b3,b1 implies ( ex_sup_of b3,b2 & sup b3 = "\/" b3,b1 ) ) )
proof end;

theorem Th43: :: YELLOW16:43
for b1 being non empty transitive RelStr
for b2 being non empty full SubRelStr of b1
for b3 being Subset of b2 holds
( b2 inherits_inf_of b3,b1 iff ( ex_inf_of b3,b1 implies ( ex_inf_of b3,b2 & inf b3 = "/\" b3,b1 ) ) )
proof end;

scheme :: YELLOW16:sch 1
s1{ F1() -> non empty set , F2() -> non-Empty Poset-yielding ManySortedSet of F1(), F3() -> non-Empty Poset-yielding ManySortedSet of F1(), P1[ set , set ] } :
for b1 being Subset of (product F3()) st P1[b1, product F3()] holds
product F3() inherits_sup_of b1, product F2()
provided
E40: for b1 being Subset of (product F3()) st P1[b1, product F3()] holds
for b2 being Element of F1() holds P1[ pi b1,b2,F3() . b2] and
E41: for b1 being Element of F1() holds F3() . b1 is full SubRelStr of F2() . b1 and
E42: for b1 being Element of F1()
for b2 being Subset of (F3() . b1) st P1[b2,F3() . b1] holds
F3() . b1 inherits_sup_of b2,F2() . b1
proof end;

scheme :: YELLOW16:sch 2
s2{ F1() -> non empty set , F2() -> non empty Poset, F3() -> non empty full SubRelStr of F2(), P1[ set , set ] } :
for b1 being Subset of (F3() |^ F1()) st P1[b1,F3() |^ F1()] holds
F3() |^ F1() inherits_sup_of b1,F2() |^ F1()
provided
E40: for b1 being Subset of (F3() |^ F1()) st P1[b1,F3() |^ F1()] holds
for b2 being Element of F1() holds P1[ pi b1,b2,F3()] and
E41: for b1 being Subset of F3() st P1[b1,F3()] holds
F3() inherits_sup_of b1,F2()
proof end;

scheme :: YELLOW16:sch 3
s3{ F1() -> non empty set , F2() -> non-Empty Poset-yielding ManySortedSet of F1(), F3() -> non-Empty Poset-yielding ManySortedSet of F1(), P1[ set , set ] } :
for b1 being Subset of (product F3()) st P1[b1, product F3()] holds
product F3() inherits_inf_of b1, product F2()
provided
E40: for b1 being Subset of (product F3()) st P1[b1, product F3()] holds
for b2 being Element of F1() holds P1[ pi b1,b2,F3() . b2] and
E41: for b1 being Element of F1() holds F3() . b1 is full SubRelStr of F2() . b1 and
E42: for b1 being Element of F1()
for b2 being Subset of (F3() . b1) st P1[b2,F3() . b1] holds
F3() . b1 inherits_inf_of b2,F2() . b1
proof end;

scheme :: YELLOW16:sch 4
s4{ F1() -> non empty set , F2() -> non empty Poset, F3() -> non empty full SubRelStr of F2(), P1[ set , set ] } :
for b1 being Subset of (F3() |^ F1()) st P1[b1,F3() |^ F1()] holds
F3() |^ F1() inherits_inf_of b1,F2() |^ F1()
provided
E40: for b1 being Subset of (F3() |^ F1()) st P1[b1,F3() |^ F1()] holds
for b2 being Element of F1() holds P1[ pi b1,b2,F3()] and
E41: for b1 being Subset of F3() st P1[b1,F3()] holds
F3() inherits_inf_of b1,F2()
proof end;

registration
let c1 be set ;
let c2 be non empty RelStr ;
let c3 be non empty Subset of (c2 |^ c1);
let c4 be set ;
cluster pi a3,a4 -> non empty ;
coherence
not pi c3,c4 is empty
proof end;
end;

theorem Th44: :: YELLOW16:44
for b1 being non empty Poset
for b2 being non empty full directed-sups-inheriting SubRelStr of b1
for b3 being non empty set holds b2 |^ b3 is directed-sups-inheriting SubRelStr of b1 |^ b3
proof end;

registration
let c1 be non empty set ;
let c2 be RelStr-yielding non-Empty ManySortedSet of c1;
let c3 be non empty Subset of (product c2);
let c4 be set ;
cluster pi a3,a4 -> non empty ;
coherence
not pi c3,c4 is empty
proof end;
end;

theorem Th45: :: YELLOW16:45
for b1 being non empty set
for b2 being non empty up-complete Poset holds b2 |^ b1 is up-complete
proof end;

registration
let c1 be non empty up-complete Poset;
let c2 be non empty set ;
cluster a1 |^ a2 -> up-complete ;
coherence
c1 |^ c2 is up-complete
by Th45;
end;

registration
let c1 be TopSpace;
cluster the topology of a1 -> non empty ;
coherence
not the topology of c1 is empty
by PRE_TOPC:def 1;
end;

theorem Th46: :: YELLOW16:46
for b1 being non empty TopSpace
for b2 being non empty SubSpace of b1
for b3 being Function of b1,b2 st b3 is_a_retraction holds
rng b3 = the carrier of b2
proof end;

theorem Th47: :: YELLOW16:47
for b1 being non empty TopSpace
for b2 being non empty SubSpace of b1
for b3 being continuous Function of b1,b2 st b3 is_a_retraction holds
b3 is idempotent
proof end;

theorem Th48: :: YELLOW16:48
for b1 being non empty TopSpace
for b2 being open Subset of b1 holds chi b2,the carrier of b1 is continuous Function of b1,Sierpinski_Space
proof end;

theorem Th49: :: YELLOW16:49
for b1 being non empty TopSpace
for b2, b3 being Element of b1 st ( for b4 being open Subset of b1 st b3 in b4 holds
b2 in b4 ) holds
0,1 --> b3,b2 is continuous Function of Sierpinski_Space ,b1
proof end;

theorem Th50: :: YELLOW16:50
for b1 being non empty TopSpace
for b2, b3 being Element of b1
for b4 being open Subset of b1 st b2 in b4 & not b3 in b4 holds
(chi b4,the carrier of b1) * (0,1 --> b3,b2) = id Sierpinski_Space
proof end;

theorem Th51: :: YELLOW16:51
for b1 being non empty 1-sorted
for b2, b3 being Subset of b1
for b4 being TopAugmentation of BoolePoset 1
for b5, b6 being Function of b1,b4 st b5 = chi b2,the carrier of b1 & b6 = chi b3,the carrier of b1 holds
( b2 c= b3 iff b5 <= b6 )
proof end;

theorem Th52: :: YELLOW16:52
for b1 being non empty RelStr
for b2 being non empty set
for b3 being non empty full SubRelStr of b1 |^ b2 st ( for b4 being set holds
( b4 is Element of b3 iff ex b5 being Element of b1 st b4 = b2 --> b5 ) ) holds
b1,b3 are_isomorphic
proof end;

theorem Th53: :: YELLOW16:53
for b1, b2 being non empty TopSpace holds
( b1,b2 are_homeomorphic iff ex b3 being continuous Function of b1,b2ex b4 being continuous Function of b2,b1 st
( b3 * b4 = id b2 & b4 * b3 = id b1 ) )
proof end;

theorem Th54: :: YELLOW16:54
for b1, b2, b3 being non empty TopSpace
for b4 being Function of b1,b2
for b5 being Function of b2,b1
for b6 being Function of b2,b3 st b4 * b5 = id b2 & b6 is_homeomorphism holds
(b6 * b4) * (b5 * (b6 " )) = id b3
proof end;

theorem Th55: :: YELLOW16:55
for b1, b2, b3 being non empty TopSpace st b2 is_Retract_of b1 & b2,b3 are_homeomorphic holds
b3 is_Retract_of b1
proof end;

theorem Th56: :: YELLOW16:56
for b1 being non empty TopSpace
for b2 being non empty SubSpace of b1 holds incl b2,b1 is continuous
proof end;

theorem Th57: :: YELLOW16:57
for b1 being non empty TopSpace
for b2 being non empty SubSpace of b1
for b3 being continuous Function of b1,b2 st b3 is_a_retraction holds
b3 * (incl b2,b1) = id b2
proof end;

theorem Th58: :: YELLOW16:58
for b1 being non empty TopSpace
for b2 being non empty SubSpace of b1 st b2 is_a_retract_of b1 holds
b2 is_Retract_of b1
proof end;

theorem Th59: :: YELLOW16:59
for b1, b2 being non empty TopSpace holds
( b1 is_Retract_of b2 iff ex b3 being non empty SubSpace of b2 st
( b3 is_a_retract_of b2 & b3,b1 are_homeomorphic ) )
proof end;