consider m1 being Element of NAT such that
A2:
( 0 <= m1 & P1[F1() . m1] )
by A1;
defpred S1[ Nat] means P1[F1() . $1];
A3:
ex m being Nat st S1[m]
by A2;
consider M being Nat such that
A4:
( S1[M] & ( for n being Nat st S1[n] holds
M <= n ) )
from NAT_1:sch 5(A3);
defpred S2[ Nat, set , set ] means for n, m being Element of NAT st $2 = n & $3 = m holds
( n < m & P1[F1() . m] & ( for k being Element of NAT st n < k & P1[F1() . k] holds
m <= k ) );
A7:
for n, x being Element of NAT ex y being Element of NAT st S2[n,x,y]
reconsider M' = M as Element of NAT by ORDINAL1:def 13;
consider F being Function of NAT ,NAT such that
A10:
( F . 0 = M' & ( for n being Element of NAT holds S2[n,F . n,F . (n + 1)] ) )
from RECDEF_1:sch 2(A7);
A11:
( dom F = NAT & rng F c= NAT )
by FUNCT_2:def 1;
rng F c= REAL
by XBOOLE_1:1;
then reconsider F = F as Real_Sequence by A11, RELSET_1:11;
then reconsider F = F as V35() sequence of NAT by SEQM_3:def 11;
take
F
; :: thesis: ( ( for n being Element of NAT holds P1[(F1() * F) . n] ) & ( for n being Element of NAT st ( for r being Real st r = F1() . n holds
P1[r] ) holds
ex m being Element of NAT st n = F . m ) )
set q = F1() * F;
defpred S3[ Nat] means P1[(F1() * F) . $1];
A13:
S3[ 0 ]
by A4, A10, FUNCT_2:21;
A14:
for k being Element of NAT st S3[k] holds
S3[k + 1]
thus
for n being Element of NAT holds S3[n]
from NAT_1:sch 1(A13, A14); :: thesis: for n being Element of NAT st ( for r being Real st r = F1() . n holds
P1[r] ) holds
ex m being Element of NAT st n = F . m
A15:
for n being Element of NAT st P1[F1() . n] holds
ex m being Element of NAT st F . m = n
let n be Element of NAT ; :: thesis: ( ( for r being Real st r = F1() . n holds
P1[r] ) implies ex m being Element of NAT st n = F . m )
assume
for r being Real st r = F1() . n holds
P1[r]
; :: thesis: ex m being Element of NAT st n = F . m
then
P1[F1() . n]
;
then consider m being Element of NAT such that
A27:
F . m = n
by A15;
take
m
; :: thesis: n = F . m
thus
n = F . m
by A27; :: thesis: verum