Nuprl Lemma : distinct_iff_counts_le_one

s:DSet. ∀ps:|s| List.  (↑distinct{s}(ps) ⇐⇒ ∀x:|s|. ((x #∈ ps) ≤ 1))


Proof




Definitions occuring in Statement :  count: #∈ as distinct: distinct{s}(ps) list: List assert: b le: A ≤ B all: x:A. B[x] iff: ⇐⇒ Q natural_number: $n dset: DSet set_car: |p|
Definitions unfolded in proof :  all: x:A. B[x] uall: [x:A]. B[x] member: t ∈ T dset: DSet so_lambda: λ2x.t[x] so_apply: x[s] implies:  Q top: Top assert: b ifthenelse: if then else fi  btrue: tt iff: ⇐⇒ Q and: P ∧ Q prop: rev_implies:  Q le: A ≤ B less_than': less_than'(a;b) false: False not: ¬A true: True infix_ap: y ball: ball bool: 𝔹 unit: Unit it: uiff: uiff(P;Q) uimplies: supposing a band: p ∧b q bfalse: ff exists: x:A. B[x] or: P ∨ Q sq_type: SQType(T) guard: {T} bnot: ¬bb gt: i > j b2i: b2i(b) squash: T subtype_rel: A ⊆B decidable: Dec(P) satisfiable_int_formula: satisfiable_int_formula(fmla) ge: i ≥  less_than: a < b
Lemmas referenced :  list_induction set_car_wf iff_wf assert_wf distinct_wf all_wf le_wf count_wf distinct_nil_lemma istype-void count_nil_lemma distinct_cons_lemma count_cons_lemma list_wf dset_wf istype-false true_wf iff_weakening_uiff set_eq_wf equal_wf assert_of_dset_eq mem_wf not_wf b2i_wf bnot_wf assert_of_bnot ball_char infix_ap_wf bool_wf ball_wf eqtt_to_assert eqff_to_assert bool_cases_sqequal subtype_base_sq bool_subtype_base assert-bnot bfalse_wf assert_of_band mem_iff_count_nzero gt_wf equal-wf-T-base uiff_transitivity iff_transitivity squash_wf istype-int add_functionality_wrt_eq subtype_rel_self iff_weakening_equal decidable__equal_int decidable__le full-omega-unsat intformand_wf intformnot_wf intformle_wf itermAdd_wf itermConstant_wf itermVar_wf intformeq_wf int_formula_prop_and_lemma int_formula_prop_not_lemma int_formula_prop_le_lemma int_term_value_add_lemma int_term_value_constant_lemma int_term_value_var_lemma int_formula_prop_eq_lemma int_formula_prop_wf non_neg_length count_bounds decidable__lt intformless_wf int_formula_prop_less_lemma zero-add b2i_bounds
Rules used in proof :  sqequalSubstitution sqequalTransitivity computationStep sqequalReflexivity lambdaFormation_alt cut thin introduction extract_by_obid sqequalHypSubstitution isectElimination setElimination rename because_Cache hypothesis sqequalRule lambdaEquality_alt dependent_functionElimination hypothesisEquality natural_numberEquality universeIsType independent_functionElimination isect_memberEquality_alt voidElimination productIsType functionIsType inhabitedIsType independent_pairFormation productElimination applyEquality equalityIsType1 promote_hyp addEquality unionElimination equalityElimination independent_isectElimination dependent_pairFormation_alt equalityTransitivity equalitySymmetry instantiate productEquality baseClosed imageElimination imageMemberEquality universeEquality approximateComputation int_eqEquality

Latex:
\mforall{}s:DSet.  \mforall{}ps:|s|  List.    (\muparrow{}distinct\{s\}(ps)  \mLeftarrow{}{}\mRightarrow{}  \mforall{}x:|s|.  ((x  \#\mmember{}  ps)  \mleq{}  1))



Date html generated: 2019_10_16-PM-01_05_28
Last ObjectModification: 2018_10_08-AM-10_19_15

Theory : list_2


Home Index