set Z = { F5(phi') where phi' is Element of Funcs F1(),F2() : phi' .: F3() c= F4() } ;
consider x being Element of { F5(phi') where phi' is Element of Funcs F1(),F2() : phi' .: F3() c= F4() } ;
assume A4: not { F5(phi') where phi' is Element of Funcs F1(),F2() : phi' .: F3() c= F4() } is finite ; :: thesis: contradiction
then { F5(phi') where phi' is Element of Funcs F1(),F2() : phi' .: F3() c= F4() } <> {} ;
then x in { F5(phi') where phi' is Element of Funcs F1(),F2() : phi' .: F3() c= F4() } ;
then consider phi being Element of Funcs F1(),F2() such that
x = F5(phi) and
A5: phi .: F3() c= F4() ;
now end;
then reconsider FF = Funcs (F1() /\ F3()),(F2() /\ F4()), Z = { F5(phi') where phi' is Element of Funcs F1(),F2() : phi' .: F3() c= F4() } as non empty set by A4, FUNCT_2:11;
A7: ( F1() /\ F3() c= F1() & F2() /\ F4() c= F2() ) by XBOOLE_1:17;
A8: F2() /\ F4() c= F4() by XBOOLE_1:17;
defpred S1[ set , set ] means for phi being Element of Funcs F1(),F2() st phi | F3() = $1 holds
$2 = F5(phi);
A9: now
let f be Element of FF; :: thesis: ex g being Element of Z st S1[f,g]
consider phi being Element of Funcs F1(),F2() such that
A10: phi | (F1() /\ F3()) = f by A7, Th14;
A11: phi | F3() = f by A10, Th15;
ex g being Function st
( f = g & dom g = F1() /\ F3() & rng g c= F2() /\ F4() ) by FUNCT_2:def 2;
then rng (phi | F3()) c= F4() by A8, A11, XBOOLE_1:1;
then phi .: F3() c= F4() by RELAT_1:148;
then F5(phi) in Z ;
then reconsider g' = F5(phi) as Element of Z ;
take g = g'; :: thesis: S1[f,g]
thus S1[f,g] by A3, A11; :: thesis: verum
end;
consider F being Function of FF,Z such that
A12: for f being Element of FF holds S1[f,F . f] from FUNCT_2:sch 3(A9);
Z c= F .: (Funcs (F1() /\ F3()),(F2() /\ F4()))
proof
let y be set ; :: according to TARSKI:def 3 :: thesis: ( not y in Z or y in F .: (Funcs (F1() /\ F3()),(F2() /\ F4())) )
assume y in Z ; :: thesis: y in F .: (Funcs (F1() /\ F3()),(F2() /\ F4()))
then consider phi being Element of Funcs F1(),F2() such that
A13: y = F5(phi) and
A14: phi .: F3() c= F4() ;
A15: dom (phi | F3()) = (dom phi) /\ F3() by RELAT_1:90
.= F1() /\ F3() by FUNCT_2:def 1 ;
rng (phi | F3()) c= F4() by A14, RELAT_1:148;
then A16: rng (phi | F3()) c= F2() /\ F4() by XBOOLE_1:19;
then A17: phi | F3() in Funcs (F1() /\ F3()),(F2() /\ F4()) by A15, FUNCT_2:def 2;
reconsider x = phi | F3() as Element of Funcs (F1() /\ F3()),(F2() /\ F4()) by A15, A16, FUNCT_2:def 2;
A18: x in dom F by A17, FUNCT_2:def 1;
y = F . x by A12, A13;
hence y in F .: (Funcs (F1() /\ F3()),(F2() /\ F4())) by A18, FUNCT_1:def 12; :: thesis: verum
end;
hence contradiction by A1, A2, A4; :: thesis: verum