let V be non empty add-associative addLoopStr ; :: thesis: for M1, M2, M3 being Subset of V holds (M1 + M2) + M3 = M1 + (M2 + M3)
let M1, M2, M3 be Subset of V; :: thesis: (M1 + M2) + M3 = M1 + (M2 + M3)
for x being Element of V st x in M1 + (M2 + M3) holds
x in (M1 + M2) + M3
proof
let x be Element of V; :: thesis: ( x in M1 + (M2 + M3) implies x in (M1 + M2) + M3 )
assume x in M1 + (M2 + M3) ; :: thesis: x in (M1 + M2) + M3
then consider x1, x9 being Element of V such that
A1: ( x = x1 + x9 & x1 in M1 ) and
A2: x9 in M2 + M3 ;
consider x2, x3 being Element of V such that
A3: ( x9 = x2 + x3 & x2 in M2 ) and
A4: x3 in M3 by A2;
( x = (x1 + x2) + x3 & x1 + x2 in M1 + M2 ) by A1, A3, RLVECT_1:def 6;
hence x in (M1 + M2) + M3 by A4; :: thesis: verum
end;
then A5: M1 + (M2 + M3) c= (M1 + M2) + M3 by SUBSET_1:7;
for x being Element of V st x in (M1 + M2) + M3 holds
x in M1 + (M2 + M3)
proof
let x be Element of V; :: thesis: ( x in (M1 + M2) + M3 implies x in M1 + (M2 + M3) )
assume x in (M1 + M2) + M3 ; :: thesis: x in M1 + (M2 + M3)
then consider x9, x3 being Element of V such that
A6: x = x9 + x3 and
A7: x9 in M1 + M2 and
A8: x3 in M3 ;
consider x1, x2 being Element of V such that
A9: x9 = x1 + x2 and
A10: x1 in M1 and
A11: x2 in M2 by A7;
( x = x1 + (x2 + x3) & x2 + x3 in M2 + M3 ) by A6, A8, A9, A11, RLVECT_1:def 6;
hence x in M1 + (M2 + M3) by A10; :: thesis: verum
end;
then (M1 + M2) + M3 c= M1 + (M2 + M3) by SUBSET_1:7;
hence (M1 + M2) + M3 = M1 + (M2 + M3) by A5, XBOOLE_0:def 10; :: thesis: verum