let X be set ; for p being Function-yielding FinSequence
for f being Function holds compose (<*f*> ^ p),X = (compose p,(f .: X)) * (f | X)
let p be Function-yielding FinSequence; for f being Function holds compose (<*f*> ^ p),X = (compose p,(f .: X)) * (f | X)
let f be Function; compose (<*f*> ^ p),X = (compose p,(f .: X)) * (f | X)
defpred S1[ Function-yielding FinSequence] means compose (<*f*> ^ $1),X = (compose $1,(f .: X)) * (f | X);
A1:
for p being Function-yielding FinSequence st S1[p] holds
for f being Function holds S1[p ^ <*f*>]
( <*f*> ^ {} = <*f*> & {} ^ <*f*> = <*f*> )
by FINSEQ_1:47;
then compose (<*f*> ^ {} ),X =
f * (compose {} ,X)
by Th43
.=
f * (id X)
by Th41
.=
f | X
by RELAT_1:94
.=
(id (rng (f | X))) * (f | X)
by RELAT_1:80
.=
(id (f .: X)) * (f | X)
by RELAT_1:148
.=
(compose {} ,(f .: X)) * (f | X)
by Th41
;
then A3:
S1[ {} ]
;
for p being Function-yielding FinSequence holds S1[p]
from FUNCT_7:sch 5(A3, A1);
hence
compose (<*f*> ^ p),X = (compose p,(f .: X)) * (f | X)
; verum