Nuprl Lemma : W-elimination-facts

∀A:Type. ∀B:A ⟶ Type. ∀w:W(A;a.B[a]).
  ((cw-step(A;a.B[a]) ∈ Type)
  ∧ (W-rel(A;a.B[a];w) ∈ n:ℕ ⟶ (ℕn ⟶ cw-step(A;a.B[a])) ⟶ cw-step(A;a.B[a]) ⟶ ℙ)
  ∧ (W(A;a.B[a]) ∈ Type)
  ∧ (W(A;a.B[a]) ⊆r (pco-W ⋅))
  ∧ (∀n:ℕ. ∀s:ℕn ⟶ cw-step(A;a.B[a]).  (Barred(<n, s>) ∨ (¬Barred(<n, s>))))
  ∧ (∀alpha:ℕ ⟶ cw-step(A;a.B[a]). ((∀n:ℕ. (W-rel(A;a.B[a];w) n alpha (alpha n))) ⇒ (alpha ∈ Path)))
  ∧ (∀[pp:n:ℕ × (ℕn ⟶ cw-step(A;a.B[a]))]. (Barred(pp) ∈ ℙ))
  ∧ (∀alpha:ℕ ⟶ cw-step(A;a.B[a]). ((∀n:ℕ. (W-rel(A;a.B[a];w) n alpha (alpha n))) ⇒ (↓∃n:ℕ. Barred(<n, alpha>))))
  ∧ (∀a:A. ∀x1:B[a] ⟶ W(A;a.B[a]). ∀n:ℕ+. ∀s:ℕn ⟶ cw-step(A;a.B[a]). ∀a1:A. ∀w1:b:B[a1] ⟶ (pco-W ⋅). ∀x:B[a1]. ∀a2:A.
     ∀z1:b:B[a2] ⟶ (pco-W ⋅).
       ((∀k:ℕn. (W-rel(A;a.B[a];<a, x1>) k s (s k)))
       ⇒ ((s (n - 1)) = <⋅, <a1, w1>, inl x> ∈ cw-step(A;a.B[a]))
       ⇒ ((w1 x) = <a2, z1> ∈ (pco-W ⋅))
       ⇒ (z1 ∈ B[a2] ⟶ W(A;a.B[a])))))


Proof




Definitions occuring in Statement :  W-rel: W-rel(A;a.B[a];w),  W: W(A;a.B[a]),  cw-step: cw-step(A;a.B[a]),  pcw-pp-barred: Barred(pp),  pcw-path: Path,  param-co-W: pco-W,  int_seg: {i..j-},  nat_plus: ℕ+,  nat: ℕ,  it: ⋅,  subtype_rel: A ⊆r B,  uall: ∀[x:A]. B[x],  prop: ℙ,  so_apply: x[s],  all: ∀x:A. B[x],  exists: ∃x:A. B[x],  not: ¬A,  squash: ↓T,  implies: P ⇒ Q,  or: P ∨ Q,  and: P ∧ Q,  unit: Unit,  member: t ∈ T,  apply: f a,  function: x:A ⟶ B[x],  pair: <a, b>,  product: x:A × B[x],  inl: inl x,  subtract: n - m,  natural_number: $n,  universe: Type,  equal: s = t ∈ T
Definitions unfolded in proof :  all: ∀x:A. B[x],  and: P ∧ Q,  cand: A c∧ B,  uall: ∀[x:A]. B[x],  member: t ∈ T,  so_lambda: λ2x.t[x],  so_apply: x[s],  W: W(A;a.B[a]),  param-W: pW,  subtype_rel: A ⊆r B,  so_lambda: λ2x y.t[x; y],  so_apply: x[s1;s2],  so_lambda: so_lambda(x,y,z.t[x; y; z]),  top: Top,  so_apply: x[s1;s2;s3],  implies: P ⇒ Q,  prop: ℙ,  pcw-path: Path,  nat: ℕ,  le: A ≤ B,  less_than': less_than'(a;b),  false: False,  not: ¬A,  exists: ∃x:A. B[x],  pcw-partial: pcw-partial(path;n),  W-rel: W-rel(A;a.B[a];w),  param-W-rel: param-W-rel(P;p.A[p];p,a.B[p; a];p,a,b.C[p; a; b];par;w),  cw-step: cw-step(A;a.B[a]),  squash: ↓T
Lemmas referenced :  cw-step_wf,  W-rel_wf,  W_wf,  param-co-W_wf,  top_wf,  all_wf,  pcw-path_wf,  unit_wf2,  it_wf,  pcw-step-agree_wf,  false_wf,  le_wf,  squash_wf,  exists_wf,  nat_wf,  pcw-pp-barred_wf,  pcw-partial_wf,  pcw-pp-barred-W-decidable,  int_seg_wf,  W-path-lemma,  pcw-pp-barred-W,  subtype_rel_self,  pcw-step_wf,  W-path-lemma2
Rules used in proof :  sqequalSubstitution,  sqequalTransitivity,  computationStep,  sqequalReflexivity,  lambdaFormation,  cut,  introduction,  extract_by_obid,  sqequalHypSubstitution,  isectElimination,  thin,  hypothesisEquality,  sqequalRule,  lambdaEquality,  applyEquality,  hypothesis,  independent_pairFormation,  because_Cache,  setElimination,  rename,  setEquality,  cumulativity,  functionExtensionality,  isect_memberEquality,  voidElimination,  voidEquality,  functionEquality,  dependent_set_memberEquality,  natural_numberEquality,  dependent_functionElimination,  independent_functionElimination,  equalityTransitivity,  equalitySymmetry,  imageElimination,  imageMemberEquality,  baseClosed,  universeEquality

Latex:
\mforall{}A:Type.  \mforall{}B:A  {}\mrightarrow{}  Type.  \mforall{}w:W(A;a.B[a]).
    ((cw-step(A;a.B[a])  \mmember{}  Type)
    \mwedge{}  (W-rel(A;a.B[a];w)  \mmember{}  n:\mBbbN{}  {}\mrightarrow{}  (\mBbbN{}n  {}\mrightarrow{}  cw-step(A;a.B[a]))  {}\mrightarrow{}  cw-step(A;a.B[a])  {}\mrightarrow{}  \mBbbP{})
    \mwedge{}  (W(A;a.B[a])  \mmember{}  Type)
    \mwedge{}  (W(A;a.B[a])  \msubseteq{}r  (pco-W  \mcdot{}))
    \mwedge{}  (\mforall{}n:\mBbbN{}.  \mforall{}s:\mBbbN{}n  {}\mrightarrow{}  cw-step(A;a.B[a]).    (Barred(<n,  s>)  \mvee{}  (\mneg{}Barred(<n,  s>))))
    \mwedge{}  (\mforall{}alpha:\mBbbN{}  {}\mrightarrow{}  cw-step(A;a.B[a])
              ((\mforall{}n:\mBbbN{}.  (W-rel(A;a.B[a];w)  n  alpha  (alpha  n)))  {}\mRightarrow{}  (alpha  \mmember{}  Path)))
    \mwedge{}  (\mforall{}[pp:n:\mBbbN{}  \mtimes{}  (\mBbbN{}n  {}\mrightarrow{}  cw-step(A;a.B[a]))].  (Barred(pp)  \mmember{}  \mBbbP{}))
    \mwedge{}  (\mforall{}alpha:\mBbbN{}  {}\mrightarrow{}  cw-step(A;a.B[a])
              ((\mforall{}n:\mBbbN{}.  (W-rel(A;a.B[a];w)  n  alpha  (alpha  n)))  {}\mRightarrow{}  (\mdownarrow{}\mexists{}n:\mBbbN{}.  Barred(<n,  alpha>))))
    \mwedge{}  (\mforall{}a:A.  \mforall{}x1:B[a]  {}\mrightarrow{}  W(A;a.B[a]).  \mforall{}n:\mBbbN{}\msupplus{}.  \mforall{}s:\mBbbN{}n  {}\mrightarrow{}  cw-step(A;a.B[a]).  \mforall{}a1:A.  \mforall{}w1:b:B[a1]  {}\mrightarrow{}  (pco-W 
                                                                                                                                                                                            \mcdot{}).
          \mforall{}x:B[a1].  \mforall{}a2:A.  \mforall{}z1:b:B[a2]  {}\mrightarrow{}  (pco-W  \mcdot{}).
              ((\mforall{}k:\mBbbN{}n.  (W-rel(A;a.B[a];<a,  x1>)  k  s  (s  k)))
              {}\mRightarrow{}  ((s  (n  -  1))  =  <\mcdot{},  <a1,  w1>,  inl  x>)
              {}\mRightarrow{}  ((w1  x)  =  <a2,  z1>)
              {}\mRightarrow{}  (z1  \mmember{}  B[a2]  {}\mrightarrow{}  W(A;a.B[a])))))



Date html generated: 2019_06_20-PM-00_36_32
Last ObjectModification: 2018_08_08-AM-08_40_15

Theory : co-recursion


Home Index