Step * 1 1 1 1 of Lemma complete_nat_measure_ind


1. Type
2. measure T ⟶ ℕ
3. T ⟶ ℙ
4. : ∀i:T. ((∀j:{j:T| measure[j] < measure[i]} P[j])  P[i])
⊢ ∀m:ℕ. ∀x:T.  ((measure[x] ≤ m)  (g letrec f(x)=g in f  ∈ P[x]))
BY
((D THENA Auto)
   THEN UseWitness ⌜λx,%. Ax⌝⋅
   THEN WeakNatInd (-1)
   THEN Auto
   THEN Unfold `genrec` 0
   THEN (RW (AddrC [2] (SweepUpC UnrollRecursionC)) THEN Reduce THEN Fold `genrec` THEN (MemCD THENA Auto))⋅}

1
.....subterm..... T:t
1:n
1. Type
2. measure T ⟶ ℕ
3. T ⟶ ℙ
4. : ∀i:T. ((∀j:{j:T| measure[j] < measure[i]} P[j])  P[i])
5. : ℤ
6. T
7. measure[x] ≤ 0
8. x1 {j:T| measure[j] < measure[x]} 
⊢ x1 letrec f(x)=g in f  ∈ P[x1]

2
.....subterm..... T:t
1:n
1. Type
2. measure T ⟶ ℕ
3. T ⟶ ℙ
4. : ∀i:T. ((∀j:{j:T| measure[j] < measure[i]} P[j])  P[i])
5. : ℤ
6. 0 < m
7. λx,%. Ax ∈ ∀x:T. ((measure[x] ≤ (m 1))  (g letrec f(x)=g in f  ∈ P[x]))
8. T
9. measure[x] ≤ m
10. x1 {j:T| measure[j] < measure[x]} 
⊢ x1 letrec f(x)=g in f  ∈ P[x1]


Latex:


Latex:

1.  T  :  Type
2.  measure  :  T  {}\mrightarrow{}  \mBbbN{}
3.  P  :  T  {}\mrightarrow{}  \mBbbP{}
4.  g  :  \mforall{}i:T.  ((\mforall{}j:\{j:T|  measure[j]  <  measure[i]\}  .  P[j])  {}\mRightarrow{}  P[i])
\mvdash{}  \mforall{}m:\mBbbN{}.  \mforall{}x:T.    ((measure[x]  \mleq{}  m)  {}\mRightarrow{}  (g  x  letrec  f(x)=g  x  f  in  f    \mmember{}  P[x]))


By


Latex:
((D  0  THENA  Auto)
  THEN  UseWitness  \mkleeneopen{}\mlambda{}x,\%.  Ax\mkleeneclose{}\mcdot{}
  THEN  WeakNatInd  (-1)
  THEN  Auto
  THEN  Unfold  `genrec`  0
  THEN  (RW  (AddrC  [2]  (SweepUpC  UnrollRecursionC))  0
              THEN  Reduce  0
              THEN  Fold  `genrec`  0
              THEN  (MemCD  THENA  Auto))\mcdot{})




Home Index