Article GEOMTRAP, MML version 4.99.1005

:: GEOMTRAP:prednot 1 => GEOMTRAP:pred 1
definition
  let a1 be non empty right_complementable Abelian add-associative right_zeroed RealLinearSpace-like RLSStruct;
  let a2, a3, a4, a5 be Element of the carrier of a1;
  pred A2,A3 '||' A4,A5 means
    (not a2,a3 // a4,a5) implies a2,a3 // a5,a4;
end;

:: GEOMTRAP:dfs 1
definiens
  let a1 be non empty right_complementable Abelian add-associative right_zeroed RealLinearSpace-like RLSStruct;
  let a2, a3, a4, a5 be Element of the carrier of a1;
To prove
     a2,a3 '||' a4,a5
it is sufficient to prove
  thus (not a2,a3 // a4,a5) implies a2,a3 // a5,a4;

:: GEOMTRAP:def 1
theorem
for b1 being non empty right_complementable Abelian add-associative right_zeroed RealLinearSpace-like RLSStruct
for b2, b3, b4, b5 being Element of the carrier of b1 holds
   b2,b3 '||' b4,b5
iff
   (b2,b3 // b4,b5 or b2,b3 // b5,b4);

:: GEOMTRAP:th 1
theorem
for b1 being non empty right_complementable Abelian add-associative right_zeroed RealLinearSpace-like RLSStruct
for b2, b3 being Element of the carrier of b1
      st Gen b2,b3
   holds OASpace b1 is non empty non trivial OAffinSpace-like AffinStruct;

:: GEOMTRAP:th 2
theorem
for b1 being non empty right_complementable Abelian add-associative right_zeroed RealLinearSpace-like RLSStruct
for b2, b3, b4, b5 being Element of the carrier of b1
for b6, b7, b8, b9 being Element of the carrier of OASpace b1
      st b6 = b2 & b7 = b3 & b8 = b4 & b9 = b5
   holds    b6,b7 // b8,b9
   iff
      b2,b3 // b4,b5;

:: GEOMTRAP:th 3
theorem
for b1 being non empty right_complementable Abelian add-associative right_zeroed RealLinearSpace-like RLSStruct
for b2, b3, b4, b5, b6, b7 being Element of the carrier of b1
   st Gen b2,b3
for b8, b9, b10, b11 being Element of the carrier of Lambda OASpace b1
      st b8 = b4 & b9 = b5 & b10 = b6 & b11 = b7
   holds    b8,b9 // b10,b11
   iff
      b4,b5 '||' b6,b7;

:: GEOMTRAP:th 4
theorem
for b1 being non empty right_complementable Abelian add-associative right_zeroed RealLinearSpace-like RLSStruct
for b2, b3, b4, b5, b6, b7 being Element of the carrier of b1
for b8, b9, b10, b11 being Element of the carrier of AMSpace(b1,b2,b3)
      st b8 = b4 & b9 = b5 & b10 = b6 & b11 = b7
   holds    b8,b9 // b10,b11
   iff
      b4,b5 '||' b6,b7;

:: GEOMTRAP:funcnot 1 => GEOMTRAP:func 1
definition
  let a1 be non empty right_complementable Abelian add-associative right_zeroed RealLinearSpace-like RLSStruct;
  let a2, a3 be Element of the carrier of a1;
  func A2 # A3 -> Element of the carrier of a1 means
    it + it = a2 + a3;
  commutativity;
::  for a1 being non empty right_complementable Abelian add-associative right_zeroed RealLinearSpace-like RLSStruct
::  for a2, a3 being Element of the carrier of a1 holds
::  a2 # a3 = a3 # a2;
  idempotence;
::  for a1 being non empty right_complementable Abelian add-associative right_zeroed RealLinearSpace-like RLSStruct
::  for a2 being Element of the carrier of a1 holds
::     a2 # a2 = a2;
end;

:: GEOMTRAP:def 2
theorem
for b1 being non empty right_complementable Abelian add-associative right_zeroed RealLinearSpace-like RLSStruct
for b2, b3, b4 being Element of the carrier of b1 holds
   b4 = b2 # b3
iff
   b4 + b4 = b2 + b3;

:: GEOMTRAP:th 7
theorem
for b1 being non empty right_complementable Abelian add-associative right_zeroed RealLinearSpace-like RLSStruct
for b2, b3 being Element of the carrier of b1 holds
ex b4 being Element of the carrier of b1 st
   b2 # b4 = b3;

:: GEOMTRAP:th 8
theorem
for b1 being non empty right_complementable Abelian add-associative right_zeroed RealLinearSpace-like RLSStruct
for b2, b3, b4, b5 being Element of the carrier of b1 holds
(b2 # b3) # (b4 # b5) = (b2 # b4) # (b3 # b5);

:: GEOMTRAP:th 9
theorem
for b1 being non empty right_complementable Abelian add-associative right_zeroed RealLinearSpace-like RLSStruct
for b2, b3, b4 being Element of the carrier of b1
      st b2 # b3 = b2 # b4
   holds b3 = b4;

:: GEOMTRAP:th 10
theorem
for b1 being non empty right_complementable Abelian add-associative right_zeroed RealLinearSpace-like RLSStruct
for b2, b3, b4 being Element of the carrier of b1 holds
b2,b3 // b4 # b2,b4 # b3;

:: GEOMTRAP:th 11
theorem
for b1 being non empty right_complementable Abelian add-associative right_zeroed RealLinearSpace-like RLSStruct
for b2, b3, b4 being Element of the carrier of b1 holds
b2,b3 '||' b4 # b2,b4 # b3;

:: GEOMTRAP:th 12
theorem
for b1 being non empty right_complementable Abelian add-associative right_zeroed RealLinearSpace-like RLSStruct
for b2, b3 being Element of the carrier of b1 holds
2 * ((b2 # b3) - b2) = b3 - b2 &
 2 * (b3 - (b2 # b3)) = b3 - b2;

:: GEOMTRAP:th 13
theorem
for b1 being non empty right_complementable Abelian add-associative right_zeroed RealLinearSpace-like RLSStruct
for b2, b3 being Element of the carrier of b1 holds
b2,b2 # b3 // b2 # b3,b3;

:: GEOMTRAP:th 14
theorem
for b1 being non empty right_complementable Abelian add-associative right_zeroed RealLinearSpace-like RLSStruct
for b2, b3 being Element of the carrier of b1 holds
b2,b3 // b2,b2 # b3 & b2,b3 // b2 # b3,b3;

:: GEOMTRAP:th 15
theorem
for b1 being non empty right_complementable Abelian add-associative right_zeroed RealLinearSpace-like RLSStruct
for b2, b3, b4 being Element of the carrier of b1
      st b2,b3 // b3,b4
   holds b2 # b3,b3 // b3,b3 # b4;

:: GEOMTRAP:th 16
theorem
for b1 being non empty right_complementable Abelian add-associative right_zeroed RealLinearSpace-like RLSStruct
for b2, b3, b4, b5 being Element of the carrier of b1
      st b2,b3 // b4,b5
   holds b2,b3 // b2 # b4,b3 # b5;

:: GEOMTRAP:prednot 2 => GEOMTRAP:pred 2
definition
  let a1 be non empty right_complementable Abelian add-associative right_zeroed RealLinearSpace-like RLSStruct;
  let a2, a3, a4, a5, a6, a7 be Element of the carrier of a1;
  pred A4,A5,A6,A7 are_DTr_wrt A2,A3 means
    a4,a5 // a6,a7 & a4,a5,a4 # a5,a6 # a7 are_Ort_wrt a2,a3 & a6,a7,a4 # a5,a6 # a7 are_Ort_wrt a2,a3;
end;

:: GEOMTRAP:dfs 3
definiens
  let a1 be non empty right_complementable Abelian add-associative right_zeroed RealLinearSpace-like RLSStruct;
  let a2, a3, a4, a5, a6, a7 be Element of the carrier of a1;
To prove
     a4,a5,a6,a7 are_DTr_wrt a2,a3
it is sufficient to prove
  thus a4,a5 // a6,a7 & a4,a5,a4 # a5,a6 # a7 are_Ort_wrt a2,a3 & a6,a7,a4 # a5,a6 # a7 are_Ort_wrt a2,a3;

:: GEOMTRAP:def 3
theorem
for b1 being non empty right_complementable Abelian add-associative right_zeroed RealLinearSpace-like RLSStruct
for b2, b3, b4, b5, b6, b7 being Element of the carrier of b1 holds
   b4,b5,b6,b7 are_DTr_wrt b2,b3
iff
   b4,b5 // b6,b7 & b4,b5,b4 # b5,b6 # b7 are_Ort_wrt b2,b3 & b6,b7,b4 # b5,b6 # b7 are_Ort_wrt b2,b3;

:: GEOMTRAP:th 17
theorem
for b1 being non empty right_complementable Abelian add-associative right_zeroed RealLinearSpace-like RLSStruct
for b2, b3, b4, b5 being Element of the carrier of b1
      st Gen b2,b3
   holds b4,b4,b5,b5 are_DTr_wrt b2,b3;

:: GEOMTRAP:th 18
theorem
for b1 being non empty right_complementable Abelian add-associative right_zeroed RealLinearSpace-like RLSStruct
for b2, b3, b4, b5 being Element of the carrier of b1
      st Gen b2,b3
   holds b4,b5,b4,b5 are_DTr_wrt b2,b3;

:: GEOMTRAP:th 19
theorem
for b1 being non empty right_complementable Abelian add-associative right_zeroed RealLinearSpace-like RLSStruct
for b2, b3, b4, b5 being Element of the carrier of b1
      st b2,b3,b3,b2 are_DTr_wrt b4,b5
   holds b2 = b3;

:: GEOMTRAP:th 20
theorem
for b1 being non empty right_complementable Abelian add-associative right_zeroed RealLinearSpace-like RLSStruct
for b2, b3, b4, b5, b6 being Element of the carrier of b1
      st Gen b2,b3 & b4,b5,b5,b6 are_DTr_wrt b2,b3
   holds b4 = b5 & b5 = b6;

:: GEOMTRAP:th 21
theorem
for b1 being non empty right_complementable Abelian add-associative right_zeroed RealLinearSpace-like RLSStruct
for b2, b3, b4, b5, b6, b7, b8, b9 being Element of the carrier of b1
      st Gen b2,b3 & b4,b5,b6,b7 are_DTr_wrt b2,b3 & b4,b5,b8,b9 are_DTr_wrt b2,b3 & b4 <> b5
   holds b6,b7,b8,b9 are_DTr_wrt b2,b3;

:: GEOMTRAP:th 22
theorem
for b1 being non empty right_complementable Abelian add-associative right_zeroed RealLinearSpace-like RLSStruct
for b2, b3, b4, b5, b6 being Element of the carrier of b1
      st Gen b2,b3
   holds ex b7 being Element of the carrier of b1 st
      (b4,b5,b6,b7 are_DTr_wrt b2,b3 or b4,b5,b7,b6 are_DTr_wrt b2,b3);

:: GEOMTRAP:th 23
theorem
for b1 being non empty right_complementable Abelian add-associative right_zeroed RealLinearSpace-like RLSStruct
for b2, b3, b4, b5, b6, b7 being Element of the carrier of b1
      st Gen b2,b3 & b4,b5,b6,b7 are_DTr_wrt b2,b3
   holds b6,b7,b4,b5 are_DTr_wrt b2,b3;

:: GEOMTRAP:th 24
theorem
for b1 being non empty right_complementable Abelian add-associative right_zeroed RealLinearSpace-like RLSStruct
for b2, b3, b4, b5, b6, b7 being Element of the carrier of b1
      st Gen b2,b3 & b4,b5,b6,b7 are_DTr_wrt b2,b3
   holds b5,b4,b7,b6 are_DTr_wrt b2,b3;

:: GEOMTRAP:th 25
theorem
for b1 being non empty right_complementable Abelian add-associative right_zeroed RealLinearSpace-like RLSStruct
for b2, b3, b4, b5, b6 being Element of the carrier of b1
      st Gen b2,b3 & b4,b5,b4,b6 are_DTr_wrt b2,b3
   holds b5 = b6;

:: GEOMTRAP:th 26
theorem
for b1 being non empty right_complementable Abelian add-associative right_zeroed RealLinearSpace-like RLSStruct
for b2, b3, b4, b5, b6, b7, b8 being Element of the carrier of b1
      st Gen b2,b3 & b4,b5,b6,b7 are_DTr_wrt b2,b3 & b4,b5,b6,b8 are_DTr_wrt b2,b3 & b4 <> b5
   holds b7 = b8;

:: GEOMTRAP:th 27
theorem
for b1 being non empty right_complementable Abelian add-associative right_zeroed RealLinearSpace-like RLSStruct
for b2, b3, b4, b5, b6, b7, b8 being Element of the carrier of b1
      st Gen b2,b3 & b4 <> b5 & b4,b5,b6,b7 are_DTr_wrt b2,b3 & (b4,b5,b6,b8 are_DTr_wrt b2,b3 or b4,b5,b8,b6 are_DTr_wrt b2,b3)
   holds b7 = b8;

:: GEOMTRAP:th 28
theorem
for b1 being non empty right_complementable Abelian add-associative right_zeroed RealLinearSpace-like RLSStruct
for b2, b3, b4, b5, b6, b7 being Element of the carrier of b1
      st Gen b2,b3 & b4,b5,b6,b7 are_DTr_wrt b2,b3
   holds b4,b5,b4 # b6,b5 # b7 are_DTr_wrt b2,b3;

:: GEOMTRAP:th 29
theorem
for b1 being non empty right_complementable Abelian add-associative right_zeroed RealLinearSpace-like RLSStruct
for b2, b3, b4, b5, b6, b7 being Element of the carrier of b1
      st Gen b2,b3 & b4,b5,b6,b7 are_DTr_wrt b2,b3 & not b4,b5,b4 # b7,b5 # b6 are_DTr_wrt b2,b3
   holds b4,b5,b5 # b6,b4 # b7 are_DTr_wrt b2,b3;

:: GEOMTRAP:th 30
theorem
for b1 being non empty right_complementable Abelian add-associative right_zeroed RealLinearSpace-like RLSStruct
for b2, b3, b4, b5, b6, b7, b8, b9, b10, b11, b12 being Element of the carrier of b1
      st Gen b2,b3 & b4 = b5 # b9 & b4 = b6 # b10 & b4 = b7 # b11 & b4 = b8 # b12 & b5,b6,b7,b8 are_DTr_wrt b2,b3
   holds b9,b10,b11,b12 are_DTr_wrt b2,b3;

:: GEOMTRAP:funcnot 2 => GEOMTRAP:func 2
definition
  let a1 be non empty right_complementable Abelian add-associative right_zeroed RealLinearSpace-like RLSStruct;
  let a2, a3, a4 be Element of the carrier of a1;
  assume Gen a2,a3;
  func pr1(A2,A3,A4) -> Element of REAL means
    ex b1 being Element of REAL st
       a4 = (it * a2) + (b1 * a3);
end;

:: GEOMTRAP:def 4
theorem
for b1 being non empty right_complementable Abelian add-associative right_zeroed RealLinearSpace-like RLSStruct
for b2, b3, b4 being Element of the carrier of b1
   st Gen b2,b3
for b5 being Element of REAL holds
      b5 = pr1(b2,b3,b4)
   iff
      ex b6 being Element of REAL st
         b4 = (b5 * b2) + (b6 * b3);

:: GEOMTRAP:funcnot 3 => GEOMTRAP:func 3
definition
  let a1 be non empty right_complementable Abelian add-associative right_zeroed RealLinearSpace-like RLSStruct;
  let a2, a3, a4 be Element of the carrier of a1;
  assume Gen a2,a3;
  func pr2(A2,A3,A4) -> Element of REAL means
    ex b1 being Element of REAL st
       a4 = (b1 * a2) + (it * a3);
end;

:: GEOMTRAP:def 5
theorem
for b1 being non empty right_complementable Abelian add-associative right_zeroed RealLinearSpace-like RLSStruct
for b2, b3, b4 being Element of the carrier of b1
   st Gen b2,b3
for b5 being Element of REAL holds
      b5 = pr2(b2,b3,b4)
   iff
      ex b6 being Element of REAL st
         b4 = (b6 * b2) + (b5 * b3);

:: GEOMTRAP:funcnot 4 => GEOMTRAP:func 4
definition
  let a1 be non empty right_complementable Abelian add-associative right_zeroed RealLinearSpace-like RLSStruct;
  let a2, a3, a4, a5 be Element of the carrier of a1;
  func PProJ(A2,A3,A4,A5) -> Element of REAL equals
    ((pr1(a2,a3,a4)) * pr1(a2,a3,a5)) + ((pr2(a2,a3,a4)) * pr2(a2,a3,a5));
end;

:: GEOMTRAP:def 6
theorem
for b1 being non empty right_complementable Abelian add-associative right_zeroed RealLinearSpace-like RLSStruct
for b2, b3, b4, b5 being Element of the carrier of b1 holds
PProJ(b2,b3,b4,b5) = ((pr1(b2,b3,b4)) * pr1(b2,b3,b5)) + ((pr2(b2,b3,b4)) * pr2(b2,b3,b5));

:: GEOMTRAP:th 31
theorem
for b1 being non empty right_complementable Abelian add-associative right_zeroed RealLinearSpace-like RLSStruct
for b2, b3, b4, b5 being Element of the carrier of b1 holds
PProJ(b2,b3,b4,b5) = PProJ(b2,b3,b5,b4);

:: GEOMTRAP:th 32
theorem
for b1 being non empty right_complementable Abelian add-associative right_zeroed RealLinearSpace-like RLSStruct
for b2, b3 being Element of the carrier of b1
   st Gen b2,b3
for b4, b5, b6 being Element of the carrier of b1 holds
PProJ(b2,b3,b4,b5 + b6) = (PProJ(b2,b3,b4,b5)) + PProJ(b2,b3,b4,b6) &
 PProJ(b2,b3,b4,b5 - b6) = (PProJ(b2,b3,b4,b5)) - PProJ(b2,b3,b4,b6) &
 PProJ(b2,b3,b5 - b6,b4) = (PProJ(b2,b3,b5,b4)) - PProJ(b2,b3,b6,b4) &
 PProJ(b2,b3,b5 + b6,b4) = (PProJ(b2,b3,b5,b4)) + PProJ(b2,b3,b6,b4);

:: GEOMTRAP:th 33
theorem
for b1 being non empty right_complementable Abelian add-associative right_zeroed RealLinearSpace-like RLSStruct
for b2, b3 being Element of the carrier of b1
   st Gen b2,b3
for b4, b5 being Element of the carrier of b1
for b6 being Element of REAL holds
   PProJ(b2,b3,b6 * b4,b5) = b6 * PProJ(b2,b3,b4,b5) &
    PProJ(b2,b3,b4,b6 * b5) = b6 * PProJ(b2,b3,b4,b5) &
    PProJ(b2,b3,b6 * b4,b5) = (PProJ(b2,b3,b4,b5)) * b6 &
    PProJ(b2,b3,b4,b6 * b5) = (PProJ(b2,b3,b4,b5)) * b6;

:: GEOMTRAP:th 34
theorem
for b1 being non empty right_complementable Abelian add-associative right_zeroed RealLinearSpace-like RLSStruct
for b2, b3 being Element of the carrier of b1
   st Gen b2,b3
for b4, b5 being Element of the carrier of b1 holds
   b4,b5 are_Ort_wrt b2,b3
iff
   PProJ(b2,b3,b4,b5) = 0;

:: GEOMTRAP:th 35
theorem
for b1 being non empty right_complementable Abelian add-associative right_zeroed RealLinearSpace-like RLSStruct
for b2, b3 being Element of the carrier of b1
   st Gen b2,b3
for b4, b5, b6, b7 being Element of the carrier of b1 holds
   b4,b5,b6,b7 are_Ort_wrt b2,b3
iff
   PProJ(b2,b3,b5 - b4,b7 - b6) = 0;

:: GEOMTRAP:th 36
theorem
for b1 being non empty right_complementable Abelian add-associative right_zeroed RealLinearSpace-like RLSStruct
for b2, b3 being Element of the carrier of b1
   st Gen b2,b3
for b4, b5, b6 being Element of the carrier of b1 holds
2 * PProJ(b2,b3,b4,b5 # b6) = (PProJ(b2,b3,b4,b5)) + PProJ(b2,b3,b4,b6);

:: GEOMTRAP:th 37
theorem
for b1 being non empty right_complementable Abelian add-associative right_zeroed RealLinearSpace-like RLSStruct
for b2, b3 being Element of the carrier of b1
   st Gen b2,b3
for b4, b5 being Element of the carrier of b1
      st b4 <> b5
   holds PProJ(b2,b3,b4 - b5,b4 - b5) <> 0;

:: GEOMTRAP:th 38
theorem
for b1 being non empty right_complementable Abelian add-associative right_zeroed RealLinearSpace-like RLSStruct
for b2, b3 being Element of the carrier of b1
   st Gen b2,b3
for b4, b5, b6, b7, b8 being Element of the carrier of b1
for b9 being Element of REAL
      st b4,b5,b6,b7 are_DTr_wrt b2,b3 &
         b4 <> b5 &
         b9 = ((PProJ(b2,b3,b4 - b5,b4 + b5)) - (2 * PProJ(b2,b3,b4 - b5,b6))) * ((PProJ(b2,b3,b4 - b5,b4 - b5)) ") &
         b8 = b6 + (b9 * (b4 - b5))
   holds b7 = b8;

:: GEOMTRAP:th 39
theorem
for b1 being non empty right_complementable Abelian add-associative right_zeroed RealLinearSpace-like RLSStruct
for b2, b3 being Element of the carrier of b1
   st Gen b2,b3
for b4, b5, b6, b7, b8, b9, b10, b11, b12, b13 being Element of the carrier of b1
      st b4 <> b5 & b4,b5,b6,b10 are_DTr_wrt b2,b3 & b4,b5,b7,b11 are_DTr_wrt b2,b3 & b4,b5,b8,b12 are_DTr_wrt b2,b3 & b4,b5,b9,b13 are_DTr_wrt b2,b3 & b6,b7 // b8,b9
   holds b10,b11 // b12,b13;

:: GEOMTRAP:th 40
theorem
for b1 being non empty right_complementable Abelian add-associative right_zeroed RealLinearSpace-like RLSStruct
for b2, b3 being Element of the carrier of b1
   st Gen b2,b3
for b4, b5, b6, b7, b8, b9, b10, b11 being Element of the carrier of b1
      st b4 <> b5 & b4,b5,b6,b9 are_DTr_wrt b2,b3 & b4,b5,b7,b10 are_DTr_wrt b2,b3 & b4,b5,b8,b11 are_DTr_wrt b2,b3 & b8 = b6 # b7
   holds b11 = b9 # b10;

:: GEOMTRAP:th 41
theorem
for b1 being non empty right_complementable Abelian add-associative right_zeroed RealLinearSpace-like RLSStruct
for b2, b3 being Element of the carrier of b1
   st Gen b2,b3
for b4, b5, b6, b7, b8, b9 being Element of the carrier of b1
      st b4 <> b5 & b4,b5,b6,b8 are_DTr_wrt b2,b3 & b4,b5,b7,b9 are_DTr_wrt b2,b3
   holds b4,b5,b6 # b7,b8 # b9 are_DTr_wrt b2,b3;

:: GEOMTRAP:th 42
theorem
for b1 being non empty right_complementable Abelian add-associative right_zeroed RealLinearSpace-like RLSStruct
for b2, b3 being Element of the carrier of b1
   st Gen b2,b3
for b4, b5, b6, b7, b8, b9, b10, b11, b12, b13 being Element of the carrier of b1
      st b4 <> b5 & b4,b5,b6,b10 are_DTr_wrt b2,b3 & b4,b5,b7,b11 are_DTr_wrt b2,b3 & b4,b5,b8,b12 are_DTr_wrt b2,b3 & b4,b5,b9,b13 are_DTr_wrt b2,b3 & b6,b7,b8,b9 are_Ort_wrt b2,b3
   holds b10,b11,b12,b13 are_Ort_wrt b2,b3;

:: GEOMTRAP:th 43
theorem
for b1 being non empty right_complementable Abelian add-associative right_zeroed RealLinearSpace-like RLSStruct
for b2, b3, b4, b5, b6, b7, b8, b9, b10, b11, b12, b13 being Element of the carrier of b1
      st Gen b2,b3 & b4 <> b5 & b4,b5,b6,b10 are_DTr_wrt b2,b3 & b4,b5,b7,b11 are_DTr_wrt b2,b3 & b4,b5,b8,b12 are_DTr_wrt b2,b3 & b4,b5,b9,b13 are_DTr_wrt b2,b3 & b6,b7,b8,b9 are_DTr_wrt b2,b3
   holds b10,b11,b12,b13 are_DTr_wrt b2,b3;

:: GEOMTRAP:funcnot 5 => GEOMTRAP:func 5
definition
  let a1 be non empty right_complementable Abelian add-associative right_zeroed RealLinearSpace-like RLSStruct;
  let a2, a3 be Element of the carrier of a1;
  func DTrapezium(A1,A2,A3) -> Relation of [:the carrier of a1,the carrier of a1:],[:the carrier of a1,the carrier of a1:] means
    for b1, b2 being set holds
       [b1,b2] in it
    iff
       ex b3, b4, b5, b6 being Element of the carrier of a1 st
          b1 = [b3,b4] & b2 = [b5,b6] & b3,b4,b5,b6 are_DTr_wrt a2,a3;
end;

:: GEOMTRAP:def 7
theorem
for b1 being non empty right_complementable Abelian add-associative right_zeroed RealLinearSpace-like RLSStruct
for b2, b3 being Element of the carrier of b1
for b4 being Relation of [:the carrier of b1,the carrier of b1:],[:the carrier of b1,the carrier of b1:] holds
      b4 = DTrapezium(b1,b2,b3)
   iff
      for b5, b6 being set holds
         [b5,b6] in b4
      iff
         ex b7, b8, b9, b10 being Element of the carrier of b1 st
            b5 = [b7,b8] & b6 = [b9,b10] & b7,b8,b9,b10 are_DTr_wrt b2,b3;

:: GEOMTRAP:th 44
theorem
for b1 being non empty right_complementable Abelian add-associative right_zeroed RealLinearSpace-like RLSStruct
for b2, b3, b4, b5, b6, b7 being Element of the carrier of b1 holds
   [[b2,b3],[b4,b5]] in DTrapezium(b1,b6,b7)
iff
   b2,b3,b4,b5 are_DTr_wrt b6,b7;

:: GEOMTRAP:funcnot 6 => GEOMTRAP:func 6
definition
  let a1 be non empty right_complementable Abelian add-associative right_zeroed RealLinearSpace-like RLSStruct;
  func MidPoint A1 -> Function-like quasi_total Relation of [:the carrier of a1,the carrier of a1:],the carrier of a1 means
    for b1, b2 being Element of the carrier of a1 holds
    it .(b1,b2) = b1 # b2;
end;

:: GEOMTRAP:def 8
theorem
for b1 being non empty right_complementable Abelian add-associative right_zeroed RealLinearSpace-like RLSStruct
for b2 being Function-like quasi_total Relation of [:the carrier of b1,the carrier of b1:],the carrier of b1 holds
      b2 = MidPoint b1
   iff
      for b3, b4 being Element of the carrier of b1 holds
      b2 .(b3,b4) = b3 # b4;

:: GEOMTRAP:structnot 1 => GEOMTRAP:struct 1
definition
  struct(AffinStructMidStr) AfMidStruct(#
    carrier -> set,
    MIDPOINT -> Function-like quasi_total Relation of [:the carrier of it,the carrier of it:],the carrier of it,
    CONGR -> Relation of [:the carrier of it,the carrier of it:],[:the carrier of it,the carrier of it:]
  #);
end;

:: GEOMTRAP:attrnot 1 => GEOMTRAP:attr 1
definition
  let a1 be AfMidStruct;
  attr a1 is strict;
end;

:: GEOMTRAP:exreg 1
registration
  cluster strict AfMidStruct;
end;

:: GEOMTRAP:aggrnot 1 => GEOMTRAP:aggr 1
definition
  let a1 be set;
  let a2 be Function-like quasi_total Relation of [:a1,a1:],a1;
  let a3 be Relation of [:a1,a1:],[:a1,a1:];
  aggr AfMidStruct(#a1,a2,a3#) -> strict AfMidStruct;
end;

:: GEOMTRAP:exreg 2
registration
  cluster non empty strict AfMidStruct;
end;

:: GEOMTRAP:funcnot 7 => GEOMTRAP:func 7
definition
  let a1 be non empty right_complementable Abelian add-associative right_zeroed RealLinearSpace-like RLSStruct;
  let a2, a3 be Element of the carrier of a1;
  func DTrSpace(A1,A2,A3) -> strict AfMidStruct equals
    AfMidStruct(#the carrier of a1,MidPoint a1,DTrapezium(a1,a2,a3)#);
end;

:: GEOMTRAP:def 9
theorem
for b1 being non empty right_complementable Abelian add-associative right_zeroed RealLinearSpace-like RLSStruct
for b2, b3 being Element of the carrier of b1 holds
DTrSpace(b1,b2,b3) = AfMidStruct(#the carrier of b1,MidPoint b1,DTrapezium(b1,b2,b3)#);

:: GEOMTRAP:funcreg 1
registration
  let a1 be non empty right_complementable Abelian add-associative right_zeroed RealLinearSpace-like RLSStruct;
  let a2, a3 be Element of the carrier of a1;
  cluster DTrSpace(a1,a2,a3) -> non empty strict;
end;

:: GEOMTRAP:funcnot 8 => GEOMTRAP:func 8
definition
  let a1 be AfMidStruct;
  func Af A1 -> strict AffinStruct equals
    AffinStruct(#the carrier of a1,the CONGR of a1#);
end;

:: GEOMTRAP:def 10
theorem
for b1 being AfMidStruct holds
   Af b1 = AffinStruct(#the carrier of b1,the CONGR of b1#);

:: GEOMTRAP:funcreg 2
registration
  let a1 be non empty AfMidStruct;
  cluster Af a1 -> non empty strict;
end;

:: GEOMTRAP:funcnot 9 => GEOMTRAP:func 9
definition
  let a1 be non empty AfMidStruct;
  let a2, a3 be Element of the carrier of a1;
  func A2 # A3 -> Element of the carrier of a1 equals
    (the MIDPOINT of a1) .(a2,a3);
end;

:: GEOMTRAP:def 12
theorem
for b1 being non empty AfMidStruct
for b2, b3 being Element of the carrier of b1 holds
b2 # b3 = (the MIDPOINT of b1) .(b2,b3);

:: GEOMTRAP:th 46
theorem
for b1 being non empty right_complementable Abelian add-associative right_zeroed RealLinearSpace-like RLSStruct
for b2, b3 being Element of the carrier of b1
for b4 being set holds
      b4 is Element of the carrier of DTrSpace(b1,b2,b3)
   iff
      b4 is Element of the carrier of b1;

:: GEOMTRAP:th 47
theorem
for b1 being non empty right_complementable Abelian add-associative right_zeroed RealLinearSpace-like RLSStruct
for b2, b3, b4, b5, b6, b7 being Element of the carrier of b1
for b8, b9, b10, b11 being Element of the carrier of DTrSpace(b1,b2,b3)
      st Gen b2,b3 & b4 = b8 & b5 = b9 & b6 = b10 & b7 = b11
   holds    b8,b9 // b10,b11
   iff
      b4,b5,b6,b7 are_DTr_wrt b2,b3;

:: GEOMTRAP:th 48
theorem
for b1 being non empty right_complementable Abelian add-associative right_zeroed RealLinearSpace-like RLSStruct
for b2, b3, b4, b5 being Element of the carrier of b1
for b6, b7 being Element of the carrier of DTrSpace(b1,b2,b3)
      st Gen b2,b3 & b4 = b6 & b5 = b7
   holds b4 # b5 = b6 # b7;

:: GEOMTRAP:attrnot 2 => GEOMTRAP:attr 2
definition
  let a1 be non empty AfMidStruct;
  attr a1 is MidOrdTrapSpace-like means
    for b1, b2, b3, b4, b5, b6, b7, b8, b9, b10 being Element of the carrier of a1 holds
    b1 # b2 = b2 # b1 &
     b1 # b1 = b1 &
     (b1 # b2) # (b3 # b4) = (b1 # b3) # (b2 # b4) &
     (ex b11 being Element of the carrier of a1 st
        b11 # b1 = b2) &
     (b1 # b2 = b1 # b3 implies b2 = b3) &
     (b1,b2 // b3,b4 implies b1,b2 // b1 # b3,b2 # b4) &
     (b1,b2 // b3,b4 & not b1,b2 // b1 # b4,b2 # b3 implies b1,b2 // b2 # b3,b1 # b4) &
     (b1,b2 // b3,b4 & b1 # b5 = b9 & b2 # b6 = b9 & b3 # b7 = b9 & b4 # b8 = b9 implies b5,b6 // b7,b8) &
     (b9 <> b10 & b9,b10 // b1,b5 & b9,b10 // b2,b6 & b9,b10 // b3,b7 & b9,b10 // b4,b8 & b1,b2 // b3,b4 implies b5,b6 // b7,b8) &
     (b1,b2 // b2,b3 implies b1 = b2 & b2 = b3) &
     (b1,b2 // b5,b6 & b1,b2 // b7,b8 & b1 <> b2 implies b5,b6 // b7,b8) &
     (b1,b2 // b3,b4 implies b3,b4 // b1,b2 & b2,b1 // b4,b3) &
     (ex b11 being Element of the carrier of a1 st
        (b1,b2 // b3,b11 or b1,b2 // b11,b3)) &
     (b1,b2 // b3,b9 & b1,b2 // b3,b10 & b1 <> b2 implies b9 = b10);
end;

:: GEOMTRAP:dfs 12
definiens
  let a1 be non empty AfMidStruct;
To prove
     a1 is MidOrdTrapSpace-like
it is sufficient to prove
  thus for b1, b2, b3, b4, b5, b6, b7, b8, b9, b10 being Element of the carrier of a1 holds
    b1 # b2 = b2 # b1 &
     b1 # b1 = b1 &
     (b1 # b2) # (b3 # b4) = (b1 # b3) # (b2 # b4) &
     (ex b11 being Element of the carrier of a1 st
        b11 # b1 = b2) &
     (b1 # b2 = b1 # b3 implies b2 = b3) &
     (b1,b2 // b3,b4 implies b1,b2 // b1 # b3,b2 # b4) &
     (b1,b2 // b3,b4 & not b1,b2 // b1 # b4,b2 # b3 implies b1,b2 // b2 # b3,b1 # b4) &
     (b1,b2 // b3,b4 & b1 # b5 = b9 & b2 # b6 = b9 & b3 # b7 = b9 & b4 # b8 = b9 implies b5,b6 // b7,b8) &
     (b9 <> b10 & b9,b10 // b1,b5 & b9,b10 // b2,b6 & b9,b10 // b3,b7 & b9,b10 // b4,b8 & b1,b2 // b3,b4 implies b5,b6 // b7,b8) &
     (b1,b2 // b2,b3 implies b1 = b2 & b2 = b3) &
     (b1,b2 // b5,b6 & b1,b2 // b7,b8 & b1 <> b2 implies b5,b6 // b7,b8) &
     (b1,b2 // b3,b4 implies b3,b4 // b1,b2 & b2,b1 // b4,b3) &
     (ex b11 being Element of the carrier of a1 st
        (b1,b2 // b3,b11 or b1,b2 // b11,b3)) &
     (b1,b2 // b3,b9 & b1,b2 // b3,b10 & b1 <> b2 implies b9 = b10);

:: GEOMTRAP:def 13
theorem
for b1 being non empty AfMidStruct holds
      b1 is MidOrdTrapSpace-like
   iff
      for b2, b3, b4, b5, b6, b7, b8, b9, b10, b11 being Element of the carrier of b1 holds
      b2 # b3 = b3 # b2 &
       b2 # b2 = b2 &
       (b2 # b3) # (b4 # b5) = (b2 # b4) # (b3 # b5) &
       (ex b12 being Element of the carrier of b1 st
          b12 # b2 = b3) &
       (b2 # b3 = b2 # b4 implies b3 = b4) &
       (b2,b3 // b4,b5 implies b2,b3 // b2 # b4,b3 # b5) &
       (b2,b3 // b4,b5 & not b2,b3 // b2 # b5,b3 # b4 implies b2,b3 // b3 # b4,b2 # b5) &
       (b2,b3 // b4,b5 & b2 # b6 = b10 & b3 # b7 = b10 & b4 # b8 = b10 & b5 # b9 = b10 implies b6,b7 // b8,b9) &
       (b10 <> b11 & b10,b11 // b2,b6 & b10,b11 // b3,b7 & b10,b11 // b4,b8 & b10,b11 // b5,b9 & b2,b3 // b4,b5 implies b6,b7 // b8,b9) &
       (b2,b3 // b3,b4 implies b2 = b3 & b3 = b4) &
       (b2,b3 // b6,b7 & b2,b3 // b8,b9 & b2 <> b3 implies b6,b7 // b8,b9) &
       (b2,b3 // b4,b5 implies b4,b5 // b2,b3 & b3,b2 // b5,b4) &
       (ex b12 being Element of the carrier of b1 st
          (b2,b3 // b4,b12 or b2,b3 // b12,b4)) &
       (b2,b3 // b4,b10 & b2,b3 // b4,b11 & b2 <> b3 implies b10 = b11);

:: GEOMTRAP:exreg 3
registration
  cluster non empty strict MidOrdTrapSpace-like AfMidStruct;
end;

:: GEOMTRAP:modenot 1
definition
  mode MidOrdTrapSpace is non empty MidOrdTrapSpace-like AfMidStruct;
end;

:: GEOMTRAP:th 49
theorem
for b1 being non empty right_complementable Abelian add-associative right_zeroed RealLinearSpace-like RLSStruct
for b2, b3 being Element of the carrier of b1
      st Gen b2,b3
   holds DTrSpace(b1,b2,b3) is non empty MidOrdTrapSpace-like AfMidStruct;

:: GEOMTRAP:attrnot 3 => GEOMTRAP:attr 3
definition
  let a1 be non empty AffinStruct;
  attr a1 is OrdTrapSpace-like means
    for b1, b2, b3, b4, b5, b6, b7, b8, b9, b10 being Element of the carrier of a1 holds
    (b1,b2 // b2,b3 implies b1 = b2 & b2 = b3) &
     (b1,b2 // b5,b6 & b1,b2 // b7,b8 & b1 <> b2 implies b5,b6 // b7,b8) &
     (b1,b2 // b3,b4 implies b3,b4 // b1,b2 & b2,b1 // b4,b3) &
     (ex b11 being Element of the carrier of a1 st
        (b1,b2 // b3,b11 or b1,b2 // b11,b3)) &
     (b1,b2 // b3,b9 & b1,b2 // b3,b10 & b1 <> b2 implies b9 = b10);
end;

:: GEOMTRAP:dfs 13
definiens
  let a1 be non empty AffinStruct;
To prove
     a1 is OrdTrapSpace-like
it is sufficient to prove
  thus for b1, b2, b3, b4, b5, b6, b7, b8, b9, b10 being Element of the carrier of a1 holds
    (b1,b2 // b2,b3 implies b1 = b2 & b2 = b3) &
     (b1,b2 // b5,b6 & b1,b2 // b7,b8 & b1 <> b2 implies b5,b6 // b7,b8) &
     (b1,b2 // b3,b4 implies b3,b4 // b1,b2 & b2,b1 // b4,b3) &
     (ex b11 being Element of the carrier of a1 st
        (b1,b2 // b3,b11 or b1,b2 // b11,b3)) &
     (b1,b2 // b3,b9 & b1,b2 // b3,b10 & b1 <> b2 implies b9 = b10);

:: GEOMTRAP:def 14
theorem
for b1 being non empty AffinStruct holds
      b1 is OrdTrapSpace-like
   iff
      for b2, b3, b4, b5, b6, b7, b8, b9, b10, b11 being Element of the carrier of b1 holds
      (b2,b3 // b3,b4 implies b2 = b3 & b3 = b4) &
       (b2,b3 // b6,b7 & b2,b3 // b8,b9 & b2 <> b3 implies b6,b7 // b8,b9) &
       (b2,b3 // b4,b5 implies b4,b5 // b2,b3 & b3,b2 // b5,b4) &
       (ex b12 being Element of the carrier of b1 st
          (b2,b3 // b4,b12 or b2,b3 // b12,b4)) &
       (b2,b3 // b4,b10 & b2,b3 // b4,b11 & b2 <> b3 implies b10 = b11);

:: GEOMTRAP:exreg 4
registration
  cluster non empty strict OrdTrapSpace-like AffinStruct;
end;

:: GEOMTRAP:modenot 2
definition
  mode OrdTrapSpace is non empty OrdTrapSpace-like AffinStruct;
end;

:: GEOMTRAP:funcreg 3
registration
  let a1 be non empty MidOrdTrapSpace-like AfMidStruct;
  cluster Af a1 -> strict OrdTrapSpace-like;
end;

:: GEOMTRAP:th 50
theorem
for b1 being non empty OrdTrapSpace-like AffinStruct
for b2 being set holds
      b2 is Element of the carrier of b1
   iff
      b2 is Element of the carrier of Lambda b1;

:: GEOMTRAP:th 51
theorem
for b1 being non empty OrdTrapSpace-like AffinStruct
for b2, b3, b4, b5 being Element of the carrier of b1
for b6, b7, b8, b9 being Element of the carrier of Lambda b1
      st b2 = b6 & b3 = b7 & b4 = b8 & b5 = b9
   holds    b6,b7 // b8,b9
   iff
      (b2,b3 // b4,b5 or b2,b3 // b5,b4);

:: GEOMTRAP:attrnot 4 => GEOMTRAP:attr 4
definition
  let a1 be non empty AffinStruct;
  attr a1 is TrapSpace-like means
    for b1, b2, b3, b4, b5, b6 being Element of the carrier of a1 holds
    b1,b2 // b2,b1 &
     (b1,b2 // b3,b4 & b1,b2 // b3,b6 & b1 <> b2 implies b4 = b6) &
     (b5 <> b6 & b5,b6 // b1,b2 & b5,b6 // b3,b4 implies b1,b2 // b3,b4) &
     (b1,b2 // b3,b4 implies b3,b4 // b1,b2) &
     (ex b7 being Element of the carrier of a1 st
        b1,b2 // b3,b7);
end;

:: GEOMTRAP:dfs 14
definiens
  let a1 be non empty AffinStruct;
To prove
     a1 is TrapSpace-like
it is sufficient to prove
  thus for b1, b2, b3, b4, b5, b6 being Element of the carrier of a1 holds
    b1,b2 // b2,b1 &
     (b1,b2 // b3,b4 & b1,b2 // b3,b6 & b1 <> b2 implies b4 = b6) &
     (b5 <> b6 & b5,b6 // b1,b2 & b5,b6 // b3,b4 implies b1,b2 // b3,b4) &
     (b1,b2 // b3,b4 implies b3,b4 // b1,b2) &
     (ex b7 being Element of the carrier of a1 st
        b1,b2 // b3,b7);

:: GEOMTRAP:def 15
theorem
for b1 being non empty AffinStruct holds
      b1 is TrapSpace-like
   iff
      for b2, b3, b4, b5, b6, b7 being Element of the carrier of b1 holds
      b2,b3 // b3,b2 &
       (b2,b3 // b4,b5 & b2,b3 // b4,b7 & b2 <> b3 implies b5 = b7) &
       (b6 <> b7 & b6,b7 // b2,b3 & b6,b7 // b4,b5 implies b2,b3 // b4,b5) &
       (b2,b3 // b4,b5 implies b4,b5 // b2,b3) &
       (ex b8 being Element of the carrier of b1 st
          b2,b3 // b4,b8);

:: GEOMTRAP:exreg 5
registration
  cluster non empty strict TrapSpace-like AffinStruct;
end;

:: GEOMTRAP:modenot 3
definition
  mode TrapSpace is non empty TrapSpace-like AffinStruct;
end;

:: GEOMTRAP:funcreg 4
registration
  let a1 be non empty OrdTrapSpace-like AffinStruct;
  cluster Lambda a1 -> strict TrapSpace-like;
end;

:: GEOMTRAP:attrnot 5 => GEOMTRAP:attr 5
definition
  let a1 be non empty AffinStruct;
  attr a1 is Regular means
    for b1, b2, b3, b4, b5, b6, b7, b8, b9, b10 being Element of the carrier of a1
          st b1 <> b2 & b1,b2 // b3,b4 & b1,b2 // b5,b6 & b1,b2 // b7,b8 & b1,b2 // b9,b10 & b3,b5 // b7,b9
       holds b4,b6 // b8,b10;
end;

:: GEOMTRAP:dfs 15
definiens
  let a1 be non empty AffinStruct;
To prove
     a1 is Regular
it is sufficient to prove
  thus for b1, b2, b3, b4, b5, b6, b7, b8, b9, b10 being Element of the carrier of a1
          st b1 <> b2 & b1,b2 // b3,b4 & b1,b2 // b5,b6 & b1,b2 // b7,b8 & b1,b2 // b9,b10 & b3,b5 // b7,b9
       holds b4,b6 // b8,b10;

:: GEOMTRAP:def 16
theorem
for b1 being non empty AffinStruct holds
      b1 is Regular
   iff
      for b2, b3, b4, b5, b6, b7, b8, b9, b10, b11 being Element of the carrier of b1
            st b2 <> b3 & b2,b3 // b4,b5 & b2,b3 // b6,b7 & b2,b3 // b8,b9 & b2,b3 // b10,b11 & b4,b6 // b8,b10
         holds b5,b7 // b9,b11;

:: GEOMTRAP:exreg 6
registration
  cluster non empty strict OrdTrapSpace-like Regular AffinStruct;
end;

:: GEOMTRAP:funcreg 5
registration
  let a1 be non empty MidOrdTrapSpace-like AfMidStruct;
  cluster Af a1 -> strict Regular;
end;