PLFA agda exercises
## Formalising preorder

\begin{code}
record IsPreorder {A : Set} (_≤_ : A → A → Set) : Set where
  field
    reflexive : ∀ {x : A} → x ≤ x
    trans : ∀ {x y z : A} → x ≤ y → y ≤ z → x ≤ z

IsPreorder-≤ : IsPreorder _≤_
IsPreorder-≤ =
  record
    { reflexive = ≤-refl
    ; trans = ≤-trans
    }

record Preorder : Set₁ where
  field
    A : Set
    _≺_ : A → A → Set
    isPre : IsPreorder _≺_
\end{code}