Commit 2025-02-25 17:02 614c9c9c

View on Github →

chore(Data/Multiset): split Multiset/Basic.lean into many files (#22126) This PR splits the very large file Mathlib.Data.Multiset.Basic into many files. In particular, my goal was to reduce the dependencies for Mathlib.Data.Finset.Defs. The files created in this split are:

  • Multiset.Defs: definition of Multiset, predicates such as membership, order, subsets, remaining definitions required for Finset.Defs. (Some material from Multiset.Nodup was moved here.)
  • Multiset.ZeroCons: definition of the empty, singleton and cons operations, induction principles.
  • Multiset.Count: definition of count, extensionality principles.
  • Multiset.AddSub: definition of addition, erase and subtraction operations.
  • Multiset.Replicate: definition of replicate operation.
  • Multiset.MapFold: definition of map, foldl and foldr operations.
  • Multiset.Filter: definition of filter, filterMap operations.
  • Multiset.UnionInter: definition of union, intersection operations and distributive lattice instance.
  • Multiset.Basic: miscellaneous results. Nearly each file in this list imports the one above it. I don't know if we can improve the linearity in this bit of the import graph much, but at least the transitive imports should improve a bit I expect. The files with notable modifications are:
  • Multiset.Nodup: definition and basic properties of Multiset.Nodup is upstreamed to Multiset.Defs (for use in Finset.Defs).
  • Finset.Defs: downstreamed a few declarations to reduce dependencies to only Multiset.Defs. I want to try two extra cleanups, which I'll leave to follow-up PRs in order to make the diff not too ridiculous:
  • Upstream more material from Multiset.Nodup
  • Reverse the direction of the Multiset.Filter -> Multiset.MapFold import (since there are quite a few results on map that are proved using filter).

Estimated changes

added theorem Multiset.Rel.add
added theorem Multiset.add_cons
added theorem Multiset.card_add
added theorem Multiset.card_erase_le
added theorem Multiset.card_sub
added theorem Multiset.coe_add
added theorem Multiset.coe_erase
added theorem Multiset.coe_sub
added theorem Multiset.cons_add
added theorem Multiset.cons_erase
added theorem Multiset.countP_add
added theorem Multiset.countP_sub
added theorem Multiset.count_add
added theorem Multiset.count_sub
added def Multiset.erase
added theorem Multiset.erase_comm
added theorem Multiset.erase_le
added theorem Multiset.erase_lt
added theorem Multiset.erase_subset
added theorem Multiset.erase_zero
added theorem Multiset.le_add_left
added theorem Multiset.le_add_right
added theorem Multiset.le_cons_erase
added theorem Multiset.mem_add
added theorem Multiset.mem_sub
added theorem Multiset.rel_add_left
added theorem Multiset.rel_add_right
added theorem Multiset.singleton_add
added theorem Multiset.sub_cons
added theorem Multiset.sub_singleton
deleted def Multiset.Mem
deleted def Multiset.Pairwise
deleted theorem Multiset.Rel.add
deleted theorem Multiset.Rel.countP_eq
deleted theorem Multiset.Rel.mono
deleted theorem Multiset.Rel.trans
deleted inductive Multiset.Rel
deleted theorem Multiset.Subset.refl
deleted theorem Multiset.Subset.trans
deleted theorem Multiset.add_cons
deleted def Multiset.attach
deleted theorem Multiset.attach_cons
deleted theorem Multiset.attach_map_val'
deleted theorem Multiset.attach_map_val
deleted theorem Multiset.attach_zero
deleted theorem Multiset.bot_eq_zero
deleted def Multiset.card
deleted theorem Multiset.card_add
deleted theorem Multiset.card_attach
deleted theorem Multiset.card_cons
deleted theorem Multiset.card_eq_one
deleted theorem Multiset.card_eq_three
deleted theorem Multiset.card_eq_two
deleted theorem Multiset.card_eq_zero
deleted theorem Multiset.card_erase_le
deleted theorem Multiset.card_le_card
deleted theorem Multiset.card_lt_card
deleted theorem Multiset.card_map
deleted theorem Multiset.card_mono
deleted theorem Multiset.card_pair
deleted theorem Multiset.card_pmap
deleted theorem Multiset.card_pos
deleted theorem Multiset.card_replicate
deleted theorem Multiset.card_singleton
deleted theorem Multiset.card_strictMono
deleted theorem Multiset.card_sub
deleted theorem Multiset.card_zero
deleted theorem Multiset.coe_add
deleted theorem Multiset.coe_attach
deleted theorem Multiset.coe_card
deleted theorem Multiset.coe_count
deleted theorem Multiset.coe_countP
deleted theorem Multiset.coe_disjoint
deleted theorem Multiset.coe_eq_coe
deleted theorem Multiset.coe_eq_singleton
deleted theorem Multiset.coe_eq_zero
deleted theorem Multiset.coe_erase
deleted theorem Multiset.coe_foldl
deleted theorem Multiset.coe_foldr
deleted theorem Multiset.coe_foldr_swap
deleted theorem Multiset.coe_inter
deleted theorem Multiset.coe_le
deleted theorem Multiset.coe_nil
deleted theorem Multiset.coe_pmap
deleted theorem Multiset.coe_replicate
deleted theorem Multiset.coe_reverse
deleted theorem Multiset.coe_singleton
deleted theorem Multiset.coe_sub
deleted theorem Multiset.coe_subset
deleted def Multiset.cons
deleted theorem Multiset.cons_add
deleted theorem Multiset.cons_coe
deleted theorem Multiset.cons_eq_cons
deleted theorem Multiset.cons_erase
deleted theorem Multiset.cons_inj_left
deleted theorem Multiset.cons_inj_right
deleted theorem Multiset.cons_le_cons
deleted theorem Multiset.cons_le_cons_iff
deleted theorem Multiset.cons_lt_cons
deleted theorem Multiset.cons_lt_cons_iff
deleted theorem Multiset.cons_ne_zero
deleted theorem Multiset.cons_sub_of_le
deleted theorem Multiset.cons_subset
deleted theorem Multiset.cons_subset_cons
deleted theorem Multiset.cons_swap
deleted theorem Multiset.cons_zero
deleted def Multiset.count
deleted def Multiset.countP
deleted theorem Multiset.countP_False
deleted theorem Multiset.countP_True
deleted theorem Multiset.countP_add
deleted theorem Multiset.countP_attach
deleted theorem Multiset.countP_congr
deleted theorem Multiset.countP_cons
deleted theorem Multiset.countP_eq_card
deleted theorem Multiset.countP_eq_zero
deleted theorem Multiset.countP_filter
deleted theorem Multiset.countP_le_card
deleted theorem Multiset.countP_le_of_le
deleted theorem Multiset.countP_map
deleted theorem Multiset.countP_pos
deleted theorem Multiset.countP_sub
deleted theorem Multiset.countP_zero
deleted theorem Multiset.count_add
deleted theorem Multiset.count_attach
deleted theorem Multiset.count_cons
deleted theorem Multiset.count_cons_of_ne
deleted theorem Multiset.count_cons_self
deleted theorem Multiset.count_eq_card
deleted theorem Multiset.count_eq_zero
deleted theorem Multiset.count_erase_self
deleted theorem Multiset.count_filter
deleted theorem Multiset.count_injective
deleted theorem Multiset.count_inter
deleted theorem Multiset.count_le_card
deleted theorem Multiset.count_le_of_le
deleted theorem Multiset.count_map
deleted theorem Multiset.count_ne_zero
deleted theorem Multiset.count_pos
deleted theorem Multiset.count_replicate
deleted theorem Multiset.count_singleton
deleted theorem Multiset.count_sub
deleted theorem Multiset.count_union
deleted theorem Multiset.count_zero
deleted theorem Multiset.disjoint_iff_ne
deleted theorem Multiset.disjoint_left
deleted theorem Multiset.disjoint_map_map
deleted theorem Multiset.disjoint_right
deleted theorem Multiset.empty_eq_zero
deleted theorem Multiset.eq_replicate
deleted theorem Multiset.eq_union_left
deleted theorem Multiset.eq_union_right
deleted def Multiset.erase
deleted theorem Multiset.erase_attach_map
deleted theorem Multiset.erase_comm
deleted theorem Multiset.erase_cons_head
deleted theorem Multiset.erase_cons_tail
deleted theorem Multiset.erase_le
deleted theorem Multiset.erase_le_erase
deleted theorem Multiset.erase_lt
deleted theorem Multiset.erase_of_not_mem
deleted theorem Multiset.erase_singleton
deleted theorem Multiset.erase_subset
deleted theorem Multiset.erase_zero
deleted theorem Multiset.ext'
deleted theorem Multiset.ext
deleted def Multiset.filter
deleted def Multiset.filterMap
deleted theorem Multiset.filterMap_coe
deleted theorem Multiset.filterMap_eq_map
deleted theorem Multiset.filterMap_filter
deleted theorem Multiset.filterMap_map
deleted theorem Multiset.filterMap_some
deleted theorem Multiset.filterMap_zero
deleted theorem Multiset.filter_add
deleted theorem Multiset.filter_add_not
deleted theorem Multiset.filter_attach'
deleted theorem Multiset.filter_attach
deleted theorem Multiset.filter_coe
deleted theorem Multiset.filter_comm
deleted theorem Multiset.filter_congr
deleted theorem Multiset.filter_cons
deleted theorem Multiset.filter_eq'
deleted theorem Multiset.filter_eq
deleted theorem Multiset.filter_eq_nil
deleted theorem Multiset.filter_eq_self
deleted theorem Multiset.filter_filter
deleted theorem Multiset.filter_filterMap
deleted theorem Multiset.filter_inter
deleted theorem Multiset.filter_le
deleted theorem Multiset.filter_le_filter
deleted theorem Multiset.filter_map
deleted theorem Multiset.filter_singleton
deleted theorem Multiset.filter_sub
deleted theorem Multiset.filter_subset
deleted theorem Multiset.filter_union
deleted theorem Multiset.filter_zero
deleted def Multiset.foldl
deleted theorem Multiset.foldl_add
deleted theorem Multiset.foldl_cons
deleted theorem Multiset.foldl_induction'
deleted theorem Multiset.foldl_induction
deleted theorem Multiset.foldl_swap
deleted theorem Multiset.foldl_zero
deleted def Multiset.foldr
deleted theorem Multiset.foldr_add
deleted theorem Multiset.foldr_cons
deleted theorem Multiset.foldr_induction'
deleted theorem Multiset.foldr_induction
deleted theorem Multiset.foldr_singleton
deleted theorem Multiset.foldr_swap
deleted theorem Multiset.foldr_zero
deleted theorem Multiset.forall_mem_cons
deleted theorem Multiset.induction_on'
deleted theorem Multiset.inf_eq_inter
deleted theorem Multiset.insert_eq_cons
deleted def Multiset.inter
deleted theorem Multiset.inter_comm
deleted theorem Multiset.inter_le_left
deleted theorem Multiset.inter_le_right
deleted theorem Multiset.inter_replicate
deleted theorem Multiset.inter_zero
deleted theorem Multiset.leInductionOn
deleted theorem Multiset.le_add_left
deleted theorem Multiset.le_add_right
deleted theorem Multiset.le_cons_erase
deleted theorem Multiset.le_cons_self
deleted theorem Multiset.le_filter
deleted theorem Multiset.le_iff_count
deleted theorem Multiset.le_inter
deleted theorem Multiset.le_inter_iff
deleted theorem Multiset.le_replicate_iff
deleted theorem Multiset.le_singleton
deleted theorem Multiset.le_union_left
deleted theorem Multiset.le_union_right
deleted theorem Multiset.le_zero
deleted theorem Multiset.lift_coe
deleted theorem Multiset.lt_cons_self
deleted theorem Multiset.lt_iff_cons_le
deleted theorem Multiset.lt_singleton
deleted def Multiset.map
deleted theorem Multiset.map_add
deleted theorem Multiset.map_coe
deleted theorem Multiset.map_comp_cons
deleted theorem Multiset.map_congr
deleted theorem Multiset.map_cons
deleted theorem Multiset.map_const'
deleted theorem Multiset.map_const
deleted theorem Multiset.map_eq_cons
deleted theorem Multiset.map_eq_map
deleted theorem Multiset.map_eq_singleton
deleted theorem Multiset.map_eq_zero
deleted theorem Multiset.map_erase
deleted theorem Multiset.map_erase_of_mem
deleted theorem Multiset.map_filter'
deleted theorem Multiset.map_filterMap
deleted theorem Multiset.map_hcongr
deleted theorem Multiset.map_id'
deleted theorem Multiset.map_id
deleted theorem Multiset.map_injective
deleted theorem Multiset.map_le_map
deleted theorem Multiset.map_le_map_iff
deleted theorem Multiset.map_lt_map
deleted theorem Multiset.map_map
deleted theorem Multiset.map_mono
deleted theorem Multiset.map_pmap
deleted theorem Multiset.map_replicate
deleted theorem Multiset.map_set_pairwise
deleted theorem Multiset.map_singleton
deleted theorem Multiset.map_strictMono
deleted theorem Multiset.map_subset_map
deleted theorem Multiset.map_union
deleted theorem Multiset.map_zero
deleted theorem Multiset.mem_add
deleted theorem Multiset.mem_attach
deleted theorem Multiset.mem_coe
deleted theorem Multiset.mem_cons
deleted theorem Multiset.mem_cons_of_mem
deleted theorem Multiset.mem_cons_self
deleted theorem Multiset.mem_erase_of_ne
deleted theorem Multiset.mem_filter
deleted theorem Multiset.mem_filterMap
deleted theorem Multiset.mem_inter
deleted theorem Multiset.mem_map
deleted theorem Multiset.mem_map_of_mem
deleted theorem Multiset.mem_of_le
deleted theorem Multiset.mem_of_mem_erase
deleted theorem Multiset.mem_of_subset
deleted theorem Multiset.mem_pmap
deleted theorem Multiset.mem_replicate
deleted theorem Multiset.mem_singleton
deleted theorem Multiset.mem_sub
deleted theorem Multiset.mem_union
deleted theorem Multiset.not_mem_mono
deleted theorem Multiset.not_mem_zero
deleted def Multiset.ofList
deleted theorem Multiset.of_mem_filter
deleted theorem Multiset.pair_comm
deleted theorem Multiset.pairwise_coe_iff
deleted theorem Multiset.pairwise_zero
deleted theorem Multiset.pmap_congr
deleted theorem Multiset.pmap_cons
deleted theorem Multiset.pmap_eq_map
deleted theorem Multiset.pmap_zero
deleted theorem Multiset.quot_mk_to_coe''
deleted theorem Multiset.quot_mk_to_coe'
deleted theorem Multiset.quot_mk_to_coe
deleted def Multiset.rec
deleted def Multiset.recOn
deleted theorem Multiset.recOn_0
deleted theorem Multiset.recOn_cons
deleted theorem Multiset.rel_add_left
deleted theorem Multiset.rel_add_right
deleted theorem Multiset.rel_cons_left
deleted theorem Multiset.rel_cons_right
deleted theorem Multiset.rel_eq
deleted theorem Multiset.rel_eq_refl
deleted theorem Multiset.rel_flip
deleted theorem Multiset.rel_flip_eq
deleted theorem Multiset.rel_map
deleted theorem Multiset.rel_map_left
deleted theorem Multiset.rel_map_right
deleted theorem Multiset.rel_of_forall
deleted theorem Multiset.rel_zero_left
deleted theorem Multiset.rel_zero_right
deleted def Multiset.replicate
deleted theorem Multiset.replicate_add
deleted theorem Multiset.replicate_inter
deleted theorem Multiset.replicate_le_coe
deleted theorem Multiset.replicate_mono
deleted theorem Multiset.replicate_one
deleted theorem Multiset.replicate_succ
deleted theorem Multiset.replicate_zero
deleted theorem Multiset.singleton_add
deleted theorem Multiset.singleton_inj
deleted theorem Multiset.singleton_le
deleted theorem Multiset.singleton_subset
deleted def Multiset.sizeOf
deleted theorem Multiset.ssubset_cons
deleted theorem Multiset.sub_add_inter
deleted theorem Multiset.sub_cons
deleted theorem Multiset.sub_inter
deleted theorem Multiset.sub_singleton
deleted theorem Multiset.subset_add_left
deleted theorem Multiset.subset_add_right
deleted theorem Multiset.subset_cons
deleted theorem Multiset.subset_iff
deleted theorem Multiset.subset_of_le
deleted theorem Multiset.subset_zero
deleted theorem Multiset.sup_eq_union
deleted def Multiset.union
deleted theorem Multiset.union_add_inter
deleted theorem Multiset.union_comm
deleted theorem Multiset.union_def
deleted theorem Multiset.union_le
deleted theorem Multiset.union_le_add
deleted theorem Multiset.union_le_iff
deleted theorem Multiset.union_zero
deleted theorem Multiset.zero_disjoint
deleted theorem Multiset.zero_inter
deleted theorem Multiset.zero_le
deleted theorem Multiset.zero_ne_cons
deleted theorem Multiset.zero_ssubset
deleted theorem Multiset.zero_subset
deleted theorem Multiset.zero_union
deleted def Multiset.{u}
added theorem Multiset.Rel.countP_eq
added theorem Multiset.coe_count
added theorem Multiset.coe_countP
added def Multiset.count
added def Multiset.countP
added theorem Multiset.countP_False
added theorem Multiset.countP_True
added theorem Multiset.countP_attach
added theorem Multiset.countP_congr
added theorem Multiset.countP_cons
added theorem Multiset.countP_pos
added theorem Multiset.countP_zero
added theorem Multiset.count_attach
added theorem Multiset.count_cons
added theorem Multiset.count_eq_card
added theorem Multiset.count_eq_zero
added theorem Multiset.count_le_card
added theorem Multiset.count_ne_zero
added theorem Multiset.count_pos
added theorem Multiset.count_zero
added theorem Multiset.ext'
added theorem Multiset.ext
added theorem Multiset.le_iff_count
added def Multiset.Mem
added theorem Multiset.Nodup.ext
added def Multiset.Nodup
added theorem Multiset.Subset.refl
added theorem Multiset.Subset.trans
added def Multiset.attach
added def Multiset.card
added theorem Multiset.card_attach
added theorem Multiset.card_le_card
added theorem Multiset.card_lt_card
added theorem Multiset.card_mono
added theorem Multiset.card_pmap
added theorem Multiset.coe_attach
added theorem Multiset.coe_card
added theorem Multiset.coe_eq_coe
added theorem Multiset.coe_le
added theorem Multiset.coe_nodup
added theorem Multiset.coe_pmap
added theorem Multiset.coe_reverse
added theorem Multiset.coe_subset
added theorem Multiset.leInductionOn
added theorem Multiset.le_iff_subset
added theorem Multiset.lift_coe
added theorem Multiset.mem_attach
added theorem Multiset.mem_coe
added theorem Multiset.mem_of_le
added theorem Multiset.mem_of_subset
added theorem Multiset.mem_pmap
added theorem Multiset.not_mem_mono
added def Multiset.ofList
added theorem Multiset.pmap_congr
added def Multiset.sizeOf
added theorem Multiset.subset_iff
added theorem Multiset.subset_of_le
added def Multiset.{u}
added theorem Multiset.countP_filter
added theorem Multiset.countP_map
added theorem Multiset.count_filter
added theorem Multiset.count_map
added def Multiset.filter
added theorem Multiset.filterMap_coe
added theorem Multiset.filterMap_map
added theorem Multiset.filter_add
added theorem Multiset.filter_attach
added theorem Multiset.filter_coe
added theorem Multiset.filter_comm
added theorem Multiset.filter_congr
added theorem Multiset.filter_cons
added theorem Multiset.filter_eq'
added theorem Multiset.filter_eq
added theorem Multiset.filter_eq_nil
added theorem Multiset.filter_filter
added theorem Multiset.filter_le
added theorem Multiset.filter_map
added theorem Multiset.filter_sub
added theorem Multiset.filter_subset
added theorem Multiset.filter_zero
added theorem Multiset.le_filter
added theorem Multiset.map_filter'
added theorem Multiset.map_filterMap
added theorem Multiset.mem_filter
added theorem Multiset.mem_filterMap
added theorem Multiset.of_mem_filter
added theorem Multiset.attach_cons
added theorem Multiset.card_map
added theorem Multiset.coe_foldl
added theorem Multiset.coe_foldr
added def Multiset.foldl
added theorem Multiset.foldl_add
added theorem Multiset.foldl_cons
added theorem Multiset.foldl_swap
added theorem Multiset.foldl_zero
added def Multiset.foldr
added theorem Multiset.foldr_add
added theorem Multiset.foldr_cons
added theorem Multiset.foldr_swap
added theorem Multiset.foldr_zero
added def Multiset.map
added theorem Multiset.map_add
added theorem Multiset.map_coe
added theorem Multiset.map_comp_cons
added theorem Multiset.map_congr
added theorem Multiset.map_cons
added theorem Multiset.map_const'
added theorem Multiset.map_const
added theorem Multiset.map_eq_cons
added theorem Multiset.map_eq_map
added theorem Multiset.map_eq_zero
added theorem Multiset.map_erase
added theorem Multiset.map_hcongr
added theorem Multiset.map_id'
added theorem Multiset.map_id
added theorem Multiset.map_injective
added theorem Multiset.map_le_map
added theorem Multiset.map_lt_map
added theorem Multiset.map_map
added theorem Multiset.map_mono
added theorem Multiset.map_pmap
added theorem Multiset.map_replicate
added theorem Multiset.map_singleton
added theorem Multiset.map_zero
added theorem Multiset.mem_map
added theorem Multiset.pmap_eq_map
added theorem Multiset.rel_map
added theorem Multiset.rel_map_left
added theorem Multiset.rel_map_right
added theorem Multiset.coe_disjoint
added theorem Multiset.coe_inter
added theorem Multiset.count_inter
added theorem Multiset.count_union
added theorem Multiset.disjoint_left
added theorem Multiset.eq_union_left
added theorem Multiset.filter_inter
added theorem Multiset.filter_union
added theorem Multiset.inf_eq_inter
added def Multiset.inter
added theorem Multiset.inter_comm
added theorem Multiset.inter_le_left
added theorem Multiset.inter_zero
added theorem Multiset.le_inter
added theorem Multiset.le_inter_iff
added theorem Multiset.le_union_left
added theorem Multiset.map_union
added theorem Multiset.mem_inter
added theorem Multiset.mem_union
added theorem Multiset.sub_add_inter
added theorem Multiset.sub_inter
added theorem Multiset.sup_eq_union
added def Multiset.union
added theorem Multiset.union_comm
added theorem Multiset.union_def
added theorem Multiset.union_le
added theorem Multiset.union_le_add
added theorem Multiset.union_le_iff
added theorem Multiset.union_zero
added theorem Multiset.zero_disjoint
added theorem Multiset.zero_inter
added theorem Multiset.zero_union
added theorem Multiset.Rel.mono
added theorem Multiset.Rel.trans
added inductive Multiset.Rel
added theorem Multiset.attach_zero
added theorem Multiset.bot_eq_zero
added theorem Multiset.card_cons
added theorem Multiset.card_eq_one
added theorem Multiset.card_eq_three
added theorem Multiset.card_eq_two
added theorem Multiset.card_eq_zero
added theorem Multiset.card_pair
added theorem Multiset.card_pos
added theorem Multiset.card_zero
added theorem Multiset.coe_eq_zero
added theorem Multiset.coe_nil
added theorem Multiset.coe_singleton
added def Multiset.cons
added theorem Multiset.cons_coe
added theorem Multiset.cons_eq_cons
added theorem Multiset.cons_inj_left
added theorem Multiset.cons_le_cons
added theorem Multiset.cons_lt_cons
added theorem Multiset.cons_ne_zero
added theorem Multiset.cons_subset
added theorem Multiset.cons_swap
added theorem Multiset.cons_zero
added theorem Multiset.empty_eq_zero
added theorem Multiset.induction_on'
added theorem Multiset.le_cons_self
added theorem Multiset.le_singleton
added theorem Multiset.le_zero
added theorem Multiset.lt_cons_self
added theorem Multiset.lt_singleton
added theorem Multiset.mem_cons
added theorem Multiset.mem_cons_self
added theorem Multiset.mem_singleton
added theorem Multiset.not_mem_zero
added theorem Multiset.pair_comm
added theorem Multiset.pairwise_zero
added theorem Multiset.pmap_cons
added theorem Multiset.pmap_zero
added def Multiset.rec
added def Multiset.recOn
added theorem Multiset.recOn_0
added theorem Multiset.recOn_cons
added theorem Multiset.rel_cons_left
added theorem Multiset.rel_eq
added theorem Multiset.rel_eq_refl
added theorem Multiset.rel_flip
added theorem Multiset.rel_flip_eq
added theorem Multiset.rel_of_forall
added theorem Multiset.rel_zero_left
added theorem Multiset.singleton_inj
added theorem Multiset.singleton_le
added theorem Multiset.ssubset_cons
added theorem Multiset.subset_cons
added theorem Multiset.subset_zero
added theorem Multiset.zero_le
added theorem Multiset.zero_ne_cons
added theorem Multiset.zero_ssubset
added theorem Multiset.zero_subset