### Nuprl Lemma : primrec-wf

`∀[P:ℕ ⟶ ℙ]. ∀[b:P[0]]. ∀[s:∀n:ℕ. (P[n] `` P[n + 1])]. ∀[n:ℕ].  (primrec(n;b;s) ∈ P[n])`

Proof

Definitions occuring in Statement :  primrec: `primrec(n;b;c)` nat: `ℕ` uall: `∀[x:A]. B[x]` prop: `ℙ` so_apply: `x[s]` all: `∀x:A. B[x]` implies: `P `` Q` member: `t ∈ T` function: `x:A ⟶ B[x]` add: `n + m` natural_number: `\$n`
Definitions unfolded in proof :  uall: `∀[x:A]. B[x]` member: `t ∈ T` nat: `ℕ` implies: `P `` Q` false: `False` and: `P ∧ Q` ge: `i ≥ j ` le: `A ≤ B` cand: `A c∧ B` less_than: `a < b` squash: `↓T` guard: `{T}` uimplies: `b supposing a` prop: `ℙ` top: `Top` all: `∀x:A. B[x]` bool: `𝔹` unit: `Unit` it: `⋅` btrue: `tt` uiff: `uiff(P;Q)` ifthenelse: `if b then t else f fi ` bfalse: `ff` exists: `∃x:A. B[x]` or: `P ∨ Q` sq_type: `SQType(T)` bnot: `¬bb` assert: `↑b` iff: `P `⇐⇒` Q` not: `¬A` rev_implies: `P `` Q` subtract: `n - m` less_than': `less_than'(a;b)` true: `True` subtype_rel: `A ⊆r B` so_apply: `x[s]` decidable: `Dec(P)` sq_stable: `SqStable(P)`
Lemmas referenced :  nat_properties less_than_transitivity1 less_than_irreflexivity ge_wf istype-less_than primrec-unroll istype-void lt_int_wf eqtt_to_assert assert_of_lt_int eqff_to_assert bool_cases_sqequal subtype_base_sq bool_wf bool_subtype_base iff_transitivity assert_wf bnot_wf not_wf less_than_wf iff_weakening_uiff assert_of_bnot istype-assert nat_wf not-lt-2 subtract-1-ge-0 subtype_rel-equal less-iff-le add_functionality_wrt_le add-associates add-zero add-commutes le-add-cancel2 subtract_wf decidable__le istype-false not-le-2 condition-implies-le minus-one-mul zero-add minus-one-mul-top minus-add minus-minus add-swap le-add-cancel istype-le istype-nat sq_stable__le
Rules used in proof :  sqequalSubstitution sqequalTransitivity computationStep sqequalReflexivity Error :isect_memberFormation_alt,  introduction cut extract_by_obid sqequalHypSubstitution isectElimination thin hypothesisEquality hypothesis setElimination rename intWeakElimination Error :lambdaFormation_alt,  independent_pairFormation productElimination imageElimination natural_numberEquality independent_isectElimination independent_functionElimination voidElimination Error :universeIsType,  sqequalRule Error :lambdaEquality_alt,  dependent_functionElimination axiomEquality equalityTransitivity equalitySymmetry Error :functionIsTypeImplies,  Error :inhabitedIsType,  because_Cache Error :isect_memberEquality_alt,  unionElimination equalityElimination Error :dependent_pairFormation_alt,  Error :equalityIstype,  promote_hyp instantiate cumulativity Error :functionIsType,  applyEquality functionExtensionality addEquality Error :dependent_set_memberEquality_alt,  minusEquality Error :isectIsTypeImplies,  imageMemberEquality baseClosed universeEquality

Latex:
\mforall{}[P:\mBbbN{}  {}\mrightarrow{}  \mBbbP{}].  \mforall{}[b:P[0]].  \mforall{}[s:\mforall{}n:\mBbbN{}.  (P[n]  {}\mRightarrow{}  P[n  +  1])].  \mforall{}[n:\mBbbN{}].    (primrec(n;b;s)  \mmember{}  P[n])

Date html generated: 2019_06_20-AM-11_27_34
Last ObjectModification: 2019_01_28-PM-05_12_42

Theory : call!by!value_2

Home Index