Nuprl Lemma : polynom-equal-iff

[n:ℕ]. ∀[p,q:polynom(n)].  uiff(p q ∈ polynom(n);∀l:{l:ℤ List| ||l|| n ∈ ℤ(p@l q@l ∈ ℤ))


Proof




Definitions occuring in Statement :  poly-int-val: p@l polynom: polynom(n) length: ||as|| list: List nat: uiff: uiff(P;Q) uall: [x:A]. B[x] all: x:A. B[x] set: {x:A| B[x]}  int: equal: t ∈ T
Definitions unfolded in proof :  so_apply: x[s1;s2;s3] so_lambda: so_lambda(x,y,z.t[x; y; z]) rm-zeros: rm-zeros(n;p) so_apply: x[s1;s2] so_lambda: λ2y.t[x; y] less_than: a < b cons: [a b] nat_plus: + has-valueall: has-valueall(a) has-value: (a)↓ callbyvalueall: callbyvalueall label: ...$L... t polyform-lead-nonzero: polyform-lead-nonzero(n;p) nequal: a ≠ b ∈  assert: b bnot: ¬bb sq_type: SQType(T) bfalse: ff it: unit: Unit bool: 𝔹 poly-zero: poly-zero(n;p) add-polynom: add-polynom(n;rmz;p;q) minus-polynom: minus-polynom(n;p) subtract: m polyform: polyform(n) btrue: tt eq_int: (i =z j) ifthenelse: if then else fi  polynom: polynom(n) less_than': less_than'(a;b) le: A ≤ B top: Top not: ¬A false: False exists: x:A. B[x] satisfiable_int_formula: satisfiable_int_formula(fmla) or: P ∨ Q decidable: Dec(P) ge: i ≥  guard: {T} squash: T true: True implies:  Q rev_implies:  Q iff: ⇐⇒ Q so_apply: x[s] nat: subtype_rel: A ⊆B so_lambda: λ2x.t[x] prop: all: x:A. B[x] uimplies: supposing a and: P ∧ Q uiff: uiff(P;Q) member: t ∈ T uall: [x:A]. B[x]
Lemmas referenced :  add-is-int-iff length-map list_induction list_ind_wf cons_wf list_ind_cons_lemma map_wf map_cons_lemma less_than_anti-reflexive list-valueall-type non_neg_length le_weakening2 btrue_neq_bfalse assert_elim nil_wf assert_of_ff bfalse_wf spread_cons_lemma top_wf decidable__lt length_wf_nat int-value-type set-value-type nat_wf value-type-has-value reduce_hd_cons_lemma length_of_cons_lemma null_cons_lemma product_subtype_list length_of_null_list length_of_nil_lemma null_nil_lemma list-cases assert_of_null equal-wf-T-base null_wf polynom-subtype-list valueall-type-polyform evalall-reduce valueall-type-polynom valueall-type-has-valueall length_wf map-length uiff_transitivity assert_of_bnot iff_weakening_uiff iff_transitivity bool_cases polyform_wf subtype_rel_list neg_assert_of_eq_int assert-bnot bool_subtype_base subtype_base_sq bool_cases_sqequal eqff_to_assert eqtt_to_assert polyform-lead-nonzero_wf bool_wf equal-wf-base not_wf bnot_wf eq_int_wf assert_of_eq_int int_term_value_subtract_lemma itermSubtract_wf subtract_wf decidable__le subtype_rel_self le_wf false_wf less_than_irreflexivity less_than_transitivity1 add-polynom_wf1 poly-zero_wf assert_wf less_than_wf ge_wf int_formula_prop_less_lemma int_formula_prop_le_lemma int_formula_prop_and_lemma intformless_wf intformle_wf intformand_wf int_formula_prop_wf int_term_value_constant_lemma int_term_value_minus_lemma int_term_value_var_lemma int_term_value_add_lemma int_formula_prop_eq_lemma int_formula_prop_not_lemma itermConstant_wf itermMinus_wf itermVar_wf itermAdd_wf intformeq_wf intformnot_wf satisfiable-full-omega-tt decidable__equal_int nat_properties iff_weakening_equal minus-polynom-val add_functionality_wrt_eq add-polynom-int-val true_wf squash_wf btrue_wf minus-polynom_wf polynom_subtype_polyform int_subtype_base list_subtype_base minus-polynom_wf2 add-polynom_wf assert-poly-zero all_wf equal-wf-base-T list_wf set_wf poly-int-val_wf2 polynom_wf equal_wf and_wf
Rules used in proof :  pointwiseFunctionality functionEquality equalityUniverse sqequalAxiom lessCases hypothesis_subsumption callbyvalueReduce levelHypothesis addLevel int_eqReduceFalseSq impliesFunctionality cumulativity instantiate promote_hyp equalityElimination addEquality intWeakElimination computeAll voidEquality voidElimination int_eqEquality dependent_pairFormation unionElimination imageMemberEquality universeEquality imageElimination natural_numberEquality minusEquality independent_isectElimination independent_functionElimination isect_memberEquality independent_pairEquality equalityTransitivity setEquality axiomEquality dependent_functionElimination because_Cache applyEquality baseClosed closedConclusion baseApply lambdaEquality sqequalRule intEquality productElimination rename setElimination applyLambdaEquality thin isectElimination sqequalHypSubstitution extract_by_obid hypothesisEquality hypothesis dependent_set_memberEquality equalitySymmetry lambdaFormation independent_pairFormation cut introduction isect_memberFormation sqequalReflexivity computationStep sqequalTransitivity sqequalSubstitution

Latex:
\mforall{}[n:\mBbbN{}].  \mforall{}[p,q:polynom(n)].    uiff(p  =  q;\mforall{}l:\{l:\mBbbZ{}  List|  ||l||  =  n\}  .  (p@l  =  q@l))



Date html generated: 2017_04_20-AM-07_16_32
Last ObjectModification: 2017_04_19-PM-01_44_29

Theory : list_1


Home Index