Article CLASSES2, MML version 4.99.1005

:: CLASSES2:condreg 1
registration
  cluster being_Tarski-Class -> subset-closed (set);
end;

:: CLASSES2:funcreg 1
registration
  let a1 be set;
  cluster Tarski-Class a1 -> being_Tarski-Class;
end;

:: CLASSES2:th 1
theorem
for b1, b2 being set
      st b1 is subset-closed & b2 in b1
   holds not b2,b1 are_equipotent & Card b2 in Card b1;

:: CLASSES2:th 3
theorem
for b1, b2, b3 being set
      st b1 is being_Tarski-Class & b2 in b1 & b3 in b1
   holds {b2} in b1 & {b2,b3} in b1;

:: CLASSES2:th 4
theorem
for b1, b2, b3 being set
      st b1 is being_Tarski-Class & b2 in b1 & b3 in b1
   holds [b2,b3] in b1;

:: CLASSES2:th 5
theorem
for b1, b2 being set
      st b1 is being_Tarski-Class & b2 in b1
   holds Tarski-Class b2 c= b1;

:: CLASSES2:th 6
theorem
for b1 being ordinal set
for b2 being set
      st b2 is being_Tarski-Class & b1 in b2
   holds succ b1 in b2 & b1 c= b2;

:: CLASSES2:th 7
theorem
for b1 being ordinal set
for b2 being set
      st b1 in Tarski-Class b2
   holds succ b1 in Tarski-Class b2 & b1 c= Tarski-Class b2;

:: CLASSES2:th 8
theorem
for b1, b2 being set
      st b1 is subset-closed & b2 is epsilon-transitive & b2 in b1
   holds b2 c= b1;

:: CLASSES2:th 9
theorem
for b1, b2 being set
      st b1 is epsilon-transitive & b1 in Tarski-Class b2
   holds b1 c= Tarski-Class b2;

:: CLASSES2:th 10
theorem
for b1 being set
      st b1 is being_Tarski-Class
   holds On b1 = Card b1;

:: CLASSES2:th 11
theorem
for b1 being set holds
   On Tarski-Class b1 = Card Tarski-Class b1;

:: CLASSES2:th 12
theorem
for b1, b2 being set
      st b1 is being_Tarski-Class & b2 in b1
   holds Card b2 in b1;

:: CLASSES2:th 13
theorem
for b1, b2 being set
      st b1 in Tarski-Class b2
   holds Card b1 in Tarski-Class b2;

:: CLASSES2:th 14
theorem
for b1, b2 being set
      st b1 is being_Tarski-Class & b2 in Card b1
   holds b2 in b1;

:: CLASSES2:th 15
theorem
for b1, b2 being set
      st b1 in Card Tarski-Class b2
   holds b1 in Tarski-Class b2;

:: CLASSES2:th 16
theorem
for b1 being cardinal set
for b2 being set
      st b2 is being_Tarski-Class & b1 in Card b2
   holds b1 in b2;

:: CLASSES2:th 17
theorem
for b1 being cardinal set
for b2 being set
      st b1 in Card Tarski-Class b2
   holds b1 in Tarski-Class b2;

:: CLASSES2:th 18
theorem
for b1 being cardinal set
for b2 being set
      st b2 is being_Tarski-Class & b1 in b2
   holds b1 c= b2;

:: CLASSES2:th 19
theorem
for b1 being cardinal set
for b2 being set
      st b1 in Tarski-Class b2
   holds b1 c= Tarski-Class b2;

:: CLASSES2:th 20
theorem
for b1 being set
      st b1 is being_Tarski-Class
   holds Card b1 is being_limit_ordinal;

:: CLASSES2:th 21
theorem
for b1 being set
      st b1 is being_Tarski-Class & b1 <> {}
   holds Card b1 <> 0 & Card b1 <> {} & Card b1 is being_limit_ordinal;

:: CLASSES2:th 22
theorem
for b1 being set holds
   Card Tarski-Class b1 <> 0 & Card Tarski-Class b1 <> {} & Card Tarski-Class b1 is being_limit_ordinal;

:: CLASSES2:th 23
theorem
for b1, b2 being set
      st b1 is being_Tarski-Class &
         ((b2 in b1 implies b1 is not epsilon-transitive) & (b2 in b1 implies not b2 c= b1) implies Card b2 in Card b1 & b2 c= b1)
   holds Funcs(b2,b1) c= b1;

:: CLASSES2:th 24
theorem
for b1, b2 being set
      st ((b1 in Tarski-Class b2 implies b2 is not epsilon-transitive) & (b1 in Tarski-Class b2 implies not b1 c= Tarski-Class b2) implies Card b1 in Card Tarski-Class b2 & b1 c= Tarski-Class b2)
   holds Funcs(b1,Tarski-Class b2) c= Tarski-Class b2;

:: CLASSES2:th 25
theorem
for b1 being Relation-like Function-like T-Sequence-like set
      st proj1 b1 is being_limit_ordinal &
         (for b2 being ordinal set
               st b2 in proj1 b1
            holds b1 . b2 = Rank b2)
   holds Rank proj1 b1 = Union b1;

:: CLASSES2:th 26
theorem
for b1 being ordinal set
for b2 being set
      st b2 is being_Tarski-Class & b1 in On b2
   holds Card Rank b1 in Card b2 & Rank b1 in b2;

:: CLASSES2:th 27
theorem
for b1 being ordinal set
for b2 being set
      st b1 in On Tarski-Class b2
   holds Card Rank b1 in Card Tarski-Class b2 & Rank b1 in Tarski-Class b2;

:: CLASSES2:th 28
theorem
for b1 being set
      st b1 is being_Tarski-Class
   holds Rank Card b1 c= b1;

:: CLASSES2:th 29
theorem
for b1 being set holds
   Rank Card Tarski-Class b1 c= Tarski-Class b1;

:: CLASSES2:th 30
theorem
for b1, b2 being set
      st b1 is being_Tarski-Class & b1 is epsilon-transitive & b2 in b1
   holds the_rank_of b2 in b1;

:: CLASSES2:th 31
theorem
for b1 being set
      st b1 is being_Tarski-Class & b1 is epsilon-transitive
   holds b1 c= Rank Card b1;

:: CLASSES2:th 32
theorem
for b1 being set
      st b1 is being_Tarski-Class & b1 is epsilon-transitive
   holds Rank Card b1 = b1;

:: CLASSES2:th 33
theorem
for b1 being ordinal set
for b2 being set
      st b2 is being_Tarski-Class & b1 in On b2
   holds Card Rank b1 c= Card b2;

:: CLASSES2:th 34
theorem
for b1 being ordinal set
for b2 being set
      st b1 in On Tarski-Class b2
   holds Card Rank b1 c= Card Tarski-Class b2;

:: CLASSES2:th 35
theorem
for b1 being set
      st b1 is being_Tarski-Class
   holds Card b1 = Card Rank Card b1;

:: CLASSES2:th 36
theorem
for b1 being set holds
   Card Tarski-Class b1 = Card Rank Card Tarski-Class b1;

:: CLASSES2:th 37
theorem
for b1, b2 being set
      st b1 is being_Tarski-Class & b2 c= Rank Card b1 & not b2,Rank Card b1 are_equipotent
   holds b2 in Rank Card b1;

:: CLASSES2:th 38
theorem
for b1, b2 being set
      st b1 c= Rank Card Tarski-Class b2 & not b1,Rank Card Tarski-Class b2 are_equipotent
   holds b1 in Rank Card Tarski-Class b2;

:: CLASSES2:th 39
theorem
for b1 being set
      st b1 is being_Tarski-Class
   holds Rank Card b1 is being_Tarski-Class;

:: CLASSES2:th 40
theorem
for b1 being set holds
   Rank Card Tarski-Class b1 is being_Tarski-Class;

:: CLASSES2:th 41
theorem
for b1 being ordinal set
for b2 being set
      st b2 is epsilon-transitive & b1 in the_rank_of b2
   holds ex b3 being set st
      b3 in b2 & the_rank_of b3 = b1;

:: CLASSES2:th 42
theorem
for b1 being set
      st b1 is epsilon-transitive
   holds Card the_rank_of b1 c= Card b1;

:: CLASSES2:th 43
theorem
for b1, b2 being set
      st b1 is being_Tarski-Class & b2 is epsilon-transitive & b2 in b1
   holds b2 in Rank Card b1;

:: CLASSES2:th 44
theorem
for b1, b2 being set
      st b1 is epsilon-transitive & b1 in Tarski-Class b2
   holds b1 in Rank Card Tarski-Class b2;

:: CLASSES2:th 45
theorem
for b1 being set
      st b1 is epsilon-transitive
   holds Rank Card Tarski-Class b1 is_Tarski-Class_of b1;

:: CLASSES2:th 46
theorem
for b1 being set
      st b1 is epsilon-transitive
   holds Rank Card Tarski-Class b1 = Tarski-Class b1;

:: CLASSES2:attrnot 1 => CLASSES2:attr 1
definition
  let a1 be set;
  attr a1 is universal means
    a1 is epsilon-transitive & a1 is being_Tarski-Class;
end;

:: CLASSES2:dfs 1
definiens
  let a1 be set;
To prove
     a1 is universal
it is sufficient to prove
  thus a1 is epsilon-transitive & a1 is being_Tarski-Class;

:: CLASSES2:def 1
theorem
for b1 being set holds
      b1 is universal
   iff
      b1 is epsilon-transitive & b1 is being_Tarski-Class;

:: CLASSES2:condreg 2
registration
  cluster universal -> epsilon-transitive being_Tarski-Class (set);
end;

:: CLASSES2:condreg 3
registration
  cluster epsilon-transitive being_Tarski-Class -> universal (set);
end;

:: CLASSES2:exreg 1
registration
  cluster non empty universal set;
end;

:: CLASSES2:modenot 1
definition
  mode Universe is non empty universal set;
end;

:: CLASSES2:th 50
theorem
for b1 being non empty universal set holds
   On b1 is ordinal set;

:: CLASSES2:th 51
theorem
for b1 being set
      st b1 is epsilon-transitive
   holds Tarski-Class b1 is universal;

:: CLASSES2:th 52
theorem
for b1 being non empty universal set holds
   Tarski-Class b1 is non empty universal set;

:: CLASSES2:funcreg 2
registration
  let a1 be non empty universal set;
  cluster On a1 -> ordinal;
end;

:: CLASSES2:funcreg 3
registration
  let a1 be non empty universal set;
  cluster Tarski-Class a1 -> universal;
end;

:: CLASSES2:th 53
theorem
for b1 being ordinal set holds
   Tarski-Class b1 is universal;

:: CLASSES2:funcreg 4
registration
  let a1 be ordinal set;
  cluster Tarski-Class a1 -> universal;
end;

:: CLASSES2:th 54
theorem
for b1 being non empty universal set holds
   b1 = Rank On b1;

:: CLASSES2:th 55
theorem
for b1 being non empty universal set holds
   On b1 <> {} & On b1 is being_limit_ordinal;

:: CLASSES2:th 56
theorem
for b1, b2 being non empty universal set
      st not b1 in b2 & b1 <> b2
   holds b2 in b1;

:: CLASSES2:th 57
theorem
for b1, b2 being non empty universal set
      st not b1 c= b2
   holds b2 in b1;

:: CLASSES2:th 58
theorem
for b1, b2 being non empty universal set holds
b1,b2 are_c=-comparable;

:: CLASSES2:th 59
theorem
for b1, b2, b3 being non empty universal set
      st b1 in b2 & b2 in b3
   holds b1 in b3;

:: CLASSES2:th 61
theorem
for b1, b2 being non empty universal set holds
b1 \/ b2 is non empty universal set & b1 /\ b2 is non empty universal set;

:: CLASSES2:th 62
theorem
for b1 being non empty universal set holds
   {} in b1;

:: CLASSES2:th 63
theorem
for b1 being set
for b2 being non empty universal set
      st b1 in b2
   holds {b1} in b2;

:: CLASSES2:th 64
theorem
for b1, b2 being set
for b3 being non empty universal set
      st b1 in b3 & b2 in b3
   holds {b1,b2} in b3 & [b1,b2] in b3;

:: CLASSES2:th 65
theorem
for b1 being set
for b2 being non empty universal set
      st b1 in b2
   holds bool b1 in b2 & union b1 in b2 & meet b1 in b2;

:: CLASSES2:th 66
theorem
for b1, b2 being set
for b3 being non empty universal set
      st b1 in b3 & b2 in b3
   holds b1 \/ b2 in b3 & b1 /\ b2 in b3 & b1 \ b2 in b3 & b1 \+\ b2 in b3;

:: CLASSES2:th 67
theorem
for b1, b2 being set
for b3 being non empty universal set
      st b1 in b3 & b2 in b3
   holds [:b1,b2:] in b3 & Funcs(b1,b2) in b3;

:: CLASSES2:exreg 2
registration
  let a1 be non empty universal set;
  cluster non empty Element of a1;
end;

:: CLASSES2:funcnot 1 => CLASSES2:func 1
definition
  let a1 be non empty universal set;
  let a2 be Element of a1;
  redefine func {a2} -> Element of a1;
end;

:: CLASSES2:funcnot 2 => CLASSES2:func 2
definition
  let a1 be non empty universal set;
  let a2 be Element of a1;
  redefine func bool a2 -> non empty Element of a1;
end;

:: CLASSES2:funcnot 3 => CLASSES2:func 3
definition
  let a1 be non empty universal set;
  let a2 be Element of a1;
  redefine func union a2 -> Element of a1;
end;

:: CLASSES2:funcnot 4 => CLASSES2:func 4
definition
  let a1 be non empty universal set;
  let a2 be Element of a1;
  redefine func meet a2 -> Element of a1;
end;

:: CLASSES2:funcnot 5 => CLASSES2:func 5
definition
  let a1 be non empty universal set;
  let a2, a3 be Element of a1;
  redefine func {a2, a3} -> Element of a1;
  commutativity;
::  for a1 being non empty universal set
::  for a2, a3 being Element of a1 holds
::  {a2,a3} = {a3,a2};
end;

:: CLASSES2:funcnot 6 => CLASSES2:func 6
definition
  let a1 be non empty universal set;
  let a2, a3 be Element of a1;
  redefine func [a2, a3] -> Element of a1;
end;

:: CLASSES2:funcnot 7 => CLASSES2:func 7
definition
  let a1 be non empty universal set;
  let a2, a3 be Element of a1;
  redefine func a2 \/ a3 -> Element of a1;
  commutativity;
::  for a1 being non empty universal set
::  for a2, a3 being Element of a1 holds
::  a2 \/ a3 = a3 \/ a2;
  idempotence;
::  for a1 being non empty universal set
::  for a2 being Element of a1 holds
::     a2 \/ a2 = a2;
end;

:: CLASSES2:funcnot 8 => CLASSES2:func 8
definition
  let a1 be non empty universal set;
  let a2, a3 be Element of a1;
  redefine func a2 /\ a3 -> Element of a1;
  commutativity;
::  for a1 being non empty universal set
::  for a2, a3 being Element of a1 holds
::  a2 /\ a3 = a3 /\ a2;
  idempotence;
::  for a1 being non empty universal set
::  for a2 being Element of a1 holds
::     a2 /\ a2 = a2;
end;

:: CLASSES2:funcnot 9 => CLASSES2:func 9
definition
  let a1 be non empty universal set;
  let a2, a3 be Element of a1;
  redefine func a2 \ a3 -> Element of a1;
end;

:: CLASSES2:funcnot 10 => CLASSES2:func 10
definition
  let a1 be non empty universal set;
  let a2, a3 be Element of a1;
  redefine func a2 \+\ a3 -> Element of a1;
  commutativity;
::  for a1 being non empty universal set
::  for a2, a3 being Element of a1 holds
::  a2 \+\ a3 = a3 \+\ a2;
end;

:: CLASSES2:funcnot 11 => CLASSES2:func 11
definition
  let a1 be non empty universal set;
  let a2, a3 be Element of a1;
  redefine func [:a2, a3:] -> Element of a1;
end;

:: CLASSES2:funcnot 12 => CLASSES2:func 12
definition
  let a1 be non empty universal set;
  let a2, a3 be Element of a1;
  redefine func Funcs(a2,a3) -> Element of a1;
end;

:: CLASSES2:funcnot 13 => CLASSES2:func 13
definition
  func FinSETS -> non empty universal set equals
    Tarski-Class {};
end;

:: CLASSES2:def 2
theorem
FinSETS = Tarski-Class {};

:: CLASSES2:th 69
theorem
Card Rank omega = Card omega;

:: CLASSES2:th 70
theorem
Rank omega is being_Tarski-Class;

:: CLASSES2:th 71
theorem
FinSETS = Rank omega;

:: CLASSES2:funcnot 14 => CLASSES2:func 14
definition
  func SETS -> non empty universal set equals
    Tarski-Class FinSETS;
end;

:: CLASSES2:def 3
theorem
SETS = Tarski-Class FinSETS;

:: CLASSES2:funcreg 5
registration
  let a1 be set;
  cluster the_transitive-closure_of a1 -> epsilon-transitive;
end;

:: CLASSES2:funcreg 6
registration
  let a1 be epsilon-transitive set;
  cluster Tarski-Class a1 -> epsilon-transitive;
end;

:: CLASSES2:funcreg 7
registration
  let a1 be ordinal set;
  cluster Rank a1 -> epsilon-transitive;
end;

:: CLASSES2:funcnot 15 => CLASSES2:func 15
definition
  let a1 be set;
  func Universe_closure A1 -> non empty universal set means
    a1 c= it &
     (for b1 being non empty universal set
           st a1 c= b1
        holds it c= b1);
end;

:: CLASSES2:def 4
theorem
for b1 being set
for b2 being non empty universal set holds
      b2 = Universe_closure b1
   iff
      b1 c= b2 &
       (for b3 being non empty universal set
             st b1 c= b3
          holds b2 c= b3);

:: CLASSES2:modenot 2
definition
  mode FinSet is Element of FinSETS;
end;

:: CLASSES2:modenot 3
definition
  mode Set is Element of SETS;
end;

:: CLASSES2:funcnot 16 => CLASSES2:func 16
definition
  let a1 be ordinal set;
  func UNIVERSE A1 -> set means
    ex b1 being Relation-like Function-like T-Sequence-like set st
       it = last b1 &
        proj1 b1 = succ a1 &
        b1 . {} = FinSETS &
        (for b2 being ordinal set
              st succ b2 in succ a1
           holds b1 . succ b2 = Tarski-Class (b1 . b2)) &
        (for b2 being ordinal set
              st b2 in succ a1 & b2 <> {} & b2 is being_limit_ordinal
           holds b1 . b2 = Universe_closure Union (b1 | b2));
end;

:: CLASSES2:def 5
theorem
for b1 being ordinal set
for b2 being set holds
      b2 = UNIVERSE b1
   iff
      ex b3 being Relation-like Function-like T-Sequence-like set st
         b2 = last b3 &
          proj1 b3 = succ b1 &
          b3 . {} = FinSETS &
          (for b4 being ordinal set
                st succ b4 in succ b1
             holds b3 . succ b4 = Tarski-Class (b3 . b4)) &
          (for b4 being ordinal set
                st b4 in succ b1 & b4 <> {} & b4 is being_limit_ordinal
             holds b3 . b4 = Universe_closure Union (b3 | b4));

:: CLASSES2:funcreg 8
registration
  let a1 be ordinal set;
  cluster UNIVERSE a1 -> non empty universal;
end;

:: CLASSES2:th 75
theorem
UNIVERSE {} = FinSETS;

:: CLASSES2:th 76
theorem
for b1 being ordinal set holds
   UNIVERSE succ b1 = Tarski-Class UNIVERSE b1;

:: CLASSES2:th 77
theorem
UNIVERSE 1 = SETS;

:: CLASSES2:th 78
theorem
for b1 being ordinal set
for b2 being Relation-like Function-like T-Sequence-like set
      st b1 <> {} &
         b1 is being_limit_ordinal &
         proj1 b2 = b1 &
         (for b3 being ordinal set
               st b3 in b1
            holds b2 . b3 = UNIVERSE b3)
   holds UNIVERSE b1 = Universe_closure Union b2;

:: CLASSES2:th 79
theorem
for b1 being non empty universal set holds
   FinSETS c= b1 & Tarski-Class {} c= b1 & UNIVERSE {} c= b1;

:: CLASSES2:th 80
theorem
for b1, b2 being ordinal set holds
   b1 in b2
iff
   UNIVERSE b1 in UNIVERSE b2;

:: CLASSES2:th 81
theorem
for b1, b2 being ordinal set
      st UNIVERSE b1 = UNIVERSE b2
   holds b1 = b2;

:: CLASSES2:th 82
theorem
for b1, b2 being ordinal set holds
   b1 c= b2
iff
   UNIVERSE b1 c= UNIVERSE b2;