\begin{code}
{-# OPTIONS --cubical --safe #-}
module Algebra.Construct.Free.Semilattice.Definition where
open import Prelude
infixr 5 _∷_
\end{code}
%<*kuratowski-def>
\begin{code}
data 𝒦 (A : Type a) : Type a where
[] : 𝒦 A
_∷_ : A → 𝒦 A → 𝒦 A
com : ∀ x y xs → x ∷ y ∷ xs ≡ y ∷ x ∷ xs
dup : ∀ x xs → x ∷ x ∷ xs ≡ x ∷ xs
trunc : isSet (𝒦 A)
\end{code}
%</kuratowski-def>