Nuprl Lemma : param-W-induction

[P:Type]. ∀[A:P ⟶ Type]. ∀[B:p:P ⟶ A[p] ⟶ Type].
  ∀C:p:P ⟶ a:A[p] ⟶ B[p;a] ⟶ P
    ∀[Q:par:P ⟶ (pW par) ⟶ ℙ]
      ((∀par:P. ∀a:A[par]. ∀f:b:B[par;a] ⟶ (pW C[par;a;b]).  ((∀b:B[par;a]. Q[C[par;a;b];f b])  Q[par;pW-sup(a;f)]))
       (∀par:P. ∀w:pW par.  Q[par;w]))


Proof




Definitions occuring in Statement :  pW-sup: pW-sup(a;f) param-W: pW uall: [x:A]. B[x] prop: so_apply: x[s1;s2;s3] so_apply: x[s1;s2] so_apply: x[s] all: x:A. B[x] implies:  Q apply: a function: x:A ⟶ B[x] universe: Type
Definitions unfolded in proof :  uall: [x:A]. B[x] all: x:A. B[x] implies:  Q member: t ∈ T so_apply: x[s1;s2] so_apply: x[s1;s2;s3] so_apply: x[s] so_apply: x[s1;s2;s3;s4] so_lambda: λ2x.t[x] so_lambda: λ2y.t[x; y] so_lambda: so_lambda(x,y,z.t[x; y; z]) prop: subtype_rel: A ⊆B
Lemmas referenced :  pW-rec_wf param-W_wf all_wf pW-sup_wf
Rules used in proof :  sqequalSubstitution sqequalTransitivity computationStep sqequalReflexivity isect_memberFormation lambdaFormation rename introduction cut lemma_by_obid sqequalHypSubstitution isectElimination thin because_Cache hypothesisEquality sqequalRule hypothesis applyEquality lambdaEquality cumulativity functionEquality universeEquality

Latex:
\mforall{}[P:Type].  \mforall{}[A:P  {}\mrightarrow{}  Type].  \mforall{}[B:p:P  {}\mrightarrow{}  A[p]  {}\mrightarrow{}  Type].
    \mforall{}C:p:P  {}\mrightarrow{}  a:A[p]  {}\mrightarrow{}  B[p;a]  {}\mrightarrow{}  P
        \mforall{}[Q:par:P  {}\mrightarrow{}  (pW  par)  {}\mrightarrow{}  \mBbbP{}]
            ((\mforall{}par:P.  \mforall{}a:A[par].  \mforall{}f:b:B[par;a]  {}\mrightarrow{}  (pW  C[par;a;b]).
                    ((\mforall{}b:B[par;a].  Q[C[par;a;b];f  b])  {}\mRightarrow{}  Q[par;pW-sup(a;f)]))
            {}\mRightarrow{}  (\mforall{}par:P.  \mforall{}w:pW  par.    Q[par;w]))



Date html generated: 2016_05_14-AM-06_14_33
Last ObjectModification: 2015_12_26-PM-00_05_35

Theory : co-recursion


Home Index