Article EUCLID_6, MML version 4.99.1005

:: EUCLID_6:th 1
theorem
for b1, b2, b3, b4, b5, b6 being Element of the carrier of TOP-REAL 2
      st sin angle(b1,b2,b3) = sin angle(b4,b5,b6) &
         cos angle(b1,b2,b3) = cos angle(b4,b5,b6)
   holds angle(b1,b2,b3) = angle(b4,b5,b6);

:: EUCLID_6:th 2
theorem
for b1, b2, b3 being Element of the carrier of TOP-REAL 2 holds
sin angle(b1,b2,b3) = - sin angle(b3,b2,b1);

:: EUCLID_6:th 3
theorem
for b1, b2, b3 being Element of the carrier of TOP-REAL 2 holds
cos angle(b1,b2,b3) = cos angle(b3,b2,b1);

:: EUCLID_6:th 4
theorem
for b1, b2, b3, b4 being Element of the carrier of TOP-REAL 2
      st (angle(b1,b2,b3)) + angle(b3,b2,b4) <> angle(b1,b2,b4)
   holds (angle(b1,b2,b3)) + angle(b3,b2,b4) = (angle(b1,b2,b4)) + (2 * PI);

:: EUCLID_6:funcnot 1 => EUCLID_6:func 1
definition
  let a1, a2, a3 be Element of the carrier of TOP-REAL 2;
  func the_area_of_polygon3(A1,A2,A3) -> real set equals
    ((((a1 `1 * (a2 `2)) - (a2 `1 * (a1 `2))) + ((a2 `1 * (a3 `2)) - (a3 `1 * (a2 `2)))) + ((a3 `1 * (a1 `2)) - (a1 `1 * (a3 `2)))) / 2;
end;

:: EUCLID_6:def 1
theorem
for b1, b2, b3 being Element of the carrier of TOP-REAL 2 holds
the_area_of_polygon3(b1,b2,b3) = ((((b1 `1 * (b2 `2)) - (b2 `1 * (b1 `2))) + ((b2 `1 * (b3 `2)) - (b3 `1 * (b2 `2)))) + ((b3 `1 * (b1 `2)) - (b1 `1 * (b3 `2)))) / 2;

:: EUCLID_6:funcnot 2 => EUCLID_6:func 2
definition
  let a1, a2, a3 be Element of the carrier of TOP-REAL 2;
  func the_perimeter_of_polygon3(A1,A2,A3) -> real set equals
    (|.a2 - a1.| + |.a3 - a2.|) + |.a1 - a3.|;
end;

:: EUCLID_6:def 2
theorem
for b1, b2, b3 being Element of the carrier of TOP-REAL 2 holds
the_perimeter_of_polygon3(b1,b2,b3) = (|.b2 - b1.| + |.b3 - b2.|) + |.b1 - b3.|;

:: EUCLID_6:th 5
theorem
for b1, b2, b3 being Element of the carrier of TOP-REAL 2 holds
the_area_of_polygon3(b1,b2,b3) = ((|.b1 - b2.| * |.b3 - b2.|) * sin angle(b3,b2,b1)) / 2;

:: EUCLID_6:th 6
theorem
for b1, b2, b3 being Element of the carrier of TOP-REAL 2
      st b1 <> b2
   holds |.b3 - b1.| * sin angle(b3,b1,b2) = |.b3 - b2.| * sin angle(b1,b2,b3);

:: EUCLID_6:th 7
theorem
for b1, b2, b3 being Element of the carrier of TOP-REAL 2
for b4, b5, b6 being real set
      st b4 = |.b1 - b2.| & b5 = |.b3 - b2.| & b6 = |.b3 - b1.|
   holds b6 ^2 = (b4 ^2 + (b5 ^2)) - (((2 * b4) * b5) * cos angle(b1,b2,b3));

:: EUCLID_6:th 8
theorem
for b1, b2, b3 being Element of the carrier of TOP-REAL 2
      st b1 in LSeg(b2,b3) & b1 <> b2 & b1 <> b3
   holds angle(b2,b1,b3) = PI;

:: EUCLID_6:th 9
theorem
for b1, b2, b3, b4 being Element of the carrier of TOP-REAL 2
      st b1 in LSeg(b2,b3) & b1 <> b2
   holds angle(b3,b2,b4) = angle(b1,b2,b4);

:: EUCLID_6:th 10
theorem
for b1, b2, b3, b4 being Element of the carrier of TOP-REAL 2
      st b1 in LSeg(b2,b3) & b1 <> b2
   holds angle(b4,b2,b3) = angle(b4,b2,b1);

:: EUCLID_6:th 11
theorem
for b1, b2, b3 being Element of the carrier of TOP-REAL 2
      st angle(b1,b2,b3) = PI
   holds b2 in LSeg(b1,b3);

:: EUCLID_6:th 12
theorem
for b1, b2, b3, b4 being Element of the carrier of TOP-REAL 2
      st b1 in LSeg(b2,b3) & b1 in LSeg(b2,b4) & b3 <> b4 & b1 <> b2 & not b3 in LSeg(b2,b4)
   holds b4 in LSeg(b2,b3);

:: EUCLID_6:th 13
theorem
for b1, b2, b3, b4 being Element of the carrier of TOP-REAL 2
      st b1 in LSeg(b2,b3) &
         b1 <> b2 &
         b1 <> b3 &
         (angle(b2,b1,b4)) + angle(b4,b1,b3) <> PI
   holds (angle(b2,b1,b4)) + angle(b4,b1,b3) = 3 * PI;

:: EUCLID_6:th 14
theorem
for b1, b2, b3, b4 being Element of the carrier of TOP-REAL 2
      st b1 in LSeg(b2,b3) &
         b1 <> b2 &
         b1 <> b3 &
         (angle(b4,b1,b2) = PI / 2 or angle(b4,b1,b2) = (3 / 2) * PI)
   holds angle(b2,b1,b4) = angle(b4,b1,b3);

:: EUCLID_6:th 15
theorem
for b1, b2, b3, b4, b5 being Element of the carrier of TOP-REAL 2
      st b1 in LSeg(b2,b3) & b1 in LSeg(b4,b5) & b1 <> b2 & b1 <> b4 & b1 <> b3 & b1 <> b5
   holds angle(b2,b1,b4) = angle(b3,b1,b5);

:: EUCLID_6:th 16
theorem
for b1, b2, b3 being Element of the carrier of TOP-REAL 2
      st |.b1 - b2.| = |.b3 - b1.| &
         b2 <> b3
   holds angle(b1,b2,b3) = angle(b2,b3,b1);

:: EUCLID_6:th 17
theorem
for b1, b2, b3, b4 being Element of the carrier of TOP-REAL 2
      st b4 in LSeg(b1,b2) & b4 <> b2
   holds    |(b3 - b4,b2 - b1)| = 0
   iff
      |(b3 - b4,b2 - b4)| = 0;

:: EUCLID_6:th 18
theorem
for b1, b2, b3, b4 being Element of the carrier of TOP-REAL 2
      st |.b1 - b2.| = |.b3 - b2.| &
         b4 in LSeg(b1,b3) &
         b4 <> b2 &
         b4 <> b1 &
         (angle(b2,b4,b1) = PI / 2 or angle(b2,b4,b1) = (3 / 2) * PI)
   holds angle(b1,b2,b4) = angle(b4,b2,b3);

:: EUCLID_6:th 19
theorem
for b1, b2, b3, b4 being Element of the carrier of TOP-REAL 2
      st |.b1 - b3.| = |.b2 - b3.| &
         b4 in LSeg(b1,b2) &
         b4 <> b3
   holds (angle(b1,b3,b4) = angle(b4,b3,b2) implies |.b1 - b4.| = |.b4 - b2.|) &
    (|.b1 - b4.| = |.b4 - b2.| implies |(b3 - b4,b2 - b1)| = 0) &
    (|(b3 - b4,b2 - b1)| = 0 implies angle(b1,b3,b4) = angle(b4,b3,b2));

:: EUCLID_6:prednot 1 => EUCLID_6:pred 1
definition
  let a1, a2, a3 be Element of the carrier of TOP-REAL 2;
  pred A1,A2,A3 is_collinear means
    (not a1 in LSeg(a2,a3) & not a2 in LSeg(a3,a1)) implies a3 in LSeg(a1,a2);
end;

:: EUCLID_6:dfs 3
definiens
  let a1, a2, a3 be Element of the carrier of TOP-REAL 2;
To prove
     a1,a2,a3 is_collinear
it is sufficient to prove
  thus (not a1 in LSeg(a2,a3) & not a2 in LSeg(a3,a1)) implies a3 in LSeg(a1,a2);

:: EUCLID_6:def 3
theorem
for b1, b2, b3 being Element of the carrier of TOP-REAL 2 holds
   b1,b2,b3 is_collinear
iff
   (not b1 in LSeg(b2,b3) & not b2 in LSeg(b3,b1) implies b3 in LSeg(b1,b2));

:: EUCLID_6:prednot 2 => not EUCLID_6:pred 1
notation
  let a1, a2, a3 be Element of the carrier of TOP-REAL 2;
  antonym a1,a2,a3 is_a_triangle for a1,a2,a3 is_collinear;
end;

:: EUCLID_6:th 20
theorem
for b1, b2, b3 being Element of the carrier of TOP-REAL 2 holds
   b1,b2,b3 is_a_triangle
iff
   b1,b2,b3 are_mutually_different & angle(b1,b2,b3) <> PI & angle(b2,b3,b1) <> PI & angle(b3,b1,b2) <> PI;

:: EUCLID_6:th 21
theorem
for b1, b2, b3, b4, b5, b6 being Element of the carrier of TOP-REAL 2
      st b1,b2,b3 is_a_triangle & b4,b5,b6 is_a_triangle & angle(b1,b2,b3) = angle(b4,b5,b6) & angle(b3,b1,b2) = angle(b6,b4,b5)
   holds |.b3 - b2.| * |.b4 - b6.| = |.b1 - b3.| * |.b6 - b5.| &
    |.b3 - b2.| * |.b5 - b4.| = |.b2 - b1.| * |.b6 - b5.| &
    |.b1 - b3.| * |.b5 - b4.| = |.b2 - b1.| * |.b4 - b6.|;

:: EUCLID_6:th 22
theorem
for b1, b2, b3, b4, b5, b6 being Element of the carrier of TOP-REAL 2
      st b1,b2,b3 is_a_triangle & b4,b5,b6 is_a_triangle & angle(b1,b2,b3) = angle(b4,b5,b6) & angle(b3,b1,b2) = angle(b5,b6,b4)
   holds |.b2 - b3.| * |.b4 - b6.| = |.b3 - b1.| * |.b5 - b4.| &
    |.b2 - b3.| * |.b6 - b5.| = |.b1 - b2.| * |.b5 - b4.| &
    |.b3 - b1.| * |.b6 - b5.| = |.b1 - b2.| * |.b4 - b6.|;

:: EUCLID_6:th 23
theorem
for b1, b2, b3 being Element of the carrier of TOP-REAL 2
      st b1,b2,b3 are_mutually_different & angle(b1,b2,b3) <= PI
   holds angle(b2,b3,b1) <= PI & angle(b3,b1,b2) <= PI;

:: EUCLID_6:th 24
theorem
for b1, b2, b3 being Element of the carrier of TOP-REAL 2
      st b1,b2,b3 are_mutually_different & PI < angle(b1,b2,b3)
   holds PI < angle(b2,b3,b1) & PI < angle(b3,b1,b2);

:: EUCLID_6:th 25
theorem
for b1, b2, b3, b4 being Element of the carrier of TOP-REAL 2
      st b1 in LSeg(b2,b3) & b2,b3,b4 is_a_triangle & angle(b2,b4,b3) = angle(b1,b4,b3)
   holds b1 = b2;

:: EUCLID_6:th 26
theorem
for b1, b2, b3, b4 being Element of the carrier of TOP-REAL 2
      st b1 in LSeg(b2,b3) & not b4 in LSeg(b2,b3) & angle(b2,b4,b3) <= PI
   holds angle(b1,b4,b3) <= angle(b2,b4,b3);

:: EUCLID_6:th 27
theorem
for b1, b2, b3, b4 being Element of the carrier of TOP-REAL 2
      st b1 in LSeg(b2,b3) & not b4 in LSeg(b2,b3) & PI < angle(b2,b4,b3) & b1 <> b3
   holds angle(b2,b4,b3) <= angle(b1,b4,b3);

:: EUCLID_6:th 28
theorem
for b1, b2, b3, b4 being Element of the carrier of TOP-REAL 2
      st b1 in LSeg(b2,b3) & not b4 in LSeg(b2,b3)
   holds ex b5 being Element of the carrier of TOP-REAL 2 st
      b5 in LSeg(b2,b3) & angle(b2,b4,b5) = angle(b1,b4,b3);

:: EUCLID_6:th 29
theorem
for b1, b2 being Element of the carrier of TOP-REAL 2
for b3, b4, b5 being real set
      st b1 in inside_of_circle(b3,b4,b5) & b2 in outside_of_circle(b3,b4,b5)
   holds ex b6 being Element of the carrier of TOP-REAL 2 st
      b6 in (LSeg(b1,b2)) /\ circle(b3,b4,b5);

:: EUCLID_6:th 30
theorem
for b1, b2, b3, b4 being Element of the carrier of TOP-REAL 2
for b5, b6, b7 being real set
      st b1 in circle(b5,b6,b7) & b2 in circle(b5,b6,b7) & b3 in circle(b5,b6,b7) & b4 in LSeg(b1,b2) & b4 in LSeg(b1,b3) & b2 <> b3
   holds b4 = b1;

:: EUCLID_6:th 31
theorem
for b1, b2, b3, b4 being Element of the carrier of TOP-REAL 2
for b5, b6, b7 being real set
      st b1 in circle(b5,b6,b7) &
         b2 in circle(b5,b6,b7) &
         b3 in circle(b5,b6,b7) &
         b4 = |[b5,b6]| &
         b4 in LSeg(b3,b2) &
         b1 <> b3 &
         2 * angle(b1,b3,b2) <> angle(b1,b4,b2)
   holds 2 * ((angle(b1,b3,b2)) - PI) = angle(b1,b4,b2);

:: EUCLID_6:th 32
theorem
for b1 being Element of the carrier of TOP-REAL 2
for b2, b3, b4 being real set
      st b1 in circle(b2,b3,b4) & 0 < b4
   holds ex b5 being Element of the carrier of TOP-REAL 2 st
      b1 <> b5 & b5 in circle(b2,b3,b4) & |[b2,b3]| in LSeg(b1,b5);

:: EUCLID_6:th 33
theorem
for b1, b2, b3, b4 being Element of the carrier of TOP-REAL 2
for b5, b6, b7 being real set
      st b1 in circle(b5,b6,b7) &
         b2 in circle(b5,b6,b7) &
         b3 in circle(b5,b6,b7) &
         b4 = |[b5,b6]| &
         b1 <> b3 &
         b2 <> b3 &
         2 * angle(b1,b3,b2) <> angle(b1,b4,b2)
   holds 2 * ((angle(b1,b3,b2)) - PI) = angle(b1,b4,b2);

:: EUCLID_6:th 34
theorem
for b1, b2, b3, b4 being Element of the carrier of TOP-REAL 2
for b5, b6, b7 being real set
      st b1 in circle(b5,b6,b7) &
         b2 in circle(b5,b6,b7) &
         b3 in circle(b5,b6,b7) &
         b4 in circle(b5,b6,b7) &
         b1 <> b3 &
         b1 <> b4 &
         b2 <> b3 &
         b2 <> b4 &
         angle(b1,b3,b2) <> angle(b1,b4,b2) &
         angle(b1,b3,b2) <> (angle(b1,b4,b2)) - PI
   holds angle(b1,b3,b2) = (angle(b1,b4,b2)) + PI;

:: EUCLID_6:th 35
theorem
for b1, b2, b3 being Element of the carrier of TOP-REAL 2
for b4, b5, b6 being real set
      st b1 in circle(b4,b5,b6) & b2 in circle(b4,b5,b6) & b3 in circle(b4,b5,b6) & b1 <> b2 & b2 <> b3
   holds angle(b1,b2,b3) <> PI;

:: EUCLID_6:th 36
theorem
for b1, b2, b3, b4, b5 being Element of the carrier of TOP-REAL 2
for b6, b7, b8 being real set
      st b1 in circle(b6,b7,b8) & b2 in circle(b6,b7,b8) & b3 in circle(b6,b7,b8) & b4 in circle(b6,b7,b8) & b5 in LSeg(b1,b3) & b5 in LSeg(b2,b4) & b1,b2,b3,b4 are_mutually_different
   holds angle(b1,b4,b2) = angle(b1,b3,b2);

:: EUCLID_6:th 37
theorem
for b1, b2, b3 being Element of the carrier of TOP-REAL 2
for b4, b5, b6 being real set
      st b1 in circle(b4,b5,b6) & b2 in circle(b4,b5,b6) & b3 in circle(b4,b5,b6) & angle(b1,b2,b3) = 0 & b1 <> b2 & b2 <> b3
   holds b1 = b3;

:: EUCLID_6:th 38
theorem
for b1, b2, b3, b4, b5 being Element of the carrier of TOP-REAL 2
for b6, b7, b8 being real set
      st b1 in circle(b6,b7,b8) & b2 in circle(b6,b7,b8) & b3 in circle(b6,b7,b8) & b4 in circle(b6,b7,b8) & b5 in LSeg(b1,b3) & b5 in LSeg(b2,b4)
   holds |.b1 - b5.| * |.b5 - b3.| = |.b2 - b5.| * |.b5 - b4.|;

:: EUCLID_6:th 39
theorem
for b1, b2, b3 being Element of the carrier of TOP-REAL 2
for b4, b5, b6, b7 being real set
      st b4 = |.b1 - b2.| & b5 = |.b3 - b1.| & b6 = |.b2 - b3.| & b7 = (the_perimeter_of_polygon3(b2,b1,b3)) / 2
   holds abs the_area_of_polygon3(b2,b1,b3) = sqrt (((b7 * (b7 - b4)) * (b7 - b5)) * (b7 - b6));

:: EUCLID_6:th 40
theorem
for b1, b2, b3, b4, b5 being Element of the carrier of TOP-REAL 2
for b6, b7, b8 being real set
      st b1 in circle(b6,b7,b8) & b2 in circle(b6,b7,b8) & b3 in circle(b6,b7,b8) & b4 in circle(b6,b7,b8) & b5 in LSeg(b1,b3) & b5 in LSeg(b2,b4)
   holds |.b3 - b1.| * |.b4 - b2.| = (|.b2 - b1.| * |.b4 - b3.|) + (|.b3 - b2.| * |.b4 - b1.|);

:: EUCLID_6:th 41
theorem
for b1, b2 being Element of the carrier of TOP-REAL 2 holds
(b1 - b2) `1 = b1 `1 - (b2 `1) &
 (b1 - b2) `2 = b1 `2 - (b2 `2);

:: EUCLID_6:th 42
theorem
for b1, b2 being Element of the carrier of TOP-REAL 2 holds
   |.b1 - b2.| = 0
iff
   b1 = b2;

:: EUCLID_6:th 43
theorem
for b1, b2 being Element of the carrier of TOP-REAL 2 holds
|.b1 - b2.| = |.b2 - b1.|;

:: EUCLID_6:th 44
theorem
for b1, b2, b3, b4, b5, b6 being Element of the carrier of TOP-REAL 2 holds
angle(b1,b2,b3) <> (2 * angle(b4,b5,b6)) + (2 * PI);

:: EUCLID_6:th 45
theorem
for b1, b2, b3, b4, b5, b6 being Element of the carrier of TOP-REAL 2 holds
angle(b1,b2,b3) <> (2 * angle(b4,b5,b6)) + (4 * PI);

:: EUCLID_6:th 46
theorem
for b1, b2, b3, b4, b5, b6 being Element of the carrier of TOP-REAL 2 holds
angle(b1,b2,b3) <> (2 * angle(b4,b5,b6)) - (4 * PI);

:: EUCLID_6:th 47
theorem
for b1, b2, b3, b4, b5, b6 being Element of the carrier of TOP-REAL 2 holds
angle(b1,b2,b3) <> (2 * angle(b4,b5,b6)) - (6 * PI);

:: EUCLID_6:th 48
theorem
for b1, b2, b3 being Element of the carrier of TOP-REAL 2
for b4, b5 being Element of COMPLEX
      st b4 = euc2cpx (b1 - b2) & b5 = euc2cpx (b3 - b2)
   holds angle(b1,b2,b3) = angle(b4,b5);

:: EUCLID_6:th 49
theorem
for b1, b2, b3 being Element of COMPLEX
      st (angle(b1,b2)) + angle(b2,b3) <> angle(b1,b3)
   holds (angle(b1,b2)) + angle(b2,b3) = (angle(b1,b3)) + (2 * PI);

:: EUCLID_6:th 50
theorem
for b1, b2, b3 being Element of the carrier of TOP-REAL 2
for b4, b5 being Element of COMPLEX
      st b4 = euc2cpx (b1 - b2) & b5 = euc2cpx (b3 - b2)
   holds Re (b4 .|. b5) = ((b1 `1 - (b2 `1)) * (b3 `1 - (b2 `1))) + ((b1 `2 - (b2 `2)) * (b3 `2 - (b2 `2))) &
    Im (b4 .|. b5) = (- ((b1 `1 - (b2 `1)) * (b3 `2 - (b2 `2)))) + ((b1 `2 - (b2 `2)) * (b3 `1 - (b2 `1))) &
    |.b4.| = sqrt ((b1 `1 - (b2 `1)) ^2 + ((b1 `2 - (b2 `2)) ^2)) &
    |.b1 - b2.| = |.b4.|;

:: EUCLID_6:th 51
theorem
for b1 being Element of NAT
for b2 being Element of the carrier of TOP-REAL b1
for b3 being Function-like quasi_total Relation of the carrier of TOP-REAL b1,the carrier of R^1
      st for b4 being Element of the carrier of TOP-REAL b1 holds
           b3 . b4 = |.b4 - b2.|
   holds b3 is continuous(TOP-REAL b1, R^1);

:: EUCLID_6:th 52
theorem
for b1 being Element of NAT
for b2 being Element of the carrier of TOP-REAL b1 holds
   ex b3 being Function-like quasi_total Relation of the carrier of TOP-REAL b1,the carrier of R^1 st
      (for b4 being Element of the carrier of TOP-REAL b1 holds
          b3 . b4 = |.b4 - b2.|) &
       b3 is continuous(TOP-REAL b1, R^1);