Article WAYBEL_2, MML version 4.99.1005

:: WAYBEL_2:funcreg 1
registration
  let a1, a2 be non empty set;
  let a3 be Function-like quasi_total Relation of a1,a2;
  let a4 be non empty Element of bool a1;
  cluster a3 .: a4 -> non empty;
end;

:: WAYBEL_2:condreg 1
registration
  cluster non empty reflexive connected -> with_suprema with_infima (RelStr);
end;

:: WAYBEL_2:funcreg 2
registration
  let a1 be non empty reflexive transitive antisymmetric connected RelStr;
  cluster [#] a1 -> directed;
end;

:: WAYBEL_2:th 1
theorem
for b1 being reflexive transitive antisymmetric up-complete with_infima RelStr
for b2 being non empty directed Element of bool the carrier of b1
for b3 being Element of the carrier of b1 holds
   ex_sup_of {b3} "/\" b2,b1;

:: WAYBEL_2:th 2
theorem
for b1 being reflexive transitive antisymmetric up-complete with_suprema RelStr
for b2 being non empty directed Element of bool the carrier of b1
for b3 being Element of the carrier of b1 holds
   ex_sup_of {b3} "\/" b2,b1;

:: WAYBEL_2:th 3
theorem
for b1 being reflexive transitive antisymmetric up-complete with_suprema RelStr
for b2, b3 being non empty directed Element of bool the carrier of b1 holds
b2 is_<=_than "\/"(b2 "\/" b3,b1);

:: WAYBEL_2:th 4
theorem
for b1 being reflexive transitive antisymmetric up-complete with_suprema RelStr
for b2, b3 being non empty directed Element of bool the carrier of b1 holds
"\/"(b2 "\/" b3,b1) = ("\/"(b2,b1)) "\/" "\/"(b3,b1);

:: WAYBEL_2:th 5
theorem
for b1 being reflexive transitive antisymmetric up-complete with_infima RelStr
for b2 being non empty directed Element of bool the carrier of [:b1,b1:] holds
   {"\/"({b3} "/\" proj2 b2,b1) where b3 is Element of the carrier of b1: b3 in proj1 b2} = {"\/"(b3,b1) where b3 is non empty directed Element of bool the carrier of b1: ex b4 being Element of the carrier of b1 st
      b3 = {b4} "/\" proj2 b2 & b4 in proj1 b2};

:: WAYBEL_2:th 6
theorem
for b1 being reflexive transitive antisymmetric with_infima RelStr
for b2 being non empty directed Element of bool the carrier of [:b1,b1:] holds
   union {b3 where b3 is non empty directed Element of bool the carrier of b1: ex b4 being Element of the carrier of b1 st
      b3 = {b4} "/\" proj2 b2 & b4 in proj1 b2} = (proj1 b2) "/\" proj2 b2;

:: WAYBEL_2:th 7
theorem
for b1 being reflexive transitive antisymmetric up-complete with_infima RelStr
for b2 being non empty directed Element of bool the carrier of [:b1,b1:] holds
   ex_sup_of union {b3 where b3 is non empty directed Element of bool the carrier of b1: ex b4 being Element of the carrier of b1 st
      b3 = {b4} "/\" proj2 b2 & b4 in proj1 b2},b1;

:: WAYBEL_2:th 8
theorem
for b1 being reflexive transitive antisymmetric up-complete with_infima RelStr
for b2 being non empty directed Element of bool the carrier of [:b1,b1:] holds
   ex_sup_of {"\/"(b3,b1) where b3 is non empty directed Element of bool the carrier of b1: ex b4 being Element of the carrier of b1 st
      b3 = {b4} "/\" proj2 b2 & b4 in proj1 b2},b1;

:: WAYBEL_2:th 9
theorem
for b1 being reflexive transitive antisymmetric up-complete with_infima RelStr
for b2 being non empty directed Element of bool the carrier of [:b1,b1:] holds
   "\/"({"\/"(b3,b1) where b3 is non empty directed Element of bool the carrier of b1: ex b4 being Element of the carrier of b1 st
      b3 = {b4} "/\" proj2 b2 & b4 in proj1 b2},b1) <= "\/"(union {b3 where b3 is non empty directed Element of bool the carrier of b1: ex b4 being Element of the carrier of b1 st
      b3 = {b4} "/\" proj2 b2 & b4 in proj1 b2},b1);

:: WAYBEL_2:th 10
theorem
for b1 being reflexive transitive antisymmetric up-complete with_infima RelStr
for b2 being non empty directed Element of bool the carrier of [:b1,b1:] holds
   "\/"({"\/"(b3,b1) where b3 is non empty directed Element of bool the carrier of b1: ex b4 being Element of the carrier of b1 st
      b3 = {b4} "/\" proj2 b2 & b4 in proj1 b2},b1) = "\/"(union {b3 where b3 is non empty directed Element of bool the carrier of b1: ex b4 being Element of the carrier of b1 st
      b3 = {b4} "/\" proj2 b2 & b4 in proj1 b2},b1);

:: WAYBEL_2:funcreg 3
registration
  let a1, a2 be non empty reflexive up-complete RelStr;
  cluster [:a1,a2:] -> strict up-complete;
end;

:: WAYBEL_2:th 11
theorem
for b1, b2 being non empty reflexive antisymmetric RelStr
      st [:b1,b2:] is up-complete
   holds b1 is up-complete & b2 is up-complete;

:: WAYBEL_2:th 12
theorem
for b1 being non empty reflexive antisymmetric up-complete RelStr
for b2 being non empty directed Element of bool the carrier of [:b1,b1:] holds
   "\/"(b2,[:b1,b1:]) = ["\/"(proj1 b2,b1),"\/"(proj2 b2,b1)];

:: WAYBEL_2:th 13
theorem
for b1, b2 being RelStr
for b3 being Element of bool the carrier of b1
for b4 being Function-like quasi_total Relation of the carrier of b1,the carrier of b2
      st b4 is monotone(b1, b2)
   holds b4 .: downarrow b3 c= downarrow (b4 .: b3);

:: WAYBEL_2:th 14
theorem
for b1, b2 being RelStr
for b3 being Element of bool the carrier of b1
for b4 being Function-like quasi_total Relation of the carrier of b1,the carrier of b2
      st b4 is monotone(b1, b2)
   holds b4 .: uparrow b3 c= uparrow (b4 .: b3);

:: WAYBEL_2:condreg 2
registration
  cluster non empty trivial reflexive -> distributive complemented (RelStr);
end;

:: WAYBEL_2:exreg 1
registration
  cluster non empty trivial strict reflexive transitive antisymmetric non void with_suprema with_infima RelStr;
end;

:: WAYBEL_2:th 15
theorem
for b1 being reflexive transitive antisymmetric distributive with_suprema with_infima complete RelStr
for b2 being Element of the carrier of b1
for b3 being finite Element of bool the carrier of b1 holds
   "\/"({b2} "/\" b3,b1) = b2 "/\" "\/"(b3,b1);

:: WAYBEL_2:th 16
theorem
for b1 being reflexive transitive antisymmetric distributive with_suprema with_infima complete RelStr
for b2 being Element of the carrier of b1
for b3 being finite Element of bool the carrier of b1 holds
   "/\"({b2} "\/" b3,b1) = b2 "\/" "/\"(b3,b1);

:: WAYBEL_2:th 17
theorem
for b1 being reflexive transitive antisymmetric distributive with_suprema with_infima complete RelStr
for b2 being Element of the carrier of b1
for b3 being finite Element of bool the carrier of b1 holds
   b2 "/\" preserves_sup_of b3;

:: WAYBEL_2:sch 1
scheme WAYBEL_2:sch 1
{F1 -> non empty RelStr,
  F2 -> non empty directed NetStr over F1(),
  F3 -> Element of the carrier of F1()}:
ex b1 being non empty directed NetStr over F1() st
   RelStr(#the carrier of b1,the InternalRel of b1#) = RelStr(#the carrier of F2(),the InternalRel of F2()#) &
    (for b2 being Element of the carrier of b1 holds
       (the mapping of b1) . b2 = F3((the mapping of F2()) . b2))


:: WAYBEL_2:th 18
theorem
for b1 being non empty RelStr
for b2 being non empty directed NetStr over b1
      st b2 is eventually-directed(b1)
   holds rng netmap(b2,b1) is directed(b1);

:: WAYBEL_2:th 19
theorem
for b1 being non empty reflexive RelStr
for b2 being non empty directed Element of bool the carrier of b1
for b3 being Function-like quasi_total Relation of b2,the carrier of b1 holds
   NetStr(#b2,(the InternalRel of b1) |_2 b2,b3#) is non empty directed NetStr over b1;

:: WAYBEL_2:th 20
theorem
for b1 being non empty reflexive RelStr
for b2 being non empty directed Element of bool the carrier of b1
for b3 being Function-like quasi_total Relation of b2,the carrier of b1
for b4 being non empty directed NetStr over b1
      st b3 = id b2 & b4 = NetStr(#b2,(the InternalRel of b1) |_2 b2,b3#)
   holds b4 is eventually-directed(b1);

:: WAYBEL_2:funcnot 1 => WAYBEL_2:func 1
definition
  let a1 be non empty RelStr;
  let a2 be NetStr over a1;
  func sup A2 -> Element of the carrier of a1 equals
    \\/(the mapping of a2,a1);
end;

:: WAYBEL_2:def 1
theorem
for b1 being non empty RelStr
for b2 being NetStr over b1 holds
   sup b2 = \\/(the mapping of b2,b1);

:: WAYBEL_2:funcnot 2 => WAYBEL_2:func 2
definition
  let a1 be non empty RelStr;
  let a2 be set;
  let a3 be Function-like quasi_total Relation of a2,the carrier of a1;
  func FinSups A3 -> non empty directed NetStr over a1 means
    ex b1 being Function-like quasi_total Relation of Fin a2,the carrier of a1 st
       for b2 being Element of Fin a2 holds
          b1 . b2 = "\/"(a3 .: b2,a1) & it = NetStr(#Fin a2,RelIncl Fin a2,b1#);
end;

:: WAYBEL_2:def 2
theorem
for b1 being non empty RelStr
for b2 being set
for b3 being Function-like quasi_total Relation of b2,the carrier of b1
for b4 being non empty directed NetStr over b1 holds
      b4 = FinSups b3
   iff
      ex b5 being Function-like quasi_total Relation of Fin b2,the carrier of b1 st
         for b6 being Element of Fin b2 holds
            b5 . b6 = "\/"(b3 .: b6,b1) & b4 = NetStr(#Fin b2,RelIncl Fin b2,b5#);

:: WAYBEL_2:th 21
theorem
for b1 being non empty RelStr
for b2, b3 being set
for b4 being Function-like quasi_total Relation of b2,the carrier of b1 holds
      b3 is Element of the carrier of FinSups b4
   iff
      b3 is Element of Fin b2;

:: WAYBEL_2:funcreg 4
registration
  let a1 be non empty reflexive antisymmetric complete RelStr;
  let a2 be set;
  let a3 be Function-like quasi_total Relation of a2,the carrier of a1;
  cluster FinSups a3 -> non empty directed monotone;
end;

:: WAYBEL_2:funcnot 3 => WAYBEL_2:func 3
definition
  let a1 be non empty RelStr;
  let a2 be Element of the carrier of a1;
  let a3 be non empty NetStr over a1;
  func A2 "/\" A3 -> strict NetStr over a1 means
    RelStr(#the carrier of it,the InternalRel of it#) = RelStr(#the carrier of a3,the InternalRel of a3#) &
     (for b1 being Element of the carrier of it holds
        ex b2 being Element of the carrier of a1 st
           b2 = (the mapping of a3) . b1 & (the mapping of it) . b1 = a2 "/\" b2);
end;

:: WAYBEL_2:def 3
theorem
for b1 being non empty RelStr
for b2 being Element of the carrier of b1
for b3 being non empty NetStr over b1
for b4 being strict NetStr over b1 holds
      b4 = b2 "/\" b3
   iff
      RelStr(#the carrier of b4,the InternalRel of b4#) = RelStr(#the carrier of b3,the InternalRel of b3#) &
       (for b5 being Element of the carrier of b4 holds
          ex b6 being Element of the carrier of b1 st
             b6 = (the mapping of b3) . b5 & (the mapping of b4) . b5 = b2 "/\" b6);

:: WAYBEL_2:th 22
theorem
for b1 being non empty RelStr
for b2 being non empty NetStr over b1
for b3 being Element of the carrier of b1
for b4 being set holds
      b4 is Element of the carrier of b2
   iff
      b4 is Element of the carrier of b3 "/\" b2;

:: WAYBEL_2:funcreg 5
registration
  let a1 be non empty RelStr;
  let a2 be Element of the carrier of a1;
  let a3 be non empty NetStr over a1;
  cluster a2 "/\" a3 -> non empty strict;
end;

:: WAYBEL_2:funcreg 6
registration
  let a1 be non empty RelStr;
  let a2 be Element of the carrier of a1;
  let a3 be non empty directed NetStr over a1;
  cluster a2 "/\" a3 -> strict directed;
end;

:: WAYBEL_2:th 23
theorem
for b1 being non empty RelStr
for b2 being Element of the carrier of b1
for b3 being non empty NetStr over b1 holds
   rng the mapping of b2 "/\" b3 = {b2} "/\" rng the mapping of b3;

:: WAYBEL_2:th 24
theorem
for b1 being non empty RelStr
for b2 being set
for b3 being Function-like quasi_total Relation of b2,the carrier of b1
      st for b4 being set holds
           ex_sup_of b3 .: b4,b1
   holds rng netmap(FinSups b3,b1) c= finsups rng b3;

:: WAYBEL_2:th 25
theorem
for b1 being non empty reflexive antisymmetric RelStr
for b2 being set
for b3 being Function-like quasi_total Relation of b2,the carrier of b1 holds
   rng b3 c= rng netmap(FinSups b3,b1);

:: WAYBEL_2:th 26
theorem
for b1 being non empty reflexive antisymmetric RelStr
for b2 being set
for b3 being Function-like quasi_total Relation of b2,the carrier of b1
      st ex_sup_of rng b3,b1 &
         ex_sup_of rng netmap(FinSups b3,b1),b1 &
         (for b4 being Element of Fin b2 holds
            ex_sup_of b3 .: b4,b1)
   holds \\/(b3,b1) = sup FinSups b3;

:: WAYBEL_2:th 27
theorem
for b1 being transitive antisymmetric with_infima RelStr
for b2 being non empty directed NetStr over b1
for b3 being Element of the carrier of b1
      st b2 is eventually-directed(b1)
   holds b3 "/\" b2 is eventually-directed(b1);

:: WAYBEL_2:th 28
theorem
for b1 being reflexive transitive antisymmetric up-complete with_infima RelStr
   st for b2 being Element of the carrier of b1
     for b3 being non empty directed Element of bool the carrier of b1
           st b2 <= "\/"(b3,b1)
        holds b2 <= "\/"({b2} "/\" b3,b1)
for b2 being non empty directed Element of bool the carrier of b1
for b3 being Element of the carrier of b1 holds
   b3 "/\" "\/"(b2,b1) = "\/"({b3} "/\" b2,b1);

:: WAYBEL_2:th 29
theorem
for b1 being reflexive transitive antisymmetric with_suprema RelStr
   st for b2 being directed Element of bool the carrier of b1
     for b3 being Element of the carrier of b1 holds
        b3 "/\" "\/"(b2,b1) = "\/"({b3} "/\" b2,b1)
for b2 being Element of bool the carrier of b1
for b3 being Element of the carrier of b1
      st ex_sup_of b2,b1
   holds b3 "/\" "\/"(b2,b1) = "\/"({b3} "/\" finsups b2,b1);

:: WAYBEL_2:th 30
theorem
for b1 being reflexive transitive antisymmetric up-complete with_suprema with_infima RelStr
   st for b2 being Element of bool the carrier of b1
     for b3 being Element of the carrier of b1 holds
        b3 "/\" "\/"(b2,b1) = "\/"({b3} "/\" finsups b2,b1)
for b2 being non empty directed Element of bool the carrier of b1
for b3 being Element of the carrier of b1 holds
   b3 "/\" "\/"(b2,b1) = "\/"({b3} "/\" b2,b1);

:: WAYBEL_2:funcnot 4 => WAYBEL_2:func 4
definition
  let a1 be non empty RelStr;
  func inf_op A1 -> Function-like quasi_total Relation of the carrier of [:a1,a1:],the carrier of a1 means
    for b1, b2 being Element of the carrier of a1 holds
    it .(b1,b2) = b1 "/\" b2;
end;

:: WAYBEL_2:def 4
theorem
for b1 being non empty RelStr
for b2 being Function-like quasi_total Relation of the carrier of [:b1,b1:],the carrier of b1 holds
      b2 = inf_op b1
   iff
      for b3, b4 being Element of the carrier of b1 holds
      b2 .(b3,b4) = b3 "/\" b4;

:: WAYBEL_2:th 31
theorem
for b1 being non empty RelStr
for b2 being Element of the carrier of [:b1,b1:] holds
   (inf_op b1) . b2 = b2 `1 "/\" (b2 `2);

:: WAYBEL_2:funcreg 7
registration
  let a1 be transitive antisymmetric with_infima RelStr;
  cluster inf_op a1 -> Function-like quasi_total monotone;
end;

:: WAYBEL_2:th 32
theorem
for b1 being non empty RelStr
for b2, b3 being Element of bool the carrier of b1 holds
(inf_op b1) .: [:b2,b3:] = b2 "/\" b3;

:: WAYBEL_2:th 33
theorem
for b1 being reflexive transitive antisymmetric up-complete with_infima RelStr
for b2 being non empty directed Element of bool the carrier of [:b1,b1:] holds
   "\/"((inf_op b1) .: b2,b1) = "\/"((proj1 b2) "/\" proj2 b2,b1);

:: WAYBEL_2:funcnot 5 => WAYBEL_2:func 5
definition
  let a1 be non empty RelStr;
  func sup_op A1 -> Function-like quasi_total Relation of the carrier of [:a1,a1:],the carrier of a1 means
    for b1, b2 being Element of the carrier of a1 holds
    it .(b1,b2) = b1 "\/" b2;
end;

:: WAYBEL_2:def 5
theorem
for b1 being non empty RelStr
for b2 being Function-like quasi_total Relation of the carrier of [:b1,b1:],the carrier of b1 holds
      b2 = sup_op b1
   iff
      for b3, b4 being Element of the carrier of b1 holds
      b2 .(b3,b4) = b3 "\/" b4;

:: WAYBEL_2:th 34
theorem
for b1 being non empty RelStr
for b2 being Element of the carrier of [:b1,b1:] holds
   (sup_op b1) . b2 = b2 `1 "\/" (b2 `2);

:: WAYBEL_2:funcreg 8
registration
  let a1 be transitive antisymmetric with_suprema RelStr;
  cluster sup_op a1 -> Function-like quasi_total monotone;
end;

:: WAYBEL_2:th 35
theorem
for b1 being non empty RelStr
for b2, b3 being Element of bool the carrier of b1 holds
(sup_op b1) .: [:b2,b3:] = b2 "\/" b3;

:: WAYBEL_2:th 36
theorem
for b1 being non empty reflexive transitive antisymmetric complete RelStr
for b2 being non empty filtered Element of bool the carrier of [:b1,b1:] holds
   "/\"((sup_op b1) .: b2,b1) = "/\"((proj1 b2) "\/" proj2 b2,b1);

:: WAYBEL_2:attrnot 1 => WAYBEL_2:attr 1
definition
  let a1 be non empty reflexive RelStr;
  attr a1 is satisfying_MC means
    for b1 being Element of the carrier of a1
    for b2 being non empty directed Element of bool the carrier of a1 holds
       b1 "/\" "\/"(b2,a1) = "\/"({b1} "/\" b2,a1);
end;

:: WAYBEL_2:dfs 6
definiens
  let a1 be non empty reflexive RelStr;
To prove
     a1 is satisfying_MC
it is sufficient to prove
  thus for b1 being Element of the carrier of a1
    for b2 being non empty directed Element of bool the carrier of a1 holds
       b1 "/\" "\/"(b2,a1) = "\/"({b1} "/\" b2,a1);

:: WAYBEL_2:def 6
theorem
for b1 being non empty reflexive RelStr holds
      b1 is satisfying_MC
   iff
      for b2 being Element of the carrier of b1
      for b3 being non empty directed Element of bool the carrier of b1 holds
         b2 "/\" "\/"(b3,b1) = "\/"({b2} "/\" b3,b1);

:: WAYBEL_2:attrnot 2 => WAYBEL_2:attr 2
definition
  let a1 be non empty reflexive RelStr;
  attr a1 is meet-continuous means
    a1 is up-complete & a1 is satisfying_MC;
end;

:: WAYBEL_2:dfs 7
definiens
  let a1 be non empty reflexive RelStr;
To prove
     a1 is meet-continuous
it is sufficient to prove
  thus a1 is up-complete & a1 is satisfying_MC;

:: WAYBEL_2:def 7
theorem
for b1 being non empty reflexive RelStr holds
      b1 is meet-continuous
   iff
      b1 is up-complete & b1 is satisfying_MC;

:: WAYBEL_2:condreg 3
registration
  cluster non empty trivial reflexive -> satisfying_MC (RelStr);
end;

:: WAYBEL_2:condreg 4
registration
  cluster non empty reflexive meet-continuous -> up-complete satisfying_MC (RelStr);
end;

:: WAYBEL_2:condreg 5
registration
  cluster non empty reflexive up-complete satisfying_MC -> meet-continuous (RelStr);
end;

:: WAYBEL_2:exreg 2
registration
  cluster non empty trivial strict reflexive transitive antisymmetric non void with_suprema with_infima RelStr;
end;

:: WAYBEL_2:th 37
theorem
for b1 being non empty reflexive RelStr
      st for b2 being Element of bool the carrier of b1
        for b3 being Element of the carrier of b1 holds
           b3 "/\" "\/"(b2,b1) = "\/"({b3 "/\" b4 where b4 is Element of the carrier of b1: b4 in b2},b1)
   holds b1 is satisfying_MC;

:: WAYBEL_2:th 38
theorem
for b1 being reflexive transitive antisymmetric up-complete with_infima RelStr
   st SupMap b1 is meet-preserving(InclPoset Ids b1, b1)
for b2, b3 being non empty directed lower Element of bool the carrier of b1 holds
("\/"(b2,b1)) "/\" "\/"(b3,b1) = "\/"(b2 "/\" b3,b1);

:: WAYBEL_2:funcreg 9
registration
  let a1 be reflexive transitive antisymmetric up-complete with_suprema RelStr;
  cluster SupMap a1 -> Function-like quasi_total join-preserving;
end;

:: WAYBEL_2:th 39
theorem
for b1 being reflexive transitive antisymmetric up-complete with_infima RelStr
      st for b2, b3 being non empty directed lower Element of bool the carrier of b1 holds
        ("\/"(b2,b1)) "/\" "\/"(b3,b1) = "\/"(b2 "/\" b3,b1)
   holds SupMap b1 is meet-preserving(InclPoset Ids b1, b1);

:: WAYBEL_2:th 40
theorem
for b1 being reflexive transitive antisymmetric up-complete with_infima RelStr
   st for b2, b3 being non empty directed lower Element of bool the carrier of b1 holds
     ("\/"(b2,b1)) "/\" "\/"(b3,b1) = "\/"(b2 "/\" b3,b1)
for b2, b3 being non empty directed Element of bool the carrier of b1 holds
("\/"(b2,b1)) "/\" "\/"(b3,b1) = "\/"(b2 "/\" b3,b1);

:: WAYBEL_2:th 41
theorem
for b1 being non empty reflexive RelStr
   st b1 is satisfying_MC
for b2 being Element of the carrier of b1
for b3 being non empty directed NetStr over b1
      st b3 is eventually-directed(b1)
   holds b2 "/\" sup b3 = "\/"({b2} "/\" rng netmap(b3,b1),b1);

:: WAYBEL_2:th 42
theorem
for b1 being non empty reflexive RelStr
      st for b2 being Element of the carrier of b1
        for b3 being non empty directed NetStr over b1
              st b3 is eventually-directed(b1)
           holds b2 "/\" sup b3 = "\/"({b2} "/\" rng netmap(b3,b1),b1)
   holds b1 is satisfying_MC;

:: WAYBEL_2:th 43
theorem
for b1 being non empty reflexive antisymmetric up-complete RelStr
   st inf_op b1 is directed-sups-preserving([:b1,b1:], b1)
for b2, b3 being non empty directed Element of bool the carrier of b1 holds
("\/"(b2,b1)) "/\" "\/"(b3,b1) = "\/"(b2 "/\" b3,b1);

:: WAYBEL_2:th 44
theorem
for b1 being non empty reflexive antisymmetric RelStr
      st for b2, b3 being non empty directed Element of bool the carrier of b1 holds
        ("\/"(b2,b1)) "/\" "\/"(b3,b1) = "\/"(b2 "/\" b3,b1)
   holds b1 is satisfying_MC;

:: WAYBEL_2:th 45
theorem
for b1 being non empty reflexive antisymmetric with_infima satisfying_MC RelStr
for b2 being Element of the carrier of b1
for b3 being non empty directed Element of bool the carrier of b1
      st b2 <= "\/"(b3,b1)
   holds b2 = "\/"({b2} "/\" b3,b1);

:: WAYBEL_2:th 46
theorem
for b1 being reflexive transitive antisymmetric up-complete with_infima RelStr
      st for b2 being Element of the carrier of b1
        for b3 being non empty directed Element of bool the carrier of b1
              st b2 <= "\/"(b3,b1)
           holds b2 <= "\/"({b2} "/\" b3,b1)
   holds inf_op b1 is directed-sups-preserving([:b1,b1:], b1);

:: WAYBEL_2:th 47
theorem
for b1 being non empty reflexive antisymmetric complete RelStr
   st for b2 being Element of the carrier of b1
     for b3 being non empty directed NetStr over b1
           st b3 is eventually-directed(b1)
        holds b2 "/\" sup b3 = "\/"({b2} "/\" rng netmap(b3,b1),b1)
for b2 being Element of the carrier of b1
for b3 being set
for b4 being Function-like quasi_total Relation of b3,the carrier of b1 holds
   b2 "/\" \\/(b4,b1) = sup (b2 "/\" FinSups b4);

:: WAYBEL_2:th 48
theorem
for b1 being reflexive transitive antisymmetric with_infima complete RelStr
   st for b2 being Element of the carrier of b1
     for b3 being set
     for b4 being Function-like quasi_total Relation of b3,the carrier of b1 holds
        b2 "/\" \\/(b4,b1) = sup (b2 "/\" FinSups b4)
for b2 being Element of the carrier of b1
for b3 being non empty directed NetStr over b1
      st b3 is eventually-directed(b1)
   holds b2 "/\" sup b3 = "\/"({b2} "/\" rng netmap(b3,b1),b1);

:: WAYBEL_2:th 49
theorem
for b1 being reflexive transitive antisymmetric up-complete with_suprema with_infima RelStr holds
      b1 is meet-continuous
   iff
      SupMap b1 is meet-preserving(InclPoset Ids b1, b1) & SupMap b1 is join-preserving(InclPoset Ids b1, b1);

:: WAYBEL_2:funcreg 10
registration
  let a1 be reflexive transitive antisymmetric with_suprema with_infima meet-continuous RelStr;
  cluster SupMap a1 -> Function-like quasi_total meet-preserving join-preserving;
end;

:: WAYBEL_2:th 50
theorem
for b1 being reflexive transitive antisymmetric up-complete with_suprema with_infima RelStr holds
      b1 is meet-continuous
   iff
      for b2, b3 being non empty directed lower Element of bool the carrier of b1 holds
      ("\/"(b2,b1)) "/\" "\/"(b3,b1) = "\/"(b2 "/\" b3,b1);

:: WAYBEL_2:th 51
theorem
for b1 being reflexive transitive antisymmetric up-complete with_suprema with_infima RelStr holds
      b1 is meet-continuous
   iff
      for b2, b3 being non empty directed Element of bool the carrier of b1 holds
      ("\/"(b2,b1)) "/\" "\/"(b3,b1) = "\/"(b2 "/\" b3,b1);

:: WAYBEL_2:th 52
theorem
for b1 being reflexive transitive antisymmetric up-complete with_suprema with_infima RelStr holds
      b1 is meet-continuous
   iff
      for b2 being Element of the carrier of b1
      for b3 being non empty directed Element of bool the carrier of b1
            st b2 <= "\/"(b3,b1)
         holds b2 = "\/"({b2} "/\" b3,b1);

:: WAYBEL_2:th 53
theorem
for b1 being reflexive transitive antisymmetric up-complete with_infima RelStr holds
      b1 is meet-continuous
   iff
      inf_op b1 is directed-sups-preserving([:b1,b1:], b1);

:: WAYBEL_2:funcreg 11
registration
  let a1 be reflexive transitive antisymmetric with_infima meet-continuous RelStr;
  cluster inf_op a1 -> Function-like quasi_total directed-sups-preserving;
end;

:: WAYBEL_2:th 54
theorem
for b1 being reflexive transitive antisymmetric up-complete with_infima RelStr holds
      b1 is meet-continuous
   iff
      for b2 being Element of the carrier of b1
      for b3 being non empty directed NetStr over b1
            st b3 is eventually-directed(b1)
         holds b2 "/\" sup b3 = "\/"({b2} "/\" rng netmap(b3,b1),b1);

:: WAYBEL_2:th 55
theorem
for b1 being reflexive transitive antisymmetric with_infima complete RelStr holds
      b1 is meet-continuous
   iff
      for b2 being Element of the carrier of b1
      for b3 being set
      for b4 being Function-like quasi_total Relation of b3,the carrier of b1 holds
         b2 "/\" \\/(b4,b1) = sup (b2 "/\" FinSups b4);

:: WAYBEL_2:funcreg 12
registration
  let a1 be reflexive transitive antisymmetric with_infima meet-continuous RelStr;
  let a2 be Element of the carrier of a1;
  cluster a2 "/\" -> Function-like quasi_total directed-sups-preserving;
end;

:: WAYBEL_2:th 56
theorem
for b1 being non empty reflexive transitive antisymmetric complete RelStr holds
      b1 is Heyting
   iff
      b1 is meet-continuous & b1 is distributive;

:: WAYBEL_2:condreg 6
registration
  cluster non empty reflexive transitive antisymmetric Heyting complete -> distributive meet-continuous (RelStr);
end;

:: WAYBEL_2:condreg 7
registration
  cluster non empty reflexive transitive antisymmetric distributive complete meet-continuous -> Heyting (RelStr);
end;