The powerset of a multiset #
powerset #
A helper function for the powerset of a multiset. Given a list l, returns a list
of sublists of l as multisets.
Equations
Instances For
@[simp]
Helper function for the powerset of a multiset. Given a list l, returns a list
of sublists of l (using sublists'), as multisets.
Equations
Instances For
theorem Multiset.powersetAux_perm_powersetAux' {α : Type u_1} {l : List α} :
(powersetAux l).Perm (powersetAux' l)
@[simp]
theorem Multiset.powerset_aux'_perm {α : Type u_1} {l₁ l₂ : List α} (p : l₁.Perm l₂) :
(powersetAux' l₁).Perm (powersetAux' l₂)
theorem Multiset.powersetAux_perm {α : Type u_1} {l₁ l₂ : List α} (p : l₁.Perm l₂) :
(powersetAux l₁).Perm (powersetAux l₂)
The power set of a multiset.
Equations
- s.powerset = Quot.liftOn s (fun (l : List α) => ↑(Multiset.powersetAux l)) ⋯
Instances For
theorem Multiset.revzip_powersetAux_perm_aux' {α : Type u_1} {l : List α} :
(powersetAux l).revzip.Perm (powersetAux' l).revzip
theorem Multiset.revzip_powersetAux_perm {α : Type u_1} {l₁ l₂ : List α} (p : l₁.Perm l₂) :
(powersetAux l₁).revzip.Perm (powersetAux l₂).revzip
powersetCard #
Helper function for powersetCard. Given a list l, powersetCardAux n l is the list
of sublists of length n, as multisets.
Equations
Instances For
@[simp]
@[simp]
theorem Multiset.powersetCardAux_cons {α : Type u_1} (n : ℕ) (a : α) (l : List α) :
powersetCardAux (n + 1) (a :: l) = powersetCardAux (n + 1) l ++ List.map (cons a) (powersetCardAux n l)
theorem Multiset.powersetCardAux_perm {α : Type u_1} {n : ℕ} {l₁ l₂ : List α} (p : l₁.Perm l₂) :
(powersetCardAux n l₁).Perm (powersetCardAux n l₂)
powersetCard n s is the multiset of all submultisets of s of length n.
Equations
- Multiset.powersetCard n s = Quot.liftOn s (fun (l : List α) => ↑(Multiset.powersetCardAux n l)) ⋯
Instances For
@[simp]
@[simp]
@[simp]
@[simp]
theorem Multiset.powersetCard_map {α : Type u_1} {β : Type u_2} (f : α → β) (n : ℕ) (s : Multiset α) :
theorem Disjoint.powersetCard_powersetCard_multiset {α : Type u_1} {s t : Multiset α} (h : Disjoint s t) {n m : ℕ} (hn : n ≠ 0 ∨ m ≠ 0) :
Disjoint (Multiset.powersetCard n s) (Multiset.powersetCard m t)
theorem Multiset.disjoint_powersetCard_of_ne {α : Type u_1} {m n : ℕ} (h : m ≠ n) (s t : Multiset α) :
Disjoint (powersetCard m s) (powersetCard n t)
theorem Multiset.pairwise_disjoint_powersetCard {α : Type u_1} (s : Multiset α) :
_root_.Pairwise fun (i j : ℕ) => Disjoint (powersetCard i s) (powersetCard j s)
Alias of the reverse direction of Multiset.nodup_powerset.
Alias of the forward direction of Multiset.nodup_powerset.
theorem Multiset.Nodup.powersetCard {α : Type u_1} {n : ℕ} {s : Multiset α} (h : s.Nodup) :
(powersetCard n s).Nodup