\begin{code} module Data.Set.Definition where open import Prelude open import HLevels infixr 5 _∷_ data 𝒦 (A : Type a) : Type a \end{code} %<*points> \begin{code} data 𝒦 A where ∅ : 𝒦 A _∷_ : A → 𝒦 A → 𝒦 A \end{code} %</points> %<*quot1> \begin{code} com : ∀ x y xs → x ∷ y ∷ xs ≡ y ∷ x ∷ xs \end{code} %</quot1> %<*quot2> \begin{code} dup : ∀ x xs → x ∷ x ∷ xs ≡ x ∷ xs \end{code} %</quot2> %<*trunc> \begin{code} trunc : isSet (𝒦 A) \end{code} %</trunc>