set M = addLoopStr(# I,(add| I,R),(In (0. R),I) #);
reconsider M = addLoopStr(# I,(add| I,R),(In (0. R),I) #) as non empty addLoopStr ;
now
let u be set ; :: thesis: ( u in [:I,I:] implies u in dom the addF of R )
A1: dom the addF of R = [:the carrier of R,the carrier of R:] by FUNCT_2:def 1;
assume u in [:I,I:] ; :: thesis: u in dom the addF of R
hence u in dom the addF of R by A1; :: thesis: verum
end;
then [:I,I:] c= dom the addF of R by TARSKI:def 3;
then A2: dom (the addF of R || I) = [:I,I:] by RELAT_1:91;
A3: for a, b being Element of M
for a9, b9 being Element of I st a9 = a & b9 = b holds
a + b = a9 + b9
proof
let a, b be Element of M; :: thesis: for a9, b9 being Element of I st a9 = a & b9 = b holds
a + b = a9 + b9

let a9, b9 be Element of I; :: thesis: ( a9 = a & b9 = b implies a + b = a9 + b9 )
assume A4: ( a9 = a & b9 = b ) ; :: thesis: a + b = a9 + b9
[a9,b9] in dom (the addF of R || I) by A2;
hence a + b = a9 + b9 by A4, FUNCT_1:70; :: thesis: verum
end;
now
let a, b be Element of M; :: thesis: a + b = b + a
reconsider a9 = a, b9 = b as Element of I ;
thus a + b = a9 + b9 by A3
.= b + a by A3 ; :: thesis: verum
end;
hence Gr I,R is Abelian by RLVECT_1:def 5; :: thesis: verum