\begin{code} module Data.Set.TreeDefinition where open import Prelude data 𝒦 (A : Type a) : Type a where \end{code} %<*constructors> \begin{code} ∅ : 𝒦 A ⟅_⟆ : A → 𝒦 A _∪_ : 𝒦 A → 𝒦 A → 𝒦 A \end{code} %</constructors> %<*quotients> \begin{code} assoc : ∀ x y z → (x ∪ y) ∪ z ≡ x ∪ (y ∪ z) com : ∀ x y → x ∪ y ≡ y ∪ x ident : ∀ x → ∅ ∪ x ≡ x idem : ∀ x → x ∪ x ≡ x \end{code} %</quotients>