deffunc H1( object ) -> Nat = F1();
defpred S1[ object ] means $1 = 0 ;
A3:
for x being object st x in NAT holds
( ( S1[x] implies H1(x) in F2() ) & ( not S1[x] implies F3(x) in F2() ) )
by A1, A2;
ex f being sequence of F2() st
for x being object st x in NAT holds
( ( S1[x] implies f . x = H1(x) ) & ( not S1[x] implies f . x = F3(x) ) )
from FUNCT_2:sch 5(A3);
then consider f being sequence of F2() such that
A4:
for x being object st x in NAT holds
( ( S1[x] implies f . x = H1(x) ) & ( not S1[x] implies f . x = F3(x) ) )
;
take
f
; ( f . 0 = F1() & ( for x being non zero Element of NAT holds f . x = F3(x) ) )
thus
( f . 0 = F1() & ( for x being non zero Element of NAT holds f . x = F3(x) ) )
by A4; verum