- inner : Std.ExtDHashMap α fun (x : α) => Unit
Instances For
@[instance_reducible]
Equations
- instInhabitedSet' = { default := instInhabitedSet'.default }
Equations
- Set'.empty = { inner := ∅ }
Instances For
@[instance_reducible]
instance
Set'.instEmptyCollection
{α : Type u}
[ha₁ : DecidableEq α]
[ha₂ : Hashable α]
:
EmptyCollection (Set' α)
Equations
- Set'.instEmptyCollection = { emptyCollection := Set'.empty }
@[instance_reducible]
Equations
- Set'.instInsert = { insert := Set'.insertP }
Equations
- Set'.ofList xs = { inner := Std.ExtDHashMap.ofList (List.map (fun (x : α) => ⟨x, ()⟩) xs) }
Instances For
@[instance_reducible]
instance
Set'.instMembership
{α : Type u}
[ha₁ : DecidableEq α]
[ha₂ : Hashable α]
:
Membership α (Set' α)
Equations
- Set'.instMembership = { mem := Set'.mem }
@[instance_reducible]
instance
Set'.instDecidableMem
{α : Type u}
[ha₁ : DecidableEq α]
[ha₂ : Hashable α]
{s : Set' α}
{i : α}
:
Equations
@[instance_reducible]
instance
Set'.instDecidableMem_1
{α : Type u}
[ha₁ : DecidableEq α]
[ha₂ : Hashable α]
{s : Set' α}
{i : α}
:
Equations
def
Set'.toList
{α : Type u}
[ha₁ : DecidableEq α]
[ha₂ : Hashable α]
[ha : LinearOrder α]
(s : Set' α)
:
List α
Equations
- s.toList = Std.ExtDHashMap.lift (fun (x : Std.DHashMap α fun (x : α) => Unit) => x.toSortedKeys) ⋯ s.inner
Instances For
@[simp]
@[simp]
@[simp]
theorem
Set'.mem_ofList
{α : Type u}
[ha₁ : DecidableEq α]
[ha₂ : Hashable α]
{xs : List α}
{i : α}
:
@[simp]
@[simp]
@[simp]
theorem
Set'.mem_univ
{α : Type u}
[ha₁ : DecidableEq α]
[ha₂ : Hashable α]
[ha : Fintype α]
{i : α}
:
@[simp]
theorem
Set'.nonempty_insert
{α : Type u}
[ha₁ : DecidableEq α]
[ha₂ : Hashable α]
{s : Set' α}
{x : α}
:
@[simp]
theorem
Set'.nodup_toList
{α : Type u}
[ha₁ : DecidableEq α]
[ha₂ : Hashable α]
{s : Set' α}
[LinearOrder α]
:
@[simp]
theorem
Set'.sortedLE_toList
{α : Type u}
[ha₁ : DecidableEq α]
[ha₂ : Hashable α]
{s : Set' α}
[LinearOrder α]
:
@[simp]
theorem
Set'.mem_toList
{α : Type u}
[ha₁ : DecidableEq α]
[ha₂ : Hashable α]
{s : Set' α}
[LinearOrder α]
{x : α}
:
@[simp]
theorem
Set'.toList_eq_toList
{α : Type u}
[ha₁ : DecidableEq α]
[ha₂ : Hashable α]
[LinearOrder α]
{s₁ s₂ : Set' α}
:
@[simp]
theorem
Set'.toList_eq_nil_iff
{α : Type u}
[ha₁ : DecidableEq α]
[ha₂ : Hashable α]
{s : Set' α}
[LinearOrder α]
:
@[instance_reducible]
instance
Set'.instDecidableEq
{α : Type u}
[ha₁ : DecidableEq α]
[ha₂ : Hashable α]
:
DecidableEq (Set' α)
@[instance_reducible]
Equations
- Set'.instInhabitedSet = { default := ∅ }
def
Set'.values
{α : Type u}
[ha₁ : DecidableEq α]
[ha₂ : Hashable α]
[ha : LinearOrder α]
(s : Set' α)
:
List α
Instances For
@[simp]
theorem
Set'.mem_values
{α : Type u}
[ha₁ : DecidableEq α]
[ha₂ : Hashable α]
{s : Set' α}
[LinearOrder α]
{i : α}
:
theorem
Set'.forall_mem_iff_all
{α : Type u}
[ha₁ : DecidableEq α]
[ha₂ : Hashable α]
{s : Set' α}
{p : α → Prop}
[hp : DecidablePred p]
:
@[instance_reducible]
instance
Set'.instDecidableForallForallMemOfDecidablePred
{α : Type u}
[ha₁ : DecidableEq α]
[ha₂ : Hashable α]
{s : Set' α}
{p : α → Prop}
[hp : DecidablePred p]
:
Decidable (∀ x ∈ s, p x)
@[simp]
theorem
Set'.all_iff
{α : Type u}
[ha₁ : DecidableEq α]
[ha₂ : Hashable α]
{s : Set' α}
{p : α → Prop}
[DecidablePred p]
:
@[instance_reducible]
Equations
- Set'.instFintype = { elems := Finset.map { toFun := Set'.mk, inj' := ⋯ } Fintype.elems, complete := ⋯ }
def
Set'.fold₁
{α : Type u}
[ha₁ : DecidableEq α]
[ha₂ : Hashable α]
(s : Set' α)
(f : α → α → α)
(h_comm : ∀ {x y : α}, f x y = f y x)
(h_assoc : ∀ {acc x y : α}, f (f acc x) y = f (f acc y) x)
:
Option α
Equations
Instances For
theorem
Set'.fold_eq_foldl_toList
{α : Type u}
{β : Type v}
[ha₁ : DecidableEq α]
[ha₂ : Hashable α]
{s : Set' α}
[ha : LinearOrder α]
{z : β}
{f : β → α → β}
{h_assoc : ∀ {acc : β} {x y : α}, f (f acc x) y = f (f acc y) x}
:
theorem
Set'.eq_iff_toList_eq
{α : Type u}
[ha₁ : DecidableEq α]
[ha₂ : Hashable α]
[ha : LinearOrder α]
{s₁ s₂ : Set' α}
:
@[simp]
theorem
Set'.ofList_toList
{α : Type u}
[ha₁ : DecidableEq α]
[ha₂ : Hashable α]
{s : Set' α}
[ha : LinearOrder α]
:
theorem
Set'.toList_ofList_perm
{α : Type u}
[ha₁ : DecidableEq α]
[ha₂ : Hashable α]
[ha : LinearOrder α]
{xs : List α}
(h : xs.Nodup)
:
theorem
Set'.ind_ofList'
{α : Type u}
[ha₁ : DecidableEq α]
[ha₂ : Hashable α]
[ha : LinearOrder α]
{p : Set' α → Prop}
(h : ∀ (xs : List α), xs.Nodup → xs.SortedLE → p (ofList xs))
(s : Set' α)
:
p s
theorem
Set'.min?_eq_head?_toList
{α : Type u}
[ha₁ : DecidableEq α]
[ha₂ : Hashable α]
{s : Set' α}
[ha : LinearOrder α]
:
theorem
Set'.maxKey?_eq_getLast?_toList
{α : Type u}
[ha₁ : DecidableEq α]
[ha₂ : Hashable α]
{s : Set' α}
[ha : LinearOrder α]
:
@[simp]
theorem
Set'.min?_eq_none_iff
{α : Type u}
[ha₁ : DecidableEq α]
[ha₂ : Hashable α]
{s : Set' α}
[ha : LinearOrder α]
:
@[simp]
theorem
Set'.max?_eq_none_iff
{α : Type u}
[ha₁ : DecidableEq α]
[ha₂ : Hashable α]
{s : Set' α}
[ha : LinearOrder α]
:
theorem
Set'.not_mem_of_lt_min?
{α : Type u}
[ha₁ : DecidableEq α]
[ha₂ : Hashable α]
{s : Set' α}
[ha : LinearOrder α]
{m x : α}
(h₁ : s.min? = some m)
(h₂ : x < m)
:
x ∉ s
theorem
Set'.not_mem_of_max?_lt
{α : Type u}
[ha₁ : DecidableEq α]
[ha₂ : Hashable α]
{s : Set' α}
[ha : LinearOrder α]
{m x : α}
(h₁ : s.max? = some m)
(h₂ : m < x)
:
x ∉ s
theorem
Set'.not_mem_of_lt_min!
{α : Type u}
[ha₁ : DecidableEq α]
[ha₂ : Hashable α]
{s : Set' α}
[ha₁✝ : Inhabited α]
[ha₂✝ : LinearOrder α]
{x : α}
(h : x < s.min!)
:
x ∉ s
theorem
Set'.not_mem_of_max!_lt
{α : Type u}
[ha₁ : DecidableEq α]
[ha₂ : Hashable α]
{s : Set' α}
[ha₁✝ : Inhabited α]
[ha₂✝ : LinearOrder α]
{x : α}
(h : s.max! < x)
:
x ∉ s
theorem
Set'.min?_le_of_mem
{α : Type u}
[ha₁ : DecidableEq α]
[ha₂ : Hashable α]
{s : Set' α}
[ha : LinearOrder α]
{m x : α}
(h₁ : s.min? = some m)
(h₂ : x ∈ s)
:
theorem
Set'.le_max?_of_mem
{α : Type u}
[ha₁ : DecidableEq α]
[ha₂ : Hashable α]
{s : Set' α}
[ha : LinearOrder α]
{m x : α}
(h₁ : s.max? = some m)
(h₂ : x ∈ s)
:
theorem
Set'.min!_le_of_mem
{α : Type u}
[ha₁ : DecidableEq α]
[ha₂ : Hashable α]
{s : Set' α}
[ha₁✝ : Inhabited α]
[ha₂✝ : LinearOrder α]
{x : α}
(h : x ∈ s)
:
theorem
Set'.le_max!_of_mem
{α : Type u}
[ha₁ : DecidableEq α]
[ha₂ : Hashable α]
{s : Set' α}
[ha₁✝ : Inhabited α]
[ha₂✝ : LinearOrder α]
{x : α}
(h : x ∈ s)
:
Instances For
@[instance_reducible]
Equations
- Set'.instHasSubset = { Subset := Set'.subset }
Equations
- s.subset_comp s' = s.all fun (x : α) => decide (x ∈ s')
Instances For
theorem
Set'.subset_iff_subset_comp
{α : Type u}
[ha₁ : DecidableEq α]
[ha₂ : Hashable α]
{s s' : Set' α}
:
@[instance_reducible]
instance
Set'.instDecidableSubset
{α : Type u}
[ha₁ : DecidableEq α]
[ha₂ : Hashable α]
{s s' : Set' α}
:
Equations
- Set'.instDecidableSubset = match h : s.subset_comp s' with | true => isTrue ⋯ | false => isFalse ⋯
@[simp]
@[simp]
theorem
Set'.subset_trans
{α : Type u}
[ha₁ : DecidableEq α]
[ha₂ : Hashable α]
{s₁ s₂ s₃ : Set' α}
(h₁ : s₁ ⊆ s₂)
(h₂ : s₂ ⊆ s₃)
:
@[instance_reducible]
Equations
- Set'.instUnion = { union := Set'.union }
@[simp]
theorem
Set'.fold_empty
{α : Type u}
{β : Type v}
[ha₁ : DecidableEq α]
[ha₂ : Hashable α]
{f : β → α → β}
{z : β}
{h : ∀ {acc : β} {x y : α}, f (f acc x) y = f (f acc y) x}
:
Equations
Instances For
@[simp]
theorem
Set'.mem_ofFinset
{α : Type u}
[ha₁ : DecidableEq α]
[ha₂ : Hashable α]
{s : Finset α}
{x : α}
:
noncomputable def
Set'.ofSet
{α : Type u}
[ha₁ : DecidableEq α]
[ha₂ : Hashable α]
(s : Set α)
:
Set' α
Equations
- Set'.ofSet s = if h : s.Finite then Set'.ofFinset s.toFinset else ∅
Instances For
@[instance_reducible]
Equations
- Set'.instCoeList = { coe := Set'.ofList }
@[instance_reducible]
Equations
- Set'.instCoeFinset = { coe := Set'.ofFinset }
@[instance_reducible]
Equations
- Set'.instCoeSet = { coe := Set'.ofSet }
def
Set'.filter
{α : Type u}
[ha₁ : DecidableEq α]
[ha₂ : Hashable α]
(s : Set' α)
(p : α → Bool)
:
Set' α
Instances For
@[instance_reducible]
Equations
- Set'.instSDiff = { sdiff := Set'.diff }
@[instance_reducible]
Equations
- Set'.instInter = { inter := Set'.inter }
@[simp]
theorem
Set'.inter_left_subset_self
{α : Type u}
[ha₁ : DecidableEq α]
[ha₂ : Hashable α]
{s₁ s₂ : Set' α}
:
@[simp]
theorem
Set'.inter_right_subset_self
{α : Type u}
[ha₁ : DecidableEq α]
[ha₂ : Hashable α]
{s₁ s₂ : Set' α}
:
theorem
Set'.inter_subset_inter_of_left
{α : Type u}
[ha₁ : DecidableEq α]
[ha₂ : Hashable α]
{s₁ s₂ s₃ : Set' α}
(h : s₁ ⊆ s₂)
:
theorem
Set'.inter_subset_inter_of_right
{α : Type u}
[ha₁ : DecidableEq α]
[ha₂ : Hashable α]
{s₁ s₂ s₃ : Set' α}
(h : s₁ ⊆ s₂)
:
theorem
Set'.insert_eq_of_mem
{α : Type u}
[ha₁ : DecidableEq α]
[ha₂ : Hashable α]
{s : Set' α}
{x : α}
(h : x ∈ s)
:
@[simp]
theorem
Set'.insert_idemp
{α : Type u}
[ha₁ : DecidableEq α]
[ha₂ : Hashable α]
{s : Set' α}
{x : α}
:
@[simp]
theorem
Set'.map_empty
{α : Type u}
{β : Type v}
[ha₁ : DecidableEq α]
[ha₂ : Hashable α]
[hb₁ : DecidableEq β]
[hb₂ : Hashable β]
{f : α → β}
:
@[simp]
theorem
Set'.map_insert
{α : Type u}
{β : Type v}
[ha₁ : DecidableEq α]
[ha₂ : Hashable α]
[hb₁ : DecidableEq β]
[hb₂ : Hashable β]
{s : Set' α}
{f : α → β}
{x : α}
:
@[simp]
theorem
Set'.mem_map
{α : Type u}
{β : Type v}
[ha₁ : DecidableEq α]
[ha₂ : Hashable α]
[hb₁ : DecidableEq β]
[hb₂ : Hashable β]
{s : Set' α}
{f : α → β}
{y : β}
:
theorem
Set'.eq_empty_iff_not_mem
{α : Type u}
[ha₁ : DecidableEq α]
[ha₂ : Hashable α]
{s : Set' α}
:
@[simp]
theorem
Set'.map_eq_empty_iff
{α : Type u}
{β : Type v}
[ha₁ : DecidableEq α]
[ha₂ : Hashable α]
[hb₁ : DecidableEq β]
[hb₂ : Hashable β]
{s : Set' α}
{f : α → β}
:
@[simp]
theorem
Set'.empty_eq_map_iff
{α : Type u}
{β : Type v}
[ha₁ : DecidableEq α]
[ha₂ : Hashable α]
[hb₁ : DecidableEq β]
[hb₂ : Hashable β]
{s : Set' α}
{f : α → β}
:
@[simp]
theorem
Set'.map_map
{α : Type u}
{β : Type v}
{γ : Type w}
[ha₁ : DecidableEq α]
[ha₂ : Hashable α]
[hb₁ : DecidableEq β]
[hb₂ : Hashable β]
[hc₁ : DecidableEq γ]
[hc₂ : Hashable γ]
{s : Set' α}
{f : α → β}
{g : β → γ}
:
@[simp]
@[simp]
theorem
Set'.erase_eq_of_not_mem
{α : Type u}
[ha₁ : DecidableEq α]
[ha₂ : Hashable α]
{s : Set' α}
{x : α}
(h : x ∉ s)
:
@[simp]
@[simp]
theorem
Set'.toSet_ofSet
{α : Type u}
[ha₁ : DecidableEq α]
[ha₂ : Hashable α]
{s : Set α}
(h : s.Finite)
:
@[simp]
theorem
Set'.count_le_size
{α : Type u}
[ha₁ : DecidableEq α]
[ha₂ : Hashable α]
{s : Set' α}
{p : α → Bool}
:
@[simp]
@[simp]
@[simp]
@[simp]
@[simp]
@[simp]
@[simp]
@[simp]
theorem
Set'.insert_erase_eq_of_mem
{α : Type u}
[ha₁ : DecidableEq α]
[ha₂ : Hashable α]
{s : Set' α}
{x : α}
(h : x ∈ s)
:
theorem
Set'.eq_insert_erase_of_mem
{α : Type u}
[ha₁ : DecidableEq α]
[ha₂ : Hashable α]
{s : Set' α}
{x : α}
(h : x ∈ s)
:
@[simp]
theorem
Set'.subset_antisymm
{α : Type u}
[ha₁ : DecidableEq α]
[ha₂ : Hashable α]
{s₁ s₂ : Set' α}
(h₁ : s₁ ⊆ s₂)
(h₂ : s₂ ⊆ s₁)
:
@[simp]
@[simp]
@[simp]
theorem
Set'.exi_mem_of_ne_empty
{α : Type u}
[ha₁ : DecidableEq α]
[ha₂ : Hashable α]
{s : Set' α}
(h : s ≠ ∅)
:
∃ (x : α), x ∈ s
theorem
Set'.ne_empty_of_mem
{α : Type u}
[ha₁ : DecidableEq α]
[ha₂ : Hashable α]
{s : Set' α}
{x : α}
(h : x ∈ s)
:
@[simp]
theorem
Set'.insert_ne_empty
{α : Type u}
[ha₁ : DecidableEq α]
[ha₂ : Hashable α]
{s : Set' α}
{x : α}
:
theorem
Set'.diff_eq_left_iff
{α : Type u}
[ha₁ : DecidableEq α]
[ha₂ : Hashable α]
{s₁ s₂ : Set' α}
:
theorem
Set'.diff_eq_left_iff'
{α : Type u}
[ha₁ : DecidableEq α]
[ha₂ : Hashable α]
{s₁ s₂ : Set' α}
:
theorem
Set'.mem_of_subset
{α : Type u}
[ha₁ : DecidableEq α]
[ha₂ : Hashable α]
{s₁ s₂ : Set' α}
{x : α}
(h : s₁ ⊆ s₂)
(hx : x ∈ s₁)
:
theorem
Set'.not_mem_of_subset
{α : Type u}
[ha₁ : DecidableEq α]
[ha₂ : Hashable α]
{s₁ s₂ : Set' α}
{x : α}
(h : s₁ ⊆ s₂)
(hx : x ∉ s₂)
:
x ∉ s₁
theorem
Set'.ne_empty_of_size_ne_zero
{α : Type u}
[ha₁ : DecidableEq α]
[ha₂ : Hashable α]
{s : Set' α}
(h : s.size ≠ 0)
:
theorem
Set'.size_eq_one_of
{α : Type u}
[ha₁ : DecidableEq α]
[ha₂ : Hashable α]
{s : Set' α}
{x : α}
(hx : x ∈ s)
(h : ∀ y ∈ s, y = x)
:
@[simp]
theorem
Set'.erase_subset
{α : Type u}
[ha₁ : DecidableEq α]
[ha₂ : Hashable α]
{s : Set' α}
{x : α}
:
@[simp]
def
Set'.toMap
{α : Type u}
{β : Type v}
[ha₁ : DecidableEq α]
[ha₂ : Hashable α]
(s : Set' α)
(f : α → β)
:
Map α β
Instances For
@[simp]
theorem
Set'.toMap_empty
{α : Type u}
{β : Type v}
[ha₁ : DecidableEq α]
[ha₂ : Hashable α]
{f : α → β}
:
theorem
Set'.toList_erase
{α : Type u}
[ha₁ : DecidableEq α]
[ha₂ : Hashable α]
{s : Set' α}
[ha : LinearOrder α]
{x : α}
:
theorem
Set'.count_eq_countP_toList
{α : Type u}
[ha₁ : DecidableEq α]
[ha₂ : Hashable α]
{s : Set' α}
[ha : LinearOrder α]
{p : α → Bool}
:
theorem
Set'.fold_map_push_eq_map_toMap
{α : Type u}
{β : Type v}
[ha₁ : DecidableEq α]
[ha₂ : Hashable α]
[hb₁ : DecidableEq β]
[hb₂ : Hashable β]
{s : Set' α}
{f : α → β}
:
@[simp]
theorem
Set'.length_toList
{α : Type u}
[ha₁ : DecidableEq α]
[ha₂ : Hashable α]
{s : Set' α}
[ha : LinearOrder α]
:
@[simp]
@[simp]
theorem
Set'.subset_insert
{α : Type u}
[ha₁ : DecidableEq α]
[ha₂ : Hashable α]
{s : Set' α}
{x : α}
:
def
Set'.unionList
{α : Type u}
[ha₁ : DecidableEq α]
[ha₂ : Hashable α]
(xs : List (Set' α))
:
Set' α
Equations
- Set'.unionList xs = List.foldl (fun (x1 x2 : Set' α) => x1 ∪ x2) ∅ xs
Instances For
@[simp]
theorem
Set'.size_le_of_subset
{α : Type u}
[ha₁ : DecidableEq α]
[ha₂ : Hashable α]
{s₁ s₂ : Set' α}
(h : s₁ ⊆ s₂)
:
theorem
Set'.subset_of_eq
{α : Type u}
[ha₁ : DecidableEq α]
[ha₂ : Hashable α]
{s₁ s₂ : Set' α}
(h : s₁ = s₂)
:
theorem
Set'.subset_of_inter_eq_left
{α : Type u}
[ha₁ : DecidableEq α]
[ha₂ : Hashable α]
{s₁ s₂ : Set' α}
(h : s₁ ∩ s₂ = s₁)
:
theorem
Set'.subset_of_inter_eq_right
{α : Type u}
[ha₁ : DecidableEq α]
[ha₂ : Hashable α]
{s₁ s₂ : Set' α}
(h : s₁ ∩ s₂ = s₂)
:
theorem
Set'.inter_eq_left_of_subset
{α : Type u}
[ha₁ : DecidableEq α]
[ha₂ : Hashable α]
{s₁ s₂ : Set' α}
(h : s₁ ⊆ s₂)
:
theorem
Set'.inter_eq_right_of_subset
{α : Type u}
[ha₁ : DecidableEq α]
[ha₂ : Hashable α]
{s₁ s₂ : Set' α}
(h : s₂ ⊆ s₁)
:
@[simp]
theorem
Set'.inter_eq_left_iff
{α : Type u}
[ha₁ : DecidableEq α]
[ha₂ : Hashable α]
{s₁ s₂ : Set' α}
:
@[simp]
theorem
Set'.inter_eq_right_iff
{α : Type u}
[ha₁ : DecidableEq α]
[ha₂ : Hashable α]
{s₁ s₂ : Set' α}
:
@[instance_reducible]
instance
Set'.instHasSSubset
{α : Type u}
[ha₁ : DecidableEq α]
[ha₂ : Hashable α]
:
HasSSubset (Set' α)
Equations
- Set'.instHasSSubset = { SSubset := Set'.ssubset }
@[simp]
theorem
Set'.union_eq_left_iff_subset
{α : Type u}
[ha₁ : DecidableEq α]
[ha₂ : Hashable α]
{s₁ s₂ : Set' α}
:
@[simp]
theorem
Set'.union_eq_right_iff_subset
{α : Type u}
[ha₁ : DecidableEq α]
[ha₂ : Hashable α]
{s₁ s₂ : Set' α}
:
theorem
Set'.size_lt_of_ssubset
{α : Type u}
[ha₁ : DecidableEq α]
[ha₂ : Hashable α]
{s₁ s₂ : Set' α}
(h : s₁ ⊂ s₂)
:
theorem
Set'.eq_of_subset_and_subset
{α : Type u}
[ha₁ : DecidableEq α]
[ha₂ : Hashable α]
{s₁ s₂ : Set' α}
(h₁ : s₁ ⊆ s₂)
(h₂ : s₂ ⊆ s₁)
:
theorem
Set'.ssubset_iff_exi
{α : Type u}
[ha₁ : DecidableEq α]
[ha₂ : Hashable α]
{s₁ s₂ : Set' α}
:
theorem
Set'.diff_subset_of_right
{α : Type u}
[ha₁ : DecidableEq α]
[ha₂ : Hashable α]
{s₁ s₂ s₃ : Set' α}
(h₁ : s₂ ⊆ s₃)
:
noncomputable def
Set'.compr
{α : Type u}
[ha₁ : DecidableEq α]
[ha₂ : Hashable α]
(P : α → Prop)
:
Set' α
Equations
- Set'.compr P = Set'.ofSet (Set.ofPred P)
Instances For
Equations
Instances For
@[simp]
@[simp]
@[simp]
@[simp]
@[simp]
theorem
Set'.empty_insert_eq_singleton
{α : Type u}
[ha₁ : DecidableEq α]
[ha₂ : Hashable α]
{x : α}
:
@[simp]
@[simp]
@[simp]
@[simp]
theorem
Set'.mem_toFinset_of_mem
{α : Type u}
[ha₁ : DecidableEq α]
[ha₂ : Hashable α]
{s : Set' α}
{x : α}
(hx : x ∈ s)
:
theorem
Set'.ind_ofList
{α : Type u}
[ha₁ : DecidableEq α]
[ha₂ : Hashable α]
[ha : LinearOrder α]
{p : Set' α → Prop}
(h : ∀ (xs : List α), xs.SortedLT → p (ofList xs))
(s : Set' α)
:
p s
@[simp]
theorem
Set'.sorted_toList
{α : Type u}
[ha₁ : DecidableEq α]
[ha₂ : Hashable α]
{s : Set' α}
[ha : LinearOrder α]
:
theorem
Set'.toList_ofList_of_nodup
{α : Type u}
[ha₁ : DecidableEq α]
[ha₂ : Hashable α]
[ha : LinearOrder α]
{xs : List α}
(h : xs.Nodup)
:
theorem
Set'.toList_ofList_of_sortedLT
{α : Type u}
[ha₁ : DecidableEq α]
[ha₂ : Hashable α]
[ha : LinearOrder α]
{xs : List α}
(h : xs.SortedLT)
:
@[simp]
theorem
Set'.mem_toFinset
{α : Type u}
[ha₁ : DecidableEq α]
[ha₂ : Hashable α]
{s : Set' α}
{x : α}
:
@[simp]
@[simp]
@[simp]
@[simp]
@[simp]
@[simp]
theorem
Set'.list_toSet_ofList
{α : Type u}
[ha₁ : DecidableEq α]
[ha₂ : Hashable α]
{xs : List α}
:
theorem
Set'.ssubset_of
{α : Type u}
[ha₁ : DecidableEq α]
[ha₂ : Hashable α]
{s₁ s₂ : Set' α}
(x : α)
(h₁ : s₁ ⊆ s₂)
(h₂ : x ∉ s₁)
(h₃ : x ∈ s₂)
:
@[simp]
theorem
Set'.insert_erase_self
{α : Type u}
[ha₁ : DecidableEq α]
[ha₂ : Hashable α]
{s : Set' α}
{x : α}
:
@[simp]
theorem
Set'.erase_insert_self
{α : Type u}
[ha₁ : DecidableEq α]
[ha₂ : Hashable α]
{s : Set' α}
{x : α}
:
@[simp]
theorem
Set'.bind_empty
{α : Type u}
{β : Type v}
[ha₁ : DecidableEq α]
[ha₂ : Hashable α]
[hb₁ : DecidableEq β]
[hb₂ : Hashable β]
{f : α → Set' β}
:
@[simp]
theorem
Set'.fold_singleton
{α : Type u}
{β : Type v}
[ha₁ : DecidableEq α]
[ha₂ : Hashable α]
{f : β → α → β}
{x : α}
{z : β}
{hh : ∀ {acc : β} {x y : α}, f (f acc x) y = f (f acc y) x}
:
@[simp]
theorem
Set'.bind_singleton
{α : Type u}
{β : Type v}
[ha₁ : DecidableEq α]
[ha₂ : Hashable α]
[hb₁ : DecidableEq β]
[hb₂ : Hashable β]
{f : α → Set' β}
{x : α}
:
@[simp]
theorem
Set'.bind_insert
{α : Type u}
{β : Type v}
[ha₁ : DecidableEq α]
[ha₂ : Hashable α]
[hb₁ : DecidableEq β]
[hb₂ : Hashable β]
{s : Set' α}
{f : α → Set' β}
{x : α}
:
@[simp]
theorem
Set'.mem_bind
{α : Type u}
{β : Type v}
[ha₁ : DecidableEq α]
[ha₂ : Hashable α]
[hb₁ : DecidableEq β]
[hb₂ : Hashable β]
{s : Set' α}
{f : α → Set' β}
{y : β}
:
def
Set'.head!
{α : Type u}
[ha₁ : DecidableEq α]
[ha₂ : Hashable α]
[ha : LinearOrder α]
[Inhabited α]
(s : Set' α)
:
α
Instances For
def
Set'.headMap!
{α : Type u}
{β : Type v}
[ha₁ : DecidableEq α]
[ha₂ : Hashable α]
[ha : LinearOrder α]
[Inhabited α]
[LinearOrder β]
(s : Set' α)
(f : α → β)
:
α
Instances For
theorem
Set'.head!_spec
{α : Type u}
[ha₁ : DecidableEq α]
[ha₂ : Hashable α]
{s : Set' α}
[ha₃ : Inhabited α]
[ha₄ : LinearOrder α]
(h : s ≠ ∅)
:
@[simp]
theorem
Set'.head!_mem_iff
{α : Type u}
[ha₁ : DecidableEq α]
[ha₂ : Hashable α]
{s : Set' α}
[ha₃ : Inhabited α]
[ha₄ : LinearOrder α]
:
theorem
Set'.head!_mem
{α : Type u}
[ha₁ : DecidableEq α]
[ha₂ : Hashable α]
{s : Set' α}
[ha₃ : Inhabited α]
[ha₄ : LinearOrder α]
(h : s ≠ ∅)
:
theorem
Set'.head!_le_of_mem
{α : Type u}
[ha₁ : DecidableEq α]
[ha₂ : Hashable α]
{s : Set' α}
[ha₃ : Inhabited α]
[ha₄ : LinearOrder α]
{x : α}
(h : x ∈ s)
:
theorem
Set'.headMap!_spec
{α : Type u}
{β : Type v}
[ha₁ : DecidableEq α]
[ha₂ : Hashable α]
{s : Set' α}
[ha₃ : Inhabited α]
[ha₄ : LinearOrder α]
[hb : LinearOrder β]
{f : α → β}
(h : s ≠ ∅)
:
@[simp]
theorem
Set'.headMap!_mem_iff
{α : Type u}
{β : Type v}
[ha₁ : DecidableEq α]
[ha₂ : Hashable α]
{s : Set' α}
[ha₃ : Inhabited α]
[ha₄ : LinearOrder α]
[hb : LinearOrder β]
{f : α → β}
:
theorem
Set'.headMap!_mem
{α : Type u}
{β : Type v}
[ha₁ : DecidableEq α]
[ha₂ : Hashable α]
{s : Set' α}
[ha₃ : Inhabited α]
[ha₄ : LinearOrder α]
[hb : LinearOrder β]
{f : α → β}
(h : s ≠ ∅)
:
theorem
Set'.headMap!_le_of_mem
{α : Type u}
{β : Type v}
[ha₁ : DecidableEq α]
[ha₂ : Hashable α]
{s : Set' α}
[ha₃ : Inhabited α]
[ha₄ : LinearOrder α]
[hb : LinearOrder β]
{f : α → β}
{x : α}
(h : x ∈ s)
:
@[simp]
@[simp]
@[simp]
@[simp]
@[simp]
theorem
Set'.toList_ofList_eq_self_iff
{α : Type u}
[ha₁ : DecidableEq α]
[ha₂ : Hashable α]
[ha : LinearOrder α]
{xs : List α}
: