Nuprl Lemma : polyvar-val

[n:ℕ+]. ∀[v:ℤ]. ∀[l:{l:ℤ List| ||l|| n ∈ ℤ].  (l@polyvar(n;v) if 0 ≤v ∧b v <then l[v] else fi  ∈ ℤ)


Proof




Definitions occuring in Statement :  polyvar: polyvar(n;v) poly-int-val: l@p select: L[n] length: ||as|| list: List band: p ∧b q nat_plus: + le_int: i ≤j ifthenelse: if then else fi  lt_int: i <j uall: [x:A]. B[x] set: {x:A| B[x]}  natural_number: $n int: equal: t ∈ T
Definitions unfolded in proof :  uall: [x:A]. B[x] member: t ∈ T subtype_rel: A ⊆B uimplies: supposing a all: x:A. B[x] nat_plus: + implies:  Q so_lambda: λ2x.t[x] so_apply: x[s] prop: not: ¬A false: False polyconst: polyconst(n;k) subtract: m polyvar: polyvar(n;v) band: p ∧b q btrue: tt bfalse: ff ifthenelse: if then else fi  bnot: ¬bb lt_int: i <j le_int: i ≤j guard: {T} sq_type: SQType(T) or: P ∨ Q decidable: Dec(P) cons: [a b] true: True so_apply: x[s1;s2] top: Top so_lambda: λ2y.t[x; y] it: nil: [] select: L[n] less_than': less_than'(a;b) and: P ∧ Q le: A ≤ B nat: rev_implies:  Q iff: ⇐⇒ Q exists: x:A. B[x] satisfiable_int_formula: satisfiable_int_formula(fmla) uiff: uiff(P;Q) squash: T bool: 𝔹 unit: Unit less_than: a < b ge: i ≥  assert: b has-value: (a)↓ nequal: a ≠ b ∈  cand: c∧ B
Lemmas referenced :  list_wf list_subtype_base int_subtype_base istype-int nat_plus_properties set_subtype_base equal_wf length_wf primrec-wf-nat-plus equal-wf-base less_than_wf nat_plus_wf subtype_base_sq decidable__equal_int length_of_cons_lemma product_subtype_list istype-void istype-base stuck-spread length_of_nil_lemma list-cases le_wf istype-false poly_int_val_cons_cons polyconst-val iff_weakening_equal subtype_rel_self false_wf int_formula_prop_wf int_term_value_add_lemma int_term_value_constant_lemma int_term_value_var_lemma int_formula_prop_eq_lemma int_formula_prop_not_lemma int_formula_prop_and_lemma itermAdd_wf itermConstant_wf itermVar_wf intformeq_wf intformnot_wf intformand_wf full-omega-unsat add-is-int-iff nil_wf polyconst_wf polyform_wf cons_wf istype-universe true_wf squash_wf trivial-equal exp1 one-mul exp_wf2 add-zero exp0_lemma poly_int_val_nil_cons itermMultiply_wf int_term_value_mul_lemma base_wf lt_int_wf bool_wf eqtt_to_assert assert_of_lt_int top_wf le_int_wf assert_of_le_int non_neg_length intformle_wf intformless_wf int_formula_prop_le_lemma int_formula_prop_less_lemma eqff_to_assert bool_cases_sqequal bool_subtype_base assert-bnot decidable__lt assert_wf iff_weakening_uiff istype-top istype-le add-subtract-cancel value-type-has-value int-value-type istype-less_than decidable__le polyform-value-type subtract_wf polyvar_wf select_wf poly-int-val_wf nequal-le-implies itermSubtract_wf int_term_value_subtract_lemma mul-commutes add-commutes add-comm select-cons-tl add_functionality_wrt_eq
Rules used in proof :  sqequalSubstitution sqequalTransitivity computationStep sqequalReflexivity isect_memberFormation_alt introduction cut hypothesis setIsType universeIsType extract_by_obid sqequalHypSubstitution isectElimination thin intEquality equalityIstype inhabitedIsType hypothesisEquality sqequalRule baseApply closedConclusion baseClosed applyEquality independent_isectElimination sqequalBase equalitySymmetry isect_memberEquality_alt axiomEquality isectIsTypeImplies lambdaFormation_alt rename setElimination because_Cache isectIsType lambdaEquality_alt isectEquality setEquality natural_numberEquality int_eqReduceFalseSq sqleReflexivity callbyvalueReduce independent_functionElimination cumulativity instantiate unionElimination dependent_functionElimination productElimination hypothesis_subsumption promote_hyp equalityTransitivity voidElimination independent_pairFormation dependent_set_memberEquality_alt imageMemberEquality equalityIsType4 int_eqEquality dependent_pairFormation_alt approximateComputation pointwiseFunctionality universeEquality imageElimination multiplyEquality lambdaEquality dependent_set_memberEquality lambdaFormation dependent_pairFormation isect_memberEquality voidEquality equalityElimination lessCases isect_memberFormation axiomSqEquality equalityIsType1 Error :memTop,  addEquality minusEquality productEquality

Latex:
\mforall{}[n:\mBbbN{}\msupplus{}].  \mforall{}[v:\mBbbZ{}].  \mforall{}[l:\{l:\mBbbZ{}  List|  ||l||  =  n\}  ].
    (l@polyvar(n;v)  =  if  0  \mleq{}z  v  \mwedge{}\msubb{}  v  <z  n  then  l[v]  else  0  fi  )



Date html generated: 2020_05_19-PM-09_52_13
Last ObjectModification: 2019_12_31-PM-00_15_43

Theory : integer!polynomials


Home Index