let D be non empty set ; :: thesis: for d1, d2 being Element of D

for i being natural Number

for T being Tuple of i,D

for F being BinOp of D st F is associative holds

F [:] ((F [;] (d1,T)),d2) = F [;] (d1,(F [:] (T,d2)))

let d1, d2 be Element of D; :: thesis: for i being natural Number

for T being Tuple of i,D

for F being BinOp of D st F is associative holds

F [:] ((F [;] (d1,T)),d2) = F [;] (d1,(F [:] (T,d2)))

let i be natural Number ; :: thesis: for T being Tuple of i,D

for F being BinOp of D st F is associative holds

F [:] ((F [;] (d1,T)),d2) = F [;] (d1,(F [:] (T,d2)))

let T be Tuple of i,D; :: thesis: for F being BinOp of D st F is associative holds

F [:] ((F [;] (d1,T)),d2) = F [;] (d1,(F [:] (T,d2)))

let F be BinOp of D; :: thesis: ( F is associative implies F [:] ((F [;] (d1,T)),d2) = F [;] (d1,(F [:] (T,d2))) )

assume A1: F is associative ; :: thesis: F [:] ((F [;] (d1,T)),d2) = F [;] (d1,(F [:] (T,d2)))

for i being natural Number

for T being Tuple of i,D

for F being BinOp of D st F is associative holds

F [:] ((F [;] (d1,T)),d2) = F [;] (d1,(F [:] (T,d2)))

let d1, d2 be Element of D; :: thesis: for i being natural Number

for T being Tuple of i,D

for F being BinOp of D st F is associative holds

F [:] ((F [;] (d1,T)),d2) = F [;] (d1,(F [:] (T,d2)))

let i be natural Number ; :: thesis: for T being Tuple of i,D

for F being BinOp of D st F is associative holds

F [:] ((F [;] (d1,T)),d2) = F [;] (d1,(F [:] (T,d2)))

let T be Tuple of i,D; :: thesis: for F being BinOp of D st F is associative holds

F [:] ((F [;] (d1,T)),d2) = F [;] (d1,(F [:] (T,d2)))

let F be BinOp of D; :: thesis: ( F is associative implies F [:] ((F [;] (d1,T)),d2) = F [;] (d1,(F [:] (T,d2))) )

assume A1: F is associative ; :: thesis: F [:] ((F [;] (d1,T)),d2) = F [;] (d1,(F [:] (T,d2)))

per cases
( i = 0 or i <> 0 )
;

end;

suppose A2:
i = 0
; :: thesis: F [:] ((F [;] (d1,T)),d2) = F [;] (d1,(F [:] (T,d2)))

then
F [;] (d1,T) = <*> D
by Lm2;

then A3: F [:] ((F [;] (d1,T)),d2) = <*> D by FINSEQ_2:85;

F [:] (T,d2) = <*> D by A2, Lm3;

hence F [:] ((F [;] (d1,T)),d2) = F [;] (d1,(F [:] (T,d2))) by A3, FINSEQ_2:79; :: thesis: verum

end;then A3: F [:] ((F [;] (d1,T)),d2) = <*> D by FINSEQ_2:85;

F [:] (T,d2) = <*> D by A2, Lm3;

hence F [:] ((F [;] (d1,T)),d2) = F [;] (d1,(F [:] (T,d2))) by A3, FINSEQ_2:79; :: thesis: verum