:: AFVECT0 semantic presentation

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

:: deftheorem Def1 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 st b2,b3 // b4,b4 holds
b2 = b3 ) & ( for b2, b3, b4, b5, b6, b7 being Element of b1 st b2,b3 // b6,b7 & b4,b5 // b6,b7 holds
b2,b3 // b4,b5 ) & ( for b2, b3, b4 being Element of b1 ex b5 being Element of b1 st b2,b3 // b4,b5 ) & ( for b2, b3, b4, b5, b6, b7 being Element of b1 st b2,b3 // b5,b6 & b2,b4 // b5,b7 holds
b3,b4 // b6,b7 ) & ( for b2, b3 being Element of b1 ex b4 being Element of b1 st b2,b4 // b4,b3 ) & ( for b2, b3, b4, b5 being Element of b1 st b2,b3 // b4,b5 holds
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 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 st b1 is AffVect-like holds
b1 is WeakAffVect-like
proof end;
end;

theorem Th1: :: AFVECT0:1
canceled;

theorem Th2: :: AFVECT0:2
for b1 being WeakAffVect
for b2, b3 being Element of b1 holds b2,b3 // b2,b3
proof end;

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

theorem Th4: :: AFVECT0:4
for b1 being WeakAffVect
for b2, b3, b4, b5 being Element of b1 st b2,b3 // b4,b5 holds
b4,b5 // b2,b3
proof end;

theorem Th5: :: AFVECT0:5
for b1 being WeakAffVect
for b2, b3, b4 being Element of b1 st b2,b3 // b2,b4 holds
b3 = b4
proof end;

theorem Th6: :: AFVECT0:6
for b1 being WeakAffVect
for b2, b3, b4, b5, b6 being Element of b1 st b2,b3 // b4,b5 & b2,b3 // b4,b6 holds
b5 = b6
proof end;

theorem Th7: :: AFVECT0:7
for b1 being WeakAffVect
for b2, b3 being Element of b1 holds b2,b2 // b3,b3
proof end;

theorem Th8: :: AFVECT0:8
for b1 being WeakAffVect
for b2, b3, b4, b5 being Element of b1 st b2,b3 // b4,b5 holds
b3,b2 // b5,b4
proof end;

theorem Th9: :: AFVECT0:9
for b1 being WeakAffVect
for b2, b3, b4, b5, b6 being Element of b1 st b2,b3 // b4,b5 & b2,b4 // b6,b5 holds
b3 = b6
proof end;

theorem Th10: :: AFVECT0:10
for b1 being WeakAffVect
for b2, b3, b4, b5, b6, b7, b8 being Element of b1 st b2,b3 // b4,b5 & b6,b7 // b2,b3 & b6,b8 // b4,b5 holds
b7 = b8
proof end;

theorem Th11: :: AFVECT0:11
for b1 being WeakAffVect
for b2, b3, b4, b5, b6, b7, b8 being Element of b1 st b2,b3 // b4,b5 & b6,b7 // b3,b2 & b6,b8 // b5,b4 holds
b7 = b8
proof end;

theorem Th12: :: AFVECT0:12
for b1 being WeakAffVect
for b2, b3, b4, b5, b6, b7, b8, b9, b10, b11 being Element of b1 st b2,b3 // b4,b5 & b6,b7 // b8,b9 & b3,b10 // b6,b7 & b5,b11 // b8,b9 holds
b2,b10 // b4,b11
proof end;

theorem Th13: :: AFVECT0:13
for b1 being WeakAffVect
for b2, b3, b4, b5, b6, b7 being Element of b1 st b2,b3 // b4,b5 & b2,b6 // b7,b5 holds
b3,b6 // b7,b4
proof end;

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

:: deftheorem Def2 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 Th14: :: AFVECT0:14
canceled;

theorem Th15: :: AFVECT0:15
canceled;

theorem Th16: :: AFVECT0:16
for b1 being WeakAffVect ex b2, b3 being Element of b1 st
( b2 <> b3 & not MDist b2,b3 )
proof end;

theorem Th17: :: AFVECT0:17
canceled;

theorem Th18: :: AFVECT0:18
for b1 being WeakAffVect
for b2, b3, b4 being Element of b1 st MDist b2,b3 & MDist b2,b4 & not b3 = b4 holds
MDist b3,b4
proof end;

theorem Th19: :: AFVECT0:19
for b1 being WeakAffVect
for b2, b3, b4, b5 being Element of b1 st MDist b2,b3 & b2,b3 // b4,b5 holds
MDist b4,b5
proof end;

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

:: deftheorem Def3 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 Th20: :: AFVECT0:20
canceled;

theorem Th21: :: AFVECT0:21
for b1 being WeakAffVect
for b2, b3, b4 being Element of b1 st Mid b2,b3,b4 holds
Mid b4,b3,b2
proof end;

theorem Th22: :: AFVECT0:22
for b1 being WeakAffVect
for b2, b3 being Element of b1 holds
( Mid b2,b3,b3 iff b2 = b3 )
proof end;

theorem Th23: :: 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 end;

theorem Th24: :: AFVECT0:24
for b1 being WeakAffVect
for b2, b3 being Element of b1 ex b4 being Element of b1 st Mid b2,b4,b3
proof end;

theorem Th25: :: AFVECT0:25
for b1 being WeakAffVect
for b2, b3, b4, b5 being Element of b1 st Mid b2,b3,b4 & Mid b2,b5,b4 & not b3 = b5 holds
MDist b3,b5
proof end;

theorem Th26: :: AFVECT0:26
for b1 being WeakAffVect
for b2, b3 being Element of b1 ex b4 being Element of b1 st Mid b2,b3,b4
proof end;

theorem Th27: :: AFVECT0:27
for b1 being WeakAffVect
for b2, b3, b4, b5 being Element of b1 st Mid b2,b3,b4 & Mid b2,b3,b5 holds
b4 = b5
proof end;

theorem Th28: :: AFVECT0:28
for b1 being WeakAffVect
for b2, b3, b4, b5 being Element of b1 st Mid b2,b3,b4 & MDist b3,b5 holds
Mid b2,b5,b4
proof end;

theorem Th29: :: AFVECT0:29
for b1 being WeakAffVect
for b2, b3, b4, b5, b6 being Element of b1 st Mid b2,b3,b4 & Mid b2,b5,b6 & MDist b3,b5 holds
b4 = b6
proof end;

theorem Th30: :: AFVECT0:30
for b1 being WeakAffVect
for b2, b3, b4, b5, b6 being Element of b1 st Mid b2,b3,b4 & Mid b5,b3,b6 holds
b2,b5 // b6,b4
proof end;

theorem Th31: :: AFVECT0:31
for b1 being WeakAffVect
for b2, b3, b4, b5, b6, b7 being Element of b1 st Mid b2,b3,b4 & Mid b5,b6,b7 & MDist b3,b6 holds
b2,b5 // b7,b4
proof end;

definition
let c1 be WeakAffVect;
let c2, c3 be Element of c1;
func PSym c2,c3 -> Element of a1 means :Def4: :: 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 st Mid c3,c2,b1 & Mid c3,c2,b2 holds
b1 = b2
;
by Th26, Th27;
end;

:: deftheorem Def4 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 Th32: :: AFVECT0:32
canceled;

theorem Th33: :: 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 end;

theorem Th34: :: AFVECT0:34
canceled;

theorem Th35: :: 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 end;

theorem Th36: :: AFVECT0:36
for b1 being WeakAffVect
for b2, b3 being Element of b1 holds PSym b2,(PSym b2,b3) = b3
proof end;

theorem Th37: :: AFVECT0:37
for b1 being WeakAffVect
for b2, b3, b4 being Element of b1 st PSym b2,b3 = PSym b2,b4 holds
b3 = b4
proof end;

theorem Th38: :: AFVECT0:38
for b1 being WeakAffVect
for b2, b3 being Element of b1 ex b4 being Element of b1 st PSym b2,b4 = b3
proof end;

theorem Th39: :: AFVECT0:39
for b1 being WeakAffVect
for b2, b3, b4 being Element of b1 holds b2,b3 // PSym b4,b3, PSym b4,b2
proof end;

theorem Th40: :: 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 end;

theorem Th41: :: 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 end;

theorem Th42: :: 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 end;

theorem Th43: :: 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 end;

theorem Th44: :: 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 end;

theorem Th45: :: 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 ( b2 = b3 or MDist b2,b3 or MDist b3, PSym b2,b3 ) )
proof end;

theorem Th46: :: 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 end;

theorem Th47: :: AFVECT0:47
for b1 being WeakAffVect
for b2, b3, b4, b5 being Element of b1 ex b6 being Element of b1 st PSym b2,(PSym b3,(PSym b4,b5)) = PSym b6,b5
proof end;

theorem Th48: :: AFVECT0:48
for b1 being WeakAffVect
for b2, b3, b4 being Element of b1 ex b5 being Element of b1 st PSym b2,(PSym b5,b3) = PSym b5,(PSym b4,b3)
proof end;

definition
let c1 be WeakAffVect;
let c2, c3, c4 be Element of c1;
func Padd c2,c3,c4 -> Element of a1 means :Def5: :: AFVECT0:def 5
a2,a3 // a4,a5;
correctness
existence
ex b1 being Element of c1 st c2,c3 // c4,b1
;
uniqueness
for b1, b2 being Element of c1 st c2,c3 // c4,b1 & c2,c3 // c4,b2 holds
b1 = b2
;
by Def1, Th6;
end;

:: deftheorem Def5 defines Padd AFVECT0:def 5 :
for b1 being WeakAffVect
for b2, b3, b4, b5 being Element of b1 holds
( b5 = Padd b2,b3,b4 iff b2,b3 // b4,b5 );

notation
let c1 be WeakAffVect;
let c2, c3 be Element of c1;
synonym Pcom c2,c3 for PSym c2,c3;
end;

Lemma31: for b1 being WeakAffVect
for b2, b3, b4 being Element of b1 holds
( Pcom b2,b3 = b4 iff b3,b2 // b2,b4 )
proof end;

definition
let c1 be WeakAffVect;
let c2 be Element of c1;
canceled;
func Padd c2 -> BinOp of the carrier of a1 means :Def7: :: AFVECT0:def 7
for b1, b2 being Element of a1 holds a3 . b1,b2 = Padd a2,b1,b2;
existence
ex b1 being BinOp of the carrier of c1 st
for b2, b3 being Element of c1 holds b1 . b2,b3 = Padd c2,b2,b3
proof end;
uniqueness
for b1, b2 being BinOp of the carrier of c1 st ( for b3, b4 being Element of c1 holds b1 . b3,b4 = Padd c2,b3,b4 ) & ( for b3, b4 being Element of c1 holds b2 . b3,b4 = Padd c2,b3,b4 ) holds
b1 = b2
proof end;
end;

:: deftheorem Def6 AFVECT0:def 6 :
canceled;

:: deftheorem Def7 defines Padd AFVECT0:def 7 :
for b1 being WeakAffVect
for b2 being Element of b1
for b3 being BinOp of the carrier of b1 holds
( b3 = Padd b2 iff for b4, b5 being Element of b1 holds b3 . b4,b5 = Padd b2,b4,b5 );

definition
let c1 be WeakAffVect;
let c2 be Element of c1;
func Pcom c2 -> UnOp of the carrier of a1 means :Def8: :: AFVECT0:def 8
for b1 being Element of a1 holds a3 . b1 = Pcom a2,b1;
existence
ex b1 being UnOp of the carrier of c1 st
for b2 being Element of c1 holds b1 . b2 = Pcom c2,b2
proof end;
uniqueness
for b1, b2 being UnOp of the carrier of c1 st ( for b3 being Element of c1 holds b1 . b3 = Pcom c2,b3 ) & ( for b3 being Element of c1 holds b2 . b3 = Pcom c2,b3 ) holds
b1 = b2
proof end;
end;

:: deftheorem Def8 defines Pcom AFVECT0:def 8 :
for b1 being WeakAffVect
for b2 being Element of b1
for b3 being UnOp of the carrier of b1 holds
( b3 = Pcom b2 iff for b4 being Element of b1 holds b3 . b4 = Pcom b2,b4 );

definition
let c1 be WeakAffVect;
let c2 be Element of c1;
func GroupVect c1,c2 -> strict LoopStr equals :: AFVECT0:def 9
LoopStr(# the carrier of a1,(Padd a2),a2 #);
correctness
coherence
LoopStr(# the carrier of c1,(Padd c2),c2 #) is strict LoopStr
;
;
end;

:: deftheorem Def9 defines GroupVect AFVECT0:def 9 :
for b1 being WeakAffVect
for b2 being Element of b1 holds GroupVect b1,b2 = LoopStr(# the carrier of b1,(Padd b2),b2 #);

registration
let c1 be WeakAffVect;
let c2 be Element of c1;
cluster GroupVect a1,a2 -> non empty strict ;
coherence
not GroupVect c1,c2 is empty
proof end;
end;

theorem Th49: :: AFVECT0:49
canceled;

theorem Th50: :: AFVECT0:50
canceled;

theorem Th51: :: AFVECT0:51
canceled;

theorem Th52: :: AFVECT0:52
canceled;

theorem Th53: :: AFVECT0:53
canceled;

theorem Th54: :: AFVECT0:54
canceled;

theorem Th55: :: AFVECT0:55
for b1 being WeakAffVect
for b2 being Element of b1 holds
( the carrier of (GroupVect b1,b2) = the carrier of b1 & the add of (GroupVect b1,b2) = Padd b2 & the Zero of (GroupVect b1,b2) = b2 ) ;

theorem Th56: :: AFVECT0:56
canceled;

theorem Th57: :: AFVECT0:57
for b1 being WeakAffVect
for b2 being Element of b1
for b3, b4 being Element of (GroupVect b1,b2)
for b5, b6 being Element of b1 st b3 = b5 & b4 = b6 holds
b3 + b4 = (Padd b2) . b5,b6 ;

Lemma35: for b1 being WeakAffVect
for b2 being Element of b1
for b3, b4 being Element of (GroupVect b1,b2) holds b3 + b4 = b4 + b3
proof end;

Lemma36: for b1 being WeakAffVect
for b2 being Element of b1
for b3, b4, b5 being Element of (GroupVect b1,b2) holds (b3 + b4) + b5 = b3 + (b4 + b5)
proof end;

Lemma37: for b1 being WeakAffVect
for b2 being Element of b1
for b3 being Element of (GroupVect b1,b2) holds b3 + (0. (GroupVect b1,b2)) = b3
proof end;

Lemma38: for b1 being WeakAffVect
for b2 being Element of b1 holds
( GroupVect b1,b2 is Abelian & GroupVect b1,b2 is add-associative & GroupVect b1,b2 is right_zeroed )
proof end;

Lemma39: for b1 being WeakAffVect
for b2 being Element of b1 holds GroupVect b1,b2 is right_complementable
proof end;

registration
let c1 be WeakAffVect;
let c2 be Element of c1;
cluster GroupVect a1,a2 -> non empty strict Abelian add-associative right_zeroed right_complementable ;
coherence
( GroupVect c1,c2 is Abelian & GroupVect c1,c2 is add-associative & GroupVect c1,c2 is right_zeroed & GroupVect c1,c2 is right_complementable )
by Lemma38, Lemma39;
end;

theorem Th58: :: AFVECT0:58
for b1 being WeakAffVect
for b2 being Element of b1
for b3 being Element of (GroupVect b1,b2)
for b4 being Element of b1 st b3 = b4 holds
- b3 = (Pcom b2) . b4
proof end;

theorem Th59: :: AFVECT0:59
for b1 being WeakAffVect
for b2 being Element of b1 holds 0. (GroupVect b1,b2) = b2 ;

theorem Th60: :: AFVECT0:60
canceled;

theorem Th61: :: AFVECT0:61
canceled;

theorem Th62: :: AFVECT0:62
canceled;

theorem Th63: :: AFVECT0:63
canceled;

theorem Th64: :: AFVECT0:64
canceled;

theorem Th65: :: AFVECT0:65
canceled;

theorem Th66: :: AFVECT0:66
for b1 being WeakAffVect
for b2 being Element of b1
for b3 being Element of (GroupVect b1,b2) ex b4 being Element of (GroupVect b1,b2) st b4 + b4 = b3
proof end;

registration
let c1 be WeakAffVect;
let c2 be Element of c1;
cluster GroupVect a1,a2 -> non empty strict Abelian add-associative right_zeroed right_complementable Two_Divisible ;
coherence
GroupVect c1,c2 is Two_Divisible
proof end;
end;

theorem Th67: :: AFVECT0:67
for b1 being AffVect
for b2 being Element of b1
for b3 being Element of (GroupVect b1,b2) st b3 + b3 = 0. (GroupVect b1,b2) holds
b3 = 0. (GroupVect b1,b2)
proof end;

registration
let c1 be AffVect;
let c2 be Element of c1;
cluster GroupVect a1,a2 -> non empty strict Abelian add-associative right_zeroed right_complementable Fanoian Two_Divisible ;
coherence
GroupVect c1,c2 is Fanoian
proof end;
end;

registration
cluster strict non trivial LoopStr ;
existence
ex b1 being Uniquely_Two_Divisible_Group st
( b1 is strict & not b1 is trivial )
proof end;
end;

definition
mode Proper_Uniquely_Two_Divisible_Group is non trivial Uniquely_Two_Divisible_Group;
end;

theorem Th68: :: AFVECT0:68
canceled;

theorem Th69: :: AFVECT0:69
for b1 being AffVect
for b2 being Element of b1 holds GroupVect b1,b2 is Proper_Uniquely_Two_Divisible_Group
proof end;

registration
let c1 be AffVect;
let c2 be Element of c1;
cluster GroupVect a1,a2 -> non empty strict Abelian add-associative right_zeroed right_complementable Fanoian non trivial Two_Divisible ;
coherence
not GroupVect c1,c2 is trivial
by Th69;
end;

theorem Th70: :: AFVECT0:70
for b1 being Proper_Uniquely_Two_Divisible_Group holds AV b1 is AffVect
proof end;

registration
let c1 be Proper_Uniquely_Two_Divisible_Group;
cluster AV a1 -> non trivial AffVect-like WeakAffVect-like ;
coherence
( AV c1 is AffVect-like & not AV c1 is trivial )
by Th70;
end;

theorem Th71: :: AFVECT0:71
for b1 being strict AffVect
for b2 being Element of b1 holds b1 = AV (GroupVect b1,b2)
proof end;

theorem Th72: :: AFVECT0:72
for b1 being strict AffinStruct holds
( b1 is AffVect iff ex b2 being Proper_Uniquely_Two_Divisible_Group st b1 = AV b2 )
proof end;

definition
let c1, c2 be non empty LoopStr ;
let c3 be Function of the carrier of c1,the carrier of c2;
pred c3 is_Iso_of c1,c2 means :Def10: :: AFVECT0:def 10
( a3 is one-to-one & rng a3 = the carrier of a2 & ( for b1, b2 being Element of a1 holds
( a3 . (b1 + b2) = (a3 . b1) + (a3 . b2) & a3 . (0. a1) = 0. a2 & a3 . (- b1) = - (a3 . b1) ) ) );
end;

:: deftheorem Def10 defines is_Iso_of AFVECT0:def 10 :
for b1, b2 being non empty LoopStr
for b3 being Function of the carrier of b1,the carrier of b2 holds
( b3 is_Iso_of b1,b2 iff ( b3 is one-to-one & rng b3 = the carrier of b2 & ( for b4, b5 being Element of b1 holds
( b3 . (b4 + b5) = (b3 . b4) + (b3 . b5) & b3 . (0. b1) = 0. b2 & b3 . (- b4) = - (b3 . b4) ) ) ) );

definition
let c1, c2 be non empty LoopStr ;
pred c1,c2 are_Iso means :Def11: :: AFVECT0:def 11
ex b1 being Function of the carrier of a1,the carrier of a2 st b1 is_Iso_of a1,a2;
end;

:: deftheorem Def11 defines are_Iso AFVECT0:def 11 :
for b1, b2 being non empty LoopStr holds
( b1,b2 are_Iso iff ex b3 being Function of the carrier of b1,the carrier of b2 st b3 is_Iso_of b1,b2 );

theorem Th73: :: AFVECT0:73
canceled;

theorem Th74: :: AFVECT0:74
canceled;

theorem Th75: :: AFVECT0:75
for b1 being Proper_Uniquely_Two_Divisible_Group
for b2 being Function of the carrier of b1,the carrier of b1
for b3 being Element of b1
for b4 being Element of (AV b1) st ( for b5 being Element of b1 holds b2 . b5 = b3 + b5 ) & b4 = b3 holds
for b5, b6 being Element of b1 holds
( b2 . (b5 + b6) = (Padd b4) . (b2 . b5),(b2 . b6) & b2 . (0. b1) = 0. (GroupVect (AV b1),b4) & b2 . (- b5) = (Pcom b4) . (b2 . b5) )
proof end;

theorem Th76: :: AFVECT0:76
for b1 being Proper_Uniquely_Two_Divisible_Group
for b2 being Function of the carrier of b1,the carrier of b1
for b3 being Element of b1 st ( for b4 being Element of b1 holds b2 . b4 = b3 + b4 ) holds
b2 is one-to-one
proof end;

theorem Th77: :: AFVECT0:77
for b1 being Proper_Uniquely_Two_Divisible_Group
for b2 being Function of the carrier of b1,the carrier of b1
for b3 being Element of b1
for b4 being Element of (AV b1) st ( for b5 being Element of b1 holds b2 . b5 = b3 + b5 ) holds
rng b2 = the carrier of (GroupVect (AV b1),b4)
proof end;

theorem Th78: :: AFVECT0:78
for b1 being Proper_Uniquely_Two_Divisible_Group
for b2 being Element of b1
for b3 being Element of (AV b1) st b3 = b2 holds
b1, GroupVect (AV b1),b3 are_Iso
proof end;