Step
*
1
1
1
1
of Lemma
genfact-unbounded
1. f : ℕ+ ⟶ ℤ
2. ∀m:ℕ+. 1 < f[m]
3. b : ℕ+
4. N : ℤ
5. [n] : ℕ
6. ∀[m:ℕn]. ∀k:ℕ. ∀x:{x:ℤ| x = genfact(k;b;m.f[m]) ∈ ℤ} .  ∃n:ℕ [(N ≤ genfact(n;b;m.f[m]))] supposing N ≤ (x + m)
7. k : ℕ
8. x : {x:ℤ| x = genfact(k;b;m.f[m]) ∈ ℤ} 
9. N ≤ (x + n)
10. ¬(N ≤ x)
⊢ ∃n:ℕ [(N ≤ genfact(n;b;m.f[m]))]
BY
{ ((Evaluate ⌜k' = (k + 1) ∈ ℤ⌝⋅ THENA Auto)
   THEN (Evaluate ⌜z = f[k'] ∈ ℤ⌝⋅ THENA Auto)
   THEN (Evaluate ⌜x' = (z * x) ∈ ℤ⌝⋅ THENA Auto)
   THEN (Assert x' = genfact(k';b;m.f[m]) ∈ ℤ BY
               (DSetVars THEN (RWO "genfact-step" 0 THENA Auto) THEN AutoSplit))) }
1
.....aux..... 
1. f : ℕ+ ⟶ ℤ
2. ∀m:ℕ+. 1 < f[m]
3. b : ℕ+
4. N : ℤ
5. n : ℕ
6. ∀[m:ℕn]. ∀k:ℕ. ∀x:{x:ℤ| x = genfact(k;b;m.f[m]) ∈ ℤ} .  ∃n:ℕ [(N ≤ genfact(n;b;m.f[m]))] supposing N ≤ (x + m)
7. k : ℕ
8. x : ℤ
9. x = genfact(k;b;m.f[m]) ∈ ℤ
10. N ≤ (x + n)
11. ¬(N ≤ x)
12. k' : ℤ
13. ¬k' < 1
14. k' = (k + 1) ∈ ℤ
15. z : ℤ
16. z = f[k'] ∈ ℤ
17. x' : ℤ
18. x' = (z * x) ∈ ℤ
⊢ x' = (f[k'] * genfact(k' - 1;b;m.f[m])) ∈ ℤ
2
1. f : ℕ+ ⟶ ℤ
2. ∀m:ℕ+. 1 < f[m]
3. b : ℕ+
4. N : ℤ
5. [n] : ℕ
6. ∀[m:ℕn]. ∀k:ℕ. ∀x:{x:ℤ| x = genfact(k;b;m.f[m]) ∈ ℤ} .  ∃n:ℕ [(N ≤ genfact(n;b;m.f[m]))] supposing N ≤ (x + m)
7. k : ℕ
8. x : {x:ℤ| x = genfact(k;b;m.f[m]) ∈ ℤ} 
9. N ≤ (x + n)
10. ¬(N ≤ x)
11. k' : ℤ
12. k' = (k + 1) ∈ ℤ
13. z : ℤ
14. z = f[k'] ∈ ℤ
15. x' : ℤ
16. x' = (z * x) ∈ ℤ
17. x' = genfact(k';b;m.f[m]) ∈ ℤ
⊢ ∃n:ℕ [(N ≤ genfact(n;b;m.f[m]))]
Latex:
Latex:
1.  f  :  \mBbbN{}\msupplus{}  {}\mrightarrow{}  \mBbbZ{}
2.  \mforall{}m:\mBbbN{}\msupplus{}.  1  <  f[m]
3.  b  :  \mBbbN{}\msupplus{}
4.  N  :  \mBbbZ{}
5.  [n]  :  \mBbbN{}
6.  \mforall{}[m:\mBbbN{}n]
          \mforall{}k:\mBbbN{}.  \mforall{}x:\{x:\mBbbZ{}|  x  =  genfact(k;b;m.f[m])\}  .
              \mexists{}n:\mBbbN{}  [(N  \mleq{}  genfact(n;b;m.f[m]))]  supposing  N  \mleq{}  (x  +  m)
7.  k  :  \mBbbN{}
8.  x  :  \{x:\mBbbZ{}|  x  =  genfact(k;b;m.f[m])\} 
9.  N  \mleq{}  (x  +  n)
10.  \mneg{}(N  \mleq{}  x)
\mvdash{}  \mexists{}n:\mBbbN{}  [(N  \mleq{}  genfact(n;b;m.f[m]))]
By
Latex:
((Evaluate  \mkleeneopen{}k'  =  (k  +  1)\mkleeneclose{}\mcdot{}  THENA  Auto)
  THEN  (Evaluate  \mkleeneopen{}z  =  f[k']\mkleeneclose{}\mcdot{}  THENA  Auto)
  THEN  (Evaluate  \mkleeneopen{}x'  =  (z  *  x)\mkleeneclose{}\mcdot{}  THENA  Auto)
  THEN  (Assert  x'  =  genfact(k';b;m.f[m])  BY
                          (DSetVars  THEN  (RWO  "genfact-step"  0  THENA  Auto)  THEN  AutoSplit)))
Home
Index