module foundations.sigma-type-identity where
open import foundations.universe open import foundations.identity-type open import foundations.sigma-type open import foundations.transport open import foundations.bi-invertible-map open import foundations.quasi-inverse-to-bi-invertible-map open import foundations.function open import foundations.homotopy
private variable
ℓ : Level
A : Type ℓ
B : A → Type ℓ
module _ {v w : Σ A B} where
fromΣId : v = w
→ Σ[ q ∈ fst v = fst w ] (subst B q (snd v) = snd w)
fromΣId refl = refl , refl
この関数fromΣIdは同値である:
ΣId : biinv fromΣId
ΣId = QuasiInv⇒biinv (record
{ g = λ {(refl , refl) → refl}
; linv = λ {refl → refl}
; rinv = λ {(refl , refl) → refl}
})
toΣId : Σ[ q ∈ fst v = fst w ] (subst B q (snd v) = snd w)
→ v = w
toΣId = ΣId .fst .fst