Article TAXONOM2, MML version 4.99.1005

:: TAXONOM2:attrnot 1 => TAXONOM2:attr 1
definition
  let a1 be RelStr;
  attr a1 is with_superior means
    ex b1 being Element of the carrier of a1 st
       b1 is_superior_of the InternalRel of a1;
end;

:: TAXONOM2:dfs 1
definiens
  let a1 be RelStr;
To prove
     a1 is with_superior
it is sufficient to prove
  thus ex b1 being Element of the carrier of a1 st
       b1 is_superior_of the InternalRel of a1;

:: TAXONOM2:def 1
theorem
for b1 being RelStr holds
      b1 is with_superior
   iff
      ex b2 being Element of the carrier of b1 st
         b2 is_superior_of the InternalRel of b1;

:: TAXONOM2:attrnot 2 => TAXONOM2:attr 2
definition
  let a1 be RelStr;
  attr a1 is with_comparable_down means
    for b1, b2 being Element of the carrier of a1
          st (ex b3 being Element of the carrier of a1 st
                b3 <= b1 & b3 <= b2) &
             not b1 <= b2
       holds b2 <= b1;
end;

:: TAXONOM2:dfs 2
definiens
  let a1 be RelStr;
To prove
     a1 is with_comparable_down
it is sufficient to prove
  thus for b1, b2 being Element of the carrier of a1
          st (ex b3 being Element of the carrier of a1 st
                b3 <= b1 & b3 <= b2) &
             not b1 <= b2
       holds b2 <= b1;

:: TAXONOM2:def 2
theorem
for b1 being RelStr holds
      b1 is with_comparable_down
   iff
      for b2, b3 being Element of the carrier of b1
            st (ex b4 being Element of the carrier of b1 st
                  b4 <= b2 & b4 <= b3) &
               not b2 <= b3
         holds b3 <= b2;

:: TAXONOM2:th 1
theorem
for b1 being set holds
   InclPoset {{b1}} is not empty &
    InclPoset {{b1}} is reflexive &
    InclPoset {{b1}} is transitive &
    InclPoset {{b1}} is antisymmetric &
    InclPoset {{b1}} is with_superior &
    InclPoset {{b1}} is with_comparable_down;

:: TAXONOM2:exreg 1
registration
  cluster non empty strict reflexive transitive antisymmetric with_superior with_comparable_down RelStr;
end;

:: TAXONOM2:modenot 1
definition
  mode Tree is reflexive transitive antisymmetric with_superior with_comparable_down RelStr;
end;

:: TAXONOM2:th 2
theorem
for b1 being non empty set
for b2 being symmetric transitive total Relation of b1,b1
for b3, b4, b5 being set
      st b5 in Class(b2,b3) & b5 in Class(b2,b4)
   holds Class(b2,b3) = Class(b2,b4);

:: TAXONOM2:th 3
theorem
for b1 being non empty set
for b2 being a_partition of b1
for b3, b4, b5 being set
      st b3 in b2 & b4 in b2 & b5 in b3 & b5 in b4
   holds b3 = b4;

:: TAXONOM2:th 4
theorem
for b1 being non empty set
for b2, b3 being set
      st b2 is Classification of b1 & b3 in union b2
   holds b3 c= b1;

:: TAXONOM2:th 5
theorem
for b1 being non empty set
for b2 being set
      st b2 is Strong_Classification of b1
   holds InclPoset union b2 is reflexive transitive antisymmetric with_superior with_comparable_down RelStr;

:: TAXONOM2:attrnot 3 => TAXONOM2:attr 3
definition
  let a1 be set;
  attr a1 is hierarchic means
    for b1, b2 being set
          st b1 in a1 & b2 in a1 & not b1 c= b2 & not b2 c= b1
       holds b1 misses b2;
end;

:: TAXONOM2:dfs 3
definiens
  let a1 be set;
To prove
     a1 is hierarchic
it is sufficient to prove
  thus for b1, b2 being set
          st b1 in a1 & b2 in a1 & not b1 c= b2 & not b2 c= b1
       holds b1 misses b2;

:: TAXONOM2:def 3
theorem
for b1 being set holds
      b1 is hierarchic
   iff
      for b2, b3 being set
            st b2 in b1 & b3 in b1 & not b2 c= b3 & not b3 c= b2
         holds b2 misses b3;

:: TAXONOM2:condreg 1
registration
  cluster trivial -> hierarchic (set);
end;

:: TAXONOM2:exreg 2
registration
  cluster non trivial hierarchic set;
end;

:: TAXONOM2:th 6
theorem
{} is hierarchic;

:: TAXONOM2:th 7
theorem
{{}} is hierarchic;

:: TAXONOM2:modenot 2 => TAXONOM2:mode 1
definition
  let a1 be set;
  mode Hierarchy of A1 -> Element of bool bool a1 means
    it is hierarchic;
end;

:: TAXONOM2:dfs 4
definiens
  let a1 be set;
  let a2 be Element of bool bool a1;
To prove
     a2 is Hierarchy of a1
it is sufficient to prove
  thus a2 is hierarchic;

:: TAXONOM2:def 4
theorem
for b1 being set
for b2 being Element of bool bool b1 holds
      b2 is Hierarchy of b1
   iff
      b2 is hierarchic;

:: TAXONOM2:attrnot 4 => TAXONOM2:attr 4
definition
  let a1 be set;
  attr a1 is mutually-disjoint means
    for b1, b2 being set
          st b1 in a1 & b2 in a1 & b1 <> b2
       holds b1 misses b2;
end;

:: TAXONOM2:dfs 5
definiens
  let a1 be set;
To prove
     a1 is mutually-disjoint
it is sufficient to prove
  thus for b1, b2 being set
          st b1 in a1 & b2 in a1 & b1 <> b2
       holds b1 misses b2;

:: TAXONOM2:def 5
theorem
for b1 being set holds
      b1 is mutually-disjoint
   iff
      for b2, b3 being set
            st b2 in b1 & b3 in b1 & b2 <> b3
         holds b2 misses b3;

:: TAXONOM2:exreg 3
registration
  let a1 be set;
  cluster mutually-disjoint Element of bool bool a1;
end;

:: TAXONOM2:th 8
theorem
{} is mutually-disjoint;

:: TAXONOM2:th 9
theorem
{{}} is mutually-disjoint;

:: TAXONOM2:th 10
theorem
for b1 being set holds
   {b1} is mutually-disjoint;

:: TAXONOM2:attrnot 5 => TAXONOM2:attr 5
definition
  let a1 be set;
  let a2 be Element of bool bool a1;
  attr a2 is T_3 means
    for b1 being Element of bool a1
       st b1 in a2
    for b2 being Element of a1
          st not b2 in b1
       holds ex b3 being Element of bool a1 st
          b2 in b3 & b3 in a2 & b1 misses b3;
end;

:: TAXONOM2:dfs 6
definiens
  let a1 be set;
  let a2 be Element of bool bool a1;
To prove
     a2 is T_3
it is sufficient to prove
  thus for b1 being Element of bool a1
       st b1 in a2
    for b2 being Element of a1
          st not b2 in b1
       holds ex b3 being Element of bool a1 st
          b2 in b3 & b3 in a2 & b1 misses b3;

:: TAXONOM2:def 6
theorem
for b1 being set
for b2 being Element of bool bool b1 holds
      b2 is T_3(b1)
   iff
      for b3 being Element of bool b1
         st b3 in b2
      for b4 being Element of b1
            st not b4 in b3
         holds ex b5 being Element of bool b1 st
            b4 in b5 & b5 in b2 & b3 misses b5;

:: TAXONOM2:th 11
theorem
for b1 being set
for b2 being Element of bool bool b1
      st b2 = {}
   holds b2 is T_3(b1);

:: TAXONOM2:exreg 4
registration
  let a1 be set;
  cluster covering T_3 Hierarchy of a1;
end;

:: TAXONOM2:attrnot 6 => TAXONOM2:attr 6
definition
  let a1 be set;
  let a2 be Element of bool bool a1;
  attr a2 is lower-bounded means
    for b1 being set
          st b1 <> {} & b1 c= a2 & b1 is c=-linear
       holds ex b2 being set st
          b2 in a2 & b2 c= meet b1;
end;

:: TAXONOM2:dfs 7
definiens
  let a1 be set;
  let a2 be Element of bool bool a1;
To prove
     a2 is lower-bounded
it is sufficient to prove
  thus for b1 being set
          st b1 <> {} & b1 c= a2 & b1 is c=-linear
       holds ex b2 being set st
          b2 in a2 & b2 c= meet b1;

:: TAXONOM2:def 7
theorem
for b1 being set
for b2 being Element of bool bool b1 holds
      b2 is lower-bounded(b1)
   iff
      for b3 being set
            st b3 <> {} & b3 c= b2 & b3 is c=-linear
         holds ex b4 being set st
            b4 in b2 & b4 c= meet b3;

:: TAXONOM2:th 12
theorem
for b1 being set
for b2 being Element of bool b1
for b3 being mutually-disjoint Element of bool bool b1
      st for b4 being set
              st b4 in b3
           holds b2 misses b4 & b1 <> {}
   holds b3 \/ {b2} is mutually-disjoint Element of bool bool b1 &
    (b2 <> {} implies union (b3 \/ {b2}) <> union b3);

:: TAXONOM2:attrnot 7 => TAXONOM2:attr 7
definition
  let a1 be set;
  let a2 be Element of bool bool a1;
  attr a2 is with_max's means
    for b1 being Element of bool a1
          st b1 in a2
       holds ex b2 being Element of bool a1 st
          b1 c= b2 &
           b2 in a2 &
           (for b3 being Element of bool a1
                 st b2 c= b3 & b3 in a2
              holds b3 = a1);
end;

:: TAXONOM2:dfs 8
definiens
  let a1 be set;
  let a2 be Element of bool bool a1;
To prove
     a2 is with_max's
it is sufficient to prove
  thus for b1 being Element of bool a1
          st b1 in a2
       holds ex b2 being Element of bool a1 st
          b1 c= b2 &
           b2 in a2 &
           (for b3 being Element of bool a1
                 st b2 c= b3 & b3 in a2
              holds b3 = a1);

:: TAXONOM2:def 8
theorem
for b1 being set
for b2 being Element of bool bool b1 holds
      b2 is with_max's(b1)
   iff
      for b3 being Element of bool b1
            st b3 in b2
         holds ex b4 being Element of bool b1 st
            b3 c= b4 &
             b4 in b2 &
             (for b5 being Element of bool b1
                   st b4 c= b5 & b5 in b2
                holds b5 = b1);

:: TAXONOM2:th 13
theorem
for b1 being set
for b2 being covering Hierarchy of b1
      st b2 is with_max's(b1)
   holds ex b3 being a_partition of b1 st
      b3 c= b2;

:: TAXONOM2:th 14
theorem
for b1 being set
for b2 being covering Hierarchy of b1
for b3 being mutually-disjoint Element of bool bool b1
      st b3 c= b2 &
         (for b4 being mutually-disjoint Element of bool bool b1
               st b4 c= b2 & union b3 c= union b4
            holds b3 = b4)
   holds b3 is a_partition of b1;

:: TAXONOM2:th 15
theorem
for b1 being set
for b2 being covering T_3 Hierarchy of b1
   st b2 is lower-bounded(b1) & not {} in b2
for b3 being Element of bool b1
for b4 being mutually-disjoint Element of bool bool b1
      st b3 in b4 &
         b4 c= b2 &
         (for b5 being mutually-disjoint Element of bool bool b1
               st b3 in b5 & b5 c= b2 & union b4 c= union b5
            holds union b4 = union b5)
   holds b4 is a_partition of b1;

:: TAXONOM2:th 16
theorem
for b1 being set
for b2 being covering T_3 Hierarchy of b1
   st b2 is lower-bounded(b1) & not {} in b2
for b3 being Element of bool b1
for b4 being mutually-disjoint Element of bool bool b1
      st b3 in b4 &
         b4 c= b2 &
         (for b5 being mutually-disjoint Element of bool bool b1
               st b3 in b5 & b5 c= b2 & b4 c= b5
            holds b4 = b5)
   holds b4 is a_partition of b1;

:: TAXONOM2:th 17
theorem
for b1 being set
for b2 being covering T_3 Hierarchy of b1
   st b2 is lower-bounded(b1) & not {} in b2
for b3 being Element of bool b1
      st b3 in b2
   holds ex b4 being a_partition of b1 st
      b3 in b4 & b4 c= b2;

:: TAXONOM2:th 18
theorem
for b1, b2 being non empty set
for b3 being a_partition of b1
for b4 being set
   st b4 in b3 & b2 c= b4
for b5 being a_partition of b1
   st b2 in b5 &
      (for b6 being set
            st b6 in b5 & not b6 c= b4 & not b4 c= b6
         holds b4 misses b6)
for b6 being set
      st for b7 being set holds
              b7 in b6
           iff
              b7 in b5 & b7 c= b4
   holds b6 \/ (b3 \ {b4}) is a_partition of b1 & b6 \/ (b3 \ {b4}) is_finer_than b3;

:: TAXONOM2:th 19
theorem
for b1, b2 being non empty set
   st b2 c= b1
for b3 being a_partition of b1
   st (ex b4 being set st
         b4 in b3 & b4 c= b2) &
      (for b4 being set
            st b4 in b3 & not b4 c= b2 & not b2 c= b4
         holds b2 misses b4)
for b4 being set
      st for b5 being set holds
              b5 in b4
           iff
              b5 in b3 & b5 misses b2
   holds b4 \/ {b2} is a_partition of b1 &
    b3 is_finer_than b4 \/ {b2} &
    (for b5 being a_partition of b1
       st b3 is_finer_than b5
    for b6 being set
          st b6 in b5 & b2 c= b6
       holds b4 \/ {b2} is_finer_than b5);

:: TAXONOM2:th 20
theorem
for b1 being non empty set
for b2 being covering T_3 Hierarchy of b1
      st b2 is lower-bounded(b1) &
         not {} in b2 &
         (for b3 being set
               st b3 <> {} &
                  b3 c= PARTITIONS b1 &
                  (for b4, b5 being set
                        st b4 in b3 & b5 in b3 & not b4 is_finer_than b5
                     holds b5 is_finer_than b4)
            holds ex b4, b5 being set st
               b4 in b3 &
                b5 in b3 &
                (for b6 being set
                      st b6 in b3
                   holds b6 is_finer_than b5 & b4 is_finer_than b6))
   holds ex b3 being Classification of b1 st
      union b3 = b2;