Article WAYBEL_5, MML version 4.99.1005

:: WAYBEL_5:th 1
theorem
for b1 being reflexive transitive antisymmetric with_infima up-complete RelStr holds
      b1 is continuous
   iff
      for b2 being Element of the carrier of b1 holds
         waybelow b2 is non empty directed lower Element of bool the carrier of b1 &
          b2 <= "\/"(waybelow b2,b1) &
          (for b3 being non empty directed lower Element of bool the carrier of b1
                st b2 <= "\/"(b3,b1)
             holds waybelow b2 c= b3);

:: WAYBEL_5:th 2
theorem
for b1 being reflexive transitive antisymmetric with_infima up-complete RelStr holds
      b1 is continuous
   iff
      for b2 being Element of the carrier of b1 holds
         ex b3 being non empty directed lower Element of bool the carrier of b1 st
            b2 <= "\/"(b3,b1) &
             (for b4 being non empty directed lower Element of bool the carrier of b1
                   st b2 <= "\/"(b4,b1)
                holds b3 c= b4);

:: WAYBEL_5:th 3
theorem
for b1 being reflexive transitive antisymmetric with_suprema lower-bounded continuous RelStr holds
   SupMap b1 is upper_adjoint(InclPoset Ids b1, b1);

:: WAYBEL_5:th 4
theorem
for b1 being reflexive transitive antisymmetric with_suprema with_infima lower-bounded up-complete RelStr
      st SupMap b1 is upper_adjoint(InclPoset Ids b1, b1)
   holds b1 is continuous;

:: WAYBEL_5:th 5
theorem
for b1 being reflexive transitive antisymmetric with_infima complete RelStr
      st SupMap b1 is infs-preserving(InclPoset Ids b1, b1) & SupMap b1 is sups-preserving(InclPoset Ids b1, b1)
   holds SupMap b1 is upper_adjoint(InclPoset Ids b1, b1);

:: WAYBEL_5:modenot 1
definition
  let a1, a2 be set;
  let a3 be ManySortedSet of a1;
  mode DoubleIndexedSet of a3,a2 is ManySortedFunction of a3,a1 --> a2;
end;

:: WAYBEL_5:modenot 2
definition
  let a1 be set;
  let a2 be ManySortedSet of a1;
  let a3 be 1-sorted;
  mode DoubleIndexedSet of a2,a3 is ManySortedFunction of a2,a1 --> the carrier of a3;
end;

:: WAYBEL_5:th 6
theorem
for b1, b2 being set
for b3 being ManySortedSet of b1
for b4 being ManySortedFunction of b3,b1 --> b2
for b5 being set
      st b5 in b1
   holds b4 . b5 is Function-like quasi_total Relation of b3 . b5,b2;

:: WAYBEL_5:funcnot 1 => WAYBEL_5:func 1
definition
  let a1, a2 be non empty set;
  let a3 be ManySortedSet of a1;
  let a4 be ManySortedFunction of a3,a1 --> a2;
  let a5 be Element of a1;
  redefine func a4 . a5 -> Function-like quasi_total Relation of a3 . a5,a2;
end;

:: WAYBEL_5:funcreg 1
registration
  let a1, a2 be non empty set;
  let a3 be non-empty ManySortedSet of a1;
  let a4 be ManySortedFunction of a3,a1 --> a2;
  let a5 be Element of a1;
  cluster proj2 (a4 . a5) -> non empty;
end;

:: WAYBEL_5:condreg 1
registration
  let a1 be set;
  let a2 be non empty set;
  let a3 be non-empty ManySortedSet of a1;
  cluster -> non-empty (ManySortedFunction of a3,a1 --> a2);
end;

:: WAYBEL_5:th 7
theorem
for b1 being Relation-like Function-like Function-yielding set
for b2 being set
      st b2 in proj1 Frege b1
   holds b2 is Relation-like Function-like set;

:: WAYBEL_5:th 8
theorem
for b1 being Relation-like Function-like Function-yielding set
for b2 being Relation-like Function-like set
      st b2 in proj1 Frege b1
   holds proj1 b2 = proj1 b1 & proj1 b1 = proj1 ((Frege b1) . b2);

:: WAYBEL_5:th 9
theorem
for b1 being Relation-like Function-like Function-yielding set
for b2 being Relation-like Function-like set
   st b2 in proj1 Frege b1
for b3 being set
      st b3 in proj1 b1
   holds b2 . b3 in proj1 (b1 . b3) &
    ((Frege b1) . b2) . b3 = (b1 . b3) . (b2 . b3) &
    (b1 . b3) . (b2 . b3) in proj2 ((Frege b1) . b2);

:: WAYBEL_5:th 10
theorem
for b1, b2 being set
for b3 being ManySortedSet of b1
for b4 being ManySortedFunction of b3,b1 --> b2
for b5 being Relation-like Function-like set
      st b5 in proj1 Frege b4
   holds (Frege b4) . b5 is Function-like quasi_total Relation of b1,b2;

:: WAYBEL_5:funcreg 2
registration
  let a1 be Relation-like non-empty Function-like set;
  cluster doms a1 -> Relation-like non-empty Function-like;
end;

:: WAYBEL_5:funcnot 2 => WAYBEL_5:func 2
definition
  let a1, a2 be set;
  let a3 be ManySortedSet of a1;
  let a4 be ManySortedFunction of a3,a1 --> a2;
  redefine func Frege a4 -> ManySortedFunction of (product doms a4) --> a1,(product doms a4) --> a2;
end;

:: WAYBEL_5:funcnot 3 => WAYBEL_5:func 3
definition
  let a1, a2 be non empty set;
  let a3 be non-empty ManySortedSet of a1;
  let a4 be ManySortedFunction of a3,a1 --> a2;
  let a5 be ManySortedFunction of (product doms a4) --> a1,(product doms a4) --> a2;
  let a6 be Element of product doms a4;
  redefine func a5 . a6 -> Function-like quasi_total Relation of a1,a2;
end;

:: WAYBEL_5:funcnot 4 => WAYBEL_5:func 4
definition
  let a1 be non empty RelStr;
  let a2 be Relation-like Function-like Function-yielding set;
  func \//(A2,A1) -> Function-like quasi_total Relation of proj1 a2,the carrier of a1 means
    for b1 being set
          st b1 in proj1 a2
       holds it . b1 = \\/(a2 . b1,a1);
end;

:: WAYBEL_5:def 1
theorem
for b1 being non empty RelStr
for b2 being Relation-like Function-like Function-yielding set
for b3 being Function-like quasi_total Relation of proj1 b2,the carrier of b1 holds
      b3 = \//(b2,b1)
   iff
      for b4 being set
            st b4 in proj1 b2
         holds b3 . b4 = \\/(b2 . b4,b1);

:: WAYBEL_5:funcnot 5 => WAYBEL_5:func 5
definition
  let a1 be non empty RelStr;
  let a2 be Relation-like Function-like Function-yielding set;
  func /\\(A2,A1) -> Function-like quasi_total Relation of proj1 a2,the carrier of a1 means
    for b1 being set
          st b1 in proj1 a2
       holds it . b1 = //\(a2 . b1,a1);
end;

:: WAYBEL_5:def 2
theorem
for b1 being non empty RelStr
for b2 being Relation-like Function-like Function-yielding set
for b3 being Function-like quasi_total Relation of proj1 b2,the carrier of b1 holds
      b3 = /\\(b2,b1)
   iff
      for b4 being set
            st b4 in proj1 b2
         holds b3 . b4 = //\(b2 . b4,b1);

:: WAYBEL_5:funcnot 6 => WAYBEL_5:func 4
notation
  let a1 be set;
  let a2 be ManySortedSet of a1;
  let a3 be non empty RelStr;
  let a4 be ManySortedFunction of a2,a1 --> the carrier of a3;
  synonym Sups a4 for \//(a2,a1);
end;

:: WAYBEL_5:funcnot 7 => WAYBEL_5:func 5
notation
  let a1 be set;
  let a2 be ManySortedSet of a1;
  let a3 be non empty RelStr;
  let a4 be ManySortedFunction of a2,a1 --> the carrier of a3;
  synonym Infs a4 for /\\(a2,a1);
end;

:: WAYBEL_5:funcnot 8 => WAYBEL_5:func 4
notation
  let a1, a2 be set;
  let a3 be non empty RelStr;
  let a4 be ManySortedFunction of a1 --> a2,a1 --> the carrier of a3;
  synonym Sups a4 for \//(a2,a1);
end;

:: WAYBEL_5:funcnot 9 => WAYBEL_5:func 5
notation
  let a1, a2 be set;
  let a3 be non empty RelStr;
  let a4 be ManySortedFunction of a1 --> a2,a1 --> the carrier of a3;
  synonym Infs a4 for /\\(a2,a1);
end;

:: WAYBEL_5:th 11
theorem
for b1 being non empty RelStr
for b2, b3 being Relation-like Function-like Function-yielding set
      st proj1 b2 = proj1 b3 &
         (for b4 being set
               st b4 in proj1 b2
            holds \\/(b2 . b4,b1) = \\/(b3 . b4,b1))
   holds \//(b2,b1) = \//(b3,b1);

:: WAYBEL_5:th 12
theorem
for b1 being non empty RelStr
for b2, b3 being Relation-like Function-like Function-yielding set
      st proj1 b2 = proj1 b3 &
         (for b4 being set
               st b4 in proj1 b2
            holds //\(b2 . b4,b1) = //\(b3 . b4,b1))
   holds /\\(b2,b1) = /\\(b3,b1);

:: WAYBEL_5:th 13
theorem
for b1 being set
for b2 being non empty RelStr
for b3 being Relation-like Function-like Function-yielding set holds
   (b1 in rng \//(b3,b2) implies ex b4 being set st
       b4 in proj1 b3 & b1 = \\/(b3 . b4,b2)) &
    (for b4 being set
          st b4 in proj1 b3
       holds b1 <> \\/(b3 . b4,b2) or b1 in rng \//(b3,b2)) &
    (b1 in rng /\\(b3,b2) implies ex b4 being set st
       b4 in proj1 b3 & b1 = //\(b3 . b4,b2)) &
    (for b4 being set
          st b4 in proj1 b3
       holds b1 <> //\(b3 . b4,b2) or b1 in rng /\\(b3,b2));

:: WAYBEL_5:th 14
theorem
for b1 being set
for b2 being non empty RelStr
for b3 being non empty set
for b4 being ManySortedSet of b3
for b5 being ManySortedFunction of b4,b3 --> the carrier of b2 holds
   (b1 in rng \//(b5,b2) implies ex b6 being Element of b3 st
       b1 = \\/(b5 . b6,b2)) &
    (for b6 being Element of b3 holds
       b1 <> \\/(b5 . b6,b2) or b1 in rng \//(b5,b2)) &
    (b1 in rng /\\(b5,b2) implies ex b6 being Element of b3 st
       b1 = //\(b5 . b6,b2)) &
    (for b6 being Element of b3 holds
       b1 <> //\(b5 . b6,b2) or b1 in rng /\\(b5,b2));

:: WAYBEL_5:funcreg 3
registration
  let a1 be non empty set;
  let a2 be ManySortedSet of a1;
  let a3 be non empty RelStr;
  let a4 be ManySortedFunction of a2,a1 --> the carrier of a3;
  cluster proj2 \//(a4,a3) -> non empty;
end;

:: WAYBEL_5:funcreg 4
registration
  let a1 be non empty set;
  let a2 be ManySortedSet of a1;
  let a3 be non empty RelStr;
  let a4 be ManySortedFunction of a2,a1 --> the carrier of a3;
  cluster proj2 /\\(a4,a3) -> non empty;
end;

:: WAYBEL_5:th 15
theorem
for b1 being reflexive transitive antisymmetric with_suprema with_infima complete RelStr
for b2 being Element of the carrier of b1
for b3 being Relation-like Function-like Function-yielding set
      st for b4 being Relation-like Function-like set
              st b4 in proj1 Frege b3
           holds //\((Frege b3) . b4,b1) <= b2
   holds \\/(/\\(Frege b3,b1),b1) <= b2;

:: WAYBEL_5:th 16
theorem
for b1 being reflexive transitive antisymmetric with_suprema with_infima complete RelStr
for b2 being non empty set
for b3 being non-empty ManySortedSet of b2
for b4 being ManySortedFunction of b3,b2 --> the carrier of b1 holds
   \\/(/\\(Frege b4,b1),b1) <= //\(\//(b4,b1),b1);

:: WAYBEL_5:th 17
theorem
for b1 being reflexive transitive antisymmetric with_suprema with_infima complete RelStr
for b2, b3 being Element of the carrier of b1
      st b1 is continuous &
         (for b4 being Element of the carrier of b1
               st b4 is_way_below b2
            holds b4 <= b3)
   holds b2 <= b3;

:: WAYBEL_5:th 18
theorem
for b1 being reflexive transitive antisymmetric with_suprema with_infima complete RelStr
      st for b2 being non empty set
           st b2 in the_universe_of the carrier of b1
        for b3 being non-empty ManySortedSet of b2
           st for b4 being Element of b2 holds
                b3 . b4 in the_universe_of the carrier of b1
        for b4 being ManySortedFunction of b3,b2 --> the carrier of b1
              st for b5 being Element of b2 holds
                   rng (b4 . b5) is directed(b1)
           holds //\(\//(b4,b1),b1) = \\/(/\\(Frege b4,b1),b1)
   holds b1 is continuous;

:: WAYBEL_5:th 19
theorem
for b1 being reflexive transitive antisymmetric with_suprema with_infima complete RelStr holds
      b1 is continuous
   iff
      for b2 being non empty set
      for b3 being non-empty ManySortedSet of b2
      for b4 being ManySortedFunction of b3,b2 --> the carrier of b1
            st for b5 being Element of b2 holds
                 rng (b4 . b5) is directed(b1)
         holds //\(\//(b4,b1),b1) = \\/(/\\(Frege b4,b1),b1);

:: WAYBEL_5:funcnot 10 => WAYBEL_5:func 6
definition
  let a1, a2, a3 be non empty set;
  let a4 be Function-like quasi_total Relation of [:a1,a2:],a3;
  redefine func curry a4 -> ManySortedFunction of a1 --> a2,a1 --> a3;
end;

:: WAYBEL_5:th 20
theorem
for b1, b2, b3 being non empty set
for b4 being Element of b1
for b5 being Element of b2
for b6 being Function-like quasi_total Relation of [:b1,b2:],b3 holds
   proj1 curry b6 = b1 &
    dom ((curry b6) . b4) = b2 &
    b6 .(b4,b5) = ((curry b6) . b4) . b5;

:: WAYBEL_5:th 21
theorem
for b1 being reflexive transitive antisymmetric with_suprema with_infima complete RelStr holds
      b1 is continuous
   iff
      for b2, b3 being non empty set
      for b4 being Function-like quasi_total Relation of [:b2,b3:],the carrier of b1
            st for b5 being Element of b2 holds
                 rng ((curry b4) . b5) is directed(b1)
         holds //\(\//(curry b4,b1),b1) = \\/(/\\(Frege curry b4,b1),b1);

:: WAYBEL_5:th 22
theorem
for b1 being reflexive transitive antisymmetric with_suprema with_infima complete RelStr
for b2, b3 being non empty set
for b4 being Function-like quasi_total Relation of [:b2,b3:],the carrier of b1
for b5 being Element of bool the carrier of b1
      st b5 = {b6 where b6 is Element of the carrier of b1: ex b7 being non-empty ManySortedSet of b2 st
           b7 in Funcs(b2,Fin b3) &
            (ex b8 being ManySortedFunction of b7,b2 --> the carrier of b1 st
               (for b9 being Element of b2
                for b10 being set
                      st b10 in b7 . b9
                   holds (b8 . b9) . b10 = b4 .(b9,b10)) &
                b6 = //\(\//(b8,b1),b1))}
   holds "\/"(b5,b1) <= //\(\//(curry b4,b1),b1);

:: WAYBEL_5:th 23
theorem
for b1 being reflexive transitive antisymmetric with_suprema with_infima complete RelStr holds
      b1 is continuous
   iff
      for b2, b3 being non empty set
      for b4 being Function-like quasi_total Relation of [:b2,b3:],the carrier of b1
      for b5 being Element of bool the carrier of b1
            st b5 = {b6 where b6 is Element of the carrier of b1: ex b7 being non-empty ManySortedSet of b2 st
                 b7 in Funcs(b2,Fin b3) &
                  (ex b8 being ManySortedFunction of b7,b2 --> the carrier of b1 st
                     (for b9 being Element of b2
                      for b10 being set
                            st b10 in b7 . b9
                         holds (b8 . b9) . b10 = b4 .(b9,b10)) &
                      b6 = //\(\//(b8,b1),b1))}
         holds //\(\//(curry b4,b1),b1) = "\/"(b5,b1);

:: WAYBEL_5:attrnot 1 => WAYBEL_5:attr 1
definition
  let a1 be non empty RelStr;
  attr a1 is completely-distributive means
    a1 is complete &
     (for b1 being non empty set
     for b2 being non-empty ManySortedSet of b1
     for b3 being ManySortedFunction of b2,b1 --> the carrier of a1 holds
        //\(\//(b3,a1),a1) = \\/(/\\(Frege b3,a1),a1));
end;

:: WAYBEL_5:dfs 3
definiens
  let a1 be non empty RelStr;
To prove
     a1 is completely-distributive
it is sufficient to prove
  thus a1 is complete &
     (for b1 being non empty set
     for b2 being non-empty ManySortedSet of b1
     for b3 being ManySortedFunction of b2,b1 --> the carrier of a1 holds
        //\(\//(b3,a1),a1) = \\/(/\\(Frege b3,a1),a1));

:: WAYBEL_5:def 3
theorem
for b1 being non empty RelStr holds
      b1 is completely-distributive
   iff
      b1 is complete &
       (for b2 being non empty set
       for b3 being non-empty ManySortedSet of b2
       for b4 being ManySortedFunction of b3,b2 --> the carrier of b1 holds
          //\(\//(b4,b1),b1) = \\/(/\\(Frege b4,b1),b1));

:: WAYBEL_5:condreg 2
registration
  cluster non empty trivial reflexive transitive antisymmetric -> completely-distributive (RelStr);
end;

:: WAYBEL_5:exreg 1
registration
  cluster non empty total reflexive transitive antisymmetric with_suprema with_infima completely-distributive RelStr;
end;

:: WAYBEL_5:th 24
theorem
for b1 being reflexive transitive antisymmetric with_suprema with_infima completely-distributive RelStr holds
   b1 is continuous;

:: WAYBEL_5:condreg 3
registration
  cluster reflexive transitive antisymmetric with_suprema with_infima completely-distributive -> complete continuous (RelStr);
end;

:: WAYBEL_5:th 25
theorem
for b1 being non empty transitive antisymmetric with_infima RelStr
for b2 being Element of the carrier of b1
for b3, b4 being Element of bool the carrier of b1
      st ex_sup_of b3,b1 &
         ex_sup_of b4,b1 &
         b4 = {b2 "/\" b5 where b5 is Element of the carrier of b1: b5 in b3}
   holds "\/"(b4,b1) <= b2 "/\" "\/"(b3,b1);

:: WAYBEL_5:th 26
theorem
for b1 being reflexive transitive antisymmetric with_suprema with_infima completely-distributive RelStr
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);

:: WAYBEL_5:condreg 4
registration
  cluster reflexive transitive antisymmetric with_suprema with_infima completely-distributive -> Heyting (RelStr);
end;

:: WAYBEL_5:modenot 3
definition
  let a1 be non empty RelStr;
  mode CLSubFrame of a1 is non empty full infs-inheriting directed-sups-inheriting SubRelStr of a1;
end;

:: WAYBEL_5:th 27
theorem
for b1 being reflexive transitive antisymmetric with_suprema with_infima complete RelStr
for b2 being non empty set
for b3 being non-empty ManySortedSet of b2
for b4 being ManySortedFunction of b3,b2 --> the carrier of b1
      st for b5 being Element of b2 holds
           rng (b4 . b5) is directed(b1)
   holds rng /\\(Frege b4,b1) is directed(b1);

:: WAYBEL_5:th 28
theorem
for b1 being reflexive transitive antisymmetric with_suprema with_infima complete RelStr
   st b1 is continuous
for b2 being non empty full infs-inheriting directed-sups-inheriting SubRelStr of b1 holds
   b2 is reflexive transitive antisymmetric with_suprema with_infima continuous RelStr;

:: WAYBEL_5:th 29
theorem
for b1 being reflexive transitive antisymmetric with_suprema with_infima complete RelStr
for b2 being non empty reflexive transitive antisymmetric RelStr
      st ex b3 being Function-like quasi_total Relation of the carrier of b1,the carrier of b2 st
           b3 is infs-preserving(b1, b2) & b3 is onto(the carrier of b1, the carrier of b2)
   holds b2 is reflexive transitive antisymmetric with_suprema with_infima complete RelStr;

:: WAYBEL_5:funcnot 11 => FUNCOP_1:func 2
notation
  let a1, a2 be set;
  synonym a1 => a2 for a1 --> a2;
end;

:: WAYBEL_5:funcnot 12 => WAYBEL_5:func 7
definition
  let a1, a2 be set;
  redefine func a1 => a2 -> ManySortedSet of a1;
end;

:: WAYBEL_5:funcnot 13 => WAYBEL_5:func 8
definition
  let a1, a2, a3 be set;
  let a4 be Function-like quasi_total Relation of a1,a2;
  redefine func a3 => a4 -> ManySortedFunction of a3 --> a1,a3 --> a2;
end;

:: WAYBEL_5:th 30
theorem
for b1 being non empty set
for b2, b3 being set
for b4 being Function-like quasi_total Relation of b2,b3
for b5 being Function-like quasi_total Relation of b3,b2
      st b5 * b4 = id b2
   holds (b1 => b5) ** (b1 => b4) = id (b1 --> b2);

:: WAYBEL_5:th 31
theorem
for b1, b2 being non empty set
for b3 being set
for b4 being ManySortedSet of b1
for b5 being ManySortedFunction of b4,b1 --> b2
for b6 being Function-like quasi_total Relation of b2,b3 holds
   (b1 => b6) ** b5 is ManySortedFunction of b4,b1 --> b3;

:: WAYBEL_5:th 32
theorem
for b1, b2, b3 being non empty set
for b4 being ManySortedSet of b1
for b5 being ManySortedFunction of b4,b1 --> b2
for b6 being Function-like quasi_total Relation of b2,b3 holds
   doms ((b1 => b6) ** b5) = doms b5;

:: WAYBEL_5:th 33
theorem
for b1 being reflexive transitive antisymmetric with_suprema with_infima complete RelStr
   st b1 is continuous
for b2 being non empty reflexive transitive antisymmetric RelStr
      st ex b3 being Function-like quasi_total Relation of the carrier of b1,the carrier of b2 st
           b3 is infs-preserving(b1, b2) & b3 is directed-sups-preserving(b1, b2) & b3 is onto(the carrier of b1, the carrier of b2)
   holds b2 is reflexive transitive antisymmetric with_suprema with_infima continuous RelStr;