Preparations for defining operations on Finset. #
The operations here ignore multiplicities,
and prepare for defining the corresponding operations on Finset.
finset insert #
@[simp]
theorem
Multiset.coe_ndinsert
{α : Type u_1}
[DecidableEq α]
(a : α)
(l : List α)
:
ndinsert a ↑l = ↑(insert a l)
@[simp]
@[simp]
theorem
Multiset.ndinsert_of_mem
{α : Type u_1}
[DecidableEq α]
{a : α}
{s : Multiset α}
:
a ∈ s → ndinsert a s = s
@[simp]
@[simp]
theorem
Multiset.mem_ndinsert
{α : Type u_1}
[DecidableEq α]
{a b : α}
{s : Multiset α}
:
a ∈ ndinsert b s ↔ a = b ∨ a ∈ s
@[simp]
theorem
Multiset.mem_ndinsert_self
{α : Type u_1}
[DecidableEq α]
(a : α)
(s : Multiset α)
:
a ∈ ndinsert a s
theorem
Multiset.mem_ndinsert_of_mem
{α : Type u_1}
[DecidableEq α]
{a b : α}
{s : Multiset α}
(h : a ∈ s)
:
a ∈ ndinsert b s
theorem
Multiset.Nodup.ndinsert
{α : Type u_1}
[DecidableEq α]
{s : Multiset α}
(a : α)
:
s.Nodup → (Multiset.ndinsert a s).Nodup
@[simp]
@[simp]
finset union #
@[simp]
theorem
Multiset.coe_ndunion
{α : Type u_1}
[DecidableEq α]
(l₁ l₂ : List α)
:
(↑l₁).ndunion ↑l₂ = ↑(l₁ ∪ l₂)
@[simp]
@[simp]
theorem
Multiset.mem_ndunion
{α : Type u_1}
[DecidableEq α]
{s t : Multiset α}
{a : α}
:
a ∈ s.ndunion t ↔ a ∈ s ∨ a ∈ t
theorem
Multiset.subset_ndunion_right
{α : Type u_1}
[DecidableEq α]
(s t : Multiset α)
:
t ⊆ s.ndunion t
theorem
Multiset.subset_ndunion_left
{α : Type u_1}
[DecidableEq α]
(s t : Multiset α)
:
s ⊆ s.ndunion t
@[simp]
theorem
Multiset.ndunion_eq_union
{α : Type u_1}
[DecidableEq α]
{s t : Multiset α}
(d : s.Nodup)
:
s.ndunion t = s ∪ t
theorem
Multiset.Subset.ndunion_eq_right
{α : Type u_1}
[DecidableEq α]
{s t : Multiset α}
(h : s ⊆ t)
:
s.ndunion t = t
finset inter #
@[simp]
theorem
Multiset.coe_ndinter
{α : Type u_1}
[DecidableEq α]
(l₁ l₂ : List α)
:
(↑l₁).ndinter ↑l₂ = ↑(l₁ ∩ l₂)
@[simp]
@[simp]
@[simp]
@[simp]
theorem
Multiset.mem_ndinter
{α : Type u_1}
[DecidableEq α]
{s t : Multiset α}
{a : α}
:
a ∈ s.ndinter t ↔ a ∈ s ∧ a ∈ t
theorem
Multiset.ndinter_subset_left
{α : Type u_1}
[DecidableEq α]
(s t : Multiset α)
:
s.ndinter t ⊆ s
theorem
Multiset.ndinter_subset_right
{α : Type u_1}
[DecidableEq α]
(s t : Multiset α)
:
s.ndinter t ⊆ t
@[simp]
theorem
Multiset.ndinter_eq_inter
{α : Type u_1}
[DecidableEq α]
{s t : Multiset α}
(d : s.Nodup)
:
s.ndinter t = s ∩ t
@[simp]
Alias of the reverse direction of Multiset.ndinter_eq_zero_iff_disjoint.
theorem
Multiset.Subset.ndinter_eq_left
{α : Type u_1}
[DecidableEq α]
{s t : Multiset α}
(h : s ⊆ t)
:
s.ndinter t = s