{-# OPTIONS --type-in-type #-}
-- Equational reasoning about relations over one specific set can be found in PreOrder.agda
open import NeilPrelude
open import Properties
module Equational
(_≈_ : {A : Set} → Rel A)
(reflexivity : {A : Set} → Reflexive {A} _≈_)
(transitive : {A : Set} → Transitive {A} _≈_)
where
infixr 1 _⟨_⟩_
infix 2 _QED
_⟨_⟩_ : {A : Set} → {b c : A} → (a : A) → a ≈ b → b ≈ c → a ≈ c
_⟨_⟩_ _ = transitive
_QED : {A : Set} → (a : A) → a ≈ a
_ QED = reflexivity