defpred S1[ set ] means In $1,NAT > 2;
defpred S2[ set ] means $1 = 2;
defpred S3[ set ] means $1 = 1;
defpred S4[ set ] means $1 = 0 ;
deffunc H1( Element of NAT , set ) -> set = [($2 `2_5 ),($2 `3_5 ),($2 `4_5 ),($2 `5_5 ),F5(($1 + 1),($2 `2_5 ),($2 `3_5 ),($2 `4_5 ),($2 `5_5 ))];
set r05 = F5(0 ,F1(),F2(),F3(),F4());
set r15 = F5(1,F2(),F3(),F4(),F5(0 ,F1(),F2(),F3(),F4()));
set r25 = F5(2,F3(),F4(),F5(0 ,F1(),F2(),F3(),F4()),F5(1,F2(),F3(),F4(),F5(0 ,F1(),F2(),F3(),F4())));
set r35 = F5(3,F4(),F5(0 ,F1(),F2(),F3(),F4()),F5(1,F2(),F3(),F4(),F5(0 ,F1(),F2(),F3(),F4())),F5(2,F3(),F4(),F5(0 ,F1(),F2(),F3(),F4()),F5(1,F2(),F3(),F4(),F5(0 ,F1(),F2(),F3(),F4()))));
deffunc H2( Nat, set ) -> set = H1($1 + 3,$2);
consider h being Function such that
dom h = NAT
and
A1:
h . 0 = [F4(),F5(0 ,F1(),F2(),F3(),F4()),F5(1,F2(),F3(),F4(),F5(0 ,F1(),F2(),F3(),F4())),F5(2,F3(),F4(),F5(0 ,F1(),F2(),F3(),F4()),F5(1,F2(),F3(),F4(),F5(0 ,F1(),F2(),F3(),F4()))),F5(3,F4(),F5(0 ,F1(),F2(),F3(),F4()),F5(1,F2(),F3(),F4(),F5(0 ,F1(),F2(),F3(),F4())),F5(2,F3(),F4(),F5(0 ,F1(),F2(),F3(),F4()),F5(1,F2(),F3(),F4(),F5(0 ,F1(),F2(),F3(),F4()))))]
and
A2:
for n being Nat holds h . (n + 1) = H2(n,h . n)
from NAT_1:sch 11();
deffunc H3( set ) -> set = h . ((In $1,NAT ) -' 3);
deffunc H4( set ) -> set = [F3(),F4(),F5(0 ,F1(),F2(),F3(),F4()),F5(1,F2(),F3(),F4(),F5(0 ,F1(),F2(),F3(),F4())),F5(2,F3(),F4(),F5(0 ,F1(),F2(),F3(),F4()),F5(1,F2(),F3(),F4(),F5(0 ,F1(),F2(),F3(),F4())))];
deffunc H5( set ) -> set = [F2(),F3(),F4(),F5(0 ,F1(),F2(),F3(),F4()),F5(1,F2(),F3(),F4(),F5(0 ,F1(),F2(),F3(),F4()))];
deffunc H6( set ) -> set = [F1(),F2(),F3(),F4(),F5(0 ,F1(),F2(),F3(),F4())];
A3:
for c being set holds
( not c in NAT or S4[c] or S3[c] or S2[c] or S1[c] )
proof
let c be
set ;
( not c in NAT or S4[c] or S3[c] or S2[c] or S1[c] )
assume
c in NAT
;
( S4[c] or S3[c] or S2[c] or S1[c] )
then
In c,
NAT = c
by FUNCT_7:def 1;
hence
(
S4[
c] or
S3[
c] or
S2[
c] or
S1[
c] )
by NAT_1:27;
verum
end;
A4:
for c being set st c in NAT holds
( ( S4[c] implies not S3[c] ) & ( S4[c] implies not S2[c] ) & ( S4[c] implies not S1[c] ) & ( S3[c] implies not S2[c] ) & ( S3[c] implies not S1[c] ) & ( S2[c] implies not S1[c] ) )
proof
let c be
set ;
( c in NAT implies ( ( S4[c] implies not S3[c] ) & ( S4[c] implies not S2[c] ) & ( S4[c] implies not S1[c] ) & ( S3[c] implies not S2[c] ) & ( S3[c] implies not S1[c] ) & ( S2[c] implies not S1[c] ) ) )
assume
c in NAT
;
( ( S4[c] implies not S3[c] ) & ( S4[c] implies not S2[c] ) & ( S4[c] implies not S1[c] ) & ( S3[c] implies not S2[c] ) & ( S3[c] implies not S1[c] ) & ( S2[c] implies not S1[c] ) )
then
In c,
NAT = c
by FUNCT_7:def 1;
hence
( (
S4[
c] implies not
S3[
c] ) & (
S4[
c] implies not
S2[
c] ) & (
S4[
c] implies not
S1[
c] ) & (
S3[
c] implies not
S2[
c] ) & (
S3[
c] implies not
S1[
c] ) & (
S2[
c] implies not
S1[
c] ) )
;
verum
end;
consider g being Function such that
dom g = NAT
and
A5:
for x being set st x in NAT holds
( ( S4[x] implies g . x = H6(x) ) & ( S3[x] implies g . x = H5(x) ) & ( S2[x] implies g . x = H4(x) ) & ( S1[x] implies g . x = H3(x) ) )
from RECDEF_2:sch 2(A4, A3);
A6:
In 3,NAT = 3
by FUNCT_7:def 1;
then A7: g . 3 =
H3(3)
by A5
.=
[F4(),F5(0 ,F1(),F2(),F3(),F4()),F5(1,F2(),F3(),F4(),F5(0 ,F1(),F2(),F3(),F4())),F5(2,F3(),F4(),F5(0 ,F1(),F2(),F3(),F4()),F5(1,F2(),F3(),F4(),F5(0 ,F1(),F2(),F3(),F4()))),F5(3,F4(),F5(0 ,F1(),F2(),F3(),F4()),F5(1,F2(),F3(),F4(),F5(0 ,F1(),F2(),F3(),F4())),F5(2,F3(),F4(),F5(0 ,F1(),F2(),F3(),F4()),F5(1,F2(),F3(),F4(),F5(0 ,F1(),F2(),F3(),F4()))))]
by A1, A6, XREAL_1:234
;
A8:
g . 2 = [F3(),F4(),F5(0 ,F1(),F2(),F3(),F4()),F5(1,F2(),F3(),F4(),F5(0 ,F1(),F2(),F3(),F4())),F5(2,F3(),F4(),F5(0 ,F1(),F2(),F3(),F4()),F5(1,F2(),F3(),F4(),F5(0 ,F1(),F2(),F3(),F4())))]
by A5;
then A9: (g . (0 + 2)) `3_5 =
F5(0 ,F1(),F2(),F3(),F4())
by Def10
.=
(g . (0 + 3)) `2_5
by A7, Def9
;
A10:
g . 1 = [F2(),F3(),F4(),F5(0 ,F1(),F2(),F3(),F4()),F5(1,F2(),F3(),F4(),F5(0 ,F1(),F2(),F3(),F4()))]
by A5;
then A11: (g . (0 + 1)) `2_5 =
F3()
by Def9
.=
(g . (0 + 2)) `1_5
by A8, Def8
;
A12:
g . 0 = [F1(),F2(),F3(),F4(),F5(0 ,F1(),F2(),F3(),F4())]
by A5;
then A13: (g . 0 ) `3_5 =
F3()
by Def10
.=
(g . (0 + 1)) `2_5
by A10, Def9
;
A14: (g . (0 + 2)) `5_5 =
F5(2,F3(),F4(),F5(0 ,F1(),F2(),F3(),F4()),F5(1,F2(),F3(),F4(),F5(0 ,F1(),F2(),F3(),F4())))
by A8, Def12
.=
(g . (0 + 3)) `4_5
by A7, Def11
;
A15: (g . (0 + 2)) `4_5 =
F5(1,F2(),F3(),F4(),F5(0 ,F1(),F2(),F3(),F4()))
by A8, Def11
.=
(g . (0 + 3)) `3_5
by A7, Def10
;
A16: (g . (0 + 1)) `4_5 =
F5(0 ,F1(),F2(),F3(),F4())
by A10, Def11
.=
(g . (0 + 2)) `3_5
by A8, Def10
;
A17: (g . (0 + 1)) `3_5 =
F4()
by A10, Def10
.=
(g . (0 + 2)) `2_5
by A8, Def9
;
A18: (g . (0 + 1)) `5_5 =
F5(1,F2(),F3(),F4(),F5(0 ,F1(),F2(),F3(),F4()))
by A10, Def12
.=
(g . (0 + 2)) `4_5
by A8, Def11
;
A19: (g . 0 ) `5_5 =
F5(0 ,F1(),F2(),F3(),F4())
by A12, Def12
.=
(g . (0 + 1)) `4_5
by A10, Def11
;
A20: (g . 0 ) `4_5 =
F4()
by A12, Def11
.=
(g . (0 + 1)) `3_5
by A10, Def10
;
A21: (g . (0 + 1)) `1_5 =
F2()
by A10, Def8
.=
(g . 0 ) `2_5
by A12, Def9
;
A22:
for n being Element of NAT holds g . (n + 4) = H1(n + 3,g . (n + 3))
proof
let n be
Element of
NAT ;
g . (n + 4) = H1(n + 3,g . (n + 3))
A23:
In (n + 3),
NAT = n + 3
by FUNCT_7:def 1;
0 + 2
< n + 3
by NAT_1:2, XREAL_1:10;
then A24:
g . (n + 3) =
H3(
n + 3)
by A5, A23
.=
h . n
by A23, NAT_D:34
;
A25:
In (n + 4),
NAT = n + 4
by FUNCT_7:def 1;
A26:
(
(n + 4) - 3
= n + (4 - 3) &
0 <= n + 1 )
by NAT_1:2;
0 + 2
< n + 4
by NAT_1:2, XREAL_1:10;
hence g . (n + 4) =
H3(
n + 4)
by A5, A25
.=
h . (n + 1)
by A25, A26, XREAL_0:def 2
.=
H1(
n + 3,
g . (n + 3))
by A2, A24
;
verum
end;
deffunc H7( Element of NAT ) -> set = (g . $1) `1_5 ;
consider f being Function such that
A27:
dom f = NAT
and
A28:
for x being Element of NAT holds f . x = H7(x)
from FUNCT_1:sch 4();
A29: f . (0 + 4) =
(g . (0 + 4)) `1_5
by A28
.=
H1(0 + 3,g . (0 + 3)) `1_5
by A22
.=
(g . (0 + 3)) `2_5
by Def8
;
take
f
; ( dom f = NAT & f . 0 = F1() & f . 1 = F2() & f . 2 = F3() & f . 3 = F4() & ( for n being Element of NAT holds f . (n + 4) = F5(n,(f . n),(f . (n + 1)),(f . (n + 2)),(f . (n + 3))) ) )
thus
dom f = NAT
by A27; ( f . 0 = F1() & f . 1 = F2() & f . 2 = F3() & f . 3 = F4() & ( for n being Element of NAT holds f . (n + 4) = F5(n,(f . n),(f . (n + 1)),(f . (n + 2)),(f . (n + 3))) ) )
defpred S5[ Element of NAT ] means ( f . ($1 + 4) = (g . ($1 + 3)) `2_5 & (g . $1) `2_5 = (g . ($1 + 1)) `1_5 & (g . $1) `3_5 = (g . ($1 + 1)) `2_5 & (g . $1) `4_5 = (g . ($1 + 1)) `3_5 & (g . $1) `5_5 = (g . ($1 + 1)) `4_5 & (g . ($1 + 1)) `2_5 = (g . ($1 + 2)) `1_5 & (g . ($1 + 1)) `3_5 = (g . ($1 + 2)) `2_5 & (g . ($1 + 1)) `4_5 = (g . ($1 + 2)) `3_5 & (g . ($1 + 1)) `5_5 = (g . ($1 + 2)) `4_5 & (g . ($1 + 2)) `2_5 = (g . ($1 + 3)) `1_5 & (g . ($1 + 2)) `3_5 = (g . ($1 + 3)) `2_5 & (g . ($1 + 2)) `4_5 = (g . ($1 + 3)) `3_5 & (g . ($1 + 2)) `5_5 = (g . ($1 + 3)) `4_5 & (g . ($1 + 3)) `2_5 = (g . ($1 + 4)) `1_5 & (g . ($1 + 3)) `3_5 = (g . ($1 + 4)) `2_5 & (g . ($1 + 3)) `4_5 = (g . ($1 + 4)) `3_5 & (g . ($1 + 3)) `5_5 = (g . ($1 + 4)) `4_5 & f . ($1 + 4) = F5($1,(f . $1),(f . ($1 + 1)),(f . ($1 + 2)),(f . ($1 + 3))) );
A30: (g . (0 + 3)) `2_5 =
H1(0 + 3,g . (0 + 3)) `1_5
by Def8
.=
(g . (0 + 4)) `1_5
by A22
;
thus A31: f . 0 =
(g . 0 ) `1_5
by A28
.=
F1()
by A12, Def8
; ( f . 1 = F2() & f . 2 = F3() & f . 3 = F4() & ( for n being Element of NAT holds f . (n + 4) = F5(n,(f . n),(f . (n + 1)),(f . (n + 2)),(f . (n + 3))) ) )
thus A32: f . 1 =
(g . 1) `1_5
by A28
.=
F2()
by A10, Def8
; ( f . 2 = F3() & f . 3 = F4() & ( for n being Element of NAT holds f . (n + 4) = F5(n,(f . n),(f . (n + 1)),(f . (n + 2)),(f . (n + 3))) ) )
thus A33: f . 2 =
(g . 2) `1_5
by A28
.=
F3()
by A8, Def8
; ( f . 3 = F4() & ( for n being Element of NAT holds f . (n + 4) = F5(n,(f . n),(f . (n + 1)),(f . (n + 2)),(f . (n + 3))) ) )
thus A34: f . 3 =
(g . 3) `1_5
by A28
.=
F4()
by A7, Def8
; for n being Element of NAT holds f . (n + 4) = F5(n,(f . n),(f . (n + 1)),(f . (n + 2)),(f . (n + 3)))
A35:
for x being Element of NAT st S5[x] holds
S5[x + 1]
proof
let x be
Element of
NAT ;
( S5[x] implies S5[x + 1] )
assume A36:
S5[
x]
;
S5[x + 1]
then A37:
f . ((x + 1) + 1) = (g . x) `3_5
by A28;
thus A38:
f . ((x + 1) + 4) =
(g . ((x + 1) + 4)) `1_5
by A28
.=
H1(
(x + 1) + 3,
g . ((x + 1) + 3))
`1_5
by A22
.=
(g . ((x + 1) + 3)) `2_5
by Def8
;
( (g . (x + 1)) `2_5 = (g . ((x + 1) + 1)) `1_5 & (g . (x + 1)) `3_5 = (g . ((x + 1) + 1)) `2_5 & (g . (x + 1)) `4_5 = (g . ((x + 1) + 1)) `3_5 & (g . (x + 1)) `5_5 = (g . ((x + 1) + 1)) `4_5 & (g . ((x + 1) + 1)) `2_5 = (g . ((x + 1) + 2)) `1_5 & (g . ((x + 1) + 1)) `3_5 = (g . ((x + 1) + 2)) `2_5 & (g . ((x + 1) + 1)) `4_5 = (g . ((x + 1) + 2)) `3_5 & (g . ((x + 1) + 1)) `5_5 = (g . ((x + 1) + 2)) `4_5 & (g . ((x + 1) + 2)) `2_5 = (g . ((x + 1) + 3)) `1_5 & (g . ((x + 1) + 2)) `3_5 = (g . ((x + 1) + 3)) `2_5 & (g . ((x + 1) + 2)) `4_5 = (g . ((x + 1) + 3)) `3_5 & (g . ((x + 1) + 2)) `5_5 = (g . ((x + 1) + 3)) `4_5 & (g . ((x + 1) + 3)) `2_5 = (g . ((x + 1) + 4)) `1_5 & (g . ((x + 1) + 3)) `3_5 = (g . ((x + 1) + 4)) `2_5 & (g . ((x + 1) + 3)) `4_5 = (g . ((x + 1) + 4)) `3_5 & (g . ((x + 1) + 3)) `5_5 = (g . ((x + 1) + 4)) `4_5 & f . ((x + 1) + 4) = F5((x + 1),(f . (x + 1)),(f . ((x + 1) + 1)),(f . ((x + 1) + 2)),(f . ((x + 1) + 3))) )
thus
(g . ((x + 1) + 1)) `1_5 = (g . (x + 1)) `2_5
by A36;
( (g . (x + 1)) `3_5 = (g . ((x + 1) + 1)) `2_5 & (g . (x + 1)) `4_5 = (g . ((x + 1) + 1)) `3_5 & (g . (x + 1)) `5_5 = (g . ((x + 1) + 1)) `4_5 & (g . ((x + 1) + 1)) `2_5 = (g . ((x + 1) + 2)) `1_5 & (g . ((x + 1) + 1)) `3_5 = (g . ((x + 1) + 2)) `2_5 & (g . ((x + 1) + 1)) `4_5 = (g . ((x + 1) + 2)) `3_5 & (g . ((x + 1) + 1)) `5_5 = (g . ((x + 1) + 2)) `4_5 & (g . ((x + 1) + 2)) `2_5 = (g . ((x + 1) + 3)) `1_5 & (g . ((x + 1) + 2)) `3_5 = (g . ((x + 1) + 3)) `2_5 & (g . ((x + 1) + 2)) `4_5 = (g . ((x + 1) + 3)) `3_5 & (g . ((x + 1) + 2)) `5_5 = (g . ((x + 1) + 3)) `4_5 & (g . ((x + 1) + 3)) `2_5 = (g . ((x + 1) + 4)) `1_5 & (g . ((x + 1) + 3)) `3_5 = (g . ((x + 1) + 4)) `2_5 & (g . ((x + 1) + 3)) `4_5 = (g . ((x + 1) + 4)) `3_5 & (g . ((x + 1) + 3)) `5_5 = (g . ((x + 1) + 4)) `4_5 & f . ((x + 1) + 4) = F5((x + 1),(f . (x + 1)),(f . ((x + 1) + 1)),(f . ((x + 1) + 2)),(f . ((x + 1) + 3))) )
thus
(g . (x + 1)) `3_5 = (g . ((x + 1) + 1)) `2_5
by A36;
( (g . (x + 1)) `4_5 = (g . ((x + 1) + 1)) `3_5 & (g . (x + 1)) `5_5 = (g . ((x + 1) + 1)) `4_5 & (g . ((x + 1) + 1)) `2_5 = (g . ((x + 1) + 2)) `1_5 & (g . ((x + 1) + 1)) `3_5 = (g . ((x + 1) + 2)) `2_5 & (g . ((x + 1) + 1)) `4_5 = (g . ((x + 1) + 2)) `3_5 & (g . ((x + 1) + 1)) `5_5 = (g . ((x + 1) + 2)) `4_5 & (g . ((x + 1) + 2)) `2_5 = (g . ((x + 1) + 3)) `1_5 & (g . ((x + 1) + 2)) `3_5 = (g . ((x + 1) + 3)) `2_5 & (g . ((x + 1) + 2)) `4_5 = (g . ((x + 1) + 3)) `3_5 & (g . ((x + 1) + 2)) `5_5 = (g . ((x + 1) + 3)) `4_5 & (g . ((x + 1) + 3)) `2_5 = (g . ((x + 1) + 4)) `1_5 & (g . ((x + 1) + 3)) `3_5 = (g . ((x + 1) + 4)) `2_5 & (g . ((x + 1) + 3)) `4_5 = (g . ((x + 1) + 4)) `3_5 & (g . ((x + 1) + 3)) `5_5 = (g . ((x + 1) + 4)) `4_5 & f . ((x + 1) + 4) = F5((x + 1),(f . (x + 1)),(f . ((x + 1) + 1)),(f . ((x + 1) + 2)),(f . ((x + 1) + 3))) )
thus
(g . (x + 1)) `4_5 = (g . ((x + 1) + 1)) `3_5
by A36;
( (g . (x + 1)) `5_5 = (g . ((x + 1) + 1)) `4_5 & (g . ((x + 1) + 1)) `2_5 = (g . ((x + 1) + 2)) `1_5 & (g . ((x + 1) + 1)) `3_5 = (g . ((x + 1) + 2)) `2_5 & (g . ((x + 1) + 1)) `4_5 = (g . ((x + 1) + 2)) `3_5 & (g . ((x + 1) + 1)) `5_5 = (g . ((x + 1) + 2)) `4_5 & (g . ((x + 1) + 2)) `2_5 = (g . ((x + 1) + 3)) `1_5 & (g . ((x + 1) + 2)) `3_5 = (g . ((x + 1) + 3)) `2_5 & (g . ((x + 1) + 2)) `4_5 = (g . ((x + 1) + 3)) `3_5 & (g . ((x + 1) + 2)) `5_5 = (g . ((x + 1) + 3)) `4_5 & (g . ((x + 1) + 3)) `2_5 = (g . ((x + 1) + 4)) `1_5 & (g . ((x + 1) + 3)) `3_5 = (g . ((x + 1) + 4)) `2_5 & (g . ((x + 1) + 3)) `4_5 = (g . ((x + 1) + 4)) `3_5 & (g . ((x + 1) + 3)) `5_5 = (g . ((x + 1) + 4)) `4_5 & f . ((x + 1) + 4) = F5((x + 1),(f . (x + 1)),(f . ((x + 1) + 1)),(f . ((x + 1) + 2)),(f . ((x + 1) + 3))) )
thus
(g . (x + 1)) `5_5 = (g . ((x + 1) + 1)) `4_5
by A36;
( (g . ((x + 1) + 1)) `2_5 = (g . ((x + 1) + 2)) `1_5 & (g . ((x + 1) + 1)) `3_5 = (g . ((x + 1) + 2)) `2_5 & (g . ((x + 1) + 1)) `4_5 = (g . ((x + 1) + 2)) `3_5 & (g . ((x + 1) + 1)) `5_5 = (g . ((x + 1) + 2)) `4_5 & (g . ((x + 1) + 2)) `2_5 = (g . ((x + 1) + 3)) `1_5 & (g . ((x + 1) + 2)) `3_5 = (g . ((x + 1) + 3)) `2_5 & (g . ((x + 1) + 2)) `4_5 = (g . ((x + 1) + 3)) `3_5 & (g . ((x + 1) + 2)) `5_5 = (g . ((x + 1) + 3)) `4_5 & (g . ((x + 1) + 3)) `2_5 = (g . ((x + 1) + 4)) `1_5 & (g . ((x + 1) + 3)) `3_5 = (g . ((x + 1) + 4)) `2_5 & (g . ((x + 1) + 3)) `4_5 = (g . ((x + 1) + 4)) `3_5 & (g . ((x + 1) + 3)) `5_5 = (g . ((x + 1) + 4)) `4_5 & f . ((x + 1) + 4) = F5((x + 1),(f . (x + 1)),(f . ((x + 1) + 1)),(f . ((x + 1) + 2)),(f . ((x + 1) + 3))) )
thus
(g . ((x + 1) + 1)) `2_5 = (g . ((x + 1) + 2)) `1_5
by A36;
( (g . ((x + 1) + 1)) `3_5 = (g . ((x + 1) + 2)) `2_5 & (g . ((x + 1) + 1)) `4_5 = (g . ((x + 1) + 2)) `3_5 & (g . ((x + 1) + 1)) `5_5 = (g . ((x + 1) + 2)) `4_5 & (g . ((x + 1) + 2)) `2_5 = (g . ((x + 1) + 3)) `1_5 & (g . ((x + 1) + 2)) `3_5 = (g . ((x + 1) + 3)) `2_5 & (g . ((x + 1) + 2)) `4_5 = (g . ((x + 1) + 3)) `3_5 & (g . ((x + 1) + 2)) `5_5 = (g . ((x + 1) + 3)) `4_5 & (g . ((x + 1) + 3)) `2_5 = (g . ((x + 1) + 4)) `1_5 & (g . ((x + 1) + 3)) `3_5 = (g . ((x + 1) + 4)) `2_5 & (g . ((x + 1) + 3)) `4_5 = (g . ((x + 1) + 4)) `3_5 & (g . ((x + 1) + 3)) `5_5 = (g . ((x + 1) + 4)) `4_5 & f . ((x + 1) + 4) = F5((x + 1),(f . (x + 1)),(f . ((x + 1) + 1)),(f . ((x + 1) + 2)),(f . ((x + 1) + 3))) )
thus
(g . ((x + 1) + 1)) `3_5 = (g . ((x + 1) + 2)) `2_5
by A36;
( (g . ((x + 1) + 1)) `4_5 = (g . ((x + 1) + 2)) `3_5 & (g . ((x + 1) + 1)) `5_5 = (g . ((x + 1) + 2)) `4_5 & (g . ((x + 1) + 2)) `2_5 = (g . ((x + 1) + 3)) `1_5 & (g . ((x + 1) + 2)) `3_5 = (g . ((x + 1) + 3)) `2_5 & (g . ((x + 1) + 2)) `4_5 = (g . ((x + 1) + 3)) `3_5 & (g . ((x + 1) + 2)) `5_5 = (g . ((x + 1) + 3)) `4_5 & (g . ((x + 1) + 3)) `2_5 = (g . ((x + 1) + 4)) `1_5 & (g . ((x + 1) + 3)) `3_5 = (g . ((x + 1) + 4)) `2_5 & (g . ((x + 1) + 3)) `4_5 = (g . ((x + 1) + 4)) `3_5 & (g . ((x + 1) + 3)) `5_5 = (g . ((x + 1) + 4)) `4_5 & f . ((x + 1) + 4) = F5((x + 1),(f . (x + 1)),(f . ((x + 1) + 1)),(f . ((x + 1) + 2)),(f . ((x + 1) + 3))) )
thus
(g . ((x + 1) + 1)) `4_5 = (g . ((x + 1) + 2)) `3_5
by A36;
( (g . ((x + 1) + 1)) `5_5 = (g . ((x + 1) + 2)) `4_5 & (g . ((x + 1) + 2)) `2_5 = (g . ((x + 1) + 3)) `1_5 & (g . ((x + 1) + 2)) `3_5 = (g . ((x + 1) + 3)) `2_5 & (g . ((x + 1) + 2)) `4_5 = (g . ((x + 1) + 3)) `3_5 & (g . ((x + 1) + 2)) `5_5 = (g . ((x + 1) + 3)) `4_5 & (g . ((x + 1) + 3)) `2_5 = (g . ((x + 1) + 4)) `1_5 & (g . ((x + 1) + 3)) `3_5 = (g . ((x + 1) + 4)) `2_5 & (g . ((x + 1) + 3)) `4_5 = (g . ((x + 1) + 4)) `3_5 & (g . ((x + 1) + 3)) `5_5 = (g . ((x + 1) + 4)) `4_5 & f . ((x + 1) + 4) = F5((x + 1),(f . (x + 1)),(f . ((x + 1) + 1)),(f . ((x + 1) + 2)),(f . ((x + 1) + 3))) )
thus
(g . ((x + 1) + 1)) `5_5 = (g . ((x + 1) + 2)) `4_5
by A36;
( (g . ((x + 1) + 2)) `2_5 = (g . ((x + 1) + 3)) `1_5 & (g . ((x + 1) + 2)) `3_5 = (g . ((x + 1) + 3)) `2_5 & (g . ((x + 1) + 2)) `4_5 = (g . ((x + 1) + 3)) `3_5 & (g . ((x + 1) + 2)) `5_5 = (g . ((x + 1) + 3)) `4_5 & (g . ((x + 1) + 3)) `2_5 = (g . ((x + 1) + 4)) `1_5 & (g . ((x + 1) + 3)) `3_5 = (g . ((x + 1) + 4)) `2_5 & (g . ((x + 1) + 3)) `4_5 = (g . ((x + 1) + 4)) `3_5 & (g . ((x + 1) + 3)) `5_5 = (g . ((x + 1) + 4)) `4_5 & f . ((x + 1) + 4) = F5((x + 1),(f . (x + 1)),(f . ((x + 1) + 1)),(f . ((x + 1) + 2)),(f . ((x + 1) + 3))) )
thus
(g . ((x + 1) + 2)) `2_5 = (g . ((x + 1) + 3)) `1_5
by A36;
( (g . ((x + 1) + 2)) `3_5 = (g . ((x + 1) + 3)) `2_5 & (g . ((x + 1) + 2)) `4_5 = (g . ((x + 1) + 3)) `3_5 & (g . ((x + 1) + 2)) `5_5 = (g . ((x + 1) + 3)) `4_5 & (g . ((x + 1) + 3)) `2_5 = (g . ((x + 1) + 4)) `1_5 & (g . ((x + 1) + 3)) `3_5 = (g . ((x + 1) + 4)) `2_5 & (g . ((x + 1) + 3)) `4_5 = (g . ((x + 1) + 4)) `3_5 & (g . ((x + 1) + 3)) `5_5 = (g . ((x + 1) + 4)) `4_5 & f . ((x + 1) + 4) = F5((x + 1),(f . (x + 1)),(f . ((x + 1) + 1)),(f . ((x + 1) + 2)),(f . ((x + 1) + 3))) )
thus
(g . ((x + 1) + 2)) `3_5 = (g . ((x + 1) + 3)) `2_5
by A36;
( (g . ((x + 1) + 2)) `4_5 = (g . ((x + 1) + 3)) `3_5 & (g . ((x + 1) + 2)) `5_5 = (g . ((x + 1) + 3)) `4_5 & (g . ((x + 1) + 3)) `2_5 = (g . ((x + 1) + 4)) `1_5 & (g . ((x + 1) + 3)) `3_5 = (g . ((x + 1) + 4)) `2_5 & (g . ((x + 1) + 3)) `4_5 = (g . ((x + 1) + 4)) `3_5 & (g . ((x + 1) + 3)) `5_5 = (g . ((x + 1) + 4)) `4_5 & f . ((x + 1) + 4) = F5((x + 1),(f . (x + 1)),(f . ((x + 1) + 1)),(f . ((x + 1) + 2)),(f . ((x + 1) + 3))) )
thus
(g . ((x + 1) + 2)) `4_5 = (g . ((x + 1) + 3)) `3_5
by A36;
( (g . ((x + 1) + 2)) `5_5 = (g . ((x + 1) + 3)) `4_5 & (g . ((x + 1) + 3)) `2_5 = (g . ((x + 1) + 4)) `1_5 & (g . ((x + 1) + 3)) `3_5 = (g . ((x + 1) + 4)) `2_5 & (g . ((x + 1) + 3)) `4_5 = (g . ((x + 1) + 4)) `3_5 & (g . ((x + 1) + 3)) `5_5 = (g . ((x + 1) + 4)) `4_5 & f . ((x + 1) + 4) = F5((x + 1),(f . (x + 1)),(f . ((x + 1) + 1)),(f . ((x + 1) + 2)),(f . ((x + 1) + 3))) )
thus
(g . ((x + 1) + 2)) `5_5 = (g . ((x + 1) + 3)) `4_5
by A36;
( (g . ((x + 1) + 3)) `2_5 = (g . ((x + 1) + 4)) `1_5 & (g . ((x + 1) + 3)) `3_5 = (g . ((x + 1) + 4)) `2_5 & (g . ((x + 1) + 3)) `4_5 = (g . ((x + 1) + 4)) `3_5 & (g . ((x + 1) + 3)) `5_5 = (g . ((x + 1) + 4)) `4_5 & f . ((x + 1) + 4) = F5((x + 1),(f . (x + 1)),(f . ((x + 1) + 1)),(f . ((x + 1) + 2)),(f . ((x + 1) + 3))) )
thus (g . ((x + 1) + 3)) `2_5 =
H1(
(x + 1) + 3,
g . ((x + 1) + 3))
`1_5
by Def8
.=
(g . ((x + 1) + 4)) `1_5
by A22
;
( (g . ((x + 1) + 3)) `3_5 = (g . ((x + 1) + 4)) `2_5 & (g . ((x + 1) + 3)) `4_5 = (g . ((x + 1) + 4)) `3_5 & (g . ((x + 1) + 3)) `5_5 = (g . ((x + 1) + 4)) `4_5 & f . ((x + 1) + 4) = F5((x + 1),(f . (x + 1)),(f . ((x + 1) + 1)),(f . ((x + 1) + 2)),(f . ((x + 1) + 3))) )
thus (g . ((x + 1) + 3)) `3_5 =
H1(
(x + 1) + 3,
g . ((x + 1) + 3))
`2_5
by Def9
.=
(g . ((x + 1) + 4)) `2_5
by A22
;
( (g . ((x + 1) + 3)) `4_5 = (g . ((x + 1) + 4)) `3_5 & (g . ((x + 1) + 3)) `5_5 = (g . ((x + 1) + 4)) `4_5 & f . ((x + 1) + 4) = F5((x + 1),(f . (x + 1)),(f . ((x + 1) + 1)),(f . ((x + 1) + 2)),(f . ((x + 1) + 3))) )
thus (g . ((x + 1) + 3)) `4_5 =
H1(
(x + 1) + 3,
g . ((x + 1) + 3))
`3_5
by Def10
.=
(g . ((x + 1) + 4)) `3_5
by A22
;
( (g . ((x + 1) + 3)) `5_5 = (g . ((x + 1) + 4)) `4_5 & f . ((x + 1) + 4) = F5((x + 1),(f . (x + 1)),(f . ((x + 1) + 1)),(f . ((x + 1) + 2)),(f . ((x + 1) + 3))) )
thus (g . ((x + 1) + 3)) `5_5 =
H1(
(x + 1) + 3,
g . ((x + 1) + 3))
`4_5
by Def11
.=
(g . ((x + 1) + 4)) `4_5
by A22
;
f . ((x + 1) + 4) = F5((x + 1),(f . (x + 1)),(f . ((x + 1) + 1)),(f . ((x + 1) + 2)),(f . ((x + 1) + 3)))
A39:
f . ((x + 1) + 2) = (g . x) `4_5
by A28, A36;
per cases
( x <= 2 or 2 < x )
;
suppose A40:
x <= 2
;
f . ((x + 1) + 4) = F5((x + 1),(f . (x + 1)),(f . ((x + 1) + 1)),(f . ((x + 1) + 2)),(f . ((x + 1) + 3)))thus
f . ((x + 1) + 4) = F5(
(x + 1),
(f . (x + 1)),
(f . ((x + 1) + 1)),
(f . ((x + 1) + 2)),
(f . ((x + 1) + 3)))
verumproof
per cases
( x = 0 or x = 1 or x = 2 )
by A40, NAT_1:27;
suppose A41:
x = 0
;
f . ((x + 1) + 4) = F5((x + 1),(f . (x + 1)),(f . ((x + 1) + 1)),(f . ((x + 1) + 2)),(f . ((x + 1) + 3)))hence f . ((x + 1) + 4) =
(g . (1 + 4)) `1_5
by A28
.=
H1(1
+ 3,
g . (1 + 3))
`1_5
by A22
.=
(g . (0 + 4)) `2_5
by Def8
.=
H1(
0 + 3,
g . (0 + 3))
`2_5
by A22
.=
(g . (0 + 3)) `3_5
by Def9
.=
F5(1,
F2(),
F3(),
F4(),
F5(
0 ,
F1(),
F2(),
F3(),
F4()))
by A7, Def10
.=
F5(
(0 + 1),
F2(),
F3(),
F4(),
((g . 0 ) `5_5 ))
by A12, Def12
.=
F5(
(x + 1),
(f . (x + 1)),
(f . ((x + 1) + 1)),
(f . ((x + 1) + 2)),
(f . ((x + 1) + 3)))
by A12, A32, A33, A36, A39, A41, Def11
;
verum end; suppose A42:
x = 1
;
f . ((x + 1) + 4) = F5((x + 1),(f . (x + 1)),(f . ((x + 1) + 1)),(f . ((x + 1) + 2)),(f . ((x + 1) + 3)))then A43:
f . ((x + 1) + 3) = F5(1,
F2(),
F3(),
F4(),
F5(
0 ,
F1(),
F2(),
F3(),
F4()))
by A10, A36, Def12;
A44:
(
f . ((x + 1) + 1) = F4() &
f . ((x + 1) + 2) = F5(
0 ,
F1(),
F2(),
F3(),
F4()) )
by A10, A37, A39, A42, Def10, Def11;
thus f . ((x + 1) + 4) =
(g . ((1 + 1) + 4)) `1_5
by A28, A42
.=
H1(2
+ 3,
g . (2 + 3))
`1_5
by A22
.=
(g . (1 + 4)) `2_5
by Def8
.=
H1(1
+ 3,
g . (1 + 3))
`2_5
by A22
.=
(g . (0 + 4)) `3_5
by Def9
.=
H1(
0 + 3,
g . (0 + 3))
`3_5
by A22
.=
(g . (0 + 3)) `4_5
by Def10
.=
F5(
(x + 1),
(f . (x + 1)),
(f . ((x + 1) + 1)),
(f . ((x + 1) + 2)),
(f . ((x + 1) + 3)))
by A7, A33, A42, A44, A43, Def11
;
verum end; suppose A45:
x = 2
;
f . ((x + 1) + 4) = F5((x + 1),(f . (x + 1)),(f . ((x + 1) + 1)),(f . ((x + 1) + 2)),(f . ((x + 1) + 3)))then A46:
f . ((x + 1) + 3) = F5(2,
F3(),
F4(),
F5(
0 ,
F1(),
F2(),
F3(),
F4()),
F5(1,
F2(),
F3(),
F4(),
F5(
0 ,
F1(),
F2(),
F3(),
F4())))
by A8, A36, Def12;
A47:
(
f . ((x + 1) + 1) = F5(
0 ,
F1(),
F2(),
F3(),
F4()) &
f . ((x + 1) + 2) = F5(1,
F2(),
F3(),
F4(),
F5(
0 ,
F1(),
F2(),
F3(),
F4())) )
by A8, A37, A39, A45, Def10, Def11;
thus f . ((x + 1) + 4) =
(g . ((2 + 1) + 4)) `1_5
by A28, A45
.=
H1(3
+ 3,
g . (3 + 3))
`1_5
by A22
.=
(g . (2 + 4)) `2_5
by Def8
.=
H1(2
+ 3,
g . (2 + 3))
`2_5
by A22
.=
(g . (1 + 4)) `3_5
by Def9
.=
H1(1
+ 3,
g . (1 + 3))
`3_5
by A22
.=
(g . (0 + 4)) `4_5
by Def10
.=
H1(
0 + 3,
g . (0 + 3))
`4_5
by A22
.=
(g . (0 + 3)) `5_5
by Def11
.=
F5(
(x + 1),
(f . (x + 1)),
(f . ((x + 1) + 1)),
(f . ((x + 1) + 2)),
(f . ((x + 1) + 3)))
by A7, A34, A45, A47, A46, Def12
;
verum end; end;
end; end; suppose A48:
2
< x
;
f . ((x + 1) + 4) = F5((x + 1),(f . (x + 1)),(f . ((x + 1) + 1)),(f . ((x + 1) + 2)),(f . ((x + 1) + 3)))then
1
< x
by XXREAL_0:2;
then
1
- 1
<= x - 1
by XREAL_1:15;
then A49:
x - 1
= x -' 1
by XREAL_0:def 2;
A50:
2
- 2
<= x - 2
by A48, XREAL_1:15;
then A51:
x - 2
= x -' 2
by XREAL_0:def 2;
A52:
(x -' 2) + 3 =
(x - 2) + 3
by A50, XREAL_0:def 2
.=
x + 1
;
A53:
1
+ 2
<= x
by A48, NAT_1:13;
then A54:
(x -' 3) + 3
= x
by XREAL_1:237;
3
- 3
<= x - 3
by A53, XREAL_1:15;
then A55:
x - 3
= x -' 3
by XREAL_0:def 2;
A56:
x + 2
= (x - 1) + 3
;
thus f . ((x + 1) + 4) =
(g . (x + (1 + 3))) `2_5
by A38
.=
H1(
x + 3,
g . (x + 3))
`2_5
by A22
.=
(g . ((x -' 1) + 4)) `3_5
by A49, Def9
.=
H1(
x + 2,
g . (x + 2))
`3_5
by A22, A49, A56
.=
(g . ((x -' 2) + 4)) `4_5
by A51, Def10
.=
H1(
x + 1,
g . (x + 1))
`4_5
by A22, A52
.=
(g . ((x -' 3) + 4)) `5_5
by A55, Def11
.=
H1(
(x -' 3) + 3,
g . ((x -' 3) + 3))
`5_5
by A22
.=
F5(
(x + 1),
((g . x) `2_5 ),
((g . x) `3_5 ),
((g . x) `4_5 ),
((g . x) `5_5 ))
by A54, Def12
.=
F5(
(x + 1),
(f . (x + 1)),
(f . ((x + 1) + 1)),
(f . ((x + 1) + 2)),
(f . ((x + 1) + 3)))
by A28, A36, A37, A39
;
verum end; end;
end;
A57: (g . (0 + 3)) `5_5 =
H1(0 + 3,g . (0 + 3)) `4_5
by Def11
.=
(g . (0 + 4)) `4_5
by A22
;
A58: (g . (0 + 3)) `4_5 =
H1(0 + 3,g . (0 + 3)) `3_5
by Def10
.=
(g . (0 + 4)) `3_5
by A22
;
A59: (g . (0 + 3)) `3_5 =
H1(0 + 3,g . (0 + 3)) `2_5
by Def9
.=
(g . (0 + 4)) `2_5
by A22
;
(g . (0 + 2)) `2_5 =
F4()
by A8, Def9
.=
(g . (0 + 3)) `1_5
by A7, Def8
;
then A60:
S5[ 0 ]
by A7, A31, A32, A33, A34, A29, A21, A13, A20, A19, A11, A17, A16, A18, A9, A15, A14, A30, A59, A58, A57, Def9;
for x being Element of NAT holds S5[x]
from NAT_1:sch 1(A60, A35);
hence
for n being Element of NAT holds f . (n + 4) = F5(n,(f . n),(f . (n + 1)),(f . (n + 2)),(f . (n + 3)))
; verum