Source code on Github
{-# OPTIONS --safe #-}
module Prelude.Ord.Irrelevant where

open import Prelude.Init; open SetAsType
open import Prelude.Irrelevance.Core

open import Prelude.Ord.Core
open import Prelude.Ord.Dec

private variable A : Type 

record ·Ord (A : Type )  _ : Ord A  : Type  where
  field  ·-≤  : ·² _≤_
         ·-<  : ·² _<_

  ∀≡≤ = Irrelevant² _≤_  ∀≡
  ∀≡< = Irrelevant² _<_  ∀≡
-- instance
mk·Ord :  _ : Ord A   _ : ·² _≤_   _ : ·² _<_    ·Ord A
mk·Ord = record {}
open ·Ord ⦃...⦄ public

record Ord⁺⁺ (A : Type ) : Type (lsuc ) where
  field  Ord-A      : Ord A
         OrdLaws-A  : OrdLaws A
         DecOrd-A   : DecOrd A
         ·Ord-A     : ·Ord A
-- instance
mkOrd⁺⁺ :  {A : Type }  _ : Ord A 
          _ : OrdLaws A   _ : DecOrd A    _ : ·Ord A 
         Ord⁺⁺ A
mkOrd⁺⁺ = record {}
open Ord⁺⁺ ⦃...⦄ public