let D be non empty set ; for A, M being BinOp of D
for f, g being FinSequence of D
for F1 being finite set st A is having_a_unity & A is commutative & A is associative holds
for E1 being Enumeration of F1
for CE1, CE2 being non-empty non empty FinSequence of D * st CE1 = (SignGenOp (f,A,F1)) * E1 & CE2 = (SignGenOp ((f ^ g),A,F1)) * E1 holds
for S1 being Element of Fin (dom (App CE1))
for S2 being Element of Fin (dom (App CE2)) st S1 = S2 holds
A $$ (S1,(M "**" (App CE1))) = A $$ (S2,(M "**" (App CE2)))
let A, M be BinOp of D; for f, g being FinSequence of D
for F1 being finite set st A is having_a_unity & A is commutative & A is associative holds
for E1 being Enumeration of F1
for CE1, CE2 being non-empty non empty FinSequence of D * st CE1 = (SignGenOp (f,A,F1)) * E1 & CE2 = (SignGenOp ((f ^ g),A,F1)) * E1 holds
for S1 being Element of Fin (dom (App CE1))
for S2 being Element of Fin (dom (App CE2)) st S1 = S2 holds
A $$ (S1,(M "**" (App CE1))) = A $$ (S2,(M "**" (App CE2)))
let f, g be FinSequence of D; for F1 being finite set st A is having_a_unity & A is commutative & A is associative holds
for E1 being Enumeration of F1
for CE1, CE2 being non-empty non empty FinSequence of D * st CE1 = (SignGenOp (f,A,F1)) * E1 & CE2 = (SignGenOp ((f ^ g),A,F1)) * E1 holds
for S1 being Element of Fin (dom (App CE1))
for S2 being Element of Fin (dom (App CE2)) st S1 = S2 holds
A $$ (S1,(M "**" (App CE1))) = A $$ (S2,(M "**" (App CE2)))
let F1 be finite set ; ( A is having_a_unity & A is commutative & A is associative implies for E1 being Enumeration of F1
for CE1, CE2 being non-empty non empty FinSequence of D * st CE1 = (SignGenOp (f,A,F1)) * E1 & CE2 = (SignGenOp ((f ^ g),A,F1)) * E1 holds
for S1 being Element of Fin (dom (App CE1))
for S2 being Element of Fin (dom (App CE2)) st S1 = S2 holds
A $$ (S1,(M "**" (App CE1))) = A $$ (S2,(M "**" (App CE2))) )
assume A1:
( A is having_a_unity & A is commutative & A is associative )
; for E1 being Enumeration of F1
for CE1, CE2 being non-empty non empty FinSequence of D * st CE1 = (SignGenOp (f,A,F1)) * E1 & CE2 = (SignGenOp ((f ^ g),A,F1)) * E1 holds
for S1 being Element of Fin (dom (App CE1))
for S2 being Element of Fin (dom (App CE2)) st S1 = S2 holds
A $$ (S1,(M "**" (App CE1))) = A $$ (S2,(M "**" (App CE2)))
let E1 be Enumeration of F1; for CE1, CE2 being non-empty non empty FinSequence of D * st CE1 = (SignGenOp (f,A,F1)) * E1 & CE2 = (SignGenOp ((f ^ g),A,F1)) * E1 holds
for S1 being Element of Fin (dom (App CE1))
for S2 being Element of Fin (dom (App CE2)) st S1 = S2 holds
A $$ (S1,(M "**" (App CE1))) = A $$ (S2,(M "**" (App CE2)))
let CE1, CE2 be non-empty non empty FinSequence of D * ; ( CE1 = (SignGenOp (f,A,F1)) * E1 & CE2 = (SignGenOp ((f ^ g),A,F1)) * E1 implies for S1 being Element of Fin (dom (App CE1))
for S2 being Element of Fin (dom (App CE2)) st S1 = S2 holds
A $$ (S1,(M "**" (App CE1))) = A $$ (S2,(M "**" (App CE2))) )
assume A2:
( CE1 = (SignGenOp (f,A,F1)) * E1 & CE2 = (SignGenOp ((f ^ g),A,F1)) * E1 )
; for S1 being Element of Fin (dom (App CE1))
for S2 being Element of Fin (dom (App CE2)) st S1 = S2 holds
A $$ (S1,(M "**" (App CE1))) = A $$ (S2,(M "**" (App CE2)))
let S1 be Element of Fin (dom (App CE1)); for S2 being Element of Fin (dom (App CE2)) st S1 = S2 holds
A $$ (S1,(M "**" (App CE1))) = A $$ (S2,(M "**" (App CE2)))
let S2 be Element of Fin (dom (App CE2)); ( S1 = S2 implies A $$ (S1,(M "**" (App CE1))) = A $$ (S2,(M "**" (App CE2))) )
assume A3:
S1 = S2
; A $$ (S1,(M "**" (App CE1))) = A $$ (S2,(M "**" (App CE2)))
A4:
( S1 c= dom (App CE1) & dom (App CE1) = dom (M "**" (App CE1)) )
by FINSUB_1:def 5, FUNCT_2:def 1;
A5:
( S2 c= dom (App CE2) & dom (App CE2) = dom (M "**" (App CE2)) )
by FINSUB_1:def 5, FUNCT_2:def 1;
then A6:
dom ((M "**" (App CE2)) | S2) = S2
by RELAT_1:62;
for x being object st x in dom ((M "**" (App CE1)) | S1) holds
((M "**" (App CE1)) | S1) . x = ((M "**" (App CE2)) | S2) . x
proof
let x be
object ;
( x in dom ((M "**" (App CE1)) | S1) implies ((M "**" (App CE1)) | S1) . x = ((M "**" (App CE2)) | S2) . x )
assume A7:
x in dom ((M "**" (App CE1)) | S1)
;
((M "**" (App CE1)) | S1) . x = ((M "**" (App CE2)) | S2) . x
A8:
x in dom (App CE1)
by A7, A4;
reconsider x =
x as
FinSequence by A7;
A9:
x in dom (App CE2)
by A7, A5, A3;
(
len CE2 = len x &
len x = len CE1 )
by A8, A9, Th47;
then A10:
(
dom CE2 = dom x &
dom x = dom CE1 )
by FINSEQ_3:30;
(
len ((App CE1) . x) = len x &
len x = len ((App CE2) . x) )
by A8, A9, Def9;
then A11:
(
dom ((App CE1) . x) = dom x &
dom x = dom ((App CE2) . x) )
by FINSEQ_3:30;
for
i being
Nat st
i in dom ((App CE1) . x) holds
((App CE1) . x) . i = ((App CE2) . x) . i
proof
let i be
Nat;
( i in dom ((App CE1) . x) implies ((App CE1) . x) . i = ((App CE2) . x) . i )
assume A12:
i in dom ((App CE1) . x)
;
((App CE1) . x) . i = ((App CE2) . x) . i
(CE2 . i) . (x . i) = (CE1 . i) . (x . i)
proof
A13:
(
x . i in dom (CE1 . i) &
x . i in dom (CE2 . i) )
by Th47, A8, A9, A11, A12;
A14:
CE1 . i = SignGen (
f,
A,
(E1 . i))
by A2, A12, A10, A11, Th80;
A15:
CE2 . i = SignGen (
(f ^ g),
A,
(E1 . i))
by A2, A12, A10, A11, Th80;
A16:
x . i in dom f
by Def11, A13, A14;
end;
hence ((App CE1) . x) . i =
(CE2 . i) . (x . i)
by A12, A11, A8, Def9
.=
((App CE2) . x) . i
by A12, A11, A9, Def9
;
verum
end;
then A19:
(App CE1) . x = (App CE2) . x
by A11;
((M "**" (App CE1)) | S1) . x =
(M "**" (App CE1)) . x
by A7, FUNCT_1:49
.=
M "**" ((App CE2) . x)
by A19, A7, A4, Def10
.=
(M "**" (App CE2)) . x
by A7, A5, A3, Def10
.=
((M "**" (App CE2)) | S2) . x
by A7, A3, FUNCT_1:49
;
hence
((M "**" (App CE1)) | S1) . x = ((M "**" (App CE2)) | S2) . x
;
verum
end;
then
(M "**" (App CE1)) | S1 = (M "**" (App CE2)) | S2
by A3, A4, RELAT_1:62, A6;
hence
A $$ (S1,(M "**" (App CE1))) = A $$ (S2,(M "**" (App CE2)))
by A1, A3, Th1; verum