\begin{code}
{-# OPTIONS --cubical --safe #-}
module Function.Injective.Properties where
open import Level
open import Path
open import Data.Sigma
open import Function.Injective.Base
open import Relation.Nullary.Decidable
open import Relation.Nullary.Discrete
open import Function
\end{code}
%<*inj-discrete>
\begin{code}
Discrete-pull-inj : A ↣ B → Discrete B → Discrete A
Discrete-pull-inj (f , inj) _≟_ x y =
case (f x ≟ f y) of
λ { (no ¬p) → no (¬p ∘ cong f)
; (yes p) → yes (inj x y p) }
\end{code}
%</inj-discrete>
\begin{code}
\end{code}