let m, n, k be Nat; :: thesis: ( (scf (m / n)) . k = (divSeq m,n) . k & (rfs (m / n)) . 1 = n / ((modSeq m,n) . 0 ) & (rfs (m / n)) . (k + 2) = ((modSeq m,n) . k) / ((modSeq m,n) . (k + 1)) )
set fd = divSeq m,n;
set fm = modSeq m,n;
set r = m / n;
A1: (scf (m / n)) . 0 =
[\((rfs (m / n)) . 0 )/]
by Def5
.=
m div n
by Def4
;
per cases
( n = 0 or 0 < n )
;
suppose A2:
n = 0
;
:: thesis: ( (scf (m / n)) . k = (divSeq m,n) . k & (rfs (m / n)) . 1 = n / ((modSeq m,n) . 0 ) & (rfs (m / n)) . (k + 2) = ((modSeq m,n) . k) / ((modSeq m,n) . (k + 1)) )then A3:
m / n = 0
;
A4:
divSeq m,
n = NAT --> 0
by A2, Th21;
A5:
modSeq m,
n = NAT --> 0
by A2, Th22;
A6:
k in NAT
by ORDINAL1:def 13;
(
k = 0 or ex
x being
Nat st
k = x + 1 )
by NAT_1:6;
hence (scf (m / n)) . k =
0
by A3, Th30
.=
(divSeq m,n) . k
by A4, A6, FUNCOP_1:13
;
:: thesis: ( (rfs (m / n)) . 1 = n / ((modSeq m,n) . 0 ) & (rfs (m / n)) . (k + 2) = ((modSeq m,n) . k) / ((modSeq m,n) . (k + 1)) )thus (rfs (m / n)) . 1 =
(rfs (m / n)) . (0 + 1)
.=
n / ((modSeq m,n) . 0 )
by A2, Th29
;
:: thesis: (rfs (m / n)) . (k + 2) = ((modSeq m,n) . k) / ((modSeq m,n) . (k + 1))thus (rfs (m / n)) . (k + 2) =
(rfs (m / n)) . ((k + 1) + 1)
.=
0 / ((modSeq m,n) . (k + 1))
by A3, Th29
.=
((modSeq m,n) . k) / ((modSeq m,n) . (k + 1))
by A5, A6, FUNCOP_1:13
;
:: thesis: verum end; suppose A7:
0 < n
;
:: thesis: ( (scf (m / n)) . k = (divSeq m,n) . k & (rfs (m / n)) . 1 = n / ((modSeq m,n) . 0 ) & (rfs (m / n)) . (k + 2) = ((modSeq m,n) . k) / ((modSeq m,n) . (k + 1)) )then
m = (n * (m div n)) + (m mod n)
by NAT_D:2;
then A8:
m / n = (m div n) + ((m mod n) / n)
by A7, XCMPLX_1:114;
A9:
(rfs (m / n)) . (0 + 1) =
1
/ (frac ((rfs (m / n)) . 0 ))
by Def4
.=
1
/ (((rfs (m / n)) . 0 ) - ((scf (m / n)) . 0 ))
by Def5
.=
1
/ ((m / n) - (m div n))
by A1, Def4
.=
n / (m mod n)
by A8, XCMPLX_1:57
.=
n / ((modSeq m,n) . 0 )
by Def2
;
defpred S2[
Nat]
means ( ( for
i being
Nat st
i <= $1 holds
(scf (m / n)) . i = (divSeq m,n) . i ) & ( for
i being
Nat st
i + 1
<= $1 holds
(rfs (m / n)) . (i + 2) = ((modSeq m,n) . i) / ((modSeq m,n) . (i + 1)) ) );
A10:
S2[
0 ]
A11:
for
a being
Nat st
S2[
a] holds
S2[
a + 1]
proof
let a be
Nat;
:: thesis: ( S2[a] implies S2[a + 1] )
assume A12:
S2[
a]
;
:: thesis: S2[a + 1]
per cases
( a = 0 or a > 0 )
;
suppose A13:
a = 0
;
:: thesis: S2[a + 1]A14:
(scf (m / n)) . (0 + 1) =
(scf (1 / (frac (m / n)))) . 0
by Th37
.=
[\((rfs (1 / (frac (m / n)))) . 0 )/]
by Def5
.=
[\(1 / (frac (m / n)))/]
by Def4
.=
[\(1 / ((m mod n) / n))/]
by Th6
.=
n div (m mod n)
by XCMPLX_1:57
.=
n div ((modSeq m,n) . 0 )
by Def2
.=
(divSeq m,n) . 1
by Th12
;
let i be
Nat;
:: thesis: ( i + 1 <= a + 1 implies (rfs (m / n)) . (i + 2) = ((modSeq m,n) . i) / ((modSeq m,n) . (i + 1)) )assume
i + 1
<= a + 1
;
:: thesis: (rfs (m / n)) . (i + 2) = ((modSeq m,n) . i) / ((modSeq m,n) . (i + 1))then A15:
(
i + 1
= 0 or
i + 1
= 0 + 1 )
by A13, NAT_1:26;
set x =
m mod n;
per cases
( m mod n = 0 or 0 < m mod n )
;
suppose A16:
m mod n = 0
;
:: thesis: (rfs (m / n)) . (i + 2) = ((modSeq m,n) . i) / ((modSeq m,n) . (i + 1))thus (rfs (m / n)) . (i + 2) =
(rfs (m / n)) . (1 + 1)
by A15
.=
1
/ (frac ((rfs (m / n)) . 1))
by Def4
.=
1
/ ((n / ((modSeq m,n) . 0 )) - ((divSeq m,n) . 1))
by A9, A14, Def5
.=
1
/ ((n / (m mod n)) - ((divSeq m,n) . 1))
by Def2
.=
1
/ ((n / (m mod n)) - (n div (m mod n)))
by Def3
.=
1
/ (0 - (n div (m mod n)))
by A16
.=
1
/ (0 - 0 )
by A16
.=
((modSeq m,n) . i) / 0
.=
((modSeq m,n) . i) / (n mod (m mod n))
by A16
.=
((modSeq m,n) . i) / ((modSeq m,n) . (i + 1))
by A15, Def2
;
:: thesis: verum end; suppose A17:
0 < m mod n
;
:: thesis: (rfs (m / n)) . (i + 2) = ((modSeq m,n) . i) / ((modSeq m,n) . (i + 1))then A18:
n + 0 = ((m mod n) * (n div (m mod n))) + (n mod (m mod n))
by NAT_D:2;
per cases
( n mod (m mod n) = 0 or n mod (m mod n) <> 0 )
;
suppose A21:
n mod (m mod n) <> 0
;
:: thesis: (rfs (m / n)) . (i + 2) = ((modSeq m,n) . i) / ((modSeq m,n) . (i + 1))then A22:
(n / (m mod n)) - (n div (m mod n)) <> 0
by Th5;
thus (rfs (m / n)) . (i + 2) =
(rfs (m / n)) . (1 + 1)
by A15
.=
1
/ (frac ((rfs (m / n)) . 1))
by Def4
.=
1
/ ((n / ((modSeq m,n) . 0 )) - ((divSeq m,n) . 1))
by A9, A14, Def5
.=
1
/ ((n / (m mod n)) - ((divSeq m,n) . 1))
by Def2
.=
1
/ ((n / (m mod n)) - (n div (m mod n)))
by Def3
.=
(m mod n) / (n mod (m mod n))
by A17, A18, A21, A22, Lm2
.=
((modSeq m,n) . i) / (n mod (m mod n))
by A15, Def2
.=
((modSeq m,n) . i) / ((modSeq m,n) . (i + 1))
by A15, Def2
;
:: thesis: verum end; end; end; end; end; suppose
a > 0
;
:: thesis: S2[a + 1]then A23:
0 + 1
<= a
by NAT_1:13;
let b be
Nat;
:: thesis: ( b + 1 <= a + 1 implies (rfs (m / n)) . (b + 2) = ((modSeq m,n) . b) / ((modSeq m,n) . (b + 1)) )assume A29:
b + 1
<= a + 1
;
:: thesis: (rfs (m / n)) . (b + 2) = ((modSeq m,n) . b) / ((modSeq m,n) . (b + 1))per cases
( b + 1 < a + 1 or b + 1 = a + 1 )
by A29, XXREAL_0:1;
suppose A30:
b + 1
= a + 1
;
:: thesis: (rfs (m / n)) . (b + 2) = ((modSeq m,n) . b) / ((modSeq m,n) . (b + 1))then reconsider b1 =
b - 1 as
Element of
NAT by A23, INT_1:18;
A31:
b + 1
= b1 + (1 + 1)
;
A32:
b1 + 2
= (b1 + 1) + 1
;
A33:
b + 2
= (b + 1) + 1
;
per cases
( 0 = (modSeq m,n) . (b1 + 1) or 0 < (modSeq m,n) . (b1 + 1) )
;
suppose A34:
0 = (modSeq m,n) . (b1 + 1)
;
:: thesis: (rfs (m / n)) . (b + 2) = ((modSeq m,n) . b) / ((modSeq m,n) . (b + 1))thus (rfs (m / n)) . (b + 2) =
1
/ (((rfs (m / n)) . (b + 1)) - ((scf (m / n)) . (b + 1)))
by A33, Th26
.=
1
/ (((rfs (m / n)) . (b + 1)) - ((divSeq m,n) . (b + 1)))
by A24, A30
.=
1
/ ((((modSeq m,n) . b1) / ((modSeq m,n) . (b1 + 1))) - ((divSeq m,n) . ((b1 + 1) + 1)))
by A12, A30, A31
.=
1
/ ((((modSeq m,n) . b1) / 0 ) - (((modSeq m,n) . b1) div 0 ))
by A32, A34, Def3
.=
((modSeq m,n) . b) / ((modSeq m,n) . (b + 1))
by A34
;
:: thesis: verum end; suppose A35:
0 < (modSeq m,n) . (b1 + 1)
;
:: thesis: (rfs (m / n)) . (b + 2) = ((modSeq m,n) . b) / ((modSeq m,n) . (b + 1))then A36:
((modSeq m,n) . b1) + 0 = (((modSeq m,n) . (b1 + 1)) * (((modSeq m,n) . b1) div ((modSeq m,n) . (b1 + 1)))) + (((modSeq m,n) . b1) mod ((modSeq m,n) . (b1 + 1)))
by NAT_D:2;
per cases
( ((modSeq m,n) . b1) mod ((modSeq m,n) . (b1 + 1)) = 0 or ((modSeq m,n) . b1) mod ((modSeq m,n) . (b1 + 1)) <> 0 )
;
suppose A37:
((modSeq m,n) . b1) mod ((modSeq m,n) . (b1 + 1)) = 0
;
:: thesis: (rfs (m / n)) . (b + 2) = ((modSeq m,n) . b) / ((modSeq m,n) . (b + 1))then
((modSeq m,n) . b1) / ((modSeq m,n) . (b1 + 1)) = ((modSeq m,n) . b1) div ((modSeq m,n) . (b1 + 1))
by Th4;
then A38:
(((modSeq m,n) . b1) / ((modSeq m,n) . (b1 + 1))) - (((modSeq m,n) . b1) div ((modSeq m,n) . (b1 + 1))) = 0
;
thus (rfs (m / n)) . (b + 2) =
1
/ (((rfs (m / n)) . (b + 1)) - ((scf (m / n)) . (b + 1)))
by A33, Th26
.=
1
/ (((rfs (m / n)) . (b + 1)) - ((divSeq m,n) . (b + 1)))
by A24, A30
.=
1
/ ((((modSeq m,n) . b1) / ((modSeq m,n) . (b1 + 1))) - ((divSeq m,n) . ((b1 + 1) + 1)))
by A12, A30, A31
.=
1
/ 0
by A32, A38, Def3
.=
((modSeq m,n) . (b1 + 1)) / (((modSeq m,n) . b1) mod ((modSeq m,n) . (b1 + 1)))
by A37
.=
((modSeq m,n) . b) / ((modSeq m,n) . (b + 1))
by A32, Def2
;
:: thesis: verum end; suppose A39:
((modSeq m,n) . b1) mod ((modSeq m,n) . (b1 + 1)) <> 0
;
:: thesis: (rfs (m / n)) . (b + 2) = ((modSeq m,n) . b) / ((modSeq m,n) . (b + 1))then A40:
(((modSeq m,n) . b1) / ((modSeq m,n) . (b1 + 1))) - (((modSeq m,n) . b1) div ((modSeq m,n) . (b1 + 1))) <> 0
by Th5;
thus (rfs (m / n)) . (b + 2) =
1
/ (((rfs (m / n)) . (b + 1)) - ((scf (m / n)) . (b + 1)))
by A33, Th26
.=
1
/ (((rfs (m / n)) . (b + 1)) - ((divSeq m,n) . (b + 1)))
by A24, A30
.=
1
/ ((((modSeq m,n) . b1) / ((modSeq m,n) . (b1 + 1))) - ((divSeq m,n) . ((b1 + 1) + 1)))
by A12, A30, A31
.=
1
/ ((((modSeq m,n) . b1) / ((modSeq m,n) . (b1 + 1))) - (((modSeq m,n) . b1) div ((modSeq m,n) . (b1 + 1))))
by A32, Def3
.=
((modSeq m,n) . (b1 + 1)) / (((modSeq m,n) . b1) mod ((modSeq m,n) . (b1 + 1)))
by A35, A36, A39, A40, Lm2
.=
((modSeq m,n) . b) / ((modSeq m,n) . (b + 1))
by A32, Def2
;
:: thesis: verum end; end; end; end; end; end; end; end;
end;
for
a being
Nat holds
S2[
a]
from NAT_1:sch 2(A10, A11);
hence
(
(scf (m / n)) . k = (divSeq m,n) . k &
(rfs (m / n)) . 1
= n / ((modSeq m,n) . 0 ) &
(rfs (m / n)) . (k + 2) = ((modSeq m,n) . k) / ((modSeq m,n) . (k + 1)) )
by A9;
:: thesis: verum end; end;