### Nuprl Lemma : combination-decomp

`∀[A:Type]. ∀[n:ℕ+]. ∀[L:Combination(n;A)].  {(hd(L) ∈ A) ∧ (tl(L) ∈ Combination(n - 1;{a:A| ¬(a = hd(L) ∈ A)} ))}`

Proof

Definitions occuring in Statement :  combination: `Combination(n;T)` hd: `hd(l)` tl: `tl(l)` nat_plus: `ℕ+` uall: `∀[x:A]. B[x]` guard: `{T}` not: `¬A` and: `P ∧ Q` member: `t ∈ T` set: `{x:A| B[x]} ` subtract: `n - m` natural_number: `\$n` universe: `Type` equal: `s = t ∈ T`
Definitions unfolded in proof :  uall: `∀[x:A]. B[x]` member: `t ∈ T` combination: `Combination(n;T)` all: `∀x:A. B[x]` or: `P ∨ Q` guard: `{T}` and: `P ∧ Q` uimplies: `b supposing a` nat_plus: `ℕ+` satisfiable_int_formula: `satisfiable_int_formula(fmla)` exists: `∃x:A. B[x]` false: `False` implies: `P `` Q` not: `¬A` top: `Top` prop: `ℙ` cons: `[a / b]` uiff: `uiff(P;Q)` nat: `ℕ` ge: `i ≥ j ` subtype_rel: `A ⊆r B` colength: `colength(L)` so_lambda: `λ2x y.t[x; y]` so_apply: `x[s1;s2]` decidable: `Dec(P)` nil: `[]` it: `⋅` so_lambda: `λ2x.t[x]` so_apply: `x[s]` sq_type: `SQType(T)` less_than: `a < b` squash: `↓T` less_than': `less_than'(a;b)` iff: `P `⇐⇒` Q` rev_implies: `P `` Q` cand: `A c∧ B`
Lemmas referenced :  list-cases reduce_tl_nil_lemma length_of_nil_lemma hd_wf nil_wf nat_plus_properties satisfiable-full-omega-tt intformand_wf intformeq_wf itermConstant_wf itermVar_wf intformless_wf int_formula_prop_and_lemma int_formula_prop_eq_lemma int_term_value_constant_lemma int_term_value_var_lemma int_formula_prop_less_lemma int_formula_prop_wf product_subtype_list reduce_hd_cons_lemma reduce_tl_cons_lemma length_of_cons_lemma combination_wf nat_plus_wf no_repeats_cons nat_properties intformle_wf int_formula_prop_le_lemma ge_wf less_than_wf not_wf l_member_wf equal-wf-T-base nat_wf colength_wf_list less_than_transitivity1 less_than_irreflexivity equal_wf spread_cons_lemma itermAdd_wf int_term_value_add_lemma decidable__le intformnot_wf int_formula_prop_not_lemma le_wf subtract_wf itermSubtract_wf int_term_value_subtract_lemma subtype_base_sq set_subtype_base int_subtype_base decidable__equal_int cons_wf cons_member list_wf no_repeats-subtype add-is-int-iff false_wf no_repeats_wf length_wf
Rules used in proof :  sqequalSubstitution sqequalTransitivity computationStep sqequalReflexivity isect_memberFormation introduction cut sqequalHypSubstitution setElimination thin rename hypothesisEquality extract_by_obid isectElimination hypothesis dependent_functionElimination unionElimination sqequalRule independent_pairFormation productElimination cumulativity because_Cache independent_isectElimination natural_numberEquality dependent_pairFormation lambdaEquality int_eqEquality intEquality isect_memberEquality voidElimination voidEquality computeAll promote_hyp hypothesis_subsumption independent_pairEquality axiomEquality equalityTransitivity equalitySymmetry universeEquality lambdaFormation intWeakElimination independent_functionElimination applyEquality setEquality applyLambdaEquality dependent_set_memberEquality addEquality baseClosed instantiate imageElimination inlFormation hyp_replacement inrFormation pointwiseFunctionality baseApply closedConclusion productEquality

Latex:
\mforall{}[A:Type].  \mforall{}[n:\mBbbN{}\msupplus{}].  \mforall{}[L:Combination(n;A)].
\{(hd(L)  \mmember{}  A)  \mwedge{}  (tl(L)  \mmember{}  Combination(n  -  1;\{a:A|  \mneg{}(a  =  hd(L))\}  ))\}

Date html generated: 2018_05_21-PM-08_08_25
Last ObjectModification: 2017_07_26-PM-05_44_07

Theory : general

Home Index