Equations
- Finset.instSetoid α = { r := Finset.eq, iseqv := ⋯ }
Equations
- Finset.mk l = Quotient.mk (Finset.instSetoid α) l
Instances For
theorem
Finset.perm_if_eq
{α : Type u_1}
[DecidableEq α]
(l k : Finset' α)
(eq : eq l k)
:
(List.removeDups l).Perm (List.removeDups k)
theorem
Finset.eq_if_perm
{α : Type u_1}
[DecidableEq α]
(l k : Finset' α)
(perm : (List.removeDups l).Perm (List.removeDups k))
:
eq l k
Equations
- Finset.card = Quot.lift (fun (l' : Finset' α) => (List.removeDups l').length) ⋯
Instances For
Equations
- Finset.mem a = Quot.lift (fun (s : Finset' α) => a ∈ s) ⋯
Instances For
Equations
- Finset.union = Quotient.lift₂ (fun (a b : Finset' α) => Finset.mk (List.append a b)) ⋯
Instances For
Equations
- instMembershipFinset = { mem := fun (s : Finset α) (a : α) => Finset.mem a s }
instance
instDecidableMemFinsetOfDecidableEq
{α : Type u_1}
[DecidableEq α]
(x : α)
(S : Finset α)
:
Equations
- instDecidableMemFinsetOfDecidableEq x S = Quot.recOnSubsingleton S fun (l : Finset' α) => List.instDecidableMemOfLawfulBEq x l
instance
instDecidableMemFinset'OfDecidableEq
{α : Type u_1}
[DecidableEq α]
(l : Finset' α)
(a : α)
:
Equations
Equations
- Finset.inter = Quotient.lift₂ (fun (x y : Finset' α) => Finset.mk (List.filter (fun (a : α) => decide (a ∈ y)) x)) ⋯
Instances For
Equations
- Finset.eq.decidable l k = if sub1 : List.Subset l k then if sub2 : List.Subset k l then isTrue ⋯ else isFalse ⋯ else isFalse ⋯
Equations
Equations
- instDecidableEqFinset x✝¹ x✝ = Quotient.recOnSubsingleton₂ x✝¹ x✝ fun (repr_a repr_b : Finset' α) => if eq : repr_a ≈ repr_b then isTrue ⋯ else isFalse ⋯