### Nuprl Lemma : funtype-unroll

`∀[T,A:Top]. ∀[n:ℕ].  (funtype(n;A;T) ~ if (n =z 0) then T else (A 0) ⟶ funtype(n - 1;λi.(A (i + 1));T) fi )`

Proof

Definitions occuring in Statement :  funtype: `funtype(n;A;T)` nat: `ℕ` ifthenelse: `if b then t else f fi ` eq_int: `(i =z j)` uall: `∀[x:A]. B[x]` top: `Top` apply: `f a` lambda: `λx.A[x]` function: `x:A ⟶ B[x]` subtract: `n - m` add: `n + m` natural_number: `\$n` sqequal: `s ~ t`
Definitions unfolded in proof :  uall: `∀[x:A]. B[x]` member: `t ∈ T` funtype: `funtype(n;A;T)` nat: `ℕ` top: `Top` all: `∀x:A. B[x]` implies: `P `` Q` bool: `𝔹` unit: `Unit` it: `⋅` btrue: `tt` uiff: `uiff(P;Q)` and: `P ∧ Q` uimplies: `b supposing a` ifthenelse: `if b then t else f fi ` bfalse: `ff` exists: `∃x:A. B[x]` prop: `ℙ` or: `P ∨ Q` sq_type: `SQType(T)` guard: `{T}` bnot: `¬bb` assert: `↑b` false: `False` le: `A ≤ B` less_than': `less_than'(a;b)` not: `¬A` ge: `i ≥ j ` int_upper: `{i...}` decidable: `Dec(P)` satisfiable_int_formula: `satisfiable_int_formula(fmla)`
Lemmas referenced :  primrec-unroll eq_int_wf bool_wf eqtt_to_assert assert_of_eq_int eqff_to_assert equal_wf bool_cases_sqequal subtype_base_sq bool_subtype_base assert-bnot neg_assert_of_eq_int int_upper_subtype_nat false_wf le_wf nat_properties nequal-le-implies zero-add int_subtype_base int_upper_properties decidable__equal_int satisfiable-full-omega-tt intformnot_wf intformeq_wf itermSubtract_wf itermVar_wf itermConstant_wf int_formula_prop_not_lemma int_formula_prop_eq_lemma int_term_value_subtract_lemma int_term_value_var_lemma int_term_value_constant_lemma int_formula_prop_wf general_arith_equation2 nat_wf top_wf
Rules used in proof :  sqequalSubstitution sqequalTransitivity computationStep sqequalReflexivity isect_memberFormation introduction cut sqequalRule extract_by_obid sqequalHypSubstitution isectElimination thin setElimination rename hypothesisEquality hypothesis isect_memberEquality voidElimination voidEquality because_Cache natural_numberEquality lambdaFormation unionElimination equalityElimination equalityTransitivity equalitySymmetry productElimination independent_isectElimination dependent_pairFormation promote_hyp dependent_functionElimination instantiate independent_functionElimination hypothesis_subsumption dependent_set_memberEquality independent_pairFormation cumulativity intEquality lambdaEquality int_eqEquality computeAll sqequalAxiom

Latex:
\mforall{}[T,A:Top].  \mforall{}[n:\mBbbN{}].
(funtype(n;A;T)  \msim{}  if  (n  =\msubz{}  0)  then  T  else  (A  0)  {}\mrightarrow{}  funtype(n  -  1;\mlambda{}i.(A  (i  +  1));T)  fi  )

Date html generated: 2017_10_01-AM-08_39_39
Last ObjectModification: 2017_07_26-PM-04_27_38

Theory : untyped!computation

Home Index