let D be non empty set ; :: thesis: for d being Element of D

for i being natural Number

for T1, T2 being Tuple of i,D

for F being BinOp of D st F is associative holds

(F [:] ((id D),d)) * (F .: (T1,T2)) = F .: (T1,((F [:] ((id D),d)) * T2))

let d be Element of D; :: thesis: for i being natural Number

for T1, T2 being Tuple of i,D

for F being BinOp of D st F is associative holds

(F [:] ((id D),d)) * (F .: (T1,T2)) = F .: (T1,((F [:] ((id D),d)) * T2))

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

for F being BinOp of D st F is associative holds

(F [:] ((id D),d)) * (F .: (T1,T2)) = F .: (T1,((F [:] ((id D),d)) * T2))

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

(F [:] ((id D),d)) * (F .: (T1,T2)) = F .: (T1,((F [:] ((id D),d)) * T2))

let F be BinOp of D; :: thesis: ( F is associative implies (F [:] ((id D),d)) * (F .: (T1,T2)) = F .: (T1,((F [:] ((id D),d)) * T2)) )

assume A1: F is associative ; :: thesis: (F [:] ((id D),d)) * (F .: (T1,T2)) = F .: (T1,((F [:] ((id D),d)) * T2))

for i being natural Number

for T1, T2 being Tuple of i,D

for F being BinOp of D st F is associative holds

(F [:] ((id D),d)) * (F .: (T1,T2)) = F .: (T1,((F [:] ((id D),d)) * T2))

let d be Element of D; :: thesis: for i being natural Number

for T1, T2 being Tuple of i,D

for F being BinOp of D st F is associative holds

(F [:] ((id D),d)) * (F .: (T1,T2)) = F .: (T1,((F [:] ((id D),d)) * T2))

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

for F being BinOp of D st F is associative holds

(F [:] ((id D),d)) * (F .: (T1,T2)) = F .: (T1,((F [:] ((id D),d)) * T2))

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

(F [:] ((id D),d)) * (F .: (T1,T2)) = F .: (T1,((F [:] ((id D),d)) * T2))

let F be BinOp of D; :: thesis: ( F is associative implies (F [:] ((id D),d)) * (F .: (T1,T2)) = F .: (T1,((F [:] ((id D),d)) * T2)) )

assume A1: F is associative ; :: thesis: (F [:] ((id D),d)) * (F .: (T1,T2)) = F .: (T1,((F [:] ((id D),d)) * T2))

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

end;

suppose A2:
i = 0
; :: thesis: (F [:] ((id D),d)) * (F .: (T1,T2)) = F .: (T1,((F [:] ((id D),d)) * T2))

then
F .: (T1,T2) = <*> D
by Lm1;

then A3: (F [:] ((id D),d)) * (F .: (T1,T2)) = <*> D ;

T1 = <*> D by A2;

hence (F [:] ((id D),d)) * (F .: (T1,T2)) = F .: (T1,((F [:] ((id D),d)) * T2)) by A3, FINSEQ_2:73; :: thesis: verum

end;then A3: (F [:] ((id D),d)) * (F .: (T1,T2)) = <*> D ;

T1 = <*> D by A2;

hence (F [:] ((id D),d)) * (F .: (T1,T2)) = F .: (T1,((F [:] ((id D),d)) * T2)) by A3, FINSEQ_2:73; :: thesis: verum

suppose
i <> 0
; :: thesis: (F [:] ((id D),d)) * (F .: (T1,T2)) = F .: (T1,((F [:] ((id D),d)) * T2))

then reconsider C = Seg i as non empty set ;

( T1 is Function of C,D & T2 is Function of C,D ) by Lm4;

hence (F [:] ((id D),d)) * (F .: (T1,T2)) = F .: (T1,((F [:] ((id D),d)) * T2)) by A1, Th25; :: thesis: verum

end;( T1 is Function of C,D & T2 is Function of C,D ) by Lm4;

hence (F [:] ((id D),d)) * (F .: (T1,T2)) = F .: (T1,((F [:] ((id D),d)) * T2)) by A1, Th25; :: thesis: verum