Nuprl Lemma : bar_recursion_wf_strong

[T:Type]. ∀[R:n:ℕ ⟶ (ℕn ⟶ T) ⟶ T ⟶ ℙ]. ∀[B:n:ℕ ⟶ {s:ℕn ⟶ T| ∀x:ℕn. (R (s x))}  ⟶ ℙ].
[A:n:ℕ ⟶ R-consistent-seq(n) ⟶ ℙ]. ∀[d:∀n:ℕ. ∀s:R-consistent-seq(n).  Dec(B[n;s])]. ∀[b:∀n:ℕ. ∀s:R-consistent-seq(n).
                                                                                             (B[n;s]  A[n;s])].
[i:∀n:ℕ. ∀s:R-consistent-seq(n).  ((∀t:{t:T| t} A[n 1;s.t@n])  A[n;s])].
  ((∀alpha:{f:ℕ ⟶ T| ∀x:ℕ(R (f x))} (↓∃m:ℕB[m;alpha]))  (∀x:Top. (bar_recursion(d;b;i;0;x) ∈ A[0;x])))


Proof




Definitions occuring in Statement :  bar_recursion: bar_recursion consistent-seq: R-consistent-seq(n) seq-add: s.x@n int_seg: {i..j-} nat: decidable: Dec(P) uall: [x:A]. B[x] top: Top prop: so_apply: x[s1;s2] all: x:A. B[x] exists: x:A. B[x] squash: T implies:  Q member: t ∈ T set: {x:A| B[x]}  apply: a function: x:A ⟶ B[x] add: m natural_number: $n universe: Type
Definitions unfolded in proof :  uall: [x:A]. B[x] implies:  Q all: x:A. B[x] member: t ∈ T subtype_rel: A ⊆B nat: uimplies: supposing a le: A ≤ B and: P ∧ Q less_than': less_than'(a;b) false: False not: ¬A prop: so_lambda: λ2x.t[x] so_apply: x[s1;s2] so_apply: x[s] int_seg: {i..j-} lelt: i ≤ j < k guard: {T} exists: x:A. B[x] consistent-seq: R-consistent-seq(n) decidable: Dec(P) bar_recursion: bar_recursion or: P ∨ Q iff: ⇐⇒ Q rev_implies:  Q uiff: uiff(P;Q) sq_stable: SqStable(P) squash: T subtract: m true: True seq-add: s.x@n top: Top
Lemmas referenced :  top_wf subtype_rel_function int_seg_wf int_seg_subtype_nat false_wf subtype_rel_self squash_wf exists_wf nat_wf subtype_rel_sets all_wf le_wf subtype_rel_dep_function and_wf less_than_wf less_than_transitivity2 le_weakening2 subtype_rel_set consistent-seq_wf decidable_wf seq-add_wf_consistent equal_wf decidable__le not-le-2 sq_stable__le condition-implies-le minus-add minus-one-mul zero-add minus-one-mul-top add-associates add-swap add-commutes add_functionality_wrt_le add-zero le-add-cancel
Rules used in proof :  sqequalSubstitution sqequalTransitivity computationStep sqequalReflexivity Error :isect_memberFormation_alt,  Error :lambdaFormation_alt,  Error :universeIsType,  cut introduction extract_by_obid hypothesis sqequalRule Error :functionIsType,  Error :setIsType,  because_Cache hypothesisEquality applyEquality sqequalHypSubstitution isectElimination thin natural_numberEquality setElimination rename independent_isectElimination independent_pairFormation lambdaFormation lambdaEquality functionEquality dependent_set_memberEquality productElimination intEquality setEquality dependent_functionElimination universeEquality instantiate strong_bar_Induction unionElimination functionExtensionality independent_functionElimination voidElimination cumulativity equalityTransitivity equalitySymmetry addEquality imageMemberEquality baseClosed imageElimination minusEquality isect_memberEquality voidEquality

Latex:
\mforall{}[T:Type].  \mforall{}[R:n:\mBbbN{}  {}\mrightarrow{}  (\mBbbN{}n  {}\mrightarrow{}  T)  {}\mrightarrow{}  T  {}\mrightarrow{}  \mBbbP{}].  \mforall{}[B:n:\mBbbN{}  {}\mrightarrow{}  \{s:\mBbbN{}n  {}\mrightarrow{}  T|  \mforall{}x:\mBbbN{}n.  (R  x  s  (s  x))\}    {}\mrightarrow{}  \mBbbP{}].
\mforall{}[A:n:\mBbbN{}  {}\mrightarrow{}  R-consistent-seq(n)  {}\mrightarrow{}  \mBbbP{}].  \mforall{}[d:\mforall{}n:\mBbbN{}.  \mforall{}s:R-consistent-seq(n).    Dec(B[n;s])].
\mforall{}[b:\mforall{}n:\mBbbN{}.  \mforall{}s:R-consistent-seq(n).    (B[n;s]  {}\mRightarrow{}  A[n;s])].  \mforall{}[i:\mforall{}n:\mBbbN{}.  \mforall{}s:R-consistent-seq(n).
                                                                                                                            ((\mforall{}t:\{t:T|  R  n  s  t\}  .  A[n  +  1;s.t@n])
                                                                                                                            {}\mRightarrow{}  A[n;s])].
    ((\mforall{}alpha:\{f:\mBbbN{}  {}\mrightarrow{}  T|  \mforall{}x:\mBbbN{}.  (R  x  f  (f  x))\}  .  (\mdownarrow{}\mexists{}m:\mBbbN{}.  B[m;alpha]))
    {}\mRightarrow{}  (\mforall{}x:Top.  (bar\_recursion(d;b;i;0;x)  \mmember{}  A[0;x])))



Date html generated: 2019_06_20-AM-11_28_54
Last ObjectModification: 2018_09_26-AM-11_13_41

Theory : bar-induction


Home Index