Documentation

Mathlib.Combinatorics.Additive.SubsetSum

Subset sums #

This file defines the subset sum of a finite subset of a commutative monoid.

References #

def Finset.subsetSum {M : Type u_1} [DecidableEq M] [AddCommMonoid M] (A : Finset M) :

The subset-sum of a finite set A in a commutative monoid is the set of all sums of subsets of A.

Equations
Instances For
    theorem Finset.mem_subsetSum_iff {M : Type u_1} [DecidableEq M] [AddCommMonoid M] {A : Finset M} {a : M} :
    a A.subsetSum BA, bB, b = a
    @[simp]
    theorem Finset.subsetSum_mono {M : Type u_1} [DecidableEq M] [AddCommMonoid M] {A B : Finset M} (hAB : A B) :
    theorem Finset.vadd_finset_subsetSum_subset_subsetSum_insert {M : Type u_1} [DecidableEq M] [AddCommMonoid M] {A : Finset M} {a : M} (a_notin_A : aA) :
    theorem Finset.nonneg_of_mem_subsetSum {M : Type u_1} [DecidableEq M] [AddCommMonoid M] {A : Finset M} [LinearOrder M] [IsOrderedCancelAddMonoid M] (A_nonneg : xA, 0 x) (x : M) :
    x A.subsetSum0 x
    theorem Finset.card_add_card_subsetSum_lt_card_subsetSum_insert_max {M : Type u_1} [DecidableEq M] [AddCommMonoid M] {A : Finset M} {a : M} [LinearOrder M] [IsOrderedCancelAddMonoid M] (hA : xA, 0 < x) (hAa : xA, x < a) (ha : 0 < a) :