Article KNASTER, MML version 4.99.1005

:: KNASTER:th 3
theorem
for b1, b2, b3 being Relation-like Function-like set
      st b1 = b2 \/ b3 & proj1 b2 misses proj1 b3
   holds    b1 is one-to-one
   iff
      b2 is one-to-one & b3 is one-to-one & proj2 b2 misses proj2 b3;

:: KNASTER:th 4
theorem
for b1, b2 being set
for b3 being Element of NAT
for b4 being Function-like quasi_total Relation of b1,b1
      st b2 is_a_fixpoint_of iter(b4,b3)
   holds b4 . b2 is_a_fixpoint_of iter(b4,b3);

:: KNASTER:th 5
theorem
for b1, b2 being set
for b3 being Function-like quasi_total Relation of b1,b1
      st ex b4 being Element of NAT st
           b2 is_a_fixpoint_of iter(b3,b4) &
            (for b5 being set
                  st b5 is_a_fixpoint_of iter(b3,b4)
               holds b2 = b5)
   holds b2 is_a_fixpoint_of b3;

:: KNASTER:attrnot 1 => KNASTER:attr 1
definition
  let a1, a2 be non empty set;
  let a3 be Function-like quasi_total Relation of a1,a2;
  redefine attr a3 is c=-monotone means
    for b1, b2 being Element of a1
          st b1 c= b2
       holds a3 . b1 c= a3 . b2;
end;

:: KNASTER:dfs 1
definiens
  let a1, a2 be non empty set;
  let a3 be Function-like quasi_total Relation of a1,a2;
To prove
     a1 is c=-monotone
it is sufficient to prove
  thus for b1, b2 being Element of a1
          st b1 c= b2
       holds a3 . b1 c= a3 . b2;

:: KNASTER:def 3
theorem
for b1, b2 being non empty set
for b3 being Function-like quasi_total Relation of b1,b2 holds
      b3 is c=-monotone
   iff
      for b4, b5 being Element of b1
            st b4 c= b5
         holds b3 . b4 c= b3 . b5;

:: KNASTER:exreg 1
registration
  let a1 be set;
  let a2 be non empty set;
  cluster Relation-like Function-like quasi_total c=-monotone Relation of a1,a2;
end;

:: KNASTER:funcnot 1 => KNASTER:func 1
definition
  let a1 be set;
  let a2 be Function-like quasi_total c=-monotone Relation of bool a1,bool a1;
  func lfp(A1,A2) -> Element of bool a1 equals
    meet {b1 where b1 is Element of bool a1: a2 . b1 c= b1};
end;

:: KNASTER:def 4
theorem
for b1 being set
for b2 being Function-like quasi_total c=-monotone Relation of bool b1,bool b1 holds
   lfp(b1,b2) = meet {b3 where b3 is Element of bool b1: b2 . b3 c= b3};

:: KNASTER:funcnot 2 => KNASTER:func 2
definition
  let a1 be set;
  let a2 be Function-like quasi_total c=-monotone Relation of bool a1,bool a1;
  func gfp(A1,A2) -> Element of bool a1 equals
    union {b1 where b1 is Element of bool a1: b1 c= a2 . b1};
end;

:: KNASTER:def 5
theorem
for b1 being set
for b2 being Function-like quasi_total c=-monotone Relation of bool b1,bool b1 holds
   gfp(b1,b2) = union {b3 where b3 is Element of bool b1: b3 c= b2 . b3};

:: KNASTER:th 6
theorem
for b1 being set
for b2 being Function-like quasi_total c=-monotone Relation of bool b1,bool b1 holds
   lfp(b1,b2) is_a_fixpoint_of b2;

:: KNASTER:th 7
theorem
for b1 being set
for b2 being Function-like quasi_total c=-monotone Relation of bool b1,bool b1 holds
   gfp(b1,b2) is_a_fixpoint_of b2;

:: KNASTER:th 8
theorem
for b1 being set
for b2 being Function-like quasi_total c=-monotone Relation of bool b1,bool b1
for b3 being Element of bool b1
      st b2 . b3 c= b3
   holds lfp(b1,b2) c= b3;

:: KNASTER:th 9
theorem
for b1 being set
for b2 being Function-like quasi_total c=-monotone Relation of bool b1,bool b1
for b3 being Element of bool b1
      st b3 c= b2 . b3
   holds b3 c= gfp(b1,b2);

:: KNASTER:th 10
theorem
for b1 being set
for b2 being Function-like quasi_total c=-monotone Relation of bool b1,bool b1
for b3 being Element of bool b1
      st b3 is_a_fixpoint_of b2
   holds lfp(b1,b2) c= b3 & b3 c= gfp(b1,b2);

:: KNASTER:sch 1
scheme KNASTER:sch 1
{F1 -> set,
  F2 -> set}:
ex b1 being set st
   F2(b1) = b1 & b1 c= F1()
provided
   for b1, b2 being set
         st b1 c= b2
      holds F2(b1) c= F2(b2)
and
   F2(F1()) c= F1();


:: KNASTER:th 11
theorem
for b1, b2 being non empty set
for b3 being Function-like quasi_total Relation of b1,b2
for b4 being Function-like quasi_total Relation of b2,b1 holds
   ex b5, b6, b7, b8 being set st
      b5 misses b6 & b7 misses b8 & b5 \/ b6 = b1 & b7 \/ b8 = b2 & b3 .: b5 = b7 & b4 .: b8 = b6;

:: KNASTER:th 12
theorem
for b1, b2 being non empty set
for b3 being Function-like quasi_total Relation of b1,b2
for b4 being Function-like quasi_total Relation of b2,b1
      st b3 is one-to-one & b4 is one-to-one
   holds ex b5 being Function-like quasi_total Relation of b1,b2 st
      b5 is bijective(b1, b2);

:: KNASTER:th 13
theorem
for b1, b2 being non empty set
      st ex b3 being Function-like quasi_total Relation of b2,b1 st
           b3 is bijective(b2, b1)
   holds b2,b1 are_equipotent;

:: KNASTER:th 14
theorem
for b1, b2 being non empty set
for b3 being Function-like quasi_total Relation of b1,b2
for b4 being Function-like quasi_total Relation of b2,b1
      st b3 is one-to-one & b4 is one-to-one
   holds b1,b2 are_equipotent;

:: KNASTER:funcnot 3 => KNASTER:func 3
definition
  let a1 be non empty Lattice-like LattStr;
  let a2 be Function-like quasi_total Relation of the carrier of a1,the carrier of a1;
  let a3 be Element of the carrier of a1;
  let a4 be ordinal set;
  func (A2,A4)+. A3 -> set means
    ex b1 being Relation-like Function-like T-Sequence-like set st
       it = last b1 &
        proj1 b1 = succ a4 &
        b1 . {} = a3 &
        (for b2 being ordinal set
              st succ b2 in succ a4
           holds b1 . succ b2 = a2 . (b1 . b2)) &
        (for b2 being ordinal set
              st b2 in succ a4 & b2 <> {} & b2 is being_limit_ordinal
           holds b1 . b2 = "\/"(proj2 (b1 | b2),a1));
end;

:: KNASTER:def 6
theorem
for b1 being non empty Lattice-like LattStr
for b2 being Function-like quasi_total Relation of the carrier of b1,the carrier of b1
for b3 being Element of the carrier of b1
for b4 being ordinal set
for b5 being set holds
      b5 = (b2,b4)+. b3
   iff
      ex b6 being Relation-like Function-like T-Sequence-like set st
         b5 = last b6 &
          proj1 b6 = succ b4 &
          b6 . {} = b3 &
          (for b7 being ordinal set
                st succ b7 in succ b4
             holds b6 . succ b7 = b2 . (b6 . b7)) &
          (for b7 being ordinal set
                st b7 in succ b4 & b7 <> {} & b7 is being_limit_ordinal
             holds b6 . b7 = "\/"(proj2 (b6 | b7),b1));

:: KNASTER:funcnot 4 => KNASTER:func 4
definition
  let a1 be non empty Lattice-like LattStr;
  let a2 be Function-like quasi_total Relation of the carrier of a1,the carrier of a1;
  let a3 be Element of the carrier of a1;
  let a4 be ordinal set;
  func (A2,A4)-. A3 -> set means
    ex b1 being Relation-like Function-like T-Sequence-like set st
       it = last b1 &
        proj1 b1 = succ a4 &
        b1 . {} = a3 &
        (for b2 being ordinal set
              st succ b2 in succ a4
           holds b1 . succ b2 = a2 . (b1 . b2)) &
        (for b2 being ordinal set
              st b2 in succ a4 & b2 <> {} & b2 is being_limit_ordinal
           holds b1 . b2 = "/\"(proj2 (b1 | b2),a1));
end;

:: KNASTER:def 7
theorem
for b1 being non empty Lattice-like LattStr
for b2 being Function-like quasi_total Relation of the carrier of b1,the carrier of b1
for b3 being Element of the carrier of b1
for b4 being ordinal set
for b5 being set holds
      b5 = (b2,b4)-. b3
   iff
      ex b6 being Relation-like Function-like T-Sequence-like set st
         b5 = last b6 &
          proj1 b6 = succ b4 &
          b6 . {} = b3 &
          (for b7 being ordinal set
                st succ b7 in succ b4
             holds b6 . succ b7 = b2 . (b6 . b7)) &
          (for b7 being ordinal set
                st b7 in succ b4 & b7 <> {} & b7 is being_limit_ordinal
             holds b6 . b7 = "/\"(proj2 (b6 | b7),b1));

:: KNASTER:th 16
theorem
for b1 being non empty Lattice-like LattStr
for b2 being Function-like quasi_total Relation of the carrier of b1,the carrier of b1
for b3 being Element of the carrier of b1 holds
   (b2,{})+. b3 = b3;

:: KNASTER:th 17
theorem
for b1 being non empty Lattice-like LattStr
for b2 being Function-like quasi_total Relation of the carrier of b1,the carrier of b1
for b3 being Element of the carrier of b1 holds
   (b2,{})-. b3 = b3;

:: KNASTER:th 18
theorem
for b1 being non empty Lattice-like LattStr
for b2 being Function-like quasi_total Relation of the carrier of b1,the carrier of b1
for b3 being Element of the carrier of b1
for b4 being ordinal set holds
   (b2,succ b4)+. b3 = b2 . ((b2,b4)+. b3);

:: KNASTER:th 19
theorem
for b1 being non empty Lattice-like LattStr
for b2 being Function-like quasi_total Relation of the carrier of b1,the carrier of b1
for b3 being Element of the carrier of b1
for b4 being ordinal set holds
   (b2,succ b4)-. b3 = b2 . ((b2,b4)-. b3);

:: KNASTER:th 20
theorem
for b1 being non empty Lattice-like LattStr
for b2 being Function-like quasi_total Relation of the carrier of b1,the carrier of b1
for b3 being Element of the carrier of b1
for b4 being ordinal set
for b5 being Relation-like Function-like T-Sequence-like set
      st b4 <> {} &
         b4 is being_limit_ordinal &
         proj1 b5 = b4 &
         (for b6 being ordinal set
               st b6 in b4
            holds b5 . b6 = (b2,b6)+. b3)
   holds (b2,b4)+. b3 = "\/"(proj2 b5,b1);

:: KNASTER:th 21
theorem
for b1 being non empty Lattice-like LattStr
for b2 being Function-like quasi_total Relation of the carrier of b1,the carrier of b1
for b3 being Element of the carrier of b1
for b4 being ordinal set
for b5 being Relation-like Function-like T-Sequence-like set
      st b4 <> {} &
         b4 is being_limit_ordinal &
         proj1 b5 = b4 &
         (for b6 being ordinal set
               st b6 in b4
            holds b5 . b6 = (b2,b6)-. b3)
   holds (b2,b4)-. b3 = "/\"(proj2 b5,b1);

:: KNASTER:th 22
theorem
for b1 being Element of NAT
for b2 being non empty Lattice-like LattStr
for b3 being Function-like quasi_total Relation of the carrier of b2,the carrier of b2
for b4 being Element of the carrier of b2 holds
   (iter(b3,b1)) . b4 = (b3,b1)+. b4;

:: KNASTER:th 23
theorem
for b1 being Element of NAT
for b2 being non empty Lattice-like LattStr
for b3 being Function-like quasi_total Relation of the carrier of b2,the carrier of b2
for b4 being Element of the carrier of b2 holds
   (iter(b3,b1)) . b4 = (b3,b1)-. b4;

:: KNASTER:funcnot 5 => KNASTER:func 5
definition
  let a1 be non empty Lattice-like LattStr;
  let a2 be Function-like quasi_total Relation of the carrier of a1,the carrier of a1;
  let a3 be Element of the carrier of a1;
  let a4 be ordinal set;
  redefine func (a2,a4)+. a3 -> Element of the carrier of a1;
end;

:: KNASTER:funcnot 6 => KNASTER:func 6
definition
  let a1 be non empty Lattice-like LattStr;
  let a2 be Function-like quasi_total Relation of the carrier of a1,the carrier of a1;
  let a3 be Element of the carrier of a1;
  let a4 be ordinal set;
  redefine func (a2,a4)-. a3 -> Element of the carrier of a1;
end;

:: KNASTER:attrnot 2 => KNASTER:attr 2
definition
  let a1 be non empty LattStr;
  let a2 be Element of bool the carrier of a1;
  attr a2 is with_suprema means
    for b1, b2 being Element of the carrier of a1
          st b1 in a2 & b2 in a2
       holds ex b3 being Element of the carrier of a1 st
          b3 in a2 &
           b1 [= b3 &
           b2 [= b3 &
           (for b4 being Element of the carrier of a1
                 st b4 in a2 & b1 [= b4 & b2 [= b4
              holds b3 [= b4);
end;

:: KNASTER:dfs 6
definiens
  let a1 be non empty LattStr;
  let a2 be Element of bool the carrier of a1;
To prove
     a2 is with_suprema
it is sufficient to prove
  thus for b1, b2 being Element of the carrier of a1
          st b1 in a2 & b2 in a2
       holds ex b3 being Element of the carrier of a1 st
          b3 in a2 &
           b1 [= b3 &
           b2 [= b3 &
           (for b4 being Element of the carrier of a1
                 st b4 in a2 & b1 [= b4 & b2 [= b4
              holds b3 [= b4);

:: KNASTER:def 8
theorem
for b1 being non empty LattStr
for b2 being Element of bool the carrier of b1 holds
      b2 is with_suprema(b1)
   iff
      for b3, b4 being Element of the carrier of b1
            st b3 in b2 & b4 in b2
         holds ex b5 being Element of the carrier of b1 st
            b5 in b2 &
             b3 [= b5 &
             b4 [= b5 &
             (for b6 being Element of the carrier of b1
                   st b6 in b2 & b3 [= b6 & b4 [= b6
                holds b5 [= b6);

:: KNASTER:attrnot 3 => KNASTER:attr 3
definition
  let a1 be non empty LattStr;
  let a2 be Element of bool the carrier of a1;
  attr a2 is with_infima means
    for b1, b2 being Element of the carrier of a1
          st b1 in a2 & b2 in a2
       holds ex b3 being Element of the carrier of a1 st
          b3 in a2 &
           b3 [= b1 &
           b3 [= b2 &
           (for b4 being Element of the carrier of a1
                 st b4 in a2 & b4 [= b1 & b4 [= b2
              holds b4 [= b3);
end;

:: KNASTER:dfs 7
definiens
  let a1 be non empty LattStr;
  let a2 be Element of bool the carrier of a1;
To prove
     a2 is with_infima
it is sufficient to prove
  thus for b1, b2 being Element of the carrier of a1
          st b1 in a2 & b2 in a2
       holds ex b3 being Element of the carrier of a1 st
          b3 in a2 &
           b3 [= b1 &
           b3 [= b2 &
           (for b4 being Element of the carrier of a1
                 st b4 in a2 & b4 [= b1 & b4 [= b2
              holds b4 [= b3);

:: KNASTER:def 9
theorem
for b1 being non empty LattStr
for b2 being Element of bool the carrier of b1 holds
      b2 is with_infima(b1)
   iff
      for b3, b4 being Element of the carrier of b1
            st b3 in b2 & b4 in b2
         holds ex b5 being Element of the carrier of b1 st
            b5 in b2 &
             b5 [= b3 &
             b5 [= b4 &
             (for b6 being Element of the carrier of b1
                   st b6 in b2 & b6 [= b3 & b6 [= b4
                holds b6 [= b5);

:: KNASTER:exreg 2
registration
  let a1 be non empty Lattice-like LattStr;
  cluster non empty with_suprema with_infima Element of bool the carrier of a1;
end;

:: KNASTER:funcnot 7 => KNASTER:func 7
definition
  let a1 be non empty Lattice-like LattStr;
  let a2 be non empty with_suprema with_infima Element of bool the carrier of a1;
  func latt A2 -> non empty strict Lattice-like LattStr means
    the carrier of it = a2 &
     (for b1, b2 being Element of the carrier of it holds
     ex b3, b4 being Element of the carrier of a1 st
        b1 = b3 & b2 = b4 & (b1 [= b2 implies b3 [= b4) & (b3 [= b4 implies b1 [= b2));
end;

:: KNASTER:def 10
theorem
for b1 being non empty Lattice-like LattStr
for b2 being non empty with_suprema with_infima Element of bool the carrier of b1
for b3 being non empty strict Lattice-like LattStr holds
      b3 = latt b2
   iff
      the carrier of b3 = b2 &
       (for b4, b5 being Element of the carrier of b3 holds
       ex b6, b7 being Element of the carrier of b1 st
          b4 = b6 & b5 = b7 & (b4 [= b5 implies b6 [= b7) & (b6 [= b7 implies b4 [= b5));

:: KNASTER:condreg 1
registration
  cluster non empty Lattice-like complete -> bounded (LattStr);
end;

:: KNASTER:th 24
theorem
for b1 being non empty Lattice-like complete LattStr
for b2 being Function-like quasi_total monotone Relation of the carrier of b1,the carrier of b1 holds
   ex b3 being Element of the carrier of b1 st
      b3 is_a_fixpoint_of b2;

:: KNASTER:th 25
theorem
for b1 being non empty Lattice-like complete LattStr
for b2 being Function-like quasi_total monotone Relation of the carrier of b1,the carrier of b1
for b3 being Element of the carrier of b1
   st b3 [= b2 . b3
for b4 being ordinal set holds
   b3 [= (b2,b4)+. b3;

:: KNASTER:th 26
theorem
for b1 being non empty Lattice-like complete LattStr
for b2 being Function-like quasi_total monotone Relation of the carrier of b1,the carrier of b1
for b3 being Element of the carrier of b1
   st b2 . b3 [= b3
for b4 being ordinal set holds
   (b2,b4)-. b3 [= b3;

:: KNASTER:th 27
theorem
for b1 being non empty Lattice-like complete LattStr
for b2 being Function-like quasi_total monotone Relation of the carrier of b1,the carrier of b1
for b3 being Element of the carrier of b1
   st b3 [= b2 . b3
for b4, b5 being ordinal set
      st b4 c= b5
   holds (b2,b4)+. b3 [= (b2,b5)+. b3;

:: KNASTER:th 28
theorem
for b1 being non empty Lattice-like complete LattStr
for b2 being Function-like quasi_total monotone Relation of the carrier of b1,the carrier of b1
for b3 being Element of the carrier of b1
   st b2 . b3 [= b3
for b4, b5 being ordinal set
      st b4 c= b5
   holds (b2,b5)-. b3 [= (b2,b4)-. b3;

:: KNASTER:th 29
theorem
for b1 being non empty Lattice-like complete LattStr
for b2 being Function-like quasi_total monotone Relation of the carrier of b1,the carrier of b1
for b3 being Element of the carrier of b1
   st b3 [= b2 . b3
for b4, b5 being ordinal set
      st b4 c< b5 & not (b2,b5)+. b3 is_a_fixpoint_of b2
   holds (b2,b4)+. b3 <> (b2,b5)+. b3;

:: KNASTER:th 30
theorem
for b1 being non empty Lattice-like complete LattStr
for b2 being Function-like quasi_total monotone Relation of the carrier of b1,the carrier of b1
for b3 being Element of the carrier of b1
   st b2 . b3 [= b3
for b4, b5 being ordinal set
      st b4 c< b5 & not (b2,b5)-. b3 is_a_fixpoint_of b2
   holds (b2,b4)-. b3 <> (b2,b5)-. b3;

:: KNASTER:th 31
theorem
for b1 being ordinal set
for b2 being non empty Lattice-like complete LattStr
for b3 being Function-like quasi_total monotone Relation of the carrier of b2,the carrier of b2
for b4 being Element of the carrier of b2
   st b4 [= b3 . b4 & (b3,b1)+. b4 is_a_fixpoint_of b3
for b5 being ordinal set
      st b1 c= b5
   holds (b3,b1)+. b4 = (b3,b5)+. b4;

:: KNASTER:th 32
theorem
for b1 being ordinal set
for b2 being non empty Lattice-like complete LattStr
for b3 being Function-like quasi_total monotone Relation of the carrier of b2,the carrier of b2
for b4 being Element of the carrier of b2
   st b3 . b4 [= b4 & (b3,b1)-. b4 is_a_fixpoint_of b3
for b5 being ordinal set
      st b1 c= b5
   holds (b3,b1)-. b4 = (b3,b5)-. b4;

:: KNASTER:th 33
theorem
for b1 being non empty Lattice-like complete LattStr
for b2 being Function-like quasi_total monotone Relation of the carrier of b1,the carrier of b1
for b3 being Element of the carrier of b1
      st b3 [= b2 . b3
   holds ex b4 being ordinal set st
      Card b4 c= Card the carrier of b1 & (b2,b4)+. b3 is_a_fixpoint_of b2;

:: KNASTER:th 34
theorem
for b1 being non empty Lattice-like complete LattStr
for b2 being Function-like quasi_total monotone Relation of the carrier of b1,the carrier of b1
for b3 being Element of the carrier of b1
      st b2 . b3 [= b3
   holds ex b4 being ordinal set st
      Card b4 c= Card the carrier of b1 & (b2,b4)-. b3 is_a_fixpoint_of b2;

:: KNASTER:th 35
theorem
for b1 being non empty Lattice-like complete LattStr
for b2 being Function-like quasi_total monotone Relation of the carrier of b1,the carrier of b1
for b3, b4 being Element of the carrier of b1
      st b3 is_a_fixpoint_of b2 & b4 is_a_fixpoint_of b2
   holds ex b5 being ordinal set st
      Card b5 c= Card the carrier of b1 & (b2,b5)+. (b3 "\/" b4) is_a_fixpoint_of b2 & b3 [= (b2,b5)+. (b3 "\/" b4) & b4 [= (b2,b5)+. (b3 "\/" b4);

:: KNASTER:th 36
theorem
for b1 being non empty Lattice-like complete LattStr
for b2 being Function-like quasi_total monotone Relation of the carrier of b1,the carrier of b1
for b3, b4 being Element of the carrier of b1
      st b3 is_a_fixpoint_of b2 & b4 is_a_fixpoint_of b2
   holds ex b5 being ordinal set st
      Card b5 c= Card the carrier of b1 & (b2,b5)-. (b3 "/\" b4) is_a_fixpoint_of b2 & (b2,b5)-. (b3 "/\" b4) [= b3 & (b2,b5)-. (b3 "/\" b4) [= b4;

:: KNASTER:th 37
theorem
for b1 being non empty Lattice-like complete LattStr
for b2 being Function-like quasi_total monotone Relation of the carrier of b1,the carrier of b1
for b3, b4 being Element of the carrier of b1
   st b3 [= b2 . b3 & b3 [= b4 & b4 is_a_fixpoint_of b2
for b5 being ordinal set holds
   (b2,b5)+. b3 [= b4;

:: KNASTER:th 38
theorem
for b1 being non empty Lattice-like complete LattStr
for b2 being Function-like quasi_total monotone Relation of the carrier of b1,the carrier of b1
for b3, b4 being Element of the carrier of b1
   st b2 . b3 [= b3 & b4 [= b3 & b4 is_a_fixpoint_of b2
for b5 being ordinal set holds
   b4 [= (b2,b5)-. b3;

:: KNASTER:funcnot 8 => KNASTER:func 8
definition
  let a1 be non empty Lattice-like complete LattStr;
  let a2 be Function-like quasi_total Relation of the carrier of a1,the carrier of a1;
  assume a2 is monotone(a1);
  func FixPoints A2 -> non empty strict Lattice-like LattStr means
    ex b1 being non empty with_suprema with_infima Element of bool the carrier of a1 st
       b1 = {b2 where b2 is Element of the carrier of a1: b2 is_a_fixpoint_of a2} &
        it = latt b1;
end;

:: KNASTER:def 11
theorem
for b1 being non empty Lattice-like complete LattStr
for b2 being Function-like quasi_total Relation of the carrier of b1,the carrier of b1
   st b2 is monotone(b1)
for b3 being non empty strict Lattice-like LattStr holds
      b3 = FixPoints b2
   iff
      ex b4 being non empty with_suprema with_infima Element of bool the carrier of b1 st
         b4 = {b5 where b5 is Element of the carrier of b1: b5 is_a_fixpoint_of b2} &
          b3 = latt b4;

:: KNASTER:th 39
theorem
for b1 being non empty Lattice-like complete LattStr
for b2 being Function-like quasi_total monotone Relation of the carrier of b1,the carrier of b1 holds
   the carrier of FixPoints b2 = {b3 where b3 is Element of the carrier of b1: b3 is_a_fixpoint_of b2};

:: KNASTER:th 40
theorem
for b1 being non empty Lattice-like complete LattStr
for b2 being Function-like quasi_total monotone Relation of the carrier of b1,the carrier of b1 holds
   the carrier of FixPoints b2 c= the carrier of b1;

:: KNASTER:th 41
theorem
for b1 being non empty Lattice-like complete LattStr
for b2 being Function-like quasi_total monotone Relation of the carrier of b1,the carrier of b1
for b3 being Element of the carrier of b1 holds
      b3 in the carrier of FixPoints b2
   iff
      b3 is_a_fixpoint_of b2;

:: KNASTER:th 42
theorem
for b1 being non empty Lattice-like complete LattStr
for b2 being Function-like quasi_total monotone Relation of the carrier of b1,the carrier of b1
for b3, b4 being Element of the carrier of FixPoints b2
for b5, b6 being Element of the carrier of b1
      st b3 = b5 & b4 = b6
   holds    b3 [= b4
   iff
      b5 [= b6;

:: KNASTER:th 43
theorem
for b1 being non empty Lattice-like complete LattStr
for b2 being Function-like quasi_total monotone Relation of the carrier of b1,the carrier of b1 holds
   FixPoints b2 is complete;

:: KNASTER:funcnot 9 => KNASTER:func 9
definition
  let a1 be non empty Lattice-like complete LattStr;
  let a2 be Function-like quasi_total monotone Relation of the carrier of a1,the carrier of a1;
  func lfp A2 -> Element of the carrier of a1 equals
    (a2,nextcard the carrier of a1)+. Bottom a1;
end;

:: KNASTER:def 12
theorem
for b1 being non empty Lattice-like complete LattStr
for b2 being Function-like quasi_total monotone Relation of the carrier of b1,the carrier of b1 holds
   lfp b2 = (b2,nextcard the carrier of b1)+. Bottom b1;

:: KNASTER:funcnot 10 => KNASTER:func 10
definition
  let a1 be non empty Lattice-like complete LattStr;
  let a2 be Function-like quasi_total monotone Relation of the carrier of a1,the carrier of a1;
  func gfp A2 -> Element of the carrier of a1 equals
    (a2,nextcard the carrier of a1)-. Top a1;
end;

:: KNASTER:def 13
theorem
for b1 being non empty Lattice-like complete LattStr
for b2 being Function-like quasi_total monotone Relation of the carrier of b1,the carrier of b1 holds
   gfp b2 = (b2,nextcard the carrier of b1)-. Top b1;

:: KNASTER:th 44
theorem
for b1 being non empty Lattice-like complete LattStr
for b2 being Function-like quasi_total monotone Relation of the carrier of b1,the carrier of b1 holds
   lfp b2 is_a_fixpoint_of b2 &
    (ex b3 being ordinal set st
       Card b3 c= Card the carrier of b1 & (b2,b3)+. Bottom b1 = lfp b2);

:: KNASTER:th 45
theorem
for b1 being non empty Lattice-like complete LattStr
for b2 being Function-like quasi_total monotone Relation of the carrier of b1,the carrier of b1 holds
   gfp b2 is_a_fixpoint_of b2 &
    (ex b3 being ordinal set st
       Card b3 c= Card the carrier of b1 & (b2,b3)-. Top b1 = gfp b2);

:: KNASTER:th 46
theorem
for b1 being non empty Lattice-like complete LattStr
for b2 being Function-like quasi_total monotone Relation of the carrier of b1,the carrier of b1
for b3 being Element of the carrier of b1
      st b3 is_a_fixpoint_of b2
   holds lfp b2 [= b3 & b3 [= gfp b2;

:: KNASTER:th 47
theorem
for b1 being non empty Lattice-like complete LattStr
for b2 being Function-like quasi_total monotone Relation of the carrier of b1,the carrier of b1
for b3 being Element of the carrier of b1
      st b2 . b3 [= b3
   holds lfp b2 [= b3;

:: KNASTER:th 48
theorem
for b1 being non empty Lattice-like complete LattStr
for b2 being Function-like quasi_total monotone Relation of the carrier of b1,the carrier of b1
for b3 being Element of the carrier of b1
      st b3 [= b2 . b3
   holds b3 [= gfp b2;

:: KNASTER:th 49
theorem
for b1 being non empty set
for b2 being Function-like quasi_total Relation of the carrier of BooleLatt b1,the carrier of BooleLatt b1 holds
      b2 is monotone(BooleLatt b1)
   iff
      b2 is c=-monotone;

:: KNASTER:th 50
theorem
for b1 being non empty set
for b2 being Function-like quasi_total monotone Relation of the carrier of BooleLatt b1,the carrier of BooleLatt b1 holds
   ex b3 being Function-like quasi_total c=-monotone Relation of bool b1,bool b1 st
      lfp(b1,b3) = lfp b2;

:: KNASTER:th 51
theorem
for b1 being non empty set
for b2 being Function-like quasi_total monotone Relation of the carrier of BooleLatt b1,the carrier of BooleLatt b1 holds
   ex b3 being Function-like quasi_total c=-monotone Relation of bool b1,bool b1 st
      gfp(b1,b3) = gfp b2;