:: AFVECT0 semantic presentation

definition
let c1 be non empty AffinStruct ;
attr a1 is WeakAffVect-like means :E1: :: AFVECT0:def 1
( ( for b1, b2, b3 being Element of a1 holds
( b1,b2 // b3,b3 implies b1 = b2 ) ) & ( for b1, b2, b3, b4, b5, b6 being Element of a1 holds
( ( b1,b2 // b5,b6 & b3,b4 // b5,b6 ) implies ( b1,b2 // b3,b4 ) ) ) & ( for b1, b2, b3 being Element of a1 holds
ex b4 being Element of a1 st b1,b2 // b3,b4 ) & ( for b1, b2, b3, b4, b5, b6 being Element of a1 holds
( ( b1,b2 // b4,b5 & b1,b3 // b4,b6 ) implies ( b2,b3 // b5,b6 ) ) ) & ( for b1, b2 being Element of a1 holds
ex b3 being Element of a1 st b1,b3 // b3,b2 ) & ( for b1, b2, b3, b4 being Element of a1 holds
( b1,b2 // b3,b4 implies b1,b3 // b2,b4 ) ) );
end;

:: deftheorem E1 defines WeakAffVect-like AFVECT0:def 1 :
for b1 being non empty AffinStruct holds
( b1 is WeakAffVect-like iff ( ( for b2, b3, b4 being Element of b1 holds
( b2,b3 // b4,b4 implies b2 = b3 ) ) & ( for b2, b3, b4, b5, b6, b7 being Element of b1 holds
( ( b2,b3 // b6,b7 & b4,b5 // b6,b7 ) implies ( b2,b3 // b4,b5 ) ) ) & ( for b2, b3, b4 being Element of b1 holds
ex b5 being Element of b1 st b2,b3 // b4,b5 ) & ( for b2, b3, b4, b5, b6, b7 being Element of b1 holds
( ( b2,b3 // b5,b6 & b2,b4 // b5,b7 ) implies ( b3,b4 // b6,b7 ) ) ) & ( for b2, b3 being Element of b1 holds
ex b4 being Element of b1 st b2,b4 // b4,b3 ) & ( for b2, b3, b4, b5 being Element of b1 holds
( b2,b3 // b4,b5 implies b2,b4 // b3,b5 ) ) ) );

registration
cluster non empty non trivial strict WeakAffVect-like AffinStruct ;
existence
ex b1 being non empty AffinStruct st
( b1 is strict & not b1 is trivial & b1 is WeakAffVect-like )
proof
consider c1 being strict AffVect;
reconsider c2 = c1 as non empty AffinStruct ;
( ( for b1, b2, b3 being Element of c2 holds
( b1,b2 // b3,b3 implies b1 = b2 ) ) & ( for b1, b2, b3, b4, b5, b6 being Element of c2 holds
( ( b1,b2 // b5,b6 & b3,b4 // b5,b6 ) implies ( b1,b2 // b3,b4 ) ) ) & ( for b1, b2, b3 being Element of c2 holds
ex b4 being Element of c2 st b1,b2 // b3,b4 ) & ( for b1, b2, b3, b4, b5, b6 being Element of c2 holds
( ( b1,b2 // b4,b5 & b1,b3 // b4,b6 ) implies ( b2,b3 // b5,b6 ) ) ) & ( for b1, b2 being Element of c2 holds
ex b3 being Element of c2 st b1,b3 // b3,b2 ) & ( for b1, b2, b3, b4 being Element of c2 holds
( b1,b2 // b3,b4 implies b1,b3 // b2,b4 ) ) ) by TDGROUP:21;
then c2 is WeakAffVect-like by E1;
hence ex b1 being non empty AffinStruct st
( b1 is strict & not b1 is trivial & b1 is WeakAffVect-like ) ;
end;
end;

definition
mode WeakAffVect is non empty non trivial WeakAffVect-like AffinStruct ;
end;

registration
cluster non empty AffVect-like -> non empty WeakAffVect-like AffinStruct ;
coherence
for b1 being non empty AffinStruct holds
( b1 is AffVect-like implies b1 is WeakAffVect-like )
proof
let c1 be non empty AffinStruct ;
assume E2: c1 is AffVect-like ;
c1 is WeakAffVect-like
proof
( ( for b1, b2, b3 being Element of c1 holds
( b1,b2 // b3,b3 implies b1 = b2 ) ) & ( for b1, b2, b3, b4, b5, b6 being Element of c1 holds
( ( b1,b2 // b5,b6 & b3,b4 // b5,b6 ) implies ( b1,b2 // b3,b4 ) ) ) & ( for b1, b2, b3 being Element of c1 holds
ex b4 being Element of c1 st b1,b2 // b3,b4 ) & ( for b1, b2, b3, b4, b5, b6 being Element of c1 holds
( ( b1,b2 // b4,b5 & b1,b3 // b4,b6 ) implies ( b2,b3 // b5,b6 ) ) ) & ( for b1, b2 being Element of c1 holds
ex b3 being Element of c1 st b1,b3 // b3,b2 ) & ( for b1, b2, b3, b4 being Element of c1 holds
( b1,b2 // b3,b4 implies b1,b3 // b2,b4 ) ) ) by E2, TDGROUP:def 8;
hence c1 is WeakAffVect-like by E1;
end;
hence c1 is WeakAffVect-like ;
end;
end;

theorem :: AFVECT0:1
canceled;

theorem E2: :: AFVECT0:2
for b1 being WeakAffVect
for b2, b3 being Element of b1 holds b2,b3 // b2,b3
proof
let c1 be WeakAffVect;
let c2, c3 be Element of c1;
ex b1 being Element of c1 st c2,c3 // c3,b1 by E1;
hence c2,c3 // c2,c3 by E1;
end;

theorem :: AFVECT0:3
for b1 being WeakAffVect
for b2 being Element of b1 holds b2,b2 // b2,b2 by E2;

theorem E3: :: AFVECT0:4
for b1 being WeakAffVect
for b2, b3, b4, b5 being Element of b1 holds
( b2,b3 // b4,b5 implies b4,b5 // b2,b3 )
proof
let c1 be WeakAffVect;
let c2, c3, c4, c5 be Element of c1;
assume E4: c2,c3 // c4,c5 ;
c4,c5 // c4,c5 by E2;
hence c4,c5 // c2,c3 by E4, E1;
end;

theorem E4: :: AFVECT0:5
for b1 being WeakAffVect
for b2, b3, b4 being Element of b1 holds
( b2,b3 // b2,b4 implies b3 = b4 )
proof
let c1 be WeakAffVect;
let c2, c3, c4 be Element of c1;
assume c2,c3 // c2,c4 ;
then c2,c2 // c3,c4 by E1;
then c3,c4 // c2,c2 by E3;
hence c3 = c4 by E1;
end;

theorem E5: :: AFVECT0:6
for b1 being WeakAffVect
for b2, b3, b4, b5, b6 being Element of b1 holds
( ( b2,b3 // b4,b5 & b2,b3 // b4,b6 ) implies ( b5 = b6 ) )
proof
let c1 be WeakAffVect;
let c2, c3, c4, c5, c6 be Element of c1;
assume ( c2,c3 // c4,c5 & c2,c3 // c4,c6 ) ;
then ( c4,c5 // c2,c3 & c4,c6 // c2,c3 ) by E3;
then c4,c5 // c4,c6 by E1;
hence c5 = c6 by E4;
end;

theorem E6: :: AFVECT0:7
for b1 being WeakAffVect
for b2, b3 being Element of b1 holds b2,b2 // b3,b3
proof
let c1 be WeakAffVect;
let c2, c3 be Element of c1;
consider c4 being Element of c1 such that
E7: c2,c2 // c3,c4 by E1;
c3,c4 // c2,c2 by E7, E3;
hence c2,c2 // c3,c3 by E7, E1;
end;

theorem E7: :: AFVECT0:8
for b1 being WeakAffVect
for b2, b3, b4, b5 being Element of b1 holds
( b2,b3 // b4,b5 implies b3,b2 // b5,b4 )
proof
let c1 be WeakAffVect;
let c2, c3, c4, c5 be Element of c1;
assume E8: c2,c3 // c4,c5 ;
c2,c2 // c4,c4 by E6;
hence c3,c2 // c5,c4 by E8, E1;
end;

theorem :: AFVECT0:9
for b1 being WeakAffVect
for b2, b3, b4, b5, b6 being Element of b1 holds
( ( b2,b3 // b4,b5 & b2,b4 // b6,b5 ) implies ( b3 = b6 ) )
proof
let c1 be WeakAffVect;
let c2, c3, c4, c5, c6 be Element of c1;
assume E8: ( c2,c3 // c4,c5 & c2,c4 // c6,c5 ) ;
then c2,c4 // c3,c5 by E1;
then c3,c5 // c2,c4 by E3;
then E9: c5,c3 // c4,c2 by E7;
c6,c5 // c2,c4 by E8, E3;
then c5,c6 // c4,c2 by E7;
then c5,c3 // c5,c6 by E9, E1;
hence c3 = c6 by E4;
end;

theorem :: AFVECT0:10
for b1 being WeakAffVect
for b2, b3, b4, b5, b6, b7, b8 being Element of b1 holds
( ( b2,b3 // b4,b5 & b6,b7 // b2,b3 & b6,b8 // b4,b5 ) implies ( b7 = b8 ) )
proof
let c1 be WeakAffVect;
let c2, c3, c4, c5, c6, c7, c8 be Element of c1;
assume E8: ( c2,c3 // c4,c5 & c6,c7 // c2,c3 & c6,c8 // c4,c5 ) ;
then c4,c5 // c2,c3 by E3;
then c6,c7 // c4,c5 by E8, E1;
then c6,c7 // c6,c8 by E8, E1;
hence c7 = c8 by E4;
end;

theorem :: AFVECT0:11
for b1 being WeakAffVect
for b2, b3, b4, b5, b6, b7, b8 being Element of b1 holds
( ( b2,b3 // b4,b5 & b6,b7 // b3,b2 & b6,b8 // b5,b4 ) implies ( b7 = b8 ) )
proof
let c1 be WeakAffVect;
let c2, c3, c4, c5, c6, c7, c8 be Element of c1;
assume E8: ( c2,c3 // c4,c5 & c6,c7 // c3,c2 & c6,c8 // c5,c4 ) ;
then c4,c5 // c2,c3 by E3;
then c5,c4 // c3,c2 by E7;
then c6,c7 // c5,c4 by E8, E1;
then c6,c7 // c6,c8 by E8, E1;
hence c7 = c8 by E4;
end;

theorem :: AFVECT0:12
for b1 being WeakAffVect
for b2, b3, b4, b5, b6, b7, b8, b9, b10, b11 being Element of b1 holds
( ( b2,b3 // b4,b5 & b6,b7 // b8,b9 & b3,b10 // b6,b7 & b5,b11 // b8,b9 ) implies ( b2,b10 // b4,b11 ) )
proof
let c1 be WeakAffVect;
let c2, c3, c4, c5, c6, c7, c8, c9, c10, c11 be Element of c1;
assume E8: ( c2,c3 // c4,c5 & c6,c7 // c8,c9 & c3,c10 // c6,c7 & c5,c11 // c8,c9 ) ;
then c5,c11 // c6,c7 by E1;
then E9: c3,c10 // c5,c11 by E8, E1;
c3,c2 // c5,c4 by E8, E7;
hence c2,c10 // c4,c11 by E9, E1;
end;

theorem E8: :: AFVECT0:13
for b1 being WeakAffVect
for b2, b3, b4, b5, b6, b7 being Element of b1 holds
( ( b2,b3 // b4,b5 & b2,b6 // b7,b5 ) implies ( b3,b6 // b7,b4 ) )
proof
let c1 be WeakAffVect;
let c2, c3, c4, c5, c6, c7 be Element of c1;
assume E9: ( c2,c3 // c4,c5 & c2,c6 // c7,c5 ) ;
consider c8 being Element of c1 such that
E10: c7,c5 // c4,c8 by E1;
E11: c7,c4 // c5,c8 by E10, E1;
c4,c8 // c7,c5 by E10, E3;
then c2,c6 // c4,c8 by E9, E1;
then c3,c6 // c5,c8 by E9, E1;
hence c3,c6 // c7,c4 by E11, E1;
end;

definition
let c1 be WeakAffVect;
let c2, c3 be Element of c1;
pred MDist c2,c3 means :E9: :: AFVECT0:def 2
( a2,a3 // a3,a2 & a2 <> a3 );
irreflexivity
for b1 being Element of c1 holds
not ( b1,b1 // b1,b1 & b1 <> b1 )
;
symmetry
for b1, b2 being Element of c1 holds
( ( b1,b2 // b2,b1 ) implies ( not b1 <> b2 or ( b2,b1 // b1,b2 & b2 <> b1 ) ) )
by E3;
end;

:: deftheorem E9 defines MDist AFVECT0:def 2 :
for b1 being WeakAffVect
for b2, b3 being Element of b1 holds
( MDist b2,b3 iff ( b2,b3 // b3,b2 & b2 <> b3 ) );

theorem :: AFVECT0:14
canceled;

theorem :: AFVECT0:15
canceled;

theorem :: AFVECT0:16
for b1 being WeakAffVect holds
ex b2, b3 being Element of b1 st
( b2 <> b3 & not MDist b2,b3 )
proof
let c1 be WeakAffVect;
consider c2, c3 being Element of c1 such that
E10: c2 <> c3 by REALSET2:def 7;
now
consider c4 being Element of c1 such that
E11: c2,c4 // c4,c3 by E1;
E12: now
assume E13: c2 = c4 ;
then c4,c3 // c2,c2 by E11, E3;
hence ex b1, b2 being Element of c1 st
( b1 <> b2 & not MDist b1,b2 ) by E10, E13, E1;
end;
now
assume E13: c2 <> c4 ;
now
assume E14: MDist c2,c4 ;
c4,c3 // c2,c4 by E11, E3;
then E15: c3,c4 // c4,c2 by E7;
c2,c4 // c4,c2 by E14, E9;
then c2,c4 // c3,c4 by E15, E1;
then c4,c2 // c4,c3 by E7;
hence ex b1, b2 being Element of c1 st
( b1 <> b2 & not MDist b1,b2 ) by E10, E4;
end;
hence ex b1, b2 being Element of c1 st
( b1 <> b2 & not MDist b1,b2 ) by E13;
end;
hence ex b1, b2 being Element of c1 st
( b1 <> b2 & not MDist b1,b2 ) by E12;
end;
hence ex b1, b2 being Element of c1 st
( b1 <> b2 & not MDist b1,b2 ) ;
end;

theorem :: AFVECT0:17
canceled;

theorem :: AFVECT0:18
for b1 being WeakAffVect
for b2, b3, b4 being Element of b1 holds
not ( MDist b2,b3 & MDist b2,b4 & not b3 = b4 & not MDist b3,b4 )
proof
let c1 be WeakAffVect;
let c2, c3, c4 be Element of c1;
assume E10: ( MDist c2,c3 & MDist c2,c4 ) ;
consider c5 being Element of c1 such that
E11: c4,c2 // c3,c5 by E1;
E12: c3,c5 // c4,c2 by E11, E3;
E13: ( c2,c3 // c3,c2 & c2,c4 // c4,c2 ) by E10, E9;
then E14: c2,c4 // c3,c5 by E12, E1;
E15: c4,c3 // c2,c5 by E11, E1;
c3,c4 // c2,c5 by E13, E14, E1;
then c3,c4 // c4,c3 by E15, E1;
hence not ( not c3 = c4 & not MDist c3,c4 ) by E9;
end;

theorem :: AFVECT0:19
for b1 being WeakAffVect
for b2, b3, b4, b5 being Element of b1 holds
( ( MDist b2,b3 & b2,b3 // b4,b5 ) implies ( MDist b4,b5 ) )
proof
let c1 be WeakAffVect;
let c2, c3, c4, c5 be Element of c1;
assume E10: ( MDist c2,c3 & c2,c3 // c4,c5 ) ;
then E11: ( c2 <> c3 & c2,c3 // c3,c2 ) by E9;
E12: c4,c5 // c2,c3 by E10, E3;
then c5,c4 // c3,c2 by E7;
then c5,c4 // c2,c3 by E11, E1;
then c4,c5 // c5,c4 by E12, E1;
then ( c4 <> c5 implies MDist c4,c5 ) by E9;
hence MDist c4,c5 by E10, E1;
end;

definition
let c1 be WeakAffVect;
let c2, c3, c4 be Element of c1;
pred Mid c2,c3,c4 means :E10: :: AFVECT0:def 3
a2,a3 // a3,a4;
end;

:: deftheorem E10 defines Mid AFVECT0:def 3 :
for b1 being WeakAffVect
for b2, b3, b4 being Element of b1 holds
( Mid b2,b3,b4 iff b2,b3 // b3,b4 );

theorem :: AFVECT0:20
canceled;

theorem E11: :: AFVECT0:21
for b1 being WeakAffVect
for b2, b3, b4 being Element of b1 holds
( Mid b2,b3,b4 implies Mid b4,b3,b2 )
proof
let c1 be WeakAffVect;
let c2, c3, c4 be Element of c1;
assume Mid c2,c3,c4 ;
then c2,c3 // c3,c4 by E10;
then c3,c2 // c4,c3 by E7;
then c4,c3 // c3,c2 by E3;
hence Mid c4,c3,c2 by E10;
end;

theorem :: AFVECT0:22
for b1 being WeakAffVect
for b2, b3 being Element of b1 holds
( Mid b2,b3,b3 iff b2 = b3 )
proof
let c1 be WeakAffVect;
let c2, c3 be Element of c1;
E12: now
assume Mid c2,c3,c3 ;
then c2,c3 // c3,c3 by E10;
hence c2 = c3 by E1;
end;
now
assume c2 = c3 ;
then c2,c3 // c3,c3 by E6;
hence Mid c2,c3,c3 by E10;
end;
hence ( Mid c2,c3,c3 iff c2 = c3 ) by E12;
end;

theorem E12: :: AFVECT0:23
for b1 being WeakAffVect
for b2, b3 being Element of b1 holds
( Mid b2,b3,b2 iff ( b2 = b3 or MDist b2,b3 ) )
proof
let c1 be WeakAffVect;
let c2, c3 be Element of c1;
E13: now
assume Mid c2,c3,c2 ;
then c2,c3 // c3,c2 by E10;
hence ( c2 = c3 or MDist c2,c3 ) by E9;
end;
E14: now
assume c2 = c3 ;
then c2,c3 // c3,c2 by E6;
hence Mid c2,c3,c2 by E10;
end;
now
assume MDist c2,c3 ;
then c2,c3 // c3,c2 by E9;
hence Mid c2,c3,c2 by E10;
end;
hence ( Mid c2,c3,c2 iff ( c2 = c3 or MDist c2,c3 ) ) by E13, E14;
end;

theorem E13: :: AFVECT0:24
for b1 being WeakAffVect
for b2, b3 being Element of b1 holds
ex b4 being Element of b1 st Mid b2,b4,b3
proof
let c1 be WeakAffVect;
let c2, c3 be Element of c1;
consider c4 being Element of c1 such that
E14: c2,c4 // c4,c3 by E1;
Mid c2,c4,c3 by E14, E10;
hence ex b1 being Element of c1 st Mid c2,b1,c3 ;
end;

theorem E14: :: AFVECT0:25
for b1 being WeakAffVect
for b2, b3, b4, b5 being Element of b1 holds
not ( Mid b2,b3,b4 & Mid b2,b5,b4 & not b3 = b5 & not MDist b3,b5 )
proof
let c1 be WeakAffVect;
let c2, c3, c4, c5 be Element of c1;
assume ( Mid c2,c3,c4 & Mid c2,c5,c4 ) ;
then E15: ( c2,c3 // c3,c4 & c2,c5 // c5,c4 ) by E10;
consider c6 being Element of c1 such that
E16: c5,c4 // c3,c6 by E1;
E17: c3,c6 // c5,c4 by E16, E3;
then c2,c5 // c3,c6 by E15, E1;
then E18: c3,c5 // c4,c6 by E15, E1;
c3,c5 // c6,c4 by E17, E1;
then c5,c3 // c4,c6 by E7;
then c3,c5 // c5,c3 by E18, E1;
hence not ( not c3 = c5 & not MDist c3,c5 ) by E9;
end;

theorem E15: :: AFVECT0:26
for b1 being WeakAffVect
for b2, b3 being Element of b1 holds
ex b4 being Element of b1 st Mid b2,b3,b4
proof
let c1 be WeakAffVect;
let c2, c3 be Element of c1;
consider c4 being Element of c1 such that
E16: c2,c3 // c3,c4 by E1;
Mid c2,c3,c4 by E16, E10;
hence ex b1 being Element of c1 st Mid c2,c3,b1 ;
end;

theorem E16: :: AFVECT0:27
for b1 being WeakAffVect
for b2, b3, b4, b5 being Element of b1 holds
( ( Mid b2,b3,b4 & Mid b2,b3,b5 ) implies ( b4 = b5 ) )
proof
let c1 be WeakAffVect;
let c2, c3, c4, c5 be Element of c1;
assume ( Mid c2,c3,c4 & Mid c2,c3,c5 ) ;
then ( c2,c3 // c3,c4 & c2,c3 // c3,c5 ) by E10;
then ( c3,c4 // c2,c3 & c3,c5 // c2,c3 ) by E3;
then c3,c4 // c3,c5 by E1;
hence c4 = c5 by E4;
end;

theorem E17: :: AFVECT0:28
for b1 being WeakAffVect
for b2, b3, b4, b5 being Element of b1 holds
( ( Mid b2,b3,b4 & MDist b3,b5 ) implies ( Mid b2,b5,b4 ) )
proof
let c1 be WeakAffVect;
let c2, c3, c4, c5 be Element of c1;
assume ( Mid c2,c3,c4 & MDist c3,c5 ) ;
then E18: ( c2,c3 // c3,c4 & c3,c5 // c5,c3 ) by E9, E10;
consider c6 being Element of c1 such that
E19: c5,c3 // c4,c6 by E1;
c4,c6 // c5,c3 by E19, E3;
then E20: c3,c5 // c4,c6 by E18, E1;
c3,c2 // c4,c3 by E18, E7;
then E21: c2,c5 // c3,c6 by E20, E1;
c5,c4 // c3,c6 by E19, E1;
then c2,c5 // c5,c4 by E21, E1;
hence Mid c2,c5,c4 by E10;
end;

theorem E18: :: AFVECT0:29
for b1 being WeakAffVect
for b2, b3, b4, b5, b6 being Element of b1 holds
( ( Mid b2,b3,b4 & Mid b2,b5,b6 & MDist b3,b5 ) implies ( b4 = b6 ) )
proof
let c1 be WeakAffVect;
let c2, c3, c4, c5, c6 be Element of c1;
assume E19: ( Mid c2,c3,c4 & Mid c2,c5,c6 & MDist c3,c5 ) ;
then Mid c2,c5,c4 by E17;
hence c4 = c6 by E19, E16;
end;

theorem E19: :: AFVECT0:30
for b1 being WeakAffVect
for b2, b3, b4, b5, b6 being Element of b1 holds
( ( Mid b2,b3,b4 & Mid b5,b3,b6 ) implies ( b2,b5 // b6,b4 ) )
proof
let c1 be WeakAffVect;
let c2, c3, c4, c5, c6 be Element of c1;
assume E20: ( Mid c2,c3,c4 & Mid c5,c3,c6 ) ;
consider c7 being Element of c1 such that
E21: c6,c3 // c4,c7 by E1;
E22: c4,c7 // c6,c3 by E21, E3;
c5,c3 // c3,c6 by E20, E10;
then c3,c5 // c6,c3 by E7;
then E23: c3,c5 // c4,c7 by E22, E1;
c2,c3 // c3,c4 by E20, E10;
then c3,c2 // c4,c3 by E7;
then E24: c2,c5 // c3,c7 by E23, E1;
c6,c4 // c3,c7 by E21, E1;
hence c2,c5 // c6,c4 by E24, E1;
end;

theorem :: AFVECT0:31
for b1 being WeakAffVect
for b2, b3, b4, b5, b6, b7 being Element of b1 holds
( ( Mid b2,b3,b4 & Mid b5,b6,b7 & MDist b3,b6 ) implies ( b2,b5 // b7,b4 ) )
proof
let c1 be WeakAffVect;
let c2, c3, c4, c5, c6, c7 be Element of c1;
assume E20: ( Mid c2,c3,c4 & Mid c5,c6,c7 & MDist c3,c6 ) ;
then Mid c2,c6,c4 by E17;
hence c2,c5 // c7,c4 by E20, E19;
end;

definition
let c1 be WeakAffVect;
let c2, c3 be Element of c1;
func PSym c2,c3 -> Element of a1 means :E20: :: AFVECT0:def 4
Mid a3,a2,a4;
correctness
existence
ex b1 being Element of c1 st Mid c3,c2,b1
;
uniqueness
for b1, b2 being Element of c1 holds
( ( Mid c3,c2,b1 & Mid c3,c2,b2 ) implies ( b1 = b2 ) )
;
by E15, E16;
end;

:: deftheorem E20 defines PSym AFVECT0:def 4 :
for b1 being WeakAffVect
for b2, b3, b4 being Element of b1 holds
( b4 = PSym b2,b3 iff Mid b3,b2,b4 );

theorem :: AFVECT0:32
canceled;

theorem :: AFVECT0:33
for b1 being WeakAffVect
for b2, b3, b4 being Element of b1 holds
( PSym b2,b3 = b4 iff b3,b2 // b2,b4 )
proof
let c1 be WeakAffVect;
let c2, c3, c4 be Element of c1;
E21: now
assume PSym c2,c3 = c4 ;
then Mid c3,c2,c4 by E20;
hence c3,c2 // c2,c4 by E10;
end;
now
assume c3,c2 // c2,c4 ;
then Mid c3,c2,c4 by E10;
hence PSym c2,c3 = c4 by E20;
end;
hence ( PSym c2,c3 = c4 iff c3,c2 // c2,c4 ) by E21;
end;

theorem :: AFVECT0:34
canceled;

theorem E21: :: AFVECT0:35
for b1 being WeakAffVect
for b2, b3 being Element of b1 holds
( PSym b2,b3 = b3 iff ( b3 = b2 or MDist b3,b2 ) )
proof
let c1 be WeakAffVect;
let c2, c3 be Element of c1;
E22: now
assume PSym c2,c3 = c3 ;
then Mid c3,c2,c3 by E20;
hence ( c3 = c2 or MDist c3,c2 ) by E12;
end;
now
assume ( c3 = c2 or MDist c3,c2 ) ;
then Mid c3,c2,c3 by E12;
hence PSym c2,c3 = c3 by E20;
end;
hence ( PSym c2,c3 = c3 iff ( c3 = c2 or MDist c3,c2 ) ) by E22;
end;

theorem E22: :: AFVECT0:36
for b1 being WeakAffVect
for b2, b3 being Element of b1 holds PSym b2,(PSym b2,b3) = b3
proof
let c1 be WeakAffVect;
let c2, c3 be Element of c1;
Mid c3,c2, PSym c2,c3 by E20;
then Mid PSym c2,c3,c2,c3 by E11;
hence PSym c2,(PSym c2,c3) = c3 by E20;
end;

theorem E23: :: AFVECT0:37
for b1 being WeakAffVect
for b2, b3, b4 being Element of b1 holds
( PSym b2,b3 = PSym b2,b4 implies b3 = b4 )
proof
let c1 be WeakAffVect;
let c2, c3, c4 be Element of c1;
assume E24: PSym c2,c3 = PSym c2,c4 ;
( PSym c2,(PSym c2,c3) = c3 & PSym c2,(PSym c2,c4) = c4 ) by E22;
hence c3 = c4 by E24;
end;

theorem :: AFVECT0:38
for b1 being WeakAffVect
for b2, b3 being Element of b1 holds
ex b4 being Element of b1 st PSym b2,b4 = b3
proof
let c1 be WeakAffVect;
let c2, c3 be Element of c1;
PSym c2,(PSym c2,c3) = c3 by E22;
hence ex b1 being Element of c1 st PSym c2,b1 = c3 ;
end;

theorem E24: :: AFVECT0:39
for b1 being WeakAffVect
for b2, b3, b4 being Element of b1 holds b2,b3 // PSym b4,b3, PSym b4,b2
proof
let c1 be WeakAffVect;
let c2, c3, c4 be Element of c1;
( Mid c2,c4, PSym c4,c2 & Mid c3,c4, PSym c4,c3 ) by E20;
hence c2,c3 // PSym c4,c3, PSym c4,c2 by E19;
end;

theorem E25: :: AFVECT0:40
for b1 being WeakAffVect
for b2, b3, b4, b5, b6 being Element of b1 holds
( b2,b3 // b4,b5 iff PSym b6,b2, PSym b6,b3 // PSym b6,b4, PSym b6,b5 )
proof
let c1 be WeakAffVect;
let c2, c3, c4, c5, c6 be Element of c1;
E26: now
assume E27: c2,c3 // c4,c5 ;
E28: ( c2,c3 // PSym c6,c3, PSym c6,c2 & c4,c5 // PSym c6,c5, PSym c6,c4 ) by E24;
then PSym c6,c5, PSym c6,c4 // c4,c5 by E3;
then E29: PSym c6,c5, PSym c6,c4 // c2,c3 by E27, E1;
PSym c6,c3, PSym c6,c2 // c2,c3 by E28, E3;
then PSym c6,c3, PSym c6,c2 // PSym c6,c5, PSym c6,c4 by E29, E1;
hence PSym c6,c2, PSym c6,c3 // PSym c6,c4, PSym c6,c5 by E7;
end;
now
assume E27: PSym c6,c2, PSym c6,c3 // PSym c6,c4, PSym c6,c5 ;
E28: ( c2,c3 // PSym c6,c3, PSym c6,c2 & c4,c5 // PSym c6,c5, PSym c6,c4 ) by E24;
c5,c4 // PSym c6,c4, PSym c6,c5 by E24;
then c5,c4 // PSym c6,c2, PSym c6,c3 by E27, E1;
then c4,c5 // PSym c6,c3, PSym c6,c2 by E7;
hence c2,c3 // c4,c5 by E28, E1;
end;
hence ( c2,c3 // c4,c5 iff PSym c6,c2, PSym c6,c3 // PSym c6,c4, PSym c6,c5 ) by E26;
end;

theorem :: AFVECT0:41
for b1 being WeakAffVect
for b2, b3, b4 being Element of b1 holds
( MDist b2,b3 iff MDist PSym b4,b2, PSym b4,b3 )
proof
let c1 be WeakAffVect;
let c2, c3, c4 be Element of c1;
E26: now
assume MDist c2,c3 ;
then ( c2,c3 // c3,c2 & c2 <> c3 ) by E9;
then ( PSym c4,c2, PSym c4,c3 // PSym c4,c3, PSym c4,c2 & PSym c4,c2 <> PSym c4,c3 ) by E23, E25;
hence MDist PSym c4,c2, PSym c4,c3 by E9;
end;
now
assume MDist PSym c4,c2, PSym c4,c3 ;
then ( PSym c4,c2, PSym c4,c3 // PSym c4,c3, PSym c4,c2 & PSym c4,c2 <> PSym c4,c3 ) by E9;
then ( c2,c3 // c3,c2 & c2 <> c3 ) by E25;
hence MDist c2,c3 by E9;
end;
hence ( MDist c2,c3 iff MDist PSym c4,c2, PSym c4,c3 ) by E26;
end;

theorem E26: :: AFVECT0:42
for b1 being WeakAffVect
for b2, b3, b4, b5 being Element of b1 holds
( Mid b2,b3,b4 iff Mid PSym b5,b2, PSym b5,b3, PSym b5,b4 )
proof
let c1 be WeakAffVect;
let c2, c3, c4, c5 be Element of c1;
E27: now
assume Mid c2,c3,c4 ;
then c2,c3 // c3,c4 by E10;
then PSym c5,c2, PSym c5,c3 // PSym c5,c3, PSym c5,c4 by E25;
hence Mid PSym c5,c2, PSym c5,c3, PSym c5,c4 by E10;
end;
now
assume Mid PSym c5,c2, PSym c5,c3, PSym c5,c4 ;
then PSym c5,c2, PSym c5,c3 // PSym c5,c3, PSym c5,c4 by E10;
then c2,c3 // c3,c4 by E25;
hence Mid c2,c3,c4 by E10;
end;
hence ( Mid c2,c3,c4 iff Mid PSym c5,c2, PSym c5,c3, PSym c5,c4 ) by E27;
end;

theorem E27: :: AFVECT0:43
for b1 being WeakAffVect
for b2, b3, b4 being Element of b1 holds
( PSym b2,b3 = PSym b4,b3 iff ( b2 = b4 or MDist b2,b4 ) )
proof
let c1 be WeakAffVect;
let c2, c3, c4 be Element of c1;
E28: now
assume E29: PSym c2,c3 = PSym c4,c3 ;
( Mid c3,c2, PSym c2,c3 & Mid c3,c4, PSym c4,c3 ) by E20;
hence ( c2 = c4 or MDist c2,c4 ) by E29, E14;
end;
now
assume E29: MDist c2,c4 ;
( Mid c3,c2, PSym c2,c3 & Mid c3,c4, PSym c4,c3 ) by E20;
hence PSym c2,c3 = PSym c4,c3 by E29, E18;
end;
hence ( PSym c2,c3 = PSym c4,c3 iff ( c2 = c4 or MDist c2,c4 ) ) by E28;
end;

theorem E28: :: AFVECT0:44
for b1 being WeakAffVect
for b2, b3, b4 being Element of b1 holds PSym b2,(PSym b3,(PSym b2,b4)) = PSym (PSym b2,b3),b4
proof
let c1 be WeakAffVect;
let c2, c3, c4 be Element of c1;
Mid PSym c2,c4,c3, PSym c3,(PSym c2,c4) by E20;
then Mid PSym c2,(PSym c2,c4), PSym c2,c3, PSym c2,(PSym c3,(PSym c2,c4)) by E26;
then PSym c2,(PSym c3,(PSym c2,c4)) = PSym (PSym c2,c3),(PSym c2,(PSym c2,c4)) by E20;
hence PSym c2,(PSym c3,(PSym c2,c4)) = PSym (PSym c2,c3),c4 by E22;
end;

theorem :: AFVECT0:45
for b1 being WeakAffVect
for b2, b3, b4 being Element of b1 holds
( PSym b2,(PSym b3,b4) = PSym b3,(PSym b2,b4) iff not ( not b2 = b3 & not MDist b2,b3 & not MDist b3, PSym b2,b3 ) )
proof
let c1 be WeakAffVect;
let c2, c3, c4 be Element of c1;
E29: now
assume PSym c2,(PSym c3,c4) = PSym c3,(PSym c2,c4) ;
then PSym c2,(PSym c3,(PSym c2,c4)) = PSym c3,c4 by E22;
then PSym (PSym c2,c3),c4 = PSym c3,c4 by E28;
then ( c3 = PSym c2,c3 or MDist c3, PSym c2,c3 ) by E27;
then E30: ( Mid c3,c2,c3 or MDist c3, PSym c2,c3 ) by E20;
hence not ( not c2 = c3 & not MDist c3,c2 & not MDist c3, PSym c2,c3 ) by E12;
thus not ( not c2 = c3 & not MDist c2,c3 & not MDist c3, PSym c2,c3 ) by E30, E12;
end;
now
assume not ( not c2 = c3 & not MDist c2,c3 & not MDist c3, PSym c2,c3 ) ;
then ( Mid c3,c2,c3 or MDist c3, PSym c2,c3 ) by E12;
then PSym (PSym c2,c3),c4 = PSym c3,c4 by E20, E27;
then PSym c2,(PSym c3,(PSym c2,c4)) = PSym c3,c4 by E28;
hence PSym c2,(PSym c3,c4) = PSym c3,(PSym c2,c4) by E22;
end;
hence ( PSym c2,(PSym c3,c4) = PSym c3,(PSym c2,c4) iff not ( not c2 = c3 & not MDist c2,c3 & not MDist c3, PSym c2,c3 ) ) by E29;
end;

theorem E29: :: AFVECT0:46
for b1 being WeakAffVect
for b2, b3, b4, b5 being Element of b1 holds PSym b2,(PSym b3,(PSym b4,b5)) = PSym b4,(PSym b3,(PSym b2,b5))
proof
let c1 be WeakAffVect;
let c2, c3, c4, c5 be Element of c1;
PSym c3,(PSym c4,c2),c2 // PSym c3,c2, PSym c3,(PSym c3,(PSym c4,c2)) by E24;
then E30: PSym c3,(PSym c4,c2),c2 // PSym c3,c2, PSym c4,c2 by E22;
PSym c3,c2, PSym c4,c2 // PSym c4,(PSym c4,c2), PSym c4,(PSym c3,c2) by E24;
then PSym c3,c2, PSym c4,c2 // c2, PSym c4,(PSym c3,c2) by E22;
then c2, PSym c4,(PSym c3,c2) // PSym c3,c2, PSym c4,c2 by E3;
then PSym c3,(PSym c4,c2),c2 // c2, PSym c4,(PSym c3,c2) by E30, E1;
then Mid PSym c3,(PSym c4,c2),c2, PSym c4,(PSym c3,c2) by E10;
then PSym c2,(PSym c3,(PSym c4,c2)) = PSym c4,(PSym c3,c2) by E20;
then E31: PSym c2,(PSym c3,(PSym c4,c2)) = PSym c4,(PSym c3,(PSym c2,c2)) by E21;
E32: c2,c5 // PSym c4,c5, PSym c4,c2 by E24;
PSym c4,c5, PSym c4,c2 // PSym c3,(PSym c4,c2), PSym c3,(PSym c4,c5) by E24;
then PSym c3,(PSym c4,c2), PSym c3,(PSym c4,c5) // PSym c4,c5, PSym c4,c2 by E3;
then E33: c2,c5 // PSym c3,(PSym c4,c2), PSym c3,(PSym c4,c5) by E32, E1;
PSym c3,(PSym c4,c2), PSym c3,(PSym c4,c5) // PSym c2,(PSym c3,(PSym c4,c5)), PSym c2,(PSym c3,(PSym c4,c2)) by E24;
then PSym c2,(PSym c3,(PSym c4,c5)), PSym c2,(PSym c3,(PSym c4,c2)) // PSym c3,(PSym c4,c2), PSym c3,(PSym c4,c5) by E3;
then E34: PSym c2,(PSym c3,(PSym c4,c5)), PSym c2,(PSym c3,(PSym c4,c2)) // c2,c5 by E33, E1;
E35: c2,c5 // PSym c2,c5, PSym c2,c2 by E24;
PSym c2,c5, PSym c2,c2 // PSym c3,(PSym c2,c2), PSym c3,(PSym c2,c5) by E24;
then PSym c3,(PSym c2,c2), PSym c3,(PSym c2,c5) // PSym c2,c5, PSym c2,c2 by E3;
then E36: c2,c5 // PSym c3,(PSym c2,c2), PSym c3,(PSym c2,c5) by E35, E1;
PSym c3,(PSym c2,c2), PSym c3,(PSym c2,c5) // PSym c4,(PSym c3,(PSym c2,c5)), PSym c4,(PSym c3,(PSym c2,c2)) by E24;
then PSym c4,(PSym c3,(PSym c2,c5)), PSym c4,(PSym c3,(PSym c2,c2)) // PSym c3,(PSym c2,c2), PSym c3,(PSym c2,c5) by E3;
then PSym c4,(PSym c3,(PSym c2,c5)), PSym c4,(PSym c3,(PSym c2,c2)) // c2,c5 by E36, E1;
then PSym c2,(PSym c3,(PSym c4,c5)), PSym c2,(PSym c3,(PSym c4,c2)) // PSym c4,(PSym c3,(PSym c2,c5)), PSym c2,(PSym c3,(PSym c4,c2)) by E31, E34, E1;
then PSym c2,(PSym c3,(PSym c4,c2)), PSym c2,(PSym c3,(PSym c4,c5)) // PSym c2,(PSym c3,(PSym c4,c2)), PSym c4,(PSym c3,(PSym c2,c5)) by E7;
hence PSym c2,(PSym c3,(PSym c4,c5)) = PSym c4,(PSym c3,(PSym c2,c5)) by E4;
end;

theorem :: AFVECT0:47
for b1 being WeakAffVect
for b2, b3, b4, b5 being Element of b1 holds
ex b6 being Element of b1 st PSym b2,(PSym b3,(PSym b4,b5)) = PSym b6,b5
proof
let c1 be WeakAffVect;
let c2, c3, c4, c5 be Element of c1;
consider c6 being Element of c1 such that
E30: Mid c2,c6,c4 by E13;
E31: c4 = PSym c6,c2 by E30, E20;
consider c7 being Element of c1 such that
E32: