let X, Y be set ; for p, q being Function-yielding FinSequence st rng (compose p,X) c= Y holds
compose (p ^ q),X = (compose q,Y) * (compose p,X)
let p, q be Function-yielding FinSequence; ( rng (compose p,X) c= Y implies compose (p ^ q),X = (compose q,Y) * (compose p,X) )
assume A1:
rng (compose p,X) c= Y
; compose (p ^ q),X = (compose q,Y) * (compose p,X)
defpred S1[ Function-yielding FinSequence] means compose (p ^ $1),X = (compose $1,Y) * (compose p,X);
A2:
for p being Function-yielding FinSequence st S1[p] holds
for f being Function holds S1[p ^ <*f*>]
proof
let q be
Function-yielding FinSequence;
( S1[q] implies for f being Function holds S1[q ^ <*f*>] )
assume A3:
compose (p ^ q),
X = (compose q,Y) * (compose p,X)
;
for f being Function holds S1[q ^ <*f*>]
let f be
Function;
S1[q ^ <*f*>]
thus compose (p ^ (q ^ <*f*>)),
X =
compose ((p ^ q) ^ <*f*>),
X
by FINSEQ_1:45
.=
f * (compose (p ^ q),X)
by Th43
.=
(f * (compose q,Y)) * (compose p,X)
by A3, RELAT_1:55
.=
(compose (q ^ <*f*>),Y) * (compose p,X)
by Th43
;
verum
end;
compose (p ^ {} ),X =
compose p,X
by FINSEQ_1:47
.=
(id Y) * (compose p,X)
by A1, RELAT_1:79
.=
(compose {} ,Y) * (compose p,X)
by Th41
;
then A4:
S1[ {} ]
;
for q being Function-yielding FinSequence holds S1[q]
from FUNCT_7:sch 5(A4, A2);
hence
compose (p ^ q),X = (compose q,Y) * (compose p,X)
; verum