Nuprl Lemma : bag-combine-size-bound

[A,B:Type]. ∀[f:A ⟶ bag(B)]. ∀[L:A List]. ∀[a:A].  #(f[a]) ≤ #(⋃a∈L.f[a]) supposing (a ∈ L)


Proof




Definitions occuring in Statement :  bag-combine: x∈bs.f[x] bag-size: #(bs) bag: bag(T) l_member: (x ∈ l) list: List uimplies: supposing a uall: [x:A]. B[x] so_apply: x[s] le: A ≤ B function: x:A ⟶ B[x] universe: Type
Definitions unfolded in proof :  uall: [x:A]. B[x] member: t ∈ T uimplies: supposing a subtype_rel: A ⊆B squash: T prop: so_apply: x[s] nat: so_lambda: λ2x.t[x] true: True guard: {T} iff: ⇐⇒ Q and: P ∧ Q rev_implies:  Q implies:  Q le: A ≤ B bag-size: #(bs) bag-sum: bag-sum(ba;x.f[x]) less_than': less_than'(a;b) not: ¬A false: False all: x:A. B[x] so_lambda: λ2y.t[x; y] so_apply: x[s1;s2] or: P ∨ Q ge: i ≥  decidable: Dec(P) uiff: uiff(P;Q) satisfiable_int_formula: satisfiable_int_formula(fmla) exists: x:A. B[x] cons: [a b] colength: colength(L) nil: [] it: sq_type: SQType(T) less_than: a < b
Lemmas referenced :  list-subtype-bag le_wf squash_wf true_wf istype-int bag-size_wf bag-combine-size istype-nat subtype_rel_self iff_weakening_equal le_witness_for_triv l_member_wf list_wf bag_wf istype-universe istype-void istype-le list_induction nat_wf list_accum_wf list_accum_nil_lemma null_nil_lemma btrue_wf member-implies-null-eq-bfalse nil_wf btrue_neq_bfalse list_accum_cons_lemma cons_wf cons_member add_nat_wf nat_properties decidable__le add-is-int-iff full-omega-unsat intformand_wf intformnot_wf intformle_wf itermConstant_wf itermVar_wf itermAdd_wf intformeq_wf int_formula_prop_and_lemma int_formula_prop_not_lemma int_formula_prop_le_lemma int_term_value_constant_lemma int_term_value_var_lemma int_term_value_add_lemma int_formula_prop_eq_lemma int_formula_prop_wf false_wf intformless_wf int_formula_prop_less_lemma ge_wf istype-less_than list-cases product_subtype_list colength-cons-not-zero colength_wf_list subtract-1-ge-0 subtype_base_sq set_subtype_base int_subtype_base spread_cons_lemma decidable__equal_int subtract_wf itermSubtract_wf int_term_value_subtract_lemma add-swap add-commutes
Rules used in proof :  sqequalSubstitution sqequalTransitivity computationStep sqequalReflexivity isect_memberFormation_alt introduction cut hypothesisEquality applyEquality extract_by_obid sqequalHypSubstitution isectElimination thin because_Cache independent_isectElimination lambdaEquality_alt universeIsType hypothesis sqequalRule imageElimination equalityTransitivity equalitySymmetry inhabitedIsType setElimination rename natural_numberEquality imageMemberEquality baseClosed instantiate universeEquality productElimination independent_functionElimination isect_memberEquality_alt isectIsTypeImplies functionIsType dependent_set_memberEquality_alt independent_pairFormation lambdaFormation_alt voidElimination equalityIstype dependent_functionElimination functionEquality intEquality addEquality Error :memTop,  unionElimination applyLambdaEquality pointwiseFunctionality promote_hyp baseApply closedConclusion approximateComputation dependent_pairFormation_alt int_eqEquality hyp_replacement intWeakElimination functionIsTypeImplies hypothesis_subsumption sqequalBase

Latex:
\mforall{}[A,B:Type].  \mforall{}[f:A  {}\mrightarrow{}  bag(B)].  \mforall{}[L:A  List].  \mforall{}[a:A].    \#(f[a])  \mleq{}  \#(\mcup{}a\mmember{}L.f[a])  supposing  (a  \mmember{}  L)



Date html generated: 2020_05_20-AM-08_01_40
Last ObjectModification: 2019_12_31-PM-06_30_47

Theory : bags


Home Index