{-# OPTIONS --without-K #-}
module pointed.equality where

open import sum
open import equality.core
open import function.extensionality
open import function.isomorphism.core
open import function.isomorphism.utils
open import pointed.core

pmap-eq :  {i j}{X : Set i}{Y : Set j}{x₀ : X}{y₀ : Y}
         {f : X  Y}{p : f x₀  y₀}
         {g : X  Y}{q : g x₀  y₀}
         (Σ ((x : X)  f x  g x) λ γ  p  γ x₀ · q)
         _≡_ {A = PMap (X , x₀) (Y , y₀)} (f , p) (g , q)
pmap-eq {X = X}{Y}{x₀}{y₀} = Σ-ap-iso' strong-funext-iso lem ·≅ Σ-split-iso
  where
    lem : {f : X  Y}{p : f x₀  y₀}
         {g : X  Y}{q : g x₀  y₀}
         (h : f  g)
         (p  funext-inv h x₀ · q)
         (subst  u  u x₀  y₀) h p  q)
    lem refl = refl≅