open import Data.List.Relation.Binary.Pointwise as Pw hiding (map; refl)
open import Data.Product hiding (map)
open import Relation.Binary.PropositionalEquality
open import Stoughton.Var
module Context.Properties (𝒞 : Set) {𝒱 : Set} (var : Enum 𝒱) where
open import Stoughton.Syntax 𝒞 𝒱 (Enum._≟_ var)
open import Stoughton.Alpha 𝒞 var
open import Stoughton.SubstitutionLemmas 𝒞 var
open import Context 𝒱 Λ (Enum._≟_ var)
infix 1 _≈α_
_≈α_ : Cxt → Cxt → Set
_≈α_ = Pointwise (λ (x , A) (y , B) → x ≡ y × A ∼α B)
∼ρs : ∀ {Γ} → Γ ≈α Γ
∼ρs = Pw.refl (refl , ∼ρ)
∼σs : ∀ {Γ Δ} → Γ ≈α Δ → Δ ≈α Γ
∼σs [] = []
∼σs ((x=y , A∼B) ∷ xs) = (sym x=y , ∼σ A∼B) ∷ ∼σs xs