Nuprl Lemma : polynom-equal-iff

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


Proof




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

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



Date html generated: 2017_09_29-PM-06_03_47
Last ObjectModification: 2017_07_26-PM-02_52_58

Theory : integer!polynomials


Home Index