Article TAXONOM1, MML version 4.99.1005

:: TAXONOM1:exreg 1
registration
  cluster ext-real non negative complex real set;
end;

:: TAXONOM1:th 1
theorem
for b1 being Relation-like Function-like FinSequence-like set
for b2 being natural set
      st b2 + 1 in dom b1 & not b2 in dom b1
   holds b2 = 0;

:: TAXONOM1:th 2
theorem
for b1 being Relation-like Function-like FinSequence-like set
for b2, b3 being natural set
      st b2 in dom b1 &
         b3 in dom b1 &
         (for b4 being natural set
               st b4 in dom b1 & b4 + 1 in dom b1
            holds b1 . b4 = b1 . (b4 + 1))
   holds b1 . b2 = b1 . b3;

:: TAXONOM1:th 3
theorem
for b1 being set
for b2 being Relation of b1,b1
      st b2 is_reflexive_in b1
   holds dom b2 = b1;

:: TAXONOM1:th 4
theorem
for b1 being set
for b2 being Relation of b1,b1
      st b2 is_reflexive_in b1
   holds rng b2 = b1;

:: TAXONOM1:th 5
theorem
for b1 being set
for b2 being Relation of b1,b1
      st b2 is_reflexive_in b1
   holds b2 [*] is_reflexive_in b1;

:: TAXONOM1:th 6
theorem
for b1, b2, b3 being set
for b4 being Relation of b1,b1
      st b4 is_reflexive_in b1 & b4 reduces b2,b3 & b2 in b1
   holds [b2,b3] in b4 [*];

:: TAXONOM1:th 7
theorem
for b1 being set
for b2 being Relation of b1,b1
      st b2 is_reflexive_in b1 & b2 is_symmetric_in b1
   holds b2 [*] is_symmetric_in b1;

:: TAXONOM1:th 8
theorem
for b1 being set
for b2 being Relation of b1,b1
      st b2 is_reflexive_in b1
   holds b2 [*] is_transitive_in b1;

:: TAXONOM1:th 9
theorem
for b1 being non empty set
for b2 being Relation of b1,b1
      st b2 is_reflexive_in b1 & b2 is_symmetric_in b1
   holds b2 [*] is symmetric transitive total Relation of b1,b1;

:: TAXONOM1:th 10
theorem
for b1 being non empty set
for b2, b3 being Relation of b1,b1
      st b2 c= b3
   holds b2 [*] c= b3 [*];

:: TAXONOM1:th 11
theorem
for b1 being non empty set holds
   SmallestPartition b1 is_finer_than {b1};

:: TAXONOM1:modenot 1 => TAXONOM1:mode 1
definition
  let a1 be non empty set;
  mode Classification of A1 -> Element of bool PARTITIONS a1 means
    for b1, b2 being a_partition of a1
          st b1 in it & b2 in it & not b1 is_finer_than b2
       holds b2 is_finer_than b1;
end;

:: TAXONOM1:dfs 1
definiens
  let a1 be non empty set;
  let a2 be Element of bool PARTITIONS a1;
To prove
     a2 is Classification of a1
it is sufficient to prove
  thus for b1, b2 being a_partition of a1
          st b1 in a2 & b2 in a2 & not b1 is_finer_than b2
       holds b2 is_finer_than b1;

:: TAXONOM1:def 1
theorem
for b1 being non empty set
for b2 being Element of bool PARTITIONS b1 holds
      b2 is Classification of b1
   iff
      for b3, b4 being a_partition of b1
            st b3 in b2 & b4 in b2 & not b3 is_finer_than b4
         holds b4 is_finer_than b3;

:: TAXONOM1:th 12
theorem
for b1 being non empty set holds
   {{b1}} is Classification of b1;

:: TAXONOM1:th 13
theorem
for b1 being non empty set holds
   {SmallestPartition b1} is Classification of b1;

:: TAXONOM1:th 14
theorem
for b1 being non empty set
for b2 being Element of bool PARTITIONS b1
      st b2 = {{b1},SmallestPartition b1}
   holds b2 is Classification of b1;

:: TAXONOM1:modenot 2 => TAXONOM1:mode 2
definition
  let a1 be non empty set;
  mode Strong_Classification of A1 -> Element of bool PARTITIONS a1 means
    it is Classification of a1 & {a1} in it & SmallestPartition a1 in it;
end;

:: TAXONOM1:dfs 2
definiens
  let a1 be non empty set;
  let a2 be Element of bool PARTITIONS a1;
To prove
     a2 is Strong_Classification of a1
it is sufficient to prove
  thus a2 is Classification of a1 & {a1} in a2 & SmallestPartition a1 in a2;

:: TAXONOM1:def 2
theorem
for b1 being non empty set
for b2 being Element of bool PARTITIONS b1 holds
      b2 is Strong_Classification of b1
   iff
      b2 is Classification of b1 & {b1} in b2 & SmallestPartition b1 in b2;

:: TAXONOM1:th 15
theorem
for b1 being non empty set
for b2 being Element of bool PARTITIONS b1
      st b2 = {{b1},SmallestPartition b1}
   holds b2 is Strong_Classification of b1;

:: TAXONOM1:funcnot 1 => TAXONOM1:func 1
definition
  let a1 be non empty set;
  let a2 be Function-like Relation of [:a1,a1:],REAL;
  let a3 be real set;
  func low_toler(A2,A3) -> Relation of a1,a1 means
    for b1, b2 being Element of a1 holds
       [b1,b2] in it
    iff
       a2 .(b1,b2) <= a3;
end;

:: TAXONOM1:def 3
theorem
for b1 being non empty set
for b2 being Function-like Relation of [:b1,b1:],REAL
for b3 being real set
for b4 being Relation of b1,b1 holds
      b4 = low_toler(b2,b3)
   iff
      for b5, b6 being Element of b1 holds
         [b5,b6] in b4
      iff
         b2 .(b5,b6) <= b3;

:: TAXONOM1:th 16
theorem
for b1 being non empty set
for b2 being Function-like Relation of [:b1,b1:],REAL
for b3 being real set
      st b2 is Reflexive(b1) & 0 <= b3
   holds low_toler(b2,b3) is_reflexive_in b1;

:: TAXONOM1:th 17
theorem
for b1 being non empty set
for b2 being Function-like Relation of [:b1,b1:],REAL
for b3 being real set
      st b2 is symmetric(b1)
   holds low_toler(b2,b3) is_symmetric_in b1;

:: TAXONOM1:th 18
theorem
for b1 being non empty set
for b2 being Function-like Relation of [:b1,b1:],REAL
for b3 being real set
      st 0 <= b3 & b2 is Reflexive(b1) & b2 is symmetric(b1)
   holds low_toler(b2,b3) is reflexive symmetric total Relation of b1,b1;

:: TAXONOM1:th 19
theorem
for b1 being non empty set
for b2 being Function-like Relation of [:b1,b1:],REAL
for b3, b4 being real set
      st b3 <= b4
   holds low_toler(b2,b3) c= low_toler(b2,b4);

:: TAXONOM1:attrnot 1 => TAXONOM1:attr 1
definition
  let a1 be set;
  let a2 be Function-like Relation of [:a1,a1:],REAL;
  attr a2 is nonnegative means
    for b1, b2 being Element of a1 holds
    0 <= a2 .(b1,b2);
end;

:: TAXONOM1:dfs 4
definiens
  let a1 be set;
  let a2 be Function-like Relation of [:a1,a1:],REAL;
To prove
     a2 is nonnegative
it is sufficient to prove
  thus for b1, b2 being Element of a1 holds
    0 <= a2 .(b1,b2);

:: TAXONOM1:def 4
theorem
for b1 being set
for b2 being Function-like Relation of [:b1,b1:],REAL holds
      b2 is nonnegative(b1)
   iff
      for b3, b4 being Element of b1 holds
      0 <= b2 .(b3,b4);

:: TAXONOM1:th 20
theorem
for b1 being non empty set
for b2 being Function-like Relation of [:b1,b1:],REAL
for b3, b4 being set
      st b2 is nonnegative(b1) & b2 is Reflexive(b1) & b2 is discerning(b1) & [b3,b4] in low_toler(b2,0)
   holds b3 = b4;

:: TAXONOM1:th 21
theorem
for b1 being non empty set
for b2 being Function-like Relation of [:b1,b1:],REAL
for b3 being Element of b1
      st b2 is Reflexive(b1) & b2 is discerning(b1)
   holds [b3,b3] in low_toler(b2,0);

:: TAXONOM1:th 22
theorem
for b1 being non empty set
for b2 being Function-like Relation of [:b1,b1:],REAL
for b3 being real set
      st low_toler(b2,b3) is_reflexive_in b1 & b2 is symmetric(b1)
   holds (low_toler(b2,b3)) [*] is symmetric transitive total Relation of b1,b1;

:: TAXONOM1:th 23
theorem
for b1 being non empty set
for b2 being Function-like Relation of [:b1,b1:],REAL
      st b2 is nonnegative(b1) & b2 is Reflexive(b1) & b2 is discerning(b1)
   holds (low_toler(b2,0)) [*] = low_toler(b2,0);

:: TAXONOM1:th 24
theorem
for b1 being non empty set
for b2 being Function-like Relation of [:b1,b1:],REAL
for b3 being symmetric transitive total Relation of b1,b1
      st b3 = (low_toler(b2,0)) [*] & b2 is nonnegative(b1) & b2 is Reflexive(b1) & b2 is discerning(b1)
   holds b3 = id b1;

:: TAXONOM1:th 25
theorem
for b1 being non empty set
for b2 being Function-like Relation of [:b1,b1:],REAL
for b3 being symmetric transitive total Relation of b1,b1
      st b3 = (low_toler(b2,0)) [*] & b2 is nonnegative(b1) & b2 is Reflexive(b1) & b2 is discerning(b1)
   holds Class b3 = SmallestPartition b1;

:: TAXONOM1:th 26
theorem
for b1 being non empty finite Element of bool REAL
for b2 being Function-like quasi_total Relation of [:b1,b1:],REAL
for b3 being non empty finite Element of bool REAL
for b4 being real set
   st b3 = rng b2 & max b3 <= b4
for b5, b6 being Element of b1 holds
b2 .(b5,b6) <= b4;

:: TAXONOM1:th 27
theorem
for b1 being non empty finite Element of bool REAL
for b2 being Function-like quasi_total Relation of [:b1,b1:],REAL
for b3 being non empty finite Element of bool REAL
for b4 being real set
   st b3 = rng b2 & max b3 <= b4
for b5 being symmetric transitive total Relation of b1,b1
      st b5 = (low_toler(b2,b4)) [*]
   holds Class b5 = {b1};

:: TAXONOM1:th 28
theorem
for b1 being non empty finite Element of bool REAL
for b2 being Function-like quasi_total Relation of [:b1,b1:],REAL
for b3 being non empty finite Element of bool REAL
for b4 being real set
      st b3 = rng b2 & max b3 <= b4
   holds (low_toler(b2,b4)) [*] = low_toler(b2,b4);

:: TAXONOM1:funcnot 2 => TAXONOM1:func 2
definition
  let a1 be non empty set;
  let a2 be Function-like Relation of [:a1,a1:],REAL;
  func fam_class A2 -> Element of bool PARTITIONS a1 means
    for b1 being set holds
          b1 in it
       iff
          ex b2 being non negative real set st
             ex b3 being symmetric transitive total Relation of a1,a1 st
                b3 = (low_toler(a2,b2)) [*] & Class b3 = b1;
end;

:: TAXONOM1:def 5
theorem
for b1 being non empty set
for b2 being Function-like Relation of [:b1,b1:],REAL
for b3 being Element of bool PARTITIONS b1 holds
      b3 = fam_class b2
   iff
      for b4 being set holds
            b4 in b3
         iff
            ex b5 being non negative real set st
               ex b6 being symmetric transitive total Relation of b1,b1 st
                  b6 = (low_toler(b2,b5)) [*] & Class b6 = b4;

:: TAXONOM1:th 29
theorem
for b1 being non empty set
for b2 being Function-like Relation of [:b1,b1:],REAL
for b3 being non negative real set
      st low_toler(b2,b3) is_reflexive_in b1 & b2 is symmetric(b1)
   holds fam_class b2 is non empty set;

:: TAXONOM1:th 30
theorem
for b1 being non empty finite Element of bool REAL
for b2 being Function-like quasi_total Relation of [:b1,b1:],REAL
      st b2 is symmetric(b1) & b2 is nonnegative(b1)
   holds {b1} in fam_class b2;

:: TAXONOM1:th 31
theorem
for b1 being non empty set
for b2 being Function-like Relation of [:b1,b1:],REAL holds
   fam_class b2 is Classification of b1;

:: TAXONOM1:th 32
theorem
for b1 being non empty finite Element of bool REAL
for b2 being Function-like quasi_total Relation of [:b1,b1:],REAL
      st SmallestPartition b1 in fam_class b2 & b2 is symmetric(b1) & b2 is nonnegative(b1)
   holds fam_class b2 is Strong_Classification of b1;

:: TAXONOM1:prednot 1 => TAXONOM1:pred 1
definition
  let a1 be MetrStruct;
  let a2 be real set;
  let a3, a4 be Element of the carrier of a1;
  pred A3,A4 are_in_tolerance_wrt A2 means
    dist(a3,a4) <= a2;
end;

:: TAXONOM1:dfs 6
definiens
  let a1 be MetrStruct;
  let a2 be real set;
  let a3, a4 be Element of the carrier of a1;
To prove
     a3,a4 are_in_tolerance_wrt a2
it is sufficient to prove
  thus dist(a3,a4) <= a2;

:: TAXONOM1:def 6
theorem
for b1 being MetrStruct
for b2 being real set
for b3, b4 being Element of the carrier of b1 holds
   b3,b4 are_in_tolerance_wrt b2
iff
   dist(b3,b4) <= b2;

:: TAXONOM1:funcnot 3 => TAXONOM1:func 3
definition
  let a1 be non empty MetrStruct;
  let a2 be real set;
  func dist_toler(A1,A2) -> Relation of the carrier of a1,the carrier of a1 means
    for b1, b2 being Element of the carrier of a1 holds
       [b1,b2] in it
    iff
       b1,b2 are_in_tolerance_wrt a2;
end;

:: TAXONOM1:def 7
theorem
for b1 being non empty MetrStruct
for b2 being real set
for b3 being Relation of the carrier of b1,the carrier of b1 holds
      b3 = dist_toler(b1,b2)
   iff
      for b4, b5 being Element of the carrier of b1 holds
         [b4,b5] in b3
      iff
         b4,b5 are_in_tolerance_wrt b2;

:: TAXONOM1:th 33
theorem
for b1 being non empty MetrStruct
for b2 being real set holds
   dist_toler(b1,b2) = low_toler(the distance of b1,b2);

:: TAXONOM1:th 34
theorem
for b1 being non empty Reflexive symmetric MetrStruct
for b2 being real set
for b3 being Relation of the carrier of b1,the carrier of b1
      st b3 = dist_toler(b1,b2) & 0 <= b2
   holds b3 is reflexive symmetric total Relation of the carrier of b1,the carrier of b1;

:: TAXONOM1:funcnot 4 => TAXONOM1:func 4
definition
  let a1 be non empty Reflexive symmetric MetrStruct;
  func fam_class_metr A1 -> Element of bool PARTITIONS the carrier of a1 means
    for b1 being set holds
          b1 in it
       iff
          ex b2 being non negative real set st
             ex b3 being symmetric transitive total Relation of the carrier of a1,the carrier of a1 st
                b3 = (dist_toler(a1,b2)) [*] & Class b3 = b1;
end;

:: TAXONOM1:def 8
theorem
for b1 being non empty Reflexive symmetric MetrStruct
for b2 being Element of bool PARTITIONS the carrier of b1 holds
      b2 = fam_class_metr b1
   iff
      for b3 being set holds
            b3 in b2
         iff
            ex b4 being non negative real set st
               ex b5 being symmetric transitive total Relation of the carrier of b1,the carrier of b1 st
                  b5 = (dist_toler(b1,b4)) [*] & Class b5 = b3;

:: TAXONOM1:th 35
theorem
for b1 being non empty Reflexive symmetric MetrStruct holds
   fam_class_metr b1 = fam_class the distance of b1;

:: TAXONOM1:th 36
theorem
for b1 being non empty Reflexive discerning symmetric triangle MetrStruct
for b2 being symmetric transitive total Relation of the carrier of b1,the carrier of b1
      st b2 = (dist_toler(b1,0)) [*]
   holds Class b2 = SmallestPartition the carrier of b1;

:: TAXONOM1:th 37
theorem
for b1 being real set
for b2 being non empty Reflexive symmetric bounded MetrStruct
      st diameter [#] b2 <= b1
   holds dist_toler(b2,b1) = nabla the carrier of b2;

:: TAXONOM1:th 38
theorem
for b1 being real set
for b2 being non empty Reflexive symmetric bounded MetrStruct
      st diameter [#] b2 <= b1
   holds dist_toler(b2,b1) = (dist_toler(b2,b1)) [*];

:: TAXONOM1:th 39
theorem
for b1 being real set
for b2 being non empty Reflexive symmetric bounded MetrStruct
      st diameter [#] b2 <= b1
   holds (dist_toler(b2,b1)) [*] = nabla the carrier of b2;

:: TAXONOM1:th 40
theorem
for b1 being non empty Reflexive symmetric bounded MetrStruct
for b2 being symmetric transitive total Relation of the carrier of b1,the carrier of b1
for b3 being non negative real set
      st diameter [#] b1 <= b3 & b2 = (dist_toler(b1,b3)) [*]
   holds Class b2 = {the carrier of b1};

:: TAXONOM1:funcreg 1
registration
  let a1 be non empty Reflexive symmetric triangle MetrStruct;
  let a2 be non empty bounded Element of bool the carrier of a1;
  cluster diameter a2 -> non negative;
end;

:: TAXONOM1:th 41
theorem
for b1 being non empty Reflexive discerning symmetric triangle bounded MetrStruct holds
   {the carrier of b1} in fam_class_metr b1;

:: TAXONOM1:th 42
theorem
for b1 being non empty Reflexive symmetric MetrStruct holds
   fam_class_metr b1 is Classification of the carrier of b1;

:: TAXONOM1:th 43
theorem
for b1 being non empty Reflexive discerning symmetric triangle bounded MetrStruct holds
   fam_class_metr b1 is Strong_Classification of the carrier of b1;