Step
*
1
1
of Lemma
complete_nat_measure_ind
.....subterm..... T:t
1:n
1. T : Type
2. measure : T ⟶ ℕ
3. P : T ⟶ ℙ
4. g : ∀i:T. ((∀j:{j:T| measure[j] < measure[i]} . P[j]) 
⇒ P[i])
5. x : T
⊢ g x letrec f(x)=g x f in f  ∈ P[x]
BY
{ Assert ⌜∀m:ℕ. ∀x:T.  ((measure[x] ≤ m) 
⇒ (g x letrec f(x)=g x f in f  ∈ P[x]))⌝⋅ }
1
.....assertion..... 
1. T : Type
2. measure : T ⟶ ℕ
3. P : T ⟶ ℙ
4. g : ∀i:T. ((∀j:{j:T| measure[j] < measure[i]} . P[j]) 
⇒ P[i])
5. x : T
⊢ ∀m:ℕ. ∀x:T.  ((measure[x] ≤ m) 
⇒ (g x letrec f(x)=g x f in f  ∈ P[x]))
2
1. T : Type
2. measure : T ⟶ ℕ
3. P : T ⟶ ℙ
4. g : ∀i:T. ((∀j:{j:T| measure[j] < measure[i]} . P[j]) 
⇒ P[i])
5. x : T
6. ∀m:ℕ. ∀x:T.  ((measure[x] ≤ m) 
⇒ (g x letrec f(x)=g x f in f  ∈ P[x]))
⊢ g x letrec f(x)=g x f in f  ∈ P[x]
Latex:
Latex:
.....subterm.....  T:t
1:n
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])
5.  x  :  T
\mvdash{}  g  x  letrec  f(x)=g  x  f  in  f    \mmember{}  P[x]
By
Latex:
Assert  \mkleeneopen{}\mforall{}m:\mBbbN{}.  \mforall{}x:T.    ((measure[x]  \mleq{}  m)  {}\mRightarrow{}  (g  x  letrec  f(x)=g  x  f  in  f    \mmember{}  P[x]))\mkleeneclose{}\mcdot{}
Home
Index