Open
Description
I suggest to add to standard library the following items.
To Data.List.Relation.Binary.Subset.Setoid:
_=ₛ_ : Rel (List A) _ -- equality of sets
xs =ₛ ys = xs ⊆ ys × ys ⊆ xs -- represented by lists
_≠ₛ_ : Rel (List A) _
_≠ₛ_ xs = ¬_ ∘ _=ₛ_ xs
To Data.List.Relation.Binary.Subset.Setoid.Properties:
=ₛ-refl : Reflexive _=ₛ_
=ₛ-sym : Symmetric _=ₛ_
=ₛ-trans : Transitive _=ₛ_
=ₛ-isEquivalence : IsEquivalence _=ₛ_
=ₛ-reflexive = IsEquivalence.reflexive =ₛ-isEquivalence
setoidₛ : Setoid a _
≟ₛ : Decidable₂ _≈_ → Decidable₂ _=ₛ_
reverse-preservesʳ-⊆ : ∀ {xs} → reverse Preserves (xs ⊆_)
reverse-preservesˡ-⊆ : ∀ {xs} → reverse Preserves (_⊆ xs)
reverse-xs-=ₛ-xs : ∀ xs → reverse xs =ₛ xs
This is because the above items are usable.