let X be non empty set ; :: thesis: for L being non empty add-associative addLoopStr
for f, g, h being Function of X,L holds (f '+' g) '+' h = f '+' (g '+' h)

let L be non empty add-associative addLoopStr ; :: thesis: for f, g, h being Function of X,L holds (f '+' g) '+' h = f '+' (g '+' h)
let f, g, h be Function of X,L; :: thesis: (f '+' g) '+' h = f '+' (g '+' h)
now :: thesis: for o being object st o in X holds
((f '+' g) '+' h) . o = (f '+' (g '+' h)) . o
let o be object ; :: thesis: ( o in X implies ((f '+' g) '+' h) . o = (f '+' (g '+' h)) . o )
assume o in X ; :: thesis: ((f '+' g) '+' h) . o = (f '+' (g '+' h)) . o
then reconsider x = o as Element of X ;
thus ((f '+' g) '+' h) . o = ((f '+' g) . x) + (h . x) by defp
.= ((f . x) + (g . x)) + (h . x) by defp
.= (f . x) + ((g . x) + (h . x)) by RLVECT_1:def 3
.= (f . x) + ((g '+' h) . x) by defp
.= (f '+' (g '+' h)) . o by defp ; :: thesis: verum
end;
hence (f '+' g) '+' h = f '+' (g '+' h) by FUNCT_2:12; :: thesis: verum