Article ARROW, MML version 4.99.1005

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

:: ARROW:th 1
theorem
for b1 being finite set
   st 2 <= card b1
for b2 being Element of b1 holds
   ex b3 being Element of b1 st
      b3 <> b2;

:: ARROW:th 2
theorem
for b1 being finite set
   st 3 <= card b1
for b2, b3 being Element of b1 holds
ex b4 being Element of b1 st
   b4 <> b2 & b4 <> b3;

:: ARROW:funcnot 2 => ARROW:func 2
definition
  let a1 be non empty set;
  func LinPreorders A1 -> set means
    for b1 being set holds
          b1 in it
       iff
          b1 is Relation of a1,a1 &
           (for b2, b3 being Element of a1
                 st not [b2,b3] in b1
              holds [b3,b2] in b1) &
           (for b2, b3, b4 being Element of a1
                 st [b2,b3] in b1 & [b3,b4] in b1
              holds [b2,b4] in b1);
end;

:: ARROW:def 1
theorem
for b1 being non empty set
for b2 being set holds
      b2 = LinPreorders b1
   iff
      for b3 being set holds
            b3 in b2
         iff
            b3 is Relation of b1,b1 &
             (for b4, b5 being Element of b1
                   st not [b4,b5] in b3
                holds [b5,b4] in b3) &
             (for b4, b5, b6 being Element of b1
                   st [b4,b5] in b3 & [b5,b6] in b3
                holds [b4,b6] in b3);

:: ARROW:funcreg 1
registration
  let a1 be non empty set;
  cluster LinPreorders a1 -> non empty;
end;

:: ARROW:funcnot 3 => ARROW:func 3
definition
  let a1 be non empty set;
  func LinOrders A1 -> Element of bool LinPreorders a1 means
    for b1 being Element of LinPreorders a1 holds
          b1 in it
       iff
          for b2, b3 being Element of a1
                st [b2,b3] in b1 & [b3,b2] in b1
             holds b2 = b3;
end;

:: ARROW:def 2
theorem
for b1 being non empty set
for b2 being Element of bool LinPreorders b1 holds
      b2 = LinOrders b1
   iff
      for b3 being Element of LinPreorders b1 holds
            b3 in b2
         iff
            for b4, b5 being Element of b1
                  st [b4,b5] in b3 & [b5,b4] in b3
               holds b4 = b5;

:: ARROW:exreg 1
registration
  let a1 be set;
  cluster Relation-like reflexive antisymmetric connected transitive total Relation of a1,a1;
end;

:: ARROW:funcnot 4 => ARROW:func 3
definition
  let a1 be non empty set;
  func LinOrders A1 -> Element of bool LinPreorders a1 means
    for b1 being set holds
          b1 in it
       iff
          b1 is reflexive antisymmetric connected transitive total Relation of a1,a1;
end;

:: ARROW:def 3
theorem
for b1 being non empty set
for b2 being Element of bool LinPreorders b1 holds
      b2 = LinOrders b1
   iff
      for b3 being set holds
            b3 in b2
         iff
            b3 is reflexive antisymmetric connected transitive total Relation of b1,b1;

:: ARROW:funcreg 2
registration
  let a1 be non empty set;
  cluster LinOrders a1 -> non empty;
end;

:: ARROW:prednot 1 => ARROW:pred 1
definition
  let a1 be non empty set;
  let a2 be Element of LinPreorders a1;
  let a3, a4 be Element of a1;
  pred A3 <=_ A2,A4 means
    [a3,a4] in a2;
end;

:: ARROW:dfs 4
definiens
  let a1 be non empty set;
  let a2 be Element of LinPreorders a1;
  let a3, a4 be Element of a1;
To prove
     a3 <=_ a2,a4
it is sufficient to prove
  thus [a3,a4] in a2;

:: ARROW:def 4
theorem
for b1 being non empty set
for b2 being Element of LinPreorders b1
for b3, b4 being Element of b1 holds
   b3 <=_ b2,b4
iff
   [b3,b4] in b2;

:: ARROW:prednot 2 => ARROW:pred 1
notation
  let a1 be non empty set;
  let a2 be Element of LinPreorders a1;
  let a3, a4 be Element of a1;
  synonym a4 >=_ a2,a3 for a3 <=_ a2,a4;
end;

:: ARROW:prednot 3 => not ARROW:pred 1
notation
  let a1 be non empty set;
  let a2 be Element of LinPreorders a1;
  let a3, a4 be Element of a1;
  antonym a4 <_ a2,a3 for a3 <=_ a2,a4;
end;

:: ARROW:prednot 4 => not ARROW:pred 1
notation
  let a1 be non empty set;
  let a2 be Element of LinPreorders a1;
  let a3, a4 be Element of a1;
  antonym a3 >_ a2,a4 for a3 <=_ a2,a4;
end;

:: ARROW:th 3
theorem
for b1 being non empty set
for b2 being Element of b1
for b3 being Element of LinPreorders b1 holds
   b2 <=_ b3,b2;

:: ARROW:th 4
theorem
for b1 being non empty set
for b2, b3 being Element of b1
for b4 being Element of LinPreorders b1
      st b3 <_ b4,b2
   holds b3 <=_ b4,b2;

:: ARROW:th 5
theorem
for b1 being non empty set
for b2, b3, b4 being Element of b1
for b5 being Element of LinPreorders b1
      st (b3 <_ b5,b2 implies b2 <_ b5,b3) & (b4 <_ b5,b3 implies b3 <_ b5,b4)
   holds b2 <=_ b5,b4;

:: ARROW:th 6
theorem
for b1 being non empty set
for b2, b3 being Element of b1
for b4 being Element of LinOrders b1
      st b2 <=_ b4,b3 & b3 <=_ b4,b2
   holds b2 = b3;

:: ARROW:th 7
theorem
for b1 being non empty set
for b2, b3, b4 being Element of b1
      st b2 <> b3 & b3 <> b4 & b2 <> b4
   holds ex b5 being Element of LinPreorders b1 st
      b2 <_ b5,b3 & b3 <_ b5,b4;

:: ARROW:th 8
theorem
for b1 being non empty set
for b2 being Element of b1 holds
   ex b3 being Element of LinPreorders b1 st
      for b4 being Element of b1
            st b4 <> b2
         holds b2 <_ b3,b4;

:: ARROW:th 9
theorem
for b1 being non empty set
for b2 being Element of b1 holds
   ex b3 being Element of LinPreorders b1 st
      for b4 being Element of b1
            st b4 <> b2
         holds b4 <_ b3,b2;

:: ARROW:th 10
theorem
for b1 being non empty set
for b2, b3, b4 being Element of b1
for b5 being Element of LinPreorders b1
      st b2 <> b3 & b2 <> b4
   holds ex b6 being Element of LinPreorders b1 st
      b2 <_ b6,b3 & b2 <_ b6,b4 & (b3 <_ b6,b4 implies b3 <_ b5,b4) & (b3 <_ b5,b4 implies b3 <_ b6,b4) & (b4 <_ b6,b3 implies b4 <_ b5,b3) & (b4 <_ b5,b3 implies b4 <_ b6,b3);

:: ARROW:th 11
theorem
for b1 being non empty set
for b2, b3, b4 being Element of b1
for b5 being Element of LinPreorders b1
      st b2 <> b3 & b2 <> b4
   holds ex b6 being Element of LinPreorders b1 st
      b3 <_ b6,b2 & b4 <_ b6,b2 & (b3 <_ b6,b4 implies b3 <_ b5,b4) & (b3 <_ b5,b4 implies b3 <_ b6,b4) & (b4 <_ b6,b3 implies b4 <_ b5,b3) & (b4 <_ b5,b3 implies b4 <_ b6,b3);

:: ARROW:th 12
theorem
for b1 being non empty set
for b2, b3 being Element of b1
for b4, b5 being Element of LinOrders b1 holds
   (b2 <_ b4,b3 implies b2 <_ b5,b3) & (b2 <_ b5,b3 implies b2 <_ b4,b3) & (b3 <_ b4,b2 implies b3 <_ b5,b2) & (b3 <_ b5,b2 implies b3 <_ b4,b2)
iff
      b2 <_ b4,b3
   iff
      b2 <_ b5,b3;

:: ARROW:th 13
theorem
for b1 being non empty set
for b2 being Element of LinOrders b1
for b3 being Element of LinPreorders b1 holds
      for b4, b5 being Element of b1
            st b4 <_ b2,b5
         holds b4 <_ b3,b5
   iff
      for b4, b5 being Element of b1 holds
         b4 <_ b2,b5
      iff
         b4 <_ b3,b5;

:: ARROW:th 14
theorem
for b1, b2 being non empty finite set
for b3 being Function-like quasi_total Relation of Funcs(b2,LinPreorders b1),LinPreorders b1
      st (for b4 being Element of Funcs(b2,LinPreorders b1)
         for b5, b6 being Element of b1
               st for b7 being Element of b2 holds
                    b5 <_ b4 . b7,b6
            holds b5 <_ b3 . b4,b6) &
         (for b4, b5 being Element of Funcs(b2,LinPreorders b1)
         for b6, b7 being Element of b1
               st for b8 being Element of b2 holds
                    (b6 <_ b4 . b8,b7 implies b6 <_ b5 . b8,b7) &
                     (b6 <_ b5 . b8,b7 implies b6 <_ b4 . b8,b7) &
                     (b7 <_ b4 . b8,b6 implies b7 <_ b5 . b8,b6) &
                     (b7 <_ b5 . b8,b6 implies b7 <_ b4 . b8,b6)
            holds    b6 <_ b3 . b4,b7
            iff
               b6 <_ b3 . b5,b7) &
         3 <= card b1
   holds ex b4 being Element of b2 st
      for b5 being Element of Funcs(b2,LinPreorders b1)
      for b6, b7 being Element of b1
            st b6 <_ b5 . b4,b7
         holds b6 <_ b3 . b5,b7;

:: ARROW:th 15
theorem
for b1, b2 being non empty finite set
for b3 being Function-like quasi_total Relation of Funcs(b2,LinOrders b1),LinPreorders b1
      st (for b4 being Element of Funcs(b2,LinOrders b1)
         for b5, b6 being Element of b1
               st for b7 being Element of b2 holds
                    b5 <_ b4 . b7,b6
            holds b5 <_ b3 . b4,b6) &
         (for b4, b5 being Element of Funcs(b2,LinOrders b1)
         for b6, b7 being Element of b1
               st for b8 being Element of b2 holds
                       b6 <_ b4 . b8,b7
                    iff
                       b6 <_ b5 . b8,b7
            holds    b6 <_ b3 . b4,b7
            iff
               b6 <_ b3 . b5,b7) &
         3 <= card b1
   holds ex b4 being Element of b2 st
      for b5 being Element of Funcs(b2,LinOrders b1)
      for b6, b7 being Element of b1 holds
         b6 <_ b5 . b4,b7
      iff
         b6 <_ b3 . b5,b7;