Step
*
1
of Lemma
expfact_wf
.....assertion.....
1. m : ℕ+
2. k : ℕ
3. n : ℕ+
4. b : {b:ℕ| n * k^b < (b)!}
5. m ≤ b
⊢ ∀d:ℕ. (d < b
⇒ (expfact(b - d;k;n * k^(b - d);(b - d)!) ∈ {b:ℕ+| (n * k^b) ≤ (b)!} ))
BY
{ (InductionOnNat THEN (D 0 THENA Auto) THEN RecUnfold `expfact` 0 THEN (SplitOnConclITE THENA Auto)) }
1
.....truecase.....
1. m : ℕ+
2. k : ℕ
3. n : ℕ+
4. b : {b:ℕ| n * k^b < (b)!}
5. m ≤ b
6. d : ℤ
7. 0 < b
8. (n * k^(b - 0)) ≤ (b - 0)!
⊢ b - 0 ∈ {b:ℕ+| (n * k^b) ≤ (b)!}
2
.....falsecase.....
1. m : ℕ+
2. k : ℕ
3. n : ℕ+
4. b : {b:ℕ| n * k^b < (b)!}
5. m ≤ b
6. d : ℤ
7. 0 < b
8. (b - 0)! < n * k^(b - 0)
⊢ eval n' = (b - 0) + 1 in
eval p' = k * n * k^(b - 0) in
eval b' = n' * (b - 0)! in
expfact(n';k;p';b') ∈ {b:ℕ+| (n * k^b) ≤ (b)!}
3
.....truecase.....
1. m : ℕ+
2. k : ℕ
3. n : ℕ+
4. b : {b:ℕ| n * k^b < (b)!}
5. m ≤ b
6. d : ℤ
7. 0 < d
8. d - 1 < b
⇒ (expfact(b - d - 1;k;n * k^(b - d - 1);(b - d - 1)!) ∈ {b:ℕ+| (n * k^b) ≤ (b)!} )
9. d < b
10. (n * k^(b - d)) ≤ (b - d)!
⊢ b - d ∈ {b:ℕ+| (n * k^b) ≤ (b)!}
4
.....falsecase.....
1. m : ℕ+
2. k : ℕ
3. n : ℕ+
4. b : {b:ℕ| n * k^b < (b)!}
5. m ≤ b
6. d : ℤ
7. 0 < d
8. d - 1 < b
⇒ (expfact(b - d - 1;k;n * k^(b - d - 1);(b - d - 1)!) ∈ {b:ℕ+| (n * k^b) ≤ (b)!} )
9. d < b
10. (b - d)! < n * k^(b - d)
⊢ eval n' = (b - d) + 1 in
eval p' = k * n * k^(b - d) in
eval b' = n' * (b - d)! in
expfact(n';k;p';b') ∈ {b:ℕ+| (n * k^b) ≤ (b)!}
Latex:
Latex:
.....assertion.....
1. m : \mBbbN{}\msupplus{}
2. k : \mBbbN{}
3. n : \mBbbN{}\msupplus{}
4. b : \{b:\mBbbN{}| n * k\^{}b < (b)!\}
5. m \mleq{} b
\mvdash{} \mforall{}d:\mBbbN{}. (d < b {}\mRightarrow{} (expfact(b - d;k;n * k\^{}(b - d);(b - d)!) \mmember{} \{b:\mBbbN{}\msupplus{}| (n * k\^{}b) \mleq{} (b)!\} ))
By
Latex:
(InductionOnNat THEN (D 0 THENA Auto) THEN RecUnfold `expfact` 0 THEN (SplitOnConclITE THENA Auto))
Home
Index