Step * of Lemma accessible-induction

[T:Type]. ∀[R:T ⟶ T ⟶ ℙ]. ∀[P:T ⟶ ℙ].
  ((∀t:T. ((∀x:T. (R[x;t]  P[x]))  P[t]))  (∀t:T. (accessible(T;x,y.R[x;y];t)  P[t])))
BY
(Auto
   THEN (InstLemma `param-W-induction` [⌜T⌝;⌜λ2t.Unit⌝;⌜λ2a.x:T × R[x;t]⌝;⌜so_lambda(t,a,b.fst(b))⌝;⌜λ2w.P[t]⌝]⋅
         THENA Auto
         )
   THEN All (Fold `accessible`)) }

1
1. [T] Type
2. [R] T ⟶ T ⟶ ℙ
3. [P] T ⟶ ℙ
4. ∀t:T. ((∀x:T. (R[x;t]  P[x]))  P[t])@i
5. T@i
6. accessible(T;x,y.R[x;y];t)@i
7. par T@i
8. Unit@i
9. b:(x:T × R[x;par]) ⟶ accessible(T;x,y.R[x;y];fst(b))@i
10. ∀b:x:T × R[x;par]. P[fst(b)]@i
⊢ P[par]

2
1. [T] Type
2. [R] T ⟶ T ⟶ ℙ
3. [P] T ⟶ ℙ
4. ∀t:T. ((∀x:T. (R[x;t]  P[x]))  P[t])@i
5. T@i
6. accessible(T;x,y.R[x;y];t)@i
7. ∀par:T. ∀w:accessible(T;x,y.R[x;y];par).  P[par]
⊢ P[t]


Latex:


Latex:
\mforall{}[T:Type].  \mforall{}[R:T  {}\mrightarrow{}  T  {}\mrightarrow{}  \mBbbP{}].  \mforall{}[P:T  {}\mrightarrow{}  \mBbbP{}].
    ((\mforall{}t:T.  ((\mforall{}x:T.  (R[x;t]  {}\mRightarrow{}  P[x]))  {}\mRightarrow{}  P[t]))  {}\mRightarrow{}  (\mforall{}t:T.  (accessible(T;x,y.R[x;y];t)  {}\mRightarrow{}  P[t])))


By


Latex:
(Auto
  THEN  (InstLemma  `param-W-induction`  [\mkleeneopen{}T\mkleeneclose{};\mkleeneopen{}\mlambda{}\msubtwo{}t.Unit\mkleeneclose{};\mkleeneopen{}\mlambda{}\msubtwo{}t  a.x:T  \mtimes{}  R[x;t]\mkleeneclose{};\mkleeneopen{}so\_lambda(t,a,b.fst(b))\mkleeneclose{};
              \mkleeneopen{}\mlambda{}\msubtwo{}t  w.P[t]\mkleeneclose{}]\mcdot{}
              THENA  Auto
              )
  THEN  All  (Fold  `accessible`))




Home Index