Nuprl Lemma : W-induction1

∀[A:Type]. ∀[B:A ⟶ Type]. ∀[Q:W(A;a.B[a]) ⟶ ℙ].
  ((∀a:A. ∀f:B[a] ⟶ W(A;a.B[a]).  ((∀b:B[a]. Q[f b]) ⇒ Q[Wsup(a;f)])) ⇒ (∀w:W(A;a.B[a]). Q[w]))


Proof




Definitions occuring in Statement :  Wsup: Wsup(a;b),  W: W(A;a.B[a]),  uall: ∀[x:A]. B[x],  prop: ℙ,  so_apply: x[s],  all: ∀x:A. B[x],  implies: P ⇒ Q,  apply: f a,  function: x:A ⟶ B[x],  universe: Type
Definitions unfolded in proof :  uall: ∀[x:A]. B[x],  implies: P ⇒ Q,  all: ∀x:A. B[x],  member: t ∈ T,  so_lambda: λ2x.t[x],  so_apply: x[s],  so_lambda: λ2x y.t[x; y],  so_apply: x[s1;s2],  so_lambda: so_lambda(x,y,z.t[x; y; z]),  so_apply: x[s1;s2;s3],  subtype_rel: A ⊆r B,  W: W(A;a.B[a]),  uimplies: b supposing a,  unit: Unit,  prop: ℙ,  pW-sup: pW-sup(a;f),  Wsup: Wsup(a;b),  guard: {T}
Lemmas referenced :  param-W-induction,  unit_wf2,  it_wf,  subtype_rel-equal,  param-W_wf,  equal-unit,  all_wf,  W_wf,  Wsup_wf
Rules used in proof :  sqequalSubstitution,  sqequalTransitivity,  computationStep,  sqequalReflexivity,  isect_memberFormation,  lambdaFormation,  cut,  lemma_by_obid,  sqequalHypSubstitution,  isectElimination,  thin,  hypothesis,  sqequalRule,  lambdaEquality,  hypothesisEquality,  applyEquality,  dependent_functionElimination,  independent_isectElimination,  because_Cache,  independent_functionElimination,  equalityElimination,  functionEquality,  cumulativity,  universeEquality

Latex:
\mforall{}[A:Type].  \mforall{}[B:A  {}\mrightarrow{}  Type].  \mforall{}[Q:W(A;a.B[a])  {}\mrightarrow{}  \mBbbP{}].
    ((\mforall{}a:A.  \mforall{}f:B[a]  {}\mrightarrow{}  W(A;a.B[a]).    ((\mforall{}b:B[a].  Q[f  b])  {}\mRightarrow{}  Q[Wsup(a;f)]))  {}\mRightarrow{}  (\mforall{}w:W(A;a.B[a]).  Q[w]))



Date html generated: 2016_05_14-AM-06_15_31
Last ObjectModification: 2015_12_26-PM-00_04_55

Theory : co-recursion


Home Index