### Nuprl Lemma : list_accum2_wf

`∀[A,B,T:Type].`
`  ∀[f:T ⟶ A ⟶ B ⟶ T]. ∀[g:T ⟶ A ⟶ T]. ∀[h:T ⟶ B ⟶ T]. ∀[as:A List]. ∀[bs:B List]. ∀[y:T].`
`    (list_accum2(x,a,b.f[x;a;b];x,a.g[x;a];x,b.h[x;b];y;as;bs) ∈ T) `
`  supposing value-type(T)`

Proof

Definitions occuring in Statement :  list_accum2: `list_accum2(x,a,b.f[x; a; b];x,a.g[x; a];x,b.h[x; b];y;as;bs)` list: `T List` value-type: `value-type(T)` uimplies: `b supposing a` uall: `∀[x:A]. B[x]` so_apply: `x[s1;s2;s3]` so_apply: `x[s1;s2]` member: `t ∈ T` function: `x:A ⟶ B[x]` universe: `Type`
Definitions unfolded in proof :  uall: `∀[x:A]. B[x]` member: `t ∈ T` uimplies: `b supposing a` all: `∀x:A. B[x]` nat: `ℕ` implies: `P `` Q` false: `False` ge: `i ≥ j ` satisfiable_int_formula: `satisfiable_int_formula(fmla)` exists: `∃x:A. B[x]` not: `¬A` top: `Top` and: `P ∧ Q` prop: `ℙ` subtype_rel: `A ⊆r B` guard: `{T}` or: `P ∨ Q` list_accum2: `list_accum2(x,a,b.f[x; a; b];x,a.g[x; a];x,b.h[x; b];y;as;bs)` nil: `[]` it: `⋅` cons: `[a / b]` colength: `colength(L)` so_lambda: `λ2x y.t[x; y]` so_apply: `x[s1;s2]` so_lambda: `λ2x.t[x]` so_apply: `x[s]` sq_type: `SQType(T)` has-value: `(a)↓` decidable: `Dec(P)` less_than: `a < b` squash: `↓T` less_than': `less_than'(a;b)` so_apply: `x[s1;s2;s3]`
Lemmas referenced :  nat_properties satisfiable-full-omega-tt intformand_wf intformle_wf itermConstant_wf itermVar_wf intformless_wf int_formula_prop_and_lemma int_formula_prop_le_lemma int_term_value_constant_lemma int_term_value_var_lemma int_formula_prop_less_lemma int_formula_prop_wf ge_wf less_than_wf list_wf equal-wf-T-base nat_wf colength_wf_list less_than_transitivity1 less_than_irreflexivity list-cases product_subtype_list spread_cons_lemma equal_wf subtype_base_sq set_subtype_base le_wf int_subtype_base value-type-has-value intformeq_wf itermAdd_wf int_formula_prop_eq_lemma int_term_value_add_lemma decidable__le intformnot_wf int_formula_prop_not_lemma subtract_wf itermSubtract_wf int_term_value_subtract_lemma decidable__equal_int nil_wf value-type_wf
Rules used in proof :  sqequalSubstitution sqequalTransitivity computationStep sqequalReflexivity isect_memberFormation introduction cut thin lambdaFormation extract_by_obid sqequalHypSubstitution isectElimination hypothesisEquality hypothesis setElimination rename sqequalRule intWeakElimination natural_numberEquality independent_isectElimination dependent_pairFormation lambdaEquality int_eqEquality intEquality dependent_functionElimination isect_memberEquality voidElimination voidEquality independent_pairFormation computeAll independent_functionElimination axiomEquality equalityTransitivity equalitySymmetry cumulativity applyEquality because_Cache unionElimination promote_hyp hypothesis_subsumption productElimination baseClosed instantiate callbyvalueReduce functionExtensionality applyLambdaEquality dependent_set_memberEquality addEquality imageElimination functionEquality universeEquality

Latex:
\mforall{}[A,B,T:Type].
\mforall{}[f:T  {}\mrightarrow{}  A  {}\mrightarrow{}  B  {}\mrightarrow{}  T].  \mforall{}[g:T  {}\mrightarrow{}  A  {}\mrightarrow{}  T].  \mforall{}[h:T  {}\mrightarrow{}  B  {}\mrightarrow{}  T].  \mforall{}[as:A  List].  \mforall{}[bs:B  List].  \mforall{}[y:T].
(list\_accum2(x,a,b.f[x;a;b];x,a.g[x;a];x,b.h[x;b];y;as;bs)  \mmember{}  T)
supposing  value-type(T)

Date html generated: 2017_09_29-PM-05_58_39
Last ObjectModification: 2017_04_24-PM-04_46_41

Theory : list_1

Home Index