Nuprl Lemma : finite-partition

n,k:ℕ. ∀c:ℕn ⟶ ℕk.
  ∃p:ℕk ⟶ (ℕ List)
   ((Σ(||p j|| j < k) n ∈ ℤ)
   ∧ (∀j:ℕk. ∀x,y:ℕ||p j||.  j[x] > j[y] supposing x < y)
   ∧ (∀j:ℕk. ∀x:ℕ||p j||.  (p j[x] < c∧ ((c j[x]) j ∈ ℤ))))


Proof




Definitions occuring in Statement :  sum: Σ(f[x] x < k) select: L[n] length: ||as|| list: List int_seg: {i..j-} nat: less_than: a < b uimplies: supposing a cand: c∧ B gt: i > j all: x:A. B[x] exists: x:A. B[x] and: P ∧ Q apply: a function: x:A ⟶ B[x] natural_number: $n int: equal: t ∈ T
Definitions unfolded in proof :  all: x:A. B[x] implies:  Q member: t ∈ T uall: [x:A]. B[x] nat: exists: x:A. B[x] and: P ∧ Q so_lambda: λ2x.t[x] so_apply: x[s] subtype_rel: A ⊆B uimplies: supposing a int_seg: {i..j-} prop: guard: {T} lelt: i ≤ j < k ge: i ≥  decidable: Dec(P) or: P ∨ Q not: ¬A satisfiable_int_formula: satisfiable_int_formula(fmla) false: False top: Top less_than: a < b squash: T gt: i > j cand: c∧ B le: A ≤ B rev_implies:  Q iff: ⇐⇒ Q true: True so_apply: x[s1;s2] so_lambda: λ2y.t[x; y] it: nil: [] select: L[n] less_than': less_than'(a;b) uiff: uiff(P;Q) subtract: m bool: 𝔹 unit: Unit btrue: tt ifthenelse: if then else fi  bfalse: ff sq_type: SQType(T) bnot: ¬bb assert: b nequal: a ≠ b ∈  cons: [a b]
Lemmas referenced :  nat_wf int_seg_wf subtract_wf list_wf sum_wf length_wf int_subtype_base less_than_wf gt_wf select_wf int_seg_properties nat_properties decidable__le full-omega-unsat intformand_wf intformnot_wf intformle_wf itermConstant_wf itermVar_wf istype-int int_formula_prop_and_lemma istype-void int_formula_prop_not_lemma int_formula_prop_le_lemma int_term_value_constant_lemma int_term_value_var_lemma int_formula_prop_wf decidable__lt le_wf intformless_wf int_formula_prop_less_lemma non_neg_length length_wf_nat set_subtype_base lelt_wf primrec-wf2 all_wf exists_wf equal-wf-base isect_wf equal-wf-T-base member-less_than satisfiable-full-omega-tt iff_weakening_equal empty_support true_wf squash_wf equal_wf base_wf stuck-spread length_of_nil_lemma nil_wf subtype_rel_function int_seg_subtype istype-false not-le-2 condition-implies-le add-associates minus-add minus-one-mul add-swap minus-one-mul-top add-mul-special zero-mul add-zero add-commutes le-add-cancel2 subtype_rel_self itermSubtract_wf int_term_value_subtract_lemma eq_int_wf eqtt_to_assert assert_of_eq_int cons_wf eqff_to_assert bool_cases_sqequal subtype_base_sq bool_wf bool_subtype_base assert-bnot neg_assert_of_eq_int sum_functionality length_of_cons_lemma sum-ite singleton_support_sum intformeq_wf int_formula_prop_eq_lemma not_wf equal-wf-base-T eq_int_eq_true btrue_wf not_assert_elim btrue_neq_bfalse decidable__equal_int itermAdd_wf int_term_value_add_lemma select_cons_tl subtype_rel_list add-is-int-iff false_wf assert_wf bnot_wf uiff_transitivity iff_transitivity iff_weakening_uiff assert_of_bnot select-cons-tl
Rules used in proof :  sqequalSubstitution sqequalTransitivity computationStep sqequalReflexivity Error :lambdaFormation_alt,  cut thin rename setElimination sqequalRule Error :functionIsType,  Error :universeIsType,  introduction extract_by_obid hypothesis sqequalHypSubstitution isectElimination natural_numberEquality hypothesisEquality Error :productIsType,  Error :equalityIsType4,  Error :inhabitedIsType,  Error :lambdaEquality_alt,  applyEquality functionExtensionality because_Cache Error :isectIsType,  independent_isectElimination productElimination dependent_functionElimination unionElimination approximateComputation independent_functionElimination Error :dependent_pairFormation_alt,  int_eqEquality Error :isect_memberEquality_alt,  voidElimination independent_pairFormation Error :dependent_set_memberEquality_alt,  imageElimination Error :equalityIsType3,  equalityTransitivity equalitySymmetry applyLambdaEquality intEquality Error :setIsType,  functionEquality productEquality dependent_set_memberEquality computeAll isect_memberFormation imageMemberEquality universeEquality voidEquality isect_memberEquality baseClosed lambdaEquality dependent_pairFormation lambdaFormation addEquality minusEquality multiplyEquality equalityElimination Error :equalityIsType1,  promote_hyp instantiate cumulativity hyp_replacement Error :isect_memberFormation_alt,  pointwiseFunctionality baseApply closedConclusion

Latex:
\mforall{}n,k:\mBbbN{}.  \mforall{}c:\mBbbN{}n  {}\mrightarrow{}  \mBbbN{}k.
    \mexists{}p:\mBbbN{}k  {}\mrightarrow{}  (\mBbbN{}  List)
      ((\mSigma{}(||p  j||  |  j  <  k)  =  n)
      \mwedge{}  (\mforall{}j:\mBbbN{}k.  \mforall{}x,y:\mBbbN{}||p  j||.    p  j[x]  >  p  j[y]  supposing  x  <  y)
      \mwedge{}  (\mforall{}j:\mBbbN{}k.  \mforall{}x:\mBbbN{}||p  j||.    (p  j[x]  <  n  c\mwedge{}  ((c  p  j[x])  =  j))))



Date html generated: 2019_06_20-PM-01_32_14
Last ObjectModification: 2018_10_05-AM-09_40_06

Theory : list_1


Home Index