diff --git a/src/category-theory/groupoids.lagda.md b/src/category-theory/groupoids.lagda.md
index de26e339b3..7028c7da72 100644
--- a/src/category-theory/groupoids.lagda.md
+++ b/src/category-theory/groupoids.lagda.md
@@ -165,12 +165,12 @@ module _
Σ ( Σ (y = x) (λ q → q ∙ p = refl))
( λ (q , l) → p ∙ q = refl))))
( is-contr-iterated-Σ 2
- ( is-torsorial-path x ,
+ ( is-torsorial-Id x ,
( x , refl) ,
( is-contr-equiv
( Σ (x = x) (λ q → q = refl))
( equiv-tot (λ q → equiv-concat (inv right-unit) refl))
- ( is-torsorial-path' refl)) ,
+ ( is-torsorial-Id' refl)) ,
( refl , refl) ,
( is-proof-irrelevant-is-prop
( is-1-type-type-1-Type X x x refl refl)
diff --git a/src/category-theory/isomorphisms-in-categories.lagda.md b/src/category-theory/isomorphisms-in-categories.lagda.md
index b80829fa85..5efbcdb841 100644
--- a/src/category-theory/isomorphisms-in-categories.lagda.md
+++ b/src/category-theory/isomorphisms-in-categories.lagda.md
@@ -743,7 +743,7 @@ module _
is-contr-equiv'
( Σ (obj-Category C) (X =_))
( equiv-tot (extensionality-obj-Category C X))
- ( is-torsorial-path X)
+ ( is-torsorial-Id X)
is-torsorial-iso-Category' :
is-torsorial (λ Y → iso-Category C Y X)
@@ -751,7 +751,7 @@ module _
is-contr-equiv'
( Σ (obj-Category C) (_= X))
( equiv-tot (λ Y → extensionality-obj-Category C Y X))
- ( is-torsorial-path' X)
+ ( is-torsorial-Id' X)
```
### Functoriality of `eq-iso`
diff --git a/src/category-theory/isomorphisms-in-large-categories.lagda.md b/src/category-theory/isomorphisms-in-large-categories.lagda.md
index cfa72bca82..e6f13cb68a 100644
--- a/src/category-theory/isomorphisms-in-large-categories.lagda.md
+++ b/src/category-theory/isomorphisms-in-large-categories.lagda.md
@@ -199,7 +199,7 @@ module _
is-contr-equiv'
( Σ (obj-Large-Category C l1) (X =_))
( equiv-tot (extensionality-obj-Large-Category C X))
- ( is-torsorial-path X)
+ ( is-torsorial-Id X)
is-torsorial-iso-Large-Category' :
is-torsorial (λ Y → iso-Large-Category C Y X)
@@ -207,7 +207,7 @@ module _
is-contr-equiv'
( Σ (obj-Large-Category C l1) (_= X))
( equiv-tot (λ Y → extensionality-obj-Large-Category C Y X))
- ( is-torsorial-path' X)
+ ( is-torsorial-Id' X)
```
## Properties
diff --git a/src/category-theory/slice-precategories.lagda.md b/src/category-theory/slice-precategories.lagda.md
index 2e0eb5f494..101b4b7712 100644
--- a/src/category-theory/slice-precategories.lagda.md
+++ b/src/category-theory/slice-precategories.lagda.md
@@ -212,7 +212,7 @@ module _
( Σ (hom-Precategory C A X) (λ g → f = g))
( equiv-tot
( λ g → equiv-concat' f (left-unit-law-comp-hom-Precategory C g)))
- ( is-torsorial-path f)
+ ( is-torsorial-Id f)
```
### Products in slice precategories are pullbacks in the original category
diff --git a/src/elementary-number-theory/universal-property-integers.lagda.md b/src/elementary-number-theory/universal-property-integers.lagda.md
index 3602311b47..a8689cf3e8 100644
--- a/src/elementary-number-theory/universal-property-integers.lagda.md
+++ b/src/elementary-number-theory/universal-property-integers.lagda.md
@@ -161,7 +161,7 @@ abstract
( tot (λ α → right-transpose-eq-concat refl α (pr1 (pr2 s))))
( is-equiv-tot-is-fiberwise-equiv
( λ α → is-equiv-right-transpose-eq-concat refl α (pr1 (pr2 s))))
- ( is-torsorial-path' (pr1 (pr2 s))))
+ ( is-torsorial-Id' (pr1 (pr2 s))))
( pair (pr1 (pr2 s)) (inv (right-inv (pr1 (pr2 s)))))
( is-contr-is-equiv'
( Σ ( ( k : ℤ) → Id (pr1 s (succ-ℤ k)) (pr1 (pS k) (pr1 s k)))
diff --git a/src/elementary-number-theory/universal-property-natural-numbers.lagda.md b/src/elementary-number-theory/universal-property-natural-numbers.lagda.md
index 9044063f8b..5edeebe5cc 100644
--- a/src/elementary-number-theory/universal-property-natural-numbers.lagda.md
+++ b/src/elementary-number-theory/universal-property-natural-numbers.lagda.md
@@ -69,7 +69,7 @@ module _
( is-torsorial-htpy (pr1 h))
( pair (pr1 h) refl-htpy)
( is-torsorial-Eq-structure
- ( is-torsorial-path (pr1 (pr2 h)))
+ ( is-torsorial-Id (pr1 (pr2 h)))
( pair (pr1 (pr2 h)) refl)
( is-torsorial-htpy (λ n → (pr2 (pr2 h) n ∙ refl))))
diff --git a/src/foundation-core/contractible-maps.lagda.md b/src/foundation-core/contractible-maps.lagda.md
index 4016cecbd3..46a3cecce5 100644
--- a/src/foundation-core/contractible-maps.lagda.md
+++ b/src/foundation-core/contractible-maps.lagda.md
@@ -129,8 +129,8 @@ module _
- For the notion of biinvertible maps see
[`foundation.equivalences`](foundation.equivalences.md).
-- For the notions of inverses and coherently invertible maps, also known as
- half-adjoint equivalences, see
+- For the notion of coherently invertible maps, also known as half-adjoint
+ equivalences, see
[`foundation.coherently-invertible-maps`](foundation.coherently-invertible-maps.md).
- For the notion of path-split maps see
[`foundation.path-split-maps`](foundation.path-split-maps.md).
diff --git a/src/foundation-core/contractible-types.lagda.md b/src/foundation-core/contractible-types.lagda.md
index 3d2821c664..afb4ad31b8 100644
--- a/src/foundation-core/contractible-types.lagda.md
+++ b/src/foundation-core/contractible-types.lagda.md
@@ -82,16 +82,16 @@ module _
where
abstract
- is-torsorial-path : (a : A) → is-contr (Σ A (λ x → a = x))
- pr1 (pr1 (is-torsorial-path a)) = a
- pr2 (pr1 (is-torsorial-path a)) = refl
- pr2 (is-torsorial-path a) (pair .a refl) = refl
+ is-torsorial-Id : (a : A) → is-contr (Σ A (λ x → a = x))
+ pr1 (pr1 (is-torsorial-Id a)) = a
+ pr2 (pr1 (is-torsorial-Id a)) = refl
+ pr2 (is-torsorial-Id a) (pair .a refl) = refl
abstract
- is-torsorial-path' : (a : A) → is-contr (Σ A (λ x → x = a))
- pr1 (pr1 (is-torsorial-path' a)) = a
- pr2 (pr1 (is-torsorial-path' a)) = refl
- pr2 (is-torsorial-path' a) (pair .a refl) = refl
+ is-torsorial-Id' : (a : A) → is-contr (Σ A (λ x → x = a))
+ pr1 (pr1 (is-torsorial-Id' a)) = a
+ pr2 (pr1 (is-torsorial-Id' a)) = refl
+ pr2 (is-torsorial-Id' a) (pair .a refl) = refl
```
## Properties
diff --git a/src/foundation-core/equivalences.lagda.md b/src/foundation-core/equivalences.lagda.md
index 4fdf05534e..2010a4a555 100644
--- a/src/foundation-core/equivalences.lagda.md
+++ b/src/foundation-core/equivalences.lagda.md
@@ -749,8 +749,8 @@ syntax step-equivalence-reasoning e Z f = e ≃ Z by f
## See also
-- For the notions of inverses and coherently invertible maps, also known as
- half-adjoint equivalences, see
+- For the notion of coherently invertible maps, also known as half-adjoint
+ equivalences, see
[`foundation.coherently-invertible-maps`](foundation.coherently-invertible-maps.md).
- For the notion of maps with contractible fibers see
[`foundation.contractible-maps`](foundation.contractible-maps.md).
diff --git a/src/foundation-core/path-split-maps.lagda.md b/src/foundation-core/path-split-maps.lagda.md
index 66ae437fa4..c2b94a4453 100644
--- a/src/foundation-core/path-split-maps.lagda.md
+++ b/src/foundation-core/path-split-maps.lagda.md
@@ -24,9 +24,9 @@ open import foundation-core.sections
## Idea
A map `f : A → B` is said to be **path split** if it has a
-[section](foundation-core.sections.md) and its action on
-[identity types](foundation-core.identity-types.md) `Id x y → Id (f x) (f y)`
-has a section for each `x y : A`. By the
+[section](foundation-core.sections.md) and its
+[action on identifications](foundation.action-on-identifications-functions.md)
+`x = y → f x = f y` has a section for each `x y : A`. By the
[fundamental theorem of identity types](foundation.fundamental-theorem-of-identity-types.md),
it follows that a map is path-split if and only if it is an
[equivalence](foundation-core.equivalences.md).
@@ -80,8 +80,8 @@ module _
- For the notion of biinvertible maps see
[`foundation.equivalences`](foundation.equivalences.md).
-- For the notions of inverses and coherently invertible maps, also known as
- half-adjoint equivalences, see
+- For the notion of coherently invertible maps, also known as half-adjoint
+ equivalences, see
[`foundation.coherently-invertible-maps`](foundation.coherently-invertible-maps.md).
- For the notion of maps with contractible fibers see
[`foundation.contractible-maps`](foundation.contractible-maps.md).
diff --git a/src/foundation-core/sets.lagda.md b/src/foundation-core/sets.lagda.md
index cecd9e33de..603e8413ec 100644
--- a/src/foundation-core/sets.lagda.md
+++ b/src/foundation-core/sets.lagda.md
@@ -147,4 +147,22 @@ abstract
{l1 l2 : Level} (A : UU l1) {B : UU l2} (e : A ≃ B) →
is-set A → is-set B
is-set-equiv' = is-trunc-equiv' zero-𝕋
+
+abstract
+ is-set-equiv-is-set :
+ {l1 l2 : Level} {A : UU l1} {B : UU l2} →
+ is-set A → is-set B → is-set (A ≃ B)
+ is-set-equiv-is-set = is-trunc-equiv-is-trunc zero-𝕋
+
+module _
+ {l1 l2 : Level} (A : Set l1) (B : Set l2)
+ where
+
+ equiv-Set : UU (l1 ⊔ l2)
+ equiv-Set = type-Set A ≃ type-Set B
+
+ equiv-set-Set : Set (l1 ⊔ l2)
+ pr1 equiv-set-Set = equiv-Set
+ pr2 equiv-set-Set =
+ is-set-equiv-is-set (is-set-type-Set A) (is-set-type-Set B)
```
diff --git a/src/foundation-core/transport-along-identifications.lagda.md b/src/foundation-core/transport-along-identifications.lagda.md
index 67ef4e293d..968011e96f 100644
--- a/src/foundation-core/transport-along-identifications.lagda.md
+++ b/src/foundation-core/transport-along-identifications.lagda.md
@@ -110,7 +110,7 @@ module _
```agda
tr-Id-left :
{l : Level} {A : UU l} {a b c : A} (q : b = c) (p : b = a) →
- tr (_= a) q p = ((inv q) ∙ p)
+ tr (_= a) q p = (inv q ∙ p)
tr-Id-left refl p = refl
```
diff --git a/src/foundation.lagda.md b/src/foundation.lagda.md
index 1adc44d8a8..1badf21b0d 100644
--- a/src/foundation.lagda.md
+++ b/src/foundation.lagda.md
@@ -270,6 +270,7 @@ open import foundation.precomposition-type-families public
open import foundation.preidempotent-maps public
open import foundation.preimages-of-subtypes public
open import foundation.preunivalence public
+open import foundation.preunivalent-type-families public
open import foundation.principle-of-omniscience public
open import foundation.product-decompositions public
open import foundation.product-decompositions-subuniverse public
@@ -352,6 +353,7 @@ open import foundation.transport-along-equivalences public
open import foundation.transport-along-higher-identifications public
open import foundation.transport-along-homotopies public
open import foundation.transport-along-identifications public
+open import foundation.transport-split-type-families public
open import foundation.transposition-span-diagrams public
open import foundation.trivial-relaxed-sigma-decompositions public
open import foundation.trivial-sigma-decompositions public
diff --git a/src/foundation/category-of-sets.lagda.md b/src/foundation/category-of-sets.lagda.md
index be56947a17..803e007a6a 100644
--- a/src/foundation/category-of-sets.lagda.md
+++ b/src/foundation/category-of-sets.lagda.md
@@ -68,7 +68,7 @@ is-large-category-Set-Large-Precategory :
is-large-category-Set-Large-Precategory {l} X =
fundamental-theorem-id
( is-contr-equiv'
- ( Σ (Set l) (type-equiv-Set X))
+ ( Σ (Set l) (equiv-Set X))
( equiv-tot (equiv-iso-equiv-Set X))
( is-torsorial-equiv-Set X))
( iso-eq-Set X)
diff --git a/src/foundation/contractible-maps.lagda.md b/src/foundation/contractible-maps.lagda.md
index df0d7ac4bc..15c5bb6786 100644
--- a/src/foundation/contractible-maps.lagda.md
+++ b/src/foundation/contractible-maps.lagda.md
@@ -133,8 +133,8 @@ module _
- For the notion of biinvertible maps see
[`foundation.equivalences`](foundation.equivalences.md).
-- For the notions of inverses and coherently invertible maps, also known as
- half-adjoint equivalences, see
+- For the notion of coherently invertible maps, also known as half-adjoint
+ equivalences, see
[`foundation.coherently-invertible-maps`](foundation.coherently-invertible-maps.md).
- For the notion of path-split maps see
[`foundation.path-split-maps`](foundation.path-split-maps.md).
diff --git a/src/foundation/embeddings.lagda.md b/src/foundation/embeddings.lagda.md
index d231edfd31..49b66be7e3 100644
--- a/src/foundation/embeddings.lagda.md
+++ b/src/foundation/embeddings.lagda.md
@@ -279,7 +279,7 @@ module _
is-section-inv-map-Σ-emb-base (b , c) =
ap
( λ s → (pr1 s , inv-tr C (pr2 s) c))
- ( eq-is-contr (is-torsorial-path' b))
+ ( eq-is-contr (is-torsorial-Id' b))
is-retraction-inv-map-Σ-emb-base :
is-retraction (map-Σ-map-base (map-emb f) C) inv-map-Σ-emb-base
@@ -322,9 +322,9 @@ module _
abstract
is-emb-section-ap :
- ((x y : A) → section (ap f {x = x} {y = y})) → is-emb f
- is-emb-section-ap section-ap-f x y =
- fundamental-theorem-id-section x (λ y → ap f {y = y}) (section-ap-f x) y
+ ((x y : A) → section (ap f {x} {y})) → is-emb f
+ is-emb-section-ap section-ap-f x =
+ fundamental-theorem-id-section x (λ y → ap f) (section-ap-f x)
```
### If there is an equivalence `(f x = f y) ≃ (x = y)` that sends `refl` to `refl`, then f is an embedding
diff --git a/src/foundation/equality-coproduct-types.lagda.md b/src/foundation/equality-coproduct-types.lagda.md
index 6252418e66..ea0ad0ca29 100644
--- a/src/foundation/equality-coproduct-types.lagda.md
+++ b/src/foundation/equality-coproduct-types.lagda.md
@@ -230,7 +230,7 @@ module _
( is-contr-equiv
( Σ A (Id x))
( equiv-tot (compute-eq-coprod-inl-inl x))
- ( is-torsorial-path x))
+ ( is-torsorial-Id x))
( λ y → ap inl)
emb-inl : A ↪ (A + B)
@@ -244,7 +244,7 @@ module _
( is-contr-equiv
( Σ B (Id x))
( equiv-tot (compute-eq-coprod-inr-inr x))
- ( is-torsorial-path x))
+ ( is-torsorial-Id x))
( λ y → ap inr)
emb-inr : B ↪ (A + B)
diff --git a/src/foundation/equivalences-maybe.lagda.md b/src/foundation/equivalences-maybe.lagda.md
index 5a38bc210b..47f52136b4 100644
--- a/src/foundation/equivalences-maybe.lagda.md
+++ b/src/foundation/equivalences-maybe.lagda.md
@@ -380,6 +380,11 @@ equiv-equiv-Maybe :
{l1 l2 : Level} {X : UU l1} {Y : UU l2} → (Maybe X ≃ Maybe Y) → (X ≃ Y)
pr1 (equiv-equiv-Maybe e) = map-equiv-equiv-Maybe e
pr2 (equiv-equiv-Maybe e) = is-equiv-map-equiv-equiv-Maybe e
+
+compute-equiv-equiv-Maybe-id-equiv :
+ {l1 : Level} {X : UU l1} →
+ equiv-equiv-Maybe id-equiv = id-equiv {A = X}
+compute-equiv-equiv-Maybe-id-equiv = eq-htpy-equiv refl-htpy
```
### For any set `X`, the type of automorphisms on `X` is equivalent to the type of automorphisms on `Maybe X` that fix the exception
diff --git a/src/foundation/equivalences.lagda.md b/src/foundation/equivalences.lagda.md
index e3e695b440..59256d5b1e 100644
--- a/src/foundation/equivalences.lagda.md
+++ b/src/foundation/equivalences.lagda.md
@@ -805,8 +805,8 @@ module _
## See also
-- For the notions of inverses and coherently invertible maps, also known as
- half-adjoint equivalences, see
+- For the notion of coherently invertible maps, also known as half-adjoint
+ equivalences, see
[`foundation.coherently-invertible-maps`](foundation.coherently-invertible-maps.md).
- For the notion of maps with contractible fibers see
[`foundation.contractible-maps`](foundation.contractible-maps.md).
diff --git a/src/foundation/families-of-maps.lagda.md b/src/foundation/families-of-maps.lagda.md
index 94ab9ec72e..79070bc5ac 100644
--- a/src/foundation/families-of-maps.lagda.md
+++ b/src/foundation/families-of-maps.lagda.md
@@ -56,7 +56,7 @@ module _
≃ (((x , _) : Σ A B) →
Σ (Σ A (x =_)) λ (x' , _) → C x') by equiv-Π-equiv-family (λ (x , _) →
inv-left-unit-law-Σ-is-contr
- (is-torsorial-path x)
+ (is-torsorial-Id x)
(x , refl))
≃ (((x , _) : Σ A B) →
Σ (Σ A C) λ (x' , _) → x = x') by equiv-Π-equiv-family (λ (x , _) →
diff --git a/src/foundation/functional-correspondences.lagda.md b/src/foundation/functional-correspondences.lagda.md
index dcc17b0b4b..7bf1fe2d0c 100644
--- a/src/foundation/functional-correspondences.lagda.md
+++ b/src/foundation/functional-correspondences.lagda.md
@@ -155,7 +155,7 @@ module _
((x : A) → B x) → functional-correspondence l2 A B
pr1 (functional-correspondence-function f) x y = f x = y
pr2 (functional-correspondence-function f) x =
- is-torsorial-path (f x)
+ is-torsorial-Id (f x)
function-functional-correspondence :
{l3 : Level} → functional-correspondence l3 A B → ((x : A) → B x)
diff --git a/src/foundation/fundamental-theorem-of-identity-types.lagda.md b/src/foundation/fundamental-theorem-of-identity-types.lagda.md
index 5090cca6f8..9614810977 100644
--- a/src/foundation/fundamental-theorem-of-identity-types.lagda.md
+++ b/src/foundation/fundamental-theorem-of-identity-types.lagda.md
@@ -8,11 +8,13 @@ module foundation.fundamental-theorem-of-identity-types where
```agda
open import foundation.dependent-pair-types
+open import foundation.retracts-of-types
open import foundation.universe-levels
open import foundation-core.contractible-types
open import foundation-core.equivalences
open import foundation-core.families-of-equivalences
+open import foundation-core.function-types
open import foundation-core.functoriality-dependent-pair-types
open import foundation-core.homotopies
open import foundation-core.identity-types
@@ -59,7 +61,7 @@ module _
is-torsorial B → (f : (x : A) → a = x → B x) → is-fiberwise-equiv f
fundamental-theorem-id is-contr-AB f =
is-fiberwise-equiv-is-equiv-tot
- ( is-equiv-is-contr (tot f) (is-torsorial-path a) is-contr-AB)
+ ( is-equiv-is-contr (tot f) (is-torsorial-Id a) is-contr-AB)
abstract
fundamental-theorem-id' :
@@ -69,7 +71,7 @@ module _
( Σ A (Id a))
( tot f)
( is-equiv-tot-is-fiberwise-equiv is-fiberwise-equiv-f)
- ( is-torsorial-path a)
+ ( is-torsorial-Id a)
```
## Corollaries
@@ -87,13 +89,13 @@ module _
abstract
fundamental-theorem-id-J' :
- (is-fiberwise-equiv (ind-Id a (λ x p → B x) b)) → is-torsorial B
+ is-fiberwise-equiv (ind-Id a (λ x p → B x) b) → is-torsorial B
fundamental-theorem-id-J' H =
is-contr-is-equiv'
( Σ A (Id a))
( tot (ind-Id a (λ x p → B x) b))
( is-equiv-tot-is-fiberwise-equiv H)
- ( is-torsorial-path a)
+ ( is-torsorial-Id a)
```
### Retracts of the identity type are equivalent to the identity type
@@ -105,18 +107,29 @@ module _
abstract
fundamental-theorem-id-retraction :
- (i : (x : A) → B x → a = x) → (R : (x : A) → retraction (i x)) →
+ (i : (x : A) → B x → a = x) →
+ ((x : A) → retraction (i x)) →
is-fiberwise-equiv i
fundamental-theorem-id-retraction i R =
is-fiberwise-equiv-is-equiv-tot
( is-equiv-is-contr (tot i)
- ( is-contr-retract-of (Σ _ (λ y → a = y))
- ( pair (tot i)
- ( pair (tot λ x → pr1 (R x))
- ( ( inv-htpy (preserves-comp-tot i (λ x → pr1 (R x)))) ∙h
- ( ( tot-htpy λ x → pr2 (R x)) ∙h (tot-id B)))))
- ( is-torsorial-path a))
- ( is-torsorial-path a))
+ ( is-contr-retract-of
+ ( Σ _ (λ y → a = y))
+ ( ( tot i) ,
+ ( tot (λ x → pr1 (R x))) ,
+ ( ( inv-htpy (preserves-comp-tot i (pr1 ∘ R))) ∙h
+ ( tot-htpy (pr2 ∘ R)) ∙h
+ ( tot-id B)))
+ ( is-torsorial-Id a))
+ ( is-torsorial-Id a))
+
+ fundamental-theorem-id-retract :
+ (R : (x : A) → (B x) retract-of (a = x)) →
+ is-fiberwise-equiv (inclusion-retract ∘ R)
+ fundamental-theorem-id-retract R =
+ fundamental-theorem-id-retraction
+ ( inclusion-retract ∘ R)
+ ( retraction-retract ∘ R)
```
### The fundamental theorem of identity types, using sections
@@ -128,19 +141,18 @@ module _
abstract
fundamental-theorem-id-section :
- (f : (x : A) → a = x → B x) → ((x : A) → section (f x)) →
+ (f : (x : A) → a = x → B x) →
+ ((x : A) → section (f x)) →
is-fiberwise-equiv f
fundamental-theorem-id-section f section-f x =
- is-equiv-section-is-equiv (f x) (section-f x) (is-fiberwise-equiv-i x)
- where
- i : (x : A) → B x → a = x
- i = λ x → pr1 (section-f x)
- retraction-i : (x : A) → retraction (i x)
- pr1 (retraction-i x) = f x
- pr2 (retraction-i x) = pr2 (section-f x)
- is-fiberwise-equiv-i : is-fiberwise-equiv i
- is-fiberwise-equiv-i =
- fundamental-theorem-id-retraction a i retraction-i
+ is-equiv-section-is-equiv
+ ( f x)
+ ( section-f x)
+ ( fundamental-theorem-id-retraction
+ ( a)
+ ( λ x → map-section (f x) (section-f x))
+ ( λ x → (f x , is-section-map-section (f x) (section-f x)))
+ ( x))
```
## See also
diff --git a/src/foundation/homotopy-induction.lagda.md b/src/foundation/homotopy-induction.lagda.md
index 4c35f92ee6..da645df1f2 100644
--- a/src/foundation/homotopy-induction.lagda.md
+++ b/src/foundation/homotopy-induction.lagda.md
@@ -90,7 +90,7 @@ module _
is-contr-equiv'
( Σ ((x : A) → B x) (Id f))
( equiv-tot (λ g → equiv-funext))
- ( is-torsorial-path f)
+ ( is-torsorial-Id f)
abstract
is-torsorial-htpy' : is-torsorial (λ g → g ~ f)
@@ -98,7 +98,7 @@ module _
is-contr-equiv'
( Σ ((x : A) → B x) (λ g → g = f))
( equiv-tot (λ g → equiv-funext))
- ( is-torsorial-path' f)
+ ( is-torsorial-Id' f)
```
### Homotopy induction is equivalent to function extensionality
diff --git a/src/foundation/identity-systems.lagda.md b/src/foundation/identity-systems.lagda.md
index 4829557c6b..44e04f05f9 100644
--- a/src/foundation/identity-systems.lagda.md
+++ b/src/foundation/identity-systems.lagda.md
@@ -15,6 +15,7 @@ open import foundation.universe-levels
open import foundation-core.contractible-types
open import foundation-core.families-of-equivalences
open import foundation-core.identity-types
+open import foundation-core.propositions
open import foundation-core.sections
open import foundation-core.torsorial-type-families
open import foundation-core.transport-along-identifications
@@ -59,11 +60,11 @@ module _
```agda
module _
- {l1 l2 : Level} {A : UU l1} (B : A → UU l2) (a : A) (b : B a)
- where
+ {l1 l2 : Level} {A : UU l1} (B : A → UU l2) (a : A) (b : B a)
+ where
- is-identity-system : UUω
- is-identity-system = {l : Level} → is-identity-system-Level l B a b
+ is-identity-system : UUω
+ is-identity-system = {l : Level} → is-identity-system-Level l B a b
```
## Properties
diff --git a/src/foundation/images.lagda.md b/src/foundation/images.lagda.md
index ac7b172c3c..f678e73231 100644
--- a/src/foundation/images.lagda.md
+++ b/src/foundation/images.lagda.md
@@ -94,7 +94,7 @@ module _
(x : im f) → is-torsorial (Eq-im x)
is-torsorial-Eq-im x =
is-torsorial-Eq-subtype
- ( is-torsorial-path (pr1 x))
+ ( is-torsorial-Id (pr1 x))
( λ x → is-prop-type-trunc-Prop)
( pr1 x)
( refl)
diff --git a/src/foundation/isomorphisms-of-sets.lagda.md b/src/foundation/isomorphisms-of-sets.lagda.md
index f13a4ac68e..c1f3c53125 100644
--- a/src/foundation/isomorphisms-of-sets.lagda.md
+++ b/src/foundation/isomorphisms-of-sets.lagda.md
@@ -73,15 +73,15 @@ module _
( htpy-eq (pr1 (pr2 H)))
( htpy-eq (pr2 (pr2 H)))
- iso-equiv-Set : type-equiv-Set A B → iso-Set
+ iso-equiv-Set : equiv-Set A B → iso-Set
pr1 (iso-equiv-Set e) = map-equiv e
pr2 (iso-equiv-Set e) = is-iso-is-equiv-Set (is-equiv-map-equiv e)
- equiv-iso-Set : iso-Set → type-equiv-Set A B
+ equiv-iso-Set : iso-Set → equiv-Set A B
pr1 (equiv-iso-Set f) = map-iso-Set f
pr2 (equiv-iso-Set f) = is-equiv-is-iso-Set (is-iso-map-iso-Set f)
- equiv-iso-equiv-Set : type-equiv-Set A B ≃ iso-Set
+ equiv-iso-equiv-Set : equiv-Set A B ≃ iso-Set
equiv-iso-equiv-Set =
equiv-type-subtype
( is-property-is-equiv)
diff --git a/src/foundation/logical-equivalences.lagda.md b/src/foundation/logical-equivalences.lagda.md
index 4df5fd6e56..b6cbf82ad8 100644
--- a/src/foundation/logical-equivalences.lagda.md
+++ b/src/foundation/logical-equivalences.lagda.md
@@ -165,7 +165,7 @@ compute-fiber-iff-equiv :
fiber (iff-equiv) (f , g) ≃ Σ (is-equiv f) (λ f' → map-inv-is-equiv f' ~ g)
compute-fiber-iff-equiv {A = A} {B} (f , g) =
( equiv-tot (λ _ → equiv-funext)) ∘e
- ( left-unit-law-Σ-is-contr (is-torsorial-path' f) (f , refl)) ∘e
+ ( left-unit-law-Σ-is-contr (is-torsorial-Id' f) (f , refl)) ∘e
( inv-associative-Σ (A → B) (_= f) _) ∘e
( equiv-tot (λ _ → equiv-left-swap-Σ)) ∘e
( associative-Σ (A → B) _ _) ∘e
diff --git a/src/foundation/multivariable-homotopies.lagda.md b/src/foundation/multivariable-homotopies.lagda.md
index 48783bc3f8..49f9ff4882 100644
--- a/src/foundation/multivariable-homotopies.lagda.md
+++ b/src/foundation/multivariable-homotopies.lagda.md
@@ -194,7 +194,7 @@ abstract
is-torsorial-multivariable-htpy :
{l : Level} (n : ℕ) {{A : telescope l n}} (f : iterated-Π A) →
is-torsorial (multivariable-htpy {{A}} f)
- is-torsorial-multivariable-htpy .0 {{base-telescope A}} = is-torsorial-path
+ is-torsorial-multivariable-htpy .0 {{base-telescope A}} = is-torsorial-Id
is-torsorial-multivariable-htpy ._ {{cons-telescope A}} f =
is-torsorial-Eq-Π (λ x → is-torsorial-multivariable-htpy _ {{A x}} (f x))
@@ -206,7 +206,7 @@ abstract
is-contr-equiv'
( Σ (iterated-implicit-Π A) (Id {A = iterated-implicit-Π A} f))
( equiv-tot (λ _ → equiv-iterated-funext-implicit _ {{A}}))
- ( is-torsorial-path {A = iterated-implicit-Π A} f)
+ ( is-torsorial-Id {A = iterated-implicit-Π A} f)
abstract
is-torsorial-multivariable-implicit-htpy :
diff --git a/src/foundation/pairs-of-distinct-elements.lagda.md b/src/foundation/pairs-of-distinct-elements.lagda.md
index 92ad06dd75..8b152f6408 100644
--- a/src/foundation/pairs-of-distinct-elements.lagda.md
+++ b/src/foundation/pairs-of-distinct-elements.lagda.md
@@ -84,10 +84,10 @@ module _
is-torsorial (Eq-pair-of-distinct-elements p)
is-torsorial-Eq-pair-of-distinct-elements p =
is-torsorial-Eq-structure
- ( is-torsorial-path (first-pair-of-distinct-elements p))
+ ( is-torsorial-Id (first-pair-of-distinct-elements p))
( pair (first-pair-of-distinct-elements p) refl)
( is-torsorial-Eq-subtype
- ( is-torsorial-path (second-pair-of-distinct-elements p))
+ ( is-torsorial-Id (second-pair-of-distinct-elements p))
( λ x → is-prop-neg)
( second-pair-of-distinct-elements p)
( refl)
diff --git a/src/foundation/partitions.lagda.md b/src/foundation/partitions.lagda.md
index 220e28ce32..9f37022516 100644
--- a/src/foundation/partitions.lagda.md
+++ b/src/foundation/partitions.lagda.md
@@ -641,7 +641,7 @@ module _
( subtype-inhabited-subtype Q x)) ∘e
( equiv-inv-equiv))) ∘e
( left-unit-law-Σ-is-contr
- ( is-torsorial-path (index-Set-Indexed-Σ-Decomposition D a))
+ ( is-torsorial-Id (index-Set-Indexed-Σ-Decomposition D a))
( pair
( index-Set-Indexed-Σ-Decomposition D a)
( refl)))) ∘e
diff --git a/src/foundation/path-split-maps.lagda.md b/src/foundation/path-split-maps.lagda.md
index a55bbed9d3..57d49b87c3 100644
--- a/src/foundation/path-split-maps.lagda.md
+++ b/src/foundation/path-split-maps.lagda.md
@@ -74,8 +74,8 @@ module _
- For the notion of biinvertible maps see
[`foundation.equivalences`](foundation.equivalences.md).
-- For the notions of inverses and coherently invertible maps, also known as
- half-adjoint equivalences, see
+- For the notion of coherently invertible maps, also known as half-adjoint
+ equivalences, see
[`foundation.coherently-invertible-maps`](foundation.coherently-invertible-maps.md).
- For the notion of maps with contractible fibers see
[`foundation.contractible-maps`](foundation.contractible-maps.md).
diff --git a/src/foundation/preunivalence.lagda.md b/src/foundation/preunivalence.lagda.md
index be874acfdd..298f482891 100644
--- a/src/foundation/preunivalence.lagda.md
+++ b/src/foundation/preunivalence.lagda.md
@@ -107,4 +107,5 @@ preunivalence = preunivalence-axiom-univalence-axiom univalence
- Preunivalence is sufficient to prove that `Id : A → (A → 𝒰)` is an embedding.
This fact is proven in
[`foundation.universal-property-identity-types`](foundation.universal-property-identity-types.md)
+- [Preunivalent type families](foundation.preunivalent-type-families.md)
- [Preunivalent categories](category-theory.preunivalent-categories.md)
diff --git a/src/foundation/preunivalent-type-families.lagda.md b/src/foundation/preunivalent-type-families.lagda.md
new file mode 100644
index 0000000000..5d647dfedd
--- /dev/null
+++ b/src/foundation/preunivalent-type-families.lagda.md
@@ -0,0 +1,177 @@
+# Preunivalent type families
+
+```agda
+module foundation.preunivalent-type-families where
+```
+
+Imports
+
+```agda
+open import foundation.0-maps
+open import foundation.action-on-identifications-functions
+open import foundation.dependent-pair-types
+open import foundation.embeddings
+open import foundation.equivalence-injective-type-families
+open import foundation.faithful-maps
+open import foundation.function-types
+open import foundation.preunivalence
+open import foundation.retractions
+open import foundation.subuniverses
+open import foundation.transport-along-identifications
+open import foundation.universe-levels
+
+open import foundation-core.equivalences
+open import foundation-core.identity-types
+open import foundation-core.injective-maps
+open import foundation-core.sets
+open import foundation-core.univalence
+```
+
+
+
+## Idea
+
+A type family `B` over `A` is said to be
+{{#concept "preunivalent" Disambiguation="type family" Agda=is-preunivalent}} if
+the map
+
+```text
+ equiv-tr B : x = y → B x ≃ B y
+```
+
+is an [embedding](foundation-core.embeddings.md) for every `x y : A`.
+
+## Definition
+
+```agda
+is-preunivalent :
+ {l1 l2 : Level} {A : UU l1} → (A → UU l2) → UU (l1 ⊔ l2)
+is-preunivalent {A = A} B = (x y : A) → is-emb (λ (p : x = y) → equiv-tr B p)
+```
+
+## Properties
+
+### Assuming the preunivalence axiom, type families are preunivalent if and only if they are faithful as maps
+
+**Proof:** We have the
+[commuting triangle of maps](foundation-core.commuting-triangles-of-maps.md)
+
+```text
+ ap B
+ (x = y) -----> (B x = B y)
+ \ /
+ \ /
+ equiv-tr B \ / equiv-eq
+ v v
+ (B x ≃ B y)
+```
+
+where the right edge is an embedding by the
+[preunivalence axiom](foundation.preunivalence.md). Hence, the top map is an
+embedding if and only if the left map is.
+
+```agda
+module _
+ {l1 l2 : Level} {A : UU l1} {B : A → UU l2}
+ where
+
+ abstract
+ is-faithful-is-preunivalent :
+ is-preunivalent B → is-faithful B
+ is-faithful-is-preunivalent U x y =
+ is-emb-top-map-triangle
+ ( equiv-tr B)
+ ( equiv-eq)
+ ( ap B)
+ ( λ where refl → refl)
+ ( preunivalence (B x) (B y))
+ ( U x y)
+
+ is-preunivalent-is-faithful :
+ is-faithful B → is-preunivalent B
+ is-preunivalent-is-faithful is-faithful-B x y =
+ is-emb-left-map-triangle
+ ( equiv-tr B)
+ ( equiv-eq)
+ ( ap B)
+ ( λ where refl → refl)
+ ( preunivalence (B x) (B y))
+ ( is-faithful-B x y)
+
+ is-0-map-is-preunivalent :
+ is-preunivalent B → is-0-map B
+ is-0-map-is-preunivalent U =
+ is-0-map-is-faithful (is-faithful-is-preunivalent U)
+
+ is-preunivalent-is-0-map :
+ is-0-map B → is-preunivalent B
+ is-preunivalent-is-0-map H =
+ is-preunivalent-is-faithful (is-faithful-is-0-map H)
+```
+
+### Families of sets are preunivalent if `equiv-tr` is fiberwise injective
+
+```agda
+module _
+ {l1 l2 : Level} {A : UU l1} (B : A → UU l2)
+ (is-set-B : (x : A) → is-set (B x))
+ where
+
+ is-preunivalent-is-injective-equiv-tr-is-set :
+ ((x y : A) → is-injective (equiv-tr B {x} {y})) →
+ is-preunivalent B
+ is-preunivalent-is-injective-equiv-tr-is-set is-inj-B x y =
+ is-emb-is-injective
+ ( is-set-equiv-is-set (is-set-B x) (is-set-B y))
+ ( is-inj-B x y)
+
+ is-preunivalent-retraction-equiv-tr-is-set :
+ ((x y : A) → retraction (equiv-tr B {x} {y})) →
+ is-preunivalent B
+ is-preunivalent-retraction-equiv-tr-is-set R =
+ is-preunivalent-is-injective-equiv-tr-is-set
+ ( λ x y → is-injective-retraction (equiv-tr B) (R x y))
+
+module _
+ {l1 l2 : Level} {A : UU l1} (B : A → Set l2)
+ where
+
+ is-preunivalent-is-injective-equiv-tr-Set :
+ ((x y : A) → is-injective (equiv-tr (type-Set ∘ B) {x} {y})) →
+ is-preunivalent (type-Set ∘ B)
+ is-preunivalent-is-injective-equiv-tr-Set =
+ is-preunivalent-is-injective-equiv-tr-is-set
+ ( type-Set ∘ B)
+ ( is-set-type-Set ∘ B)
+
+ is-preunivalent-retraction-equiv-tr-Set :
+ ((x y : A) → retraction (equiv-tr (type-Set ∘ B) {x} {y})) →
+ is-preunivalent (type-Set ∘ B)
+ is-preunivalent-retraction-equiv-tr-Set =
+ is-preunivalent-retraction-equiv-tr-is-set
+ ( type-Set ∘ B)
+ ( is-set-type-Set ∘ B)
+```
+
+### Inclusions of subuniverses into the universe are preunivalent
+
+**Note.** These proofs rely on essential use of the preunivalence axiom.
+
+```agda
+is-preunivalent-projection-Type-With-Set-Element :
+ {l1 l2 : Level} (S : UU l1 → Set l2) →
+ is-preunivalent (pr1 {A = UU l1} {B = type-Set ∘ S})
+is-preunivalent-projection-Type-With-Set-Element S =
+ is-preunivalent-is-0-map (is-0-map-pr1 (is-set-type-Set ∘ S))
+
+is-preunivalent-inclusion-subuniverse :
+ {l1 l2 : Level} (S : subuniverse l1 l2) →
+ is-preunivalent (inclusion-subuniverse S)
+is-preunivalent-inclusion-subuniverse S =
+ is-preunivalent-projection-Type-With-Set-Element (set-Prop ∘ S)
+```
+
+## See also
+
+- [Univalent type families](foundation.univalent-type-families.md)
+- [Transport-split type families](foundation.transport-split-type-families.md)
diff --git a/src/foundation/pullbacks.lagda.md b/src/foundation/pullbacks.lagda.md
index 64af30d769..2f4d48bdf0 100644
--- a/src/foundation/pullbacks.lagda.md
+++ b/src/foundation/pullbacks.lagda.md
@@ -1145,11 +1145,11 @@ module _
( c)
( cone-ap' c1))
( is-equiv-is-contr _
- ( is-torsorial-path (horizontal-map-cone f g c c1))
- ( is-torsorial-path (f (vertical-map-cone f g c c1))))
+ ( is-torsorial-Id (horizontal-map-cone f g c c1))
+ ( is-torsorial-Id (f (vertical-map-cone f g c c1))))
( is-equiv-is-contr _
- ( is-torsorial-path c1)
- ( is-torsorial-path (vertical-map-cone f g c c1))))
+ ( is-torsorial-Id c1)
+ ( is-torsorial-Id (vertical-map-cone f g c c1))))
( c2))
```
diff --git a/src/foundation/russells-paradox.lagda.md b/src/foundation/russells-paradox.lagda.md
index a3552d5d08..d4ac4625c8 100644
--- a/src/foundation/russells-paradox.lagda.md
+++ b/src/foundation/russells-paradox.lagda.md
@@ -129,7 +129,7 @@ paradox-Russell {l} H =
β = ( equiv-precomp α empty) ∘e
( ( left-unit-law-Σ-is-contr
{ B = λ t → (pr1 t) ∉-𝕍 (pr1 t)}
- ( is-torsorial-path' R')
+ ( is-torsorial-Id' R')
( pair R' refl)) ∘e
( ( inv-associative-Σ (𝕍 l) (_= R') (λ t → (pr1 t) ∉-𝕍 (pr1 t))) ∘e
( ( equiv-tot
diff --git a/src/foundation/sections.lagda.md b/src/foundation/sections.lagda.md
index 7854512e21..86de6b12bb 100644
--- a/src/foundation/sections.lagda.md
+++ b/src/foundation/sections.lagda.md
@@ -139,7 +139,7 @@ module _
( is-contr-equiv
( Π-total-fam (λ x y → y = x))
( inv-distributive-Π-Σ)
- ( is-contr-Π is-torsorial-path'))
+ ( is-contr-Π is-torsorial-Id'))
( id , refl-htpy)) ∘e
( equiv-right-swap-Σ) ∘e
( equiv-Σ-equiv-base ( λ s → pr1 s ~ id) ( distributive-Π-Σ))
diff --git a/src/foundation/sequential-limits.lagda.md b/src/foundation/sequential-limits.lagda.md
index 3910a4a89b..c01524227e 100644
--- a/src/foundation/sequential-limits.lagda.md
+++ b/src/foundation/sequential-limits.lagda.md
@@ -193,7 +193,7 @@ module _
is-torsorial-Eq-structure
( is-torsorial-htpy (pr1 s))
( pr1 s , refl-htpy)
- ( is-torsorial-Eq-Π (λ n → is-torsorial-path (pr2 s n ∙ refl)))
+ ( is-torsorial-Eq-Π (λ n → is-torsorial-Id (pr2 s n ∙ refl)))
is-equiv-Eq-eq-standard-sequential-limit :
(s t : standard-sequential-limit A) →
diff --git a/src/foundation/set-truncations.lagda.md b/src/foundation/set-truncations.lagda.md
index 8e4f26493e..c5080bce61 100644
--- a/src/foundation/set-truncations.lagda.md
+++ b/src/foundation/set-truncations.lagda.md
@@ -423,7 +423,7 @@ module _
abstract
distributive-trunc-coprod-Set :
is-contr
- ( Σ ( type-equiv-Set
+ ( Σ ( equiv-Set
( trunc-Set (A + B))
( coprod-Set (trunc-Set A) (trunc-Set B)))
( λ e →
@@ -451,7 +451,7 @@ module _
( is-set-truncation-trunc-Set B C))))
equiv-distributive-trunc-coprod-Set :
- type-equiv-Set (trunc-Set (A + B)) (coprod-Set (trunc-Set A) (trunc-Set B))
+ equiv-Set (trunc-Set (A + B)) (coprod-Set (trunc-Set A) (trunc-Set B))
equiv-distributive-trunc-coprod-Set =
pr1 (center distributive-trunc-coprod-Set)
diff --git a/src/foundation/sets.lagda.md b/src/foundation/sets.lagda.md
index 8799c286aa..862fb3d31a 100644
--- a/src/foundation/sets.lagda.md
+++ b/src/foundation/sets.lagda.md
@@ -13,6 +13,7 @@ open import foundation.contractible-types
open import foundation.dependent-pair-types
open import foundation.subuniverses
open import foundation.truncated-types
+open import foundation.univalent-type-families
open import foundation.universe-levels
open import foundation-core.1-types
@@ -23,6 +24,7 @@ open import foundation-core.identity-types
open import foundation-core.precomposition-functions
open import foundation-core.propositional-maps
open import foundation-core.propositions
+open import foundation-core.subtypes
open import foundation-core.torsorial-type-families
open import foundation-core.truncation-levels
```
@@ -173,28 +175,6 @@ precomp-Set :
precomp-Set f C = precomp f (type-Set C)
```
-### The type of equivalences between sets is a set
-
-```agda
-module _
- {l1 l2 : Level} {A : UU l1} {B : UU l2}
- where
-
- is-set-equiv-is-set : is-set A → is-set B → is-set (A ≃ B)
- is-set-equiv-is-set = is-trunc-equiv-is-trunc zero-𝕋
-
-module _
- {l1 l2 : Level} (A : Set l1) (B : Set l2)
- where
-
- type-equiv-Set : UU (l1 ⊔ l2)
- type-equiv-Set = type-Set A ≃ type-Set B
-
- equiv-Set : Set (l1 ⊔ l2)
- pr1 equiv-Set = type-equiv-Set
- pr2 equiv-Set = is-set-equiv-is-set (is-set-type-Set A) (is-set-type-Set B)
-```
-
### Extensionality of sets
```agda
@@ -202,11 +182,11 @@ module _
{l : Level} (X : Set l)
where
- equiv-eq-Set : (Y : Set l) → X = Y → type-equiv-Set X Y
+ equiv-eq-Set : (Y : Set l) → X = Y → equiv-Set X Y
equiv-eq-Set = equiv-eq-subuniverse is-set-Prop X
abstract
- is-torsorial-equiv-Set : is-torsorial (λ (Y : Set l) → type-equiv-Set X Y)
+ is-torsorial-equiv-Set : is-torsorial (λ (Y : Set l) → equiv-Set X Y)
is-torsorial-equiv-Set =
is-torsorial-equiv-subuniverse is-set-Prop X
@@ -214,10 +194,10 @@ module _
is-equiv-equiv-eq-Set : (Y : Set l) → is-equiv (equiv-eq-Set Y)
is-equiv-equiv-eq-Set = is-equiv-equiv-eq-subuniverse is-set-Prop X
- eq-equiv-Set : (Y : Set l) → type-equiv-Set X Y → X = Y
+ eq-equiv-Set : (Y : Set l) → equiv-Set X Y → X = Y
eq-equiv-Set Y = eq-equiv-subuniverse is-set-Prop
- extensionality-Set : (Y : Set l) → (X = Y) ≃ type-equiv-Set X Y
+ extensionality-Set : (Y : Set l) → (X = Y) ≃ equiv-Set X Y
pr1 (extensionality-Set Y) = equiv-eq-Set Y
pr2 (extensionality-Set Y) = is-equiv-equiv-eq-Set Y
```
@@ -263,3 +243,23 @@ set-Truncated-Type :
pr1 (set-Truncated-Type k A) = type-Set A
pr2 (set-Truncated-Type k A) = is-trunc-is-set k (is-set-type-Set A)
```
+
+### The type of equivalences is a set if the domain or codomain is a set
+
+```agda
+abstract
+ is-set-equiv-is-set-codomain :
+ {l1 l2 : Level} {A : UU l1} {B : UU l2} → is-set B → is-set (A ≃ B)
+ is-set-equiv-is-set-codomain = is-trunc-equiv-is-trunc-codomain neg-one-𝕋
+
+ is-set-equiv-is-set-domain :
+ {l1 l2 : Level} {A : UU l1} {B : UU l2} → is-set A → is-set (A ≃ B)
+ is-set-equiv-is-set-domain = is-trunc-equiv-is-trunc-domain neg-one-𝕋
+```
+
+### The canonical type family over `Set` is univalent
+
+```agda
+is-univalent-type-Set : {l : Level} → is-univalent (type-Set {l})
+is-univalent-type-Set = is-univalent-inclusion-subuniverse is-set-Prop
+```
diff --git a/src/foundation/singleton-subtypes.lagda.md b/src/foundation/singleton-subtypes.lagda.md
index c8d010b9ae..ed53f6dc71 100644
--- a/src/foundation/singleton-subtypes.lagda.md
+++ b/src/foundation/singleton-subtypes.lagda.md
@@ -105,7 +105,7 @@ module _
standard-singleton-subtype : singleton-subtype l (type-Set X)
pr1 standard-singleton-subtype = subtype-standard-singleton-subtype
- pr2 standard-singleton-subtype = is-torsorial-path x
+ pr2 standard-singleton-subtype = is-torsorial-Id x
inhabited-subtype-standard-singleton-subtype :
inhabited-subtype l (type-Set X)
@@ -248,8 +248,8 @@ module _
( λ y →
( inv-equiv (equiv-unit-trunc-Prop (Id-Prop Y (f x) y))) ∘e
( equiv-trunc-Prop
- ( left-unit-law-Σ-is-contr (is-torsorial-path x) (x , refl)))))
- ( is-torsorial-path (f x))
+ ( left-unit-law-Σ-is-contr (is-torsorial-Id x) (x , refl)))))
+ ( is-torsorial-Id (f x))
compute-im-singleton-subtype :
has-same-elements-subtype
@@ -261,7 +261,7 @@ module _
( im-subtype f (subtype-standard-singleton-subtype X x))
( refl)
( unit-trunc-Prop ((x , refl) , refl))
- ( is-torsorial-path (f x))
+ ( is-torsorial-Id (f x))
( is-singleton-im-singleton-subtype)
```
diff --git a/src/foundation/symmetric-identity-types.lagda.md b/src/foundation/symmetric-identity-types.lagda.md
index 0f1282b7e5..4390404734 100644
--- a/src/foundation/symmetric-identity-types.lagda.md
+++ b/src/foundation/symmetric-identity-types.lagda.md
@@ -67,7 +67,7 @@ module _
(p : symmetric-Id a) → is-torsorial (Eq-symmetric-Id p)
is-torsorial-Eq-symmetric-Id (x , H) =
is-torsorial-Eq-structure
- ( is-torsorial-path x)
+ ( is-torsorial-Id x)
( x , refl)
( is-torsorial-htpy H)
diff --git a/src/foundation/transport-along-identifications.lagda.md b/src/foundation/transport-along-identifications.lagda.md
index 35d9f29985..0edb4f76e6 100644
--- a/src/foundation/transport-along-identifications.lagda.md
+++ b/src/foundation/transport-along-identifications.lagda.md
@@ -56,7 +56,7 @@ module _
( is-section-inv-tr p)
( is-retraction-inv-tr p)
- equiv-tr : x = y → (B x) ≃ (B y)
+ equiv-tr : x = y → B x ≃ B y
pr1 (equiv-tr p) = tr B p
pr2 (equiv-tr p) = is-equiv-tr p
```
diff --git a/src/foundation/transport-split-type-families.lagda.md b/src/foundation/transport-split-type-families.lagda.md
new file mode 100644
index 0000000000..f4fc0dad2f
--- /dev/null
+++ b/src/foundation/transport-split-type-families.lagda.md
@@ -0,0 +1,158 @@
+# Transport-split type families
+
+```agda
+module foundation.transport-split-type-families where
+```
+
+Imports
+
+```agda
+open import elementary-number-theory.natural-numbers
+
+open import foundation.action-on-equivalences-functions
+open import foundation.action-on-identifications-functions
+open import foundation.cartesian-product-types
+open import foundation.dependent-pair-types
+open import foundation.equivalence-extensionality
+open import foundation.equivalence-injective-type-families
+open import foundation.equivalences
+open import foundation.function-extensionality
+open import foundation.fundamental-theorem-of-identity-types
+open import foundation.iterated-dependent-product-types
+open import foundation.transport-along-identifications
+open import foundation.unit-type
+open import foundation.univalent-type-families
+open import foundation.universal-property-identity-systems
+open import foundation.universe-levels
+
+open import foundation-core.embeddings
+open import foundation-core.identity-types
+open import foundation-core.propositions
+open import foundation-core.sections
+open import foundation-core.torsorial-type-families
+```
+
+
+
+## Idea
+
+A type family `B` over `A` is said to be
+{{#concept "transport-split" Disambiguation="type family" Agda=is-transport-split}}
+if the map
+
+```text
+ equiv-tr B : x = y → B x ≃ B y
+```
+
+admits a [section](foundation-core.sections.md) for every `x y : A`. By a
+corollary of
+[the fundamental theorem of identity types](foundation.fundamental-theorem-of-identity-types.md)
+every transport-split type family is
+[univalent](foundation.univalent-type-families.md), meaning that `equiv-tr B` is
+in fact an [equivalence](foundation-core.equivalences.md) for all `x y : A`.
+
+## Definition
+
+### Transport-split type families
+
+```agda
+is-transport-split :
+ {l1 l2 : Level} {A : UU l1} → (A → UU l2) → UU (l1 ⊔ l2)
+is-transport-split {A = A} B =
+ (x y : A) → section (λ (p : x = y) → equiv-tr B p)
+```
+
+## Properties
+
+### Transport-split type families are equivalence injective
+
+```agda
+module _
+ {l1 l2 : Level} {A : UU l1} {B : A → UU l2}
+ where
+
+ is-equivalence-injective-is-transport-split :
+ is-transport-split B → is-equivalence-injective B
+ is-equivalence-injective-is-transport-split s {x} {y} =
+ map-section (equiv-tr B) (s x y)
+```
+
+### Transport-split type families are univalent
+
+```agda
+module _
+ {l1 l2 : Level} {A : UU l1} {B : A → UU l2}
+ where
+
+ is-transport-split-is-univalent :
+ is-univalent B → is-transport-split B
+ is-transport-split-is-univalent U x y = section-is-equiv (U x y)
+
+ is-univalent-is-transport-split :
+ is-transport-split B → is-univalent B
+ is-univalent-is-transport-split s x =
+ fundamental-theorem-id-section x (λ y → equiv-tr B) (s x)
+```
+
+### The type `is-transport-split` is a proposition
+
+```agda
+module _
+ {l1 l2 : Level} {A : UU l1} {B : A → UU l2}
+ where
+
+ is-proof-irrelevant-is-transport-split :
+ is-proof-irrelevant (is-transport-split B)
+ is-proof-irrelevant-is-transport-split s =
+ is-contr-iterated-Π 2
+ ( λ x y →
+ is-contr-section-is-equiv (is-univalent-is-transport-split s x y))
+
+ is-prop-is-transport-split :
+ is-prop (is-transport-split B)
+ is-prop-is-transport-split =
+ is-prop-is-proof-irrelevant is-proof-irrelevant-is-transport-split
+```
+
+### Assuming the univalence axiom, type families are transport-split if and only if they are embeddings as maps
+
+```agda
+module _
+ {l1 l2 : Level} {A : UU l1} {B : A → UU l2}
+ where
+
+ is-emb-is-transport-split : is-transport-split B → is-emb B
+ is-emb-is-transport-split s =
+ is-emb-is-univalent (is-univalent-is-transport-split s)
+
+ is-transport-split-is-emb : is-emb B → is-transport-split B
+ is-transport-split-is-emb H =
+ is-transport-split-is-univalent (is-univalent-is-emb H)
+```
+
+### Transport-split type families satisfy equivalence induction
+
+```agda
+module _
+ {l1 l2 : Level} {A : UU l1} {B : A → UU l2}
+ (s : is-transport-split B)
+ where
+
+ is-torsorial-fam-equiv-is-transport-split :
+ {x : A} → is-torsorial (λ y → B x ≃ B y)
+ is-torsorial-fam-equiv-is-transport-split =
+ is-torsorial-fam-equiv-is-univalent (is-univalent-is-transport-split s)
+
+ dependent-universal-property-identity-system-fam-equiv-is-transport-split :
+ {x : A} →
+ dependent-universal-property-identity-system (λ y → B x ≃ B y) id-equiv
+ dependent-universal-property-identity-system-fam-equiv-is-transport-split =
+ dependent-universal-property-identity-system-is-torsorial
+ ( id-equiv)
+ ( is-torsorial-fam-equiv-is-transport-split)
+```
+
+## See also
+
+- [Univalent type families](foundation.univalent-type-families.md)
+- [Preunivalent type families](foundation.preunivalent-type-families.md)
diff --git a/src/foundation/truncated-types.lagda.md b/src/foundation/truncated-types.lagda.md
index 33d95d4812..3adb80b12a 100644
--- a/src/foundation/truncated-types.lagda.md
+++ b/src/foundation/truncated-types.lagda.md
@@ -12,13 +12,13 @@ open import foundation-core.truncated-types public
open import elementary-number-theory.natural-numbers
open import foundation.dependent-pair-types
+open import foundation.equivalences
open import foundation.subtype-identity-principle
open import foundation.truncation-levels
open import foundation.univalence
open import foundation.universe-levels
open import foundation-core.embeddings
-open import foundation-core.equivalences
open import foundation-core.identity-types
open import foundation-core.propositions
open import foundation-core.subtypes
@@ -110,3 +110,32 @@ module _
( is-trunc-equiv' k A e)
( is-trunc-equiv k B e)
```
+
+### If the domain or codomain is `k+1`-truncated, then the type of equivalences is `k+1`-truncated
+
+```agda
+module _
+ {l1 l2 : Level} (k : 𝕋) {A : UU l1} {B : UU l2}
+ where
+
+ is-trunc-equiv-is-trunc-codomain :
+ is-trunc (succ-𝕋 k) B → is-trunc (succ-𝕋 k) (A ≃ B)
+ is-trunc-equiv-is-trunc-codomain is-trunc-B =
+ is-trunc-type-subtype
+ ( k)
+ ( is-equiv-Prop)
+ ( is-trunc-function-type (succ-𝕋 k) is-trunc-B)
+
+module _
+ {l1 l2 : Level} (k : 𝕋) {A : UU l1} {B : UU l2}
+ where
+
+ is-trunc-equiv-is-trunc-domain :
+ is-trunc (succ-𝕋 k) A → is-trunc (succ-𝕋 k) (A ≃ B)
+ is-trunc-equiv-is-trunc-domain is-trunc-A =
+ is-trunc-equiv
+ ( succ-𝕋 k)
+ ( B ≃ A)
+ ( equiv-inv-equiv)
+ ( is-trunc-equiv-is-trunc-codomain k is-trunc-A)
+```
diff --git a/src/foundation/type-duality.lagda.md b/src/foundation/type-duality.lagda.md
index 9010140341..bf363dbedf 100644
--- a/src/foundation/type-duality.lagda.md
+++ b/src/foundation/type-duality.lagda.md
@@ -119,7 +119,7 @@ is-emb-map-type-duality {l} {l1} {A} H (X , f) =
( Σ Y (λ y → type-is-small (H (g y) a)))) ∘e
( equiv-univalence))) ∘e
( equiv-funext)))
- ( is-torsorial-path (X , f)))
+ ( is-torsorial-Id (X , f)))
( λ Y → ap (map-type-duality H))
emb-type-duality :
diff --git a/src/foundation/univalence.lagda.md b/src/foundation/univalence.lagda.md
index 1df7bab84c..1e7f3190b7 100644
--- a/src/foundation/univalence.lagda.md
+++ b/src/foundation/univalence.lagda.md
@@ -112,7 +112,7 @@ module _
is-contr-equiv'
( Σ (UU l) (λ X → X = A))
( equiv-tot (λ X → equiv-univalence))
- ( is-torsorial-path' A)
+ ( is-torsorial-Id' A)
```
### Univalence for type families
diff --git a/src/foundation/univalent-type-families.lagda.md b/src/foundation/univalent-type-families.lagda.md
index 8297c1c7a7..d68a061924 100644
--- a/src/foundation/univalent-type-families.lagda.md
+++ b/src/foundation/univalent-type-families.lagda.md
@@ -7,29 +7,164 @@ module foundation.univalent-type-families where
Imports
```agda
+open import foundation.action-on-identifications-functions
+open import foundation.dependent-pair-types
+open import foundation.equality-dependent-pair-types
+open import foundation.equivalences
+open import foundation.fundamental-theorem-of-identity-types
+open import foundation.identity-systems
+open import foundation.iterated-dependent-product-types
+open import foundation.propositions
+open import foundation.subuniverses
open import foundation.transport-along-identifications
+open import foundation.univalence
+open import foundation.universal-property-identity-systems
open import foundation.universe-levels
-open import foundation-core.equivalences
+open import foundation-core.embeddings
open import foundation-core.identity-types
+open import foundation-core.sections
+open import foundation-core.torsorial-type-families
```
## Idea
-A type family `B` over `A` is said to be univalent if the map
+A type family `B` over `A` is said to be
+{{#concept "univalent" Disambiguation="type family" Agda=is-univalent}} if the
+map
```text
- equiv-tr : (Id x y) → (B x ≃ B y)
+ equiv-tr B : x = y → B x ≃ B y
```
-is an equivalence for every `x y : A`.
+is an [equivalence](foundation-core.equivalences.md) for every `x y : A`. By
+[the univalence axiom](foundation-core.univalence.md), this is equivalent to the
+type family `B` being an [embedding](foundation-core.embeddings.md) considered
+as a map.
## Definition
+### The predicate on type families of being univalent
+
```agda
is-univalent :
{l1 l2 : Level} {A : UU l1} → (A → UU l2) → UU (l1 ⊔ l2)
is-univalent {A = A} B = (x y : A) → is-equiv (λ (p : x = y) → equiv-tr B p)
+
+module _
+ {l1 l2 : Level} {A : UU l1} {B : A → UU l2}
+ where
+
+ is-prop-is-univalent : is-prop (is-univalent B)
+ is-prop-is-univalent =
+ is-prop-iterated-Π 2 (λ x y → is-property-is-equiv (equiv-tr B))
+
+ is-univalent-Prop : Prop (l1 ⊔ l2)
+ pr1 is-univalent-Prop = is-univalent B
+ pr2 is-univalent-Prop = is-prop-is-univalent
+```
+
+### Univalent type families
+
+```agda
+univalent-type-family :
+ {l1 : Level} (l2 : Level) (A : UU l1) → UU (l1 ⊔ lsuc l2)
+univalent-type-family l2 A = Σ (A → UU l2) is-univalent
+```
+
+## Properties
+
+### Assuming the univalence axiom, type families are univalent if and only if they are embeddings as maps
+
+**Proof:** We have the
+[commuting triangle of maps](foundation-core.commuting-triangles-of-maps.md)
+
+```text
+ ap B
+ (x = y) -----> (B x = B y)
+ \ /
+ \ /
+ equiv-tr B \ / equiv-eq
+ v v
+ (B x ≃ B y)
+```
+
+where the right edge is an equivalence by the univalence axiom. Hence, the top
+map is an equivalence if and only if the left map is.
+
+```agda
+module _
+ {l1 l2 : Level} {A : UU l1} {B : A → UU l2}
+ where
+
+ abstract
+ is-emb-is-univalent :
+ is-univalent B → is-emb B
+ is-emb-is-univalent U x y =
+ is-equiv-top-map-triangle
+ ( equiv-tr B)
+ ( equiv-eq)
+ ( ap B)
+ ( λ where refl → refl)
+ ( univalence (B x) (B y))
+ ( U x y)
+
+ is-univalent-is-emb :
+ is-emb B → is-univalent B
+ is-univalent-is-emb is-emb-B x y =
+ is-equiv-left-map-triangle
+ ( equiv-tr B)
+ ( equiv-eq)
+ ( ap B)
+ ( λ where refl → refl)
+ ( is-emb-B x y)
+ ( univalence (B x) (B y))
+```
+
+### Univalent type families satisfy equivalence induction
+
+```agda
+module _
+ {l1 l2 : Level} {A : UU l1} {B : A → UU l2}
+ (U : is-univalent B)
+ where
+
+ is-torsorial-fam-equiv-is-univalent :
+ {x : A} → is-torsorial (λ y → B x ≃ B y)
+ is-torsorial-fam-equiv-is-univalent {x} =
+ fundamental-theorem-id' (λ y → equiv-tr B) (U x)
+
+ dependent-universal-property-identity-system-fam-equiv-is-univalent :
+ {x : A} →
+ dependent-universal-property-identity-system (λ y → B x ≃ B y) id-equiv
+ dependent-universal-property-identity-system-fam-equiv-is-univalent {x} =
+ dependent-universal-property-identity-system-is-torsorial
+ ( id-equiv)
+ ( is-torsorial-fam-equiv-is-univalent {x})
```
+
+### Inclusions of subuniverses into the universe are univalent
+
+**Note.** This proof relies on essential use of the univalence axiom.
+
+```agda
+module _
+ {l1 l2 : Level} (S : subuniverse l1 l2)
+ where
+
+ is-univalent-inclusion-subuniverse : is-univalent (inclusion-subuniverse S)
+ is-univalent-inclusion-subuniverse =
+ is-univalent-is-emb (is-emb-inclusion-subuniverse S)
+```
+
+## See also
+
+- [Preunivalent type families](foundation.preunivalent-type-families.md)
+- [Transport-split type families](foundation.transport-split-type-families.md):
+ By a corollary of
+ [the fundamental theorem of identity types](foundation.fundamental-theorem-of-identity-types.md),
+ `equiv-tr B` is a
+ [fiberwise equivalence](foundation-core.families-of-equivalences.md) as soon
+ as it admits a fiberwise [section](foundation-core.sections.md).
diff --git a/src/foundation/universal-property-identity-systems.lagda.md b/src/foundation/universal-property-identity-systems.lagda.md
index 8748ea89d0..a29595fa9d 100644
--- a/src/foundation/universal-property-identity-systems.lagda.md
+++ b/src/foundation/universal-property-identity-systems.lagda.md
@@ -36,8 +36,8 @@ also follows for identity systems.
```agda
dependent-universal-property-identity-system :
- {l1 l2 : Level} {A : UU l1} {B : A → UU l2} {a : A} (b : B a) → UUω
-dependent-universal-property-identity-system {A = A} {B} b =
+ {l1 l2 : Level} {A : UU l1} (B : A → UU l2) {a : A} (b : B a) → UUω
+dependent-universal-property-identity-system {A = A} B b =
{l3 : Level} (P : (x : A) (y : B x) → UU l3) →
is-equiv (ev-refl-identity-system b {P})
```
@@ -53,7 +53,7 @@ module _
dependent-universal-property-identity-system-is-torsorial :
is-torsorial B →
- dependent-universal-property-identity-system {B = B} b
+ dependent-universal-property-identity-system B b
dependent-universal-property-identity-system-is-torsorial
H P =
is-equiv-left-factor
@@ -75,7 +75,7 @@ module _
dependent-universal-property-identity-system-is-torsorial H _
is-torsorial-dependent-universal-property-identity-system :
- dependent-universal-property-identity-system {B = B} b →
+ dependent-universal-property-identity-system B b →
is-torsorial B
pr1 (is-torsorial-dependent-universal-property-identity-system H) = (a , b)
pr2 (is-torsorial-dependent-universal-property-identity-system H) u =
@@ -95,13 +95,13 @@ module _
dependent-universal-property-identity-system-is-identity-system :
is-identity-system B a b →
- dependent-universal-property-identity-system {B = B} b
+ dependent-universal-property-identity-system B b
dependent-universal-property-identity-system-is-identity-system H =
dependent-universal-property-identity-system-is-torsorial b
( is-torsorial-is-identity-system a b H)
is-identity-system-dependent-universal-property-identity-system :
- dependent-universal-property-identity-system {B = B} b →
+ dependent-universal-property-identity-system B b →
is-identity-system B a b
is-identity-system-dependent-universal-property-identity-system H P =
section-is-equiv (H P)
diff --git a/src/foundation/universal-property-identity-types.lagda.md b/src/foundation/universal-property-identity-types.lagda.md
index af544782f6..74679cffd1 100644
--- a/src/foundation/universal-property-identity-types.lagda.md
+++ b/src/foundation/universal-property-identity-types.lagda.md
@@ -129,7 +129,7 @@ module _
( equiv-ev-refl x) ∘e
( equiv-inclusion-is-full-subtype
( Π-Prop A ∘ (is-equiv-Prop ∘_))
- ( fundamental-theorem-id (is-torsorial-path a))) ∘e
+ ( fundamental-theorem-id (is-torsorial-Id a))) ∘e
( distributive-Π-Σ))))
( emb-tot
( λ x →
@@ -145,7 +145,7 @@ module _
( λ _ →
is-injective-emb
( emb-fiber-Id-preunivalent-Id a)
- ( eq-is-contr (is-torsorial-path a))))
+ ( eq-is-contr (is-torsorial-Id a))))
( λ _ → ap Id)
module _
diff --git a/src/foundation/universal-property-truncation.lagda.md b/src/foundation/universal-property-truncation.lagda.md
index 2df1545015..80dec71320 100644
--- a/src/foundation/universal-property-truncation.lagda.md
+++ b/src/foundation/universal-property-truncation.lagda.md
@@ -68,7 +68,7 @@ module _
( K x' x)
( Id-Truncated-Type C (g x') z)))) ∘e
( equiv-ev-pair)))
- ( is-torsorial-path (g x)))
+ ( is-torsorial-Id (g x)))
is-truncation-is-truncation-ap :
is-truncation B f
diff --git a/src/foundation/weak-function-extensionality.lagda.md b/src/foundation/weak-function-extensionality.lagda.md
index cfd66c65ae..c445141e12 100644
--- a/src/foundation/weak-function-extensionality.lagda.md
+++ b/src/foundation/weak-function-extensionality.lagda.md
@@ -101,7 +101,7 @@ abstract
( λ t → eq-pair-Σ refl refl))
( weak-funext A
( λ x → Σ (B x) (λ b → f x = b))
- ( λ x → is-torsorial-path (f x))))
+ ( λ x → is-torsorial-Id (f x))))
( λ g → htpy-eq {g = g})
```
diff --git a/src/graph-theory/equivalences-directed-graphs.lagda.md b/src/graph-theory/equivalences-directed-graphs.lagda.md
index 726b7fb471..ec10cf5c03 100644
--- a/src/graph-theory/equivalences-directed-graphs.lagda.md
+++ b/src/graph-theory/equivalences-directed-graphs.lagda.md
@@ -335,7 +335,7 @@ module _
is-contr-equiv'
( Σ (Directed-Graph l1 l2) (λ H → G = H))
( equiv-tot extensionality-Directed-Graph)
- ( is-torsorial-path G)
+ ( is-torsorial-Id G)
```
### The inverse of an equivalence of directed trees
diff --git a/src/graph-theory/fibers-directed-graphs.lagda.md b/src/graph-theory/fibers-directed-graphs.lagda.md
index cf20c1a1bf..7f0d16753a 100644
--- a/src/graph-theory/fibers-directed-graphs.lagda.md
+++ b/src/graph-theory/fibers-directed-graphs.lagda.md
@@ -200,7 +200,7 @@ module _
direct-predecessor-Directed-Graph G
( node-inclusion-fiber-Directed-Graph G x y)
compute-direct-predecessor-fiber-Directed-Graph y =
- ( right-unit-law-Σ-is-contr (λ (u , e) → is-torsorial-path' _)) ∘e
+ ( right-unit-law-Σ-is-contr (λ (u , e) → is-torsorial-Id' _)) ∘e
( interchange-Σ-Σ _)
map-compute-direct-predecessor-fiber-Directed-Graph :
diff --git a/src/graph-theory/walks-directed-graphs.lagda.md b/src/graph-theory/walks-directed-graphs.lagda.md
index cd6f407532..822b9d4c23 100644
--- a/src/graph-theory/walks-directed-graphs.lagda.md
+++ b/src/graph-theory/walks-directed-graphs.lagda.md
@@ -407,7 +407,7 @@ module _
is-contr-equiv'
( Σ (vertex-Directed-Graph G) (λ y → y = x))
( equiv-tot (λ y → compute-raise l2 (y = x)))
- ( is-torsorial-path' x)
+ ( is-torsorial-Id' x)
```
### `cons-walk e w ≠ refl-walk`
diff --git a/src/graph-theory/walks-undirected-graphs.lagda.md b/src/graph-theory/walks-undirected-graphs.lagda.md
index 0377bd1cc9..52490662e6 100644
--- a/src/graph-theory/walks-undirected-graphs.lagda.md
+++ b/src/graph-theory/walks-undirected-graphs.lagda.md
@@ -169,7 +169,7 @@ module _
is-contr
( vertex-on-walk-Undirected-Graph G (refl-walk-Undirected-Graph {x = x}))
is-contr-vertex-on-walk-refl-walk-Undirected-Graph =
- is-torsorial-path x
+ is-torsorial-Id x
```
### The type of vertices on a walk is equivalent to `Fin (n + 1)` where `n` is the length of the walk
@@ -192,7 +192,7 @@ module _
( equiv-coprod
( compute-vertex-on-walk-Undirected-Graph w)
( equiv-is-contr
- ( is-torsorial-path (other-element-unordered-pair p y))
+ ( is-torsorial-Id (other-element-unordered-pair p y))
( is-contr-unit))) ∘e
( left-distributive-Σ-coprod
( vertex-Undirected-Graph G)
@@ -231,7 +231,7 @@ module _
( equiv-coprod
( compute-edge-on-walk-Undirected-Graph w)
( equiv-is-contr
- ( is-torsorial-path (pair p e))
+ ( is-torsorial-Id (pair p e))
( is-contr-unit))) ∘e
( left-distributive-Σ-coprod
( total-edge-Undirected-Graph G)
diff --git a/src/group-theory/automorphism-groups.lagda.md b/src/group-theory/automorphism-groups.lagda.md
index 66a609eded..aa5a4f79ff 100644
--- a/src/group-theory/automorphism-groups.lagda.md
+++ b/src/group-theory/automorphism-groups.lagda.md
@@ -120,7 +120,7 @@ module _
is-torsorial (Eq-classifying-type-Automorphism-∞-Group X)
is-torsorial-Eq-classifying-type-Automorphism-∞-Group X =
is-torsorial-Eq-subtype
- ( is-torsorial-path (pr1 X))
+ ( is-torsorial-Id (pr1 X))
( λ a → is-prop-type-trunc-Prop)
( pr1 X)
( refl)
diff --git a/src/group-theory/equivalences-concrete-group-actions.lagda.md b/src/group-theory/equivalences-concrete-group-actions.lagda.md
index a631706793..27c37431a5 100644
--- a/src/group-theory/equivalences-concrete-group-actions.lagda.md
+++ b/src/group-theory/equivalences-concrete-group-actions.lagda.md
@@ -41,7 +41,7 @@ module _
equiv-action-Concrete-Group :
{l3 : Level} (Y : action-Concrete-Group l3 G) → UU (l1 ⊔ l2 ⊔ l3)
equiv-action-Concrete-Group Y =
- (u : classifying-type-Concrete-Group G) → type-equiv-Set (X u) (Y u)
+ (u : classifying-type-Concrete-Group G) → equiv-Set (X u) (Y u)
id-equiv-action-Concrete-Group : equiv-action-Concrete-Group X
id-equiv-action-Concrete-Group u = id-equiv
@@ -50,7 +50,7 @@ module _
(Y : action-Concrete-Group l2 G) → (X = Y) ≃ equiv-action-Concrete-Group Y
extensionality-action-Concrete-Group =
extensionality-Π X
- ( λ u → type-equiv-Set (X u))
+ ( λ u → equiv-Set (X u))
( λ u → extensionality-Set (X u))
equiv-eq-action-Concrete-Group :
diff --git a/src/group-theory/isomorphisms-abelian-groups.lagda.md b/src/group-theory/isomorphisms-abelian-groups.lagda.md
index 7d636cd570..9d7b07d36e 100644
--- a/src/group-theory/isomorphisms-abelian-groups.lagda.md
+++ b/src/group-theory/isomorphisms-abelian-groups.lagda.md
@@ -196,7 +196,7 @@ abstract
is-contr-equiv'
( Σ (Ab l) (Id A))
( equiv-tot (equiv-iso-eq-Ab' A))
- ( is-torsorial-path A)
+ ( is-torsorial-Id A)
is-equiv-iso-eq-Ab :
{l : Level} (A B : Ab l) → is-equiv (iso-eq-Ab A B)
diff --git a/src/group-theory/isomorphisms-groups.lagda.md b/src/group-theory/isomorphisms-groups.lagda.md
index a176295cd3..0ab46ae767 100644
--- a/src/group-theory/isomorphisms-groups.lagda.md
+++ b/src/group-theory/isomorphisms-groups.lagda.md
@@ -242,7 +242,7 @@ module _
is-contr-equiv'
( Σ (Group l) (Id G))
( equiv-tot extensionality-Group')
- ( is-torsorial-path G)
+ ( is-torsorial-Id G)
```
### Group isomorphisms are stable by composition
diff --git a/src/group-theory/orbits-monoid-actions.lagda.md b/src/group-theory/orbits-monoid-actions.lagda.md
index 3238837f89..a6766ac596 100644
--- a/src/group-theory/orbits-monoid-actions.lagda.md
+++ b/src/group-theory/orbits-monoid-actions.lagda.md
@@ -81,7 +81,7 @@ module _
is-torsorial (htpy-hom-orbit-action-Monoid f)
is-torsorial-htpy-hom-orbit-action-Monoid {x} {y} f =
is-torsorial-Eq-subtype
- ( is-torsorial-path (element-hom-orbit-action-Monoid f))
+ ( is-torsorial-Id (element-hom-orbit-action-Monoid f))
( λ u →
is-set-type-action-Monoid M X (mul-action-Monoid M X u x) y)
( element-hom-orbit-action-Monoid f)
diff --git a/src/group-theory/symmetric-concrete-groups.lagda.md b/src/group-theory/symmetric-concrete-groups.lagda.md
index b329c223a9..006ef44e03 100644
--- a/src/group-theory/symmetric-concrete-groups.lagda.md
+++ b/src/group-theory/symmetric-concrete-groups.lagda.md
@@ -57,7 +57,7 @@ module _
equiv-classifying-type-symmetric-Concrete-Group :
(X Y : classifying-type-symmetric-Concrete-Group A) → UU l
equiv-classifying-type-symmetric-Concrete-Group X Y =
- type-equiv-Set (pr1 X) (pr1 Y)
+ equiv-Set (pr1 X) (pr1 Y)
type-symmetric-Concrete-Group : UU l
type-symmetric-Concrete-Group =
diff --git a/src/lists/lists.lagda.md b/src/lists/lists.lagda.md
index 82634d6451..70c2f61bc6 100644
--- a/src/lists/lists.lagda.md
+++ b/src/lists/lists.lagda.md
@@ -220,7 +220,7 @@ is-torsorial-Eq-list {A = A} l =
is-contr-equiv'
( Σ (list A) (Id l))
( equiv-tot (equiv-Eq-list l))
- ( is-torsorial-path l)
+ ( is-torsorial-Id l)
is-trunc-Eq-list :
(k : 𝕋) {l : Level} {A : UU l} → is-trunc (succ-𝕋 (succ-𝕋 k)) A →
diff --git a/src/orthogonal-factorization-systems/closed-modalities.lagda.md b/src/orthogonal-factorization-systems/closed-modalities.lagda.md
index 7c79d77436..bdbd345410 100644
--- a/src/orthogonal-factorization-systems/closed-modalities.lagda.md
+++ b/src/orthogonal-factorization-systems/closed-modalities.lagda.md
@@ -90,7 +90,7 @@ module _
( f' a)
( center (is-modal-B q))))) ∘e
( equiv-up-join B)))
- ( is-torsorial-path' f))
+ ( is-torsorial-Id' f))
reflective-subuniverse-closed-modality :
reflective-subuniverse (l ⊔ lQ) (l ⊔ lQ)
diff --git a/src/ring-theory/isomorphisms-rings.lagda.md b/src/ring-theory/isomorphisms-rings.lagda.md
index b8575bd7c4..3b76b3ef97 100644
--- a/src/ring-theory/isomorphisms-rings.lagda.md
+++ b/src/ring-theory/isomorphisms-rings.lagda.md
@@ -491,7 +491,7 @@ module _
( (mul-Ring R , associative-mul-Ring R) , λ {x} {y} → refl)
( is-torsorial-Eq-subtype
( is-torsorial-Eq-subtype
- ( is-torsorial-path (one-Ring R))
+ ( is-torsorial-Id (one-Ring R))
( λ x →
is-prop-prod
( is-prop-Π (λ y → is-set-type-Ring R (mul-Ring R x y) y))
diff --git a/src/structured-types/pointed-equivalences.lagda.md b/src/structured-types/pointed-equivalences.lagda.md
index 0c24aaae98..80c212d416 100644
--- a/src/structured-types/pointed-equivalences.lagda.md
+++ b/src/structured-types/pointed-equivalences.lagda.md
@@ -165,7 +165,7 @@ module _
is-torsorial-Eq-structure
( is-torsorial-equiv (type-Pointed-Type A))
( pair (type-Pointed-Type A) id-equiv)
- ( is-torsorial-path (point-Pointed-Type A))
+ ( is-torsorial-Id (point-Pointed-Type A))
extensionality-Pointed-Type : (B : Pointed-Type l1) → Id A B ≃ (A ≃∗ B)
extensionality-Pointed-Type =
diff --git a/src/structured-types/pointed-types-equipped-with-automorphisms.lagda.md b/src/structured-types/pointed-types-equipped-with-automorphisms.lagda.md
index c4e36e99ce..83f24fc993 100644
--- a/src/structured-types/pointed-types-equipped-with-automorphisms.lagda.md
+++ b/src/structured-types/pointed-types-equipped-with-automorphisms.lagda.md
@@ -159,7 +159,7 @@ is-torsorial-htpy-hom-Pointed-Type-With-Aut X Y h1 =
( is-torsorial-htpy (map-hom-Pointed-Type-With-Aut X Y h1))
( pair (map-hom-Pointed-Type-With-Aut X Y h1) refl-htpy)
( is-torsorial-Eq-structure
- ( is-torsorial-path
+ ( is-torsorial-Id
( preserves-point-map-hom-Pointed-Type-With-Aut X Y h1))
( pair (preserves-point-map-hom-Pointed-Type-With-Aut X Y h1) refl)
( is-contr-equiv'
diff --git a/src/structured-types/pointed-universal-property-contractible-types.lagda.md b/src/structured-types/pointed-universal-property-contractible-types.lagda.md
index 3c595d66c6..93bb61ec11 100644
--- a/src/structured-types/pointed-universal-property-contractible-types.lagda.md
+++ b/src/structured-types/pointed-universal-property-contractible-types.lagda.md
@@ -73,7 +73,7 @@ module _
is-contr-equiv
( Σ X (λ y → y = x))
( equiv-Σ-equiv-base _ (equiv-universal-property-contr a c X))
- ( is-torsorial-path' x)
+ ( is-torsorial-Id' x)
module _
{l1 : Level} {A : UU l1}
@@ -101,7 +101,7 @@ module _
( equivalence-reasoning
(A → X)
≃ Σ (A → X) (λ f → Σ X (λ x → f a = x))
- by inv-right-unit-law-Σ-is-contr (λ f → is-torsorial-path (f a))
+ by inv-right-unit-law-Σ-is-contr (λ f → is-torsorial-Id (f a))
≃ Σ X (λ x → (A , a) →∗ (X , x))
by equiv-left-swap-Σ
≃ X
@@ -110,7 +110,7 @@ module _
ap
( pr1)
( inv
- ( contraction (is-torsorial-path (f a)) (pair (f a) refl)))))
+ ( contraction (is-torsorial-Id (f a)) (pair (f a) refl)))))
module _
{l1 : Level} (A : Pointed-Type l1)
diff --git a/src/synthetic-homotopy-theory/acyclic-maps.lagda.md b/src/synthetic-homotopy-theory/acyclic-maps.lagda.md
index 2d2b34123b..b09342fe44 100644
--- a/src/synthetic-homotopy-theory/acyclic-maps.lagda.md
+++ b/src/synthetic-homotopy-theory/acyclic-maps.lagda.md
@@ -376,7 +376,7 @@ module _
equiv-left-swap-Σ
≃ (C → X)
by
- equiv-pr1 (λ v → is-torsorial-path' (v ∘ horizontal-map-cocone f g c))
+ equiv-pr1 (λ v → is-torsorial-Id' (v ∘ horizontal-map-cocone f g c))
is-acyclic-map-vertical-map-cocone-is-pushout :
is-pushout f g c →
diff --git a/src/synthetic-homotopy-theory/codiagonals-of-maps.lagda.md b/src/synthetic-homotopy-theory/codiagonals-of-maps.lagda.md
index ba96029837..40f331bb0d 100644
--- a/src/synthetic-homotopy-theory/codiagonals-of-maps.lagda.md
+++ b/src/synthetic-homotopy-theory/codiagonals-of-maps.lagda.md
@@ -104,15 +104,15 @@ module _
( unit)
( inv-equiv
( terminal-map (fiber id b) ,
- ( is-equiv-terminal-map-is-contr (is-torsorial-path' b))))
+ ( is-equiv-terminal-map-is-contr (is-torsorial-Id' b))))
( inv-equiv
( terminal-map (fiber id b) ,
- ( is-equiv-terminal-map-is-contr (is-torsorial-path' b))))
+ ( is-equiv-terminal-map-is-contr (is-torsorial-Id' b))))
( id-equiv)
( terminal-map (fiber f b))
( terminal-map (fiber f b))
- ( λ _ → eq-is-contr (is-torsorial-path' b))
- ( λ _ → eq-is-contr (is-torsorial-path' b))
+ ( λ _ → eq-is-contr (is-torsorial-Id' b))
+ ( λ _ → eq-is-contr (is-torsorial-Id' b))
suspension-cocone-fiber :
suspension-cocone (fiber f b) (fiber (codiagonal-map f) b)
diff --git a/src/synthetic-homotopy-theory/free-loops.lagda.md b/src/synthetic-homotopy-theory/free-loops.lagda.md
index 179b0d76fa..9abf11b695 100644
--- a/src/synthetic-homotopy-theory/free-loops.lagda.md
+++ b/src/synthetic-homotopy-theory/free-loops.lagda.md
@@ -95,14 +95,14 @@ module _
(α : free-loop X) → is-torsorial (Eq-free-loop α)
is-torsorial-Eq-free-loop (pair x α) =
is-torsorial-Eq-structure
- ( is-torsorial-path x)
+ ( is-torsorial-Id x)
( pair x refl)
( is-contr-is-equiv'
( Σ (Id x x) (λ α' → Id α α'))
( tot (λ α' α → right-unit ∙ α))
( is-equiv-tot-is-fiberwise-equiv
( λ α' → is-equiv-concat right-unit α'))
- ( is-torsorial-path α))
+ ( is-torsorial-Id α))
abstract
is-equiv-Eq-eq-free-loop :
@@ -142,14 +142,14 @@ module _
( p : free-dependent-loop α P) → is-torsorial (Eq-free-dependent-loop p)
is-torsorial-Eq-free-dependent-loop (pair y p) =
is-torsorial-Eq-structure
- ( is-torsorial-path y)
+ ( is-torsorial-Id y)
( pair y refl)
( is-contr-is-equiv'
( Σ (Id (tr P (loop-free-loop α) y) y) (λ p' → Id p p'))
( tot (λ p' α → right-unit ∙ α))
( is-equiv-tot-is-fiberwise-equiv
( λ p' → is-equiv-concat right-unit p'))
- ( is-torsorial-path p))
+ ( is-torsorial-Id p))
abstract
is-equiv-Eq-free-dependent-loop-eq :
diff --git a/src/synthetic-homotopy-theory/hatchers-acyclic-type.lagda.md b/src/synthetic-homotopy-theory/hatchers-acyclic-type.lagda.md
index 7c4a10756d..4f8238af04 100644
--- a/src/synthetic-homotopy-theory/hatchers-acyclic-type.lagda.md
+++ b/src/synthetic-homotopy-theory/hatchers-acyclic-type.lagda.md
@@ -153,15 +153,15 @@ module _
is-torsorial Eq-structure-Hatcher-Acyclic-Type
is-torsorial-Eq-structure-Hatcher-Acyclic-Type =
is-torsorial-Eq-structure
- ( is-torsorial-path (pr1 s))
+ ( is-torsorial-Id (pr1 s))
( pr1 s , refl)
( is-torsorial-Eq-structure
- ( is-torsorial-path (pr1 (pr2 s)))
+ ( is-torsorial-Id (pr1 (pr2 s)))
( pr1 (pr2 s) , refl)
( is-torsorial-Eq-structure
- ( is-torsorial-path (pr1 (pr2 (pr2 s)) ∙ refl))
+ ( is-torsorial-Id (pr1 (pr2 (pr2 s)) ∙ refl))
( pr1 (pr2 (pr2 s)) , right-unit)
- ( is-torsorial-path (pr2 (pr2 (pr2 s)) ∙ refl))))
+ ( is-torsorial-Id (pr2 (pr2 (pr2 s)) ∙ refl))))
Eq-eq-structure-Hatcher-Acyclic-Type :
(t : structure-Hatcher-Acyclic-Type A) →
@@ -216,7 +216,7 @@ module _
( ( inv (power-nat-mul-Ω 3 2 (Ω A) a)) ∙
( power-nat-succ-Ω' 5 (Ω A) a)))) ∘e
( ( ( left-unit-law-Σ-is-contr
- ( is-torsorial-path' (a ∙ a))
+ ( is-torsorial-Id' (a ∙ a))
( a ∙ a , refl)) ∘e
( inv-associative-Σ
( type-Ω (Ω A))
@@ -239,7 +239,7 @@ module _
( equiv-concat'
( power-nat-Ω 3 (Ω A) b)
( interchange-concat-Ω² a b a b)))))))))
- ( is-torsorial-path refl)
+ ( is-torsorial-Id refl)
```
### For a fixed pointed map, the `is-hom-pointed-map-algebra-Hatcher-Acyclic-Type` family is torsorial
@@ -309,13 +309,13 @@ module _
is-hom-pointed-map-algebra-Hatcher-Acyclic-Type' (A , σ) (B , τ) f)
is-torsorial-is-hom-pointed-map-algebra-Hatcher-Acyclic-Type' =
is-torsorial-Eq-structure
- ( is-torsorial-path (map-Ω f a1)) ((map-Ω f a1) , refl)
+ ( is-torsorial-Id (map-Ω f a1)) ((map-Ω f a1) , refl)
( is-torsorial-Eq-structure
- ( is-torsorial-path (map-Ω f a2)) ((map-Ω f a2) , refl)
+ ( is-torsorial-Id (map-Ω f a2)) ((map-Ω f a2) , refl)
( is-torsorial-Eq-structure
- ( is-torsorial-path _)
+ ( is-torsorial-Id _)
( _ , refl)
- ( is-torsorial-path _)))
+ ( is-torsorial-Id _)))
abstract
is-torsorial-is-hom-pointed-map-algebra-Hatcher-Acyclic-Type :
diff --git a/src/synthetic-homotopy-theory/suspension-structures.lagda.md b/src/synthetic-homotopy-theory/suspension-structures.lagda.md
index 6a3e59877e..90522d9f5d 100644
--- a/src/synthetic-homotopy-theory/suspension-structures.lagda.md
+++ b/src/synthetic-homotopy-theory/suspension-structures.lagda.md
@@ -268,7 +268,7 @@ module _
( Σ (suspension-structure X Z) (λ c' → c = c'))
( inv-equiv
( equiv-tot (extensionality-suspension-structure c)))
- ( is-torsorial-path c))
+ ( is-torsorial-Id c))
( P))
```
diff --git a/src/synthetic-homotopy-theory/truncated-acyclic-maps.lagda.md b/src/synthetic-homotopy-theory/truncated-acyclic-maps.lagda.md
index ac4e4cb5b7..77461197bb 100644
--- a/src/synthetic-homotopy-theory/truncated-acyclic-maps.lagda.md
+++ b/src/synthetic-homotopy-theory/truncated-acyclic-maps.lagda.md
@@ -607,7 +607,7 @@ module _
equiv-left-swap-Σ
≃ (C → type-Truncated-Type X)
by
- equiv-pr1 (λ v → is-torsorial-path' (v ∘ horizontal-map-cocone f g c))
+ equiv-pr1 (λ v → is-torsorial-Id' (v ∘ horizontal-map-cocone f g c))
is-truncated-acyclic-map-vertical-map-cocone-is-pushout :
is-pushout f g c →
diff --git a/src/synthetic-homotopy-theory/universal-property-suspensions-of-pointed-types.lagda.md b/src/synthetic-homotopy-theory/universal-property-suspensions-of-pointed-types.lagda.md
index a638e4ea4b..1ed990b712 100644
--- a/src/synthetic-homotopy-theory/universal-property-suspensions-of-pointed-types.lagda.md
+++ b/src/synthetic-homotopy-theory/universal-property-suspensions-of-pointed-types.lagda.md
@@ -143,7 +143,7 @@ module _
(suspension-Pointed-Type X →∗ Y) ≃ (X →∗ Ω Y)
equiv-transpose-suspension-loop-adjunction =
( left-unit-law-Σ-is-contr
- ( is-torsorial-path (point-Pointed-Type Y))
+ ( is-torsorial-Id (point-Pointed-Type Y))
( point-Pointed-Type Y , refl)) ∘e
( inv-associative-Σ
( type-Pointed-Type Y)
@@ -159,9 +159,9 @@ module _
Σ ( point-Pointed-Type Y = pr1 z)
( λ x → pr2 z (point-Pointed-Type X) = x))) ∘e
( inv-right-unit-law-Σ-is-contr
- ( λ z → is-torsorial-path (pr2 z (point-Pointed-Type X)))) ∘e
+ ( λ z → is-torsorial-Id (pr2 z (point-Pointed-Type X)))) ∘e
( left-unit-law-Σ-is-contr
- ( is-torsorial-path' (point-Pointed-Type Y))
+ ( is-torsorial-Id' (point-Pointed-Type Y))
( point-Pointed-Type Y , refl)) ∘e
( equiv-right-swap-Σ) ∘e
( equiv-Σ-equiv-base
diff --git a/src/trees/equivalences-directed-trees.lagda.md b/src/trees/equivalences-directed-trees.lagda.md
index 3d53b85582..4b3dbd9ecb 100644
--- a/src/trees/equivalences-directed-trees.lagda.md
+++ b/src/trees/equivalences-directed-trees.lagda.md
@@ -443,7 +443,7 @@ module _
is-contr-equiv'
( Σ (Directed-Tree l1 l2) (λ S → T = S))
( equiv-tot extensionality-Directed-Tree)
- ( is-torsorial-path T)
+ ( is-torsorial-Id T)
```
### A morphism of directed trees is an equivalence if it is an equivalence on the nodes
diff --git a/src/trees/equivalences-enriched-directed-trees.lagda.md b/src/trees/equivalences-enriched-directed-trees.lagda.md
index 435594dd57..b4ee4e1da9 100644
--- a/src/trees/equivalences-enriched-directed-trees.lagda.md
+++ b/src/trees/equivalences-enriched-directed-trees.lagda.md
@@ -506,7 +506,7 @@ module _
is-contr-equiv'
( Σ (Enriched-Directed-Tree l3 l4 A B) (λ S → T = S))
( equiv-tot extensionality-Enriched-Directed-Tree)
- ( is-torsorial-path T)
+ ( is-torsorial-Id T)
```
### A morphism of enriched directed trees is an equivalence if it is an equivalence on the nodes
diff --git a/src/trees/fibers-enriched-directed-trees.lagda.md b/src/trees/fibers-enriched-directed-trees.lagda.md
index c4b4fcaa4a..f546f1acf3 100644
--- a/src/trees/fibers-enriched-directed-trees.lagda.md
+++ b/src/trees/fibers-enriched-directed-trees.lagda.md
@@ -99,7 +99,7 @@ module _
( interchange-Σ-Σ (λ u e v → v = cons-walk-Directed-Graph e w)) ∘e
( ( inv-right-unit-law-Σ-is-contr
( λ i →
- is-torsorial-path' (cons-walk-Directed-Graph (pr2 i) w))) ∘e
+ is-torsorial-Id' (cons-walk-Directed-Graph (pr2 i) w))) ∘e
( enrichment-Enriched-Directed-Tree A B T y))
fiber-Enriched-Directed-Tree : Enriched-Directed-Tree (l3 ⊔ l4) (l3 ⊔ l4) A B
@@ -157,7 +157,7 @@ module _
map-enrichment-fiber-Enriched-Directed-Tree y b
eq-map-enrichment-fiber-Enriched-Directed-Tree y b w p =
eq-interchange-Σ-Σ-is-contr _
- ( is-torsorial-path'
+ ( is-torsorial-Id'
( cons-walk-Directed-Graph
( edge-enrichment-Enriched-Directed-Tree A B T
( node-inclusion-fiber-Enriched-Directed-Tree y)
diff --git a/src/trees/polynomial-endofunctors.lagda.md b/src/trees/polynomial-endofunctors.lagda.md
index 6962ec19ac..398d54325a 100644
--- a/src/trees/polynomial-endofunctors.lagda.md
+++ b/src/trees/polynomial-endofunctors.lagda.md
@@ -71,7 +71,7 @@ module _
is-torsorial (Eq-type-polynomial-endofunctor x)
is-torsorial-Eq-type-polynomial-endofunctor (pair x α) =
is-torsorial-Eq-structure
- ( is-torsorial-path x)
+ ( is-torsorial-Id x)
( pair x refl)
( is-torsorial-htpy α)
diff --git a/src/trees/rooted-morphisms-directed-trees.lagda.md b/src/trees/rooted-morphisms-directed-trees.lagda.md
index fb82443c30..81c9d5fc01 100644
--- a/src/trees/rooted-morphisms-directed-trees.lagda.md
+++ b/src/trees/rooted-morphisms-directed-trees.lagda.md
@@ -256,5 +256,5 @@ module _
is-contr-equiv'
( Σ (rooted-hom-Directed-Tree S T) (λ g → f = g))
( equiv-tot extensionality-rooted-hom-Directed-Tree)
- ( is-torsorial-path f)
+ ( is-torsorial-Id f)
```
diff --git a/src/univalent-combinatorics/2-element-subtypes.lagda.md b/src/univalent-combinatorics/2-element-subtypes.lagda.md
index efafaa64f8..16f26a1213 100644
--- a/src/univalent-combinatorics/2-element-subtypes.lagda.md
+++ b/src/univalent-combinatorics/2-element-subtypes.lagda.md
@@ -129,10 +129,10 @@ module _
( equiv-coprod
( equiv-is-contr
( is-contr-Fin-one-ℕ)
- ( is-torsorial-path x))
+ ( is-torsorial-Id x))
( equiv-is-contr
( is-contr-unit)
- ( is-torsorial-path y)))
+ ( is-torsorial-Id y)))
has-two-elements-type-standard-2-Element-Subtype :
has-two-elements type-standard-2-Element-Subtype
diff --git a/src/univalent-combinatorics/2-element-types.lagda.md b/src/univalent-combinatorics/2-element-types.lagda.md
index b15edfc919..01e0347945 100644
--- a/src/univalent-combinatorics/2-element-types.lagda.md
+++ b/src/univalent-combinatorics/2-element-types.lagda.md
@@ -410,7 +410,7 @@ is-identity-system-type-2-Element-Type X x =
dependent-universal-property-identity-system-type-2-Element-Type :
{l1 : Level} (X : 2-Element-Type l1) (x : type-2-Element-Type X) →
dependent-universal-property-identity-system
- { B = type-2-Element-Type {l1}}
+ ( type-2-Element-Type {l1})
{ a = X}
( x)
dependent-universal-property-identity-system-type-2-Element-Type X x =
diff --git a/src/univalent-combinatorics/cartesian-product-types.lagda.md b/src/univalent-combinatorics/cartesian-product-types.lagda.md
index 0ef51f58d3..fa9ee2a64b 100644
--- a/src/univalent-combinatorics/cartesian-product-types.lagda.md
+++ b/src/univalent-combinatorics/cartesian-product-types.lagda.md
@@ -85,7 +85,7 @@ equiv-left-factor :
equiv-left-factor {l1} {l2} {X} {Y} y =
( ( right-unit-law-prod) ∘e
( equiv-tot
- ( λ x → equiv-is-contr (is-torsorial-path' y) is-contr-unit))) ∘e
+ ( λ x → equiv-is-contr (is-torsorial-Id' y) is-contr-unit))) ∘e
( associative-Σ X (λ x → Y) (λ t → Id (pr2 t) y))
count-left-factor :
diff --git a/src/univalent-combinatorics/counting-dependent-pair-types.lagda.md b/src/univalent-combinatorics/counting-dependent-pair-types.lagda.md
index 99211c837f..8e1578953e 100644
--- a/src/univalent-combinatorics/counting-dependent-pair-types.lagda.md
+++ b/src/univalent-combinatorics/counting-dependent-pair-types.lagda.md
@@ -149,7 +149,7 @@ count-fiber-map-section-family :
count-fiber-map-section-family {l1} {l2} {A} {B} b e f (pair y z) =
count-equiv'
( ( ( left-unit-law-Σ-is-contr
- ( is-torsorial-path' y)
+ ( is-torsorial-Id' y)
( pair y refl)) ∘e
( inv-associative-Σ A
( λ x → Id x y)
diff --git a/src/univalent-combinatorics/dependent-pair-types.lagda.md b/src/univalent-combinatorics/dependent-pair-types.lagda.md
index 54170fb6ef..288b6e4881 100644
--- a/src/univalent-combinatorics/dependent-pair-types.lagda.md
+++ b/src/univalent-combinatorics/dependent-pair-types.lagda.md
@@ -106,7 +106,7 @@ abstract
( λ (x : A) → Id x (pr1 t))
( λ s → Id (tr B (pr2 s) (b (pr1 s))) (pr2 t))) ∘e
( inv-left-unit-law-Σ-is-contr
- ( is-torsorial-path' (pr1 t))
+ ( is-torsorial-Id' (pr1 t))
( pair (pr1 t) refl))))))
( count-Σ e
( λ t →
diff --git a/src/univalent-combinatorics/fibers-of-maps.lagda.md b/src/univalent-combinatorics/fibers-of-maps.lagda.md
index 5e5eff6376..434a444727 100644
--- a/src/univalent-combinatorics/fibers-of-maps.lagda.md
+++ b/src/univalent-combinatorics/fibers-of-maps.lagda.md
@@ -113,7 +113,7 @@ abstract
is-finite-fiber-map-section-family {l1} {l2} {A} {B} b f g (pair y z) =
is-finite-equiv'
( ( ( left-unit-law-Σ-is-contr
- ( is-torsorial-path' y)
+ ( is-torsorial-Id' y)
( pair y refl)) ∘e
( inv-associative-Σ A
( λ x → Id x y)
diff --git a/src/univalent-combinatorics/finite-types.lagda.md b/src/univalent-combinatorics/finite-types.lagda.md
index 8fdc0f7f01..7ae5f6ef72 100644
--- a/src/univalent-combinatorics/finite-types.lagda.md
+++ b/src/univalent-combinatorics/finite-types.lagda.md
@@ -585,7 +585,7 @@ is-torsorial-equiv-𝔽 {l} X =
is-contr-equiv'
( Σ (𝔽 l) (Id X))
( equiv-tot (extensionality-𝔽 X))
- ( is-torsorial-path X)
+ ( is-torsorial-Id X)
equiv-eq-𝔽 : {l : Level} → (X Y : 𝔽 l) → Id X Y → equiv-𝔽 X Y
equiv-eq-𝔽 X Y = map-equiv (extensionality-𝔽 X Y)
diff --git a/src/univalent-combinatorics/standard-finite-types.lagda.md b/src/univalent-combinatorics/standard-finite-types.lagda.md
index aec18df6b8..9103b85ba3 100644
--- a/src/univalent-combinatorics/standard-finite-types.lagda.md
+++ b/src/univalent-combinatorics/standard-finite-types.lagda.md
@@ -30,8 +30,13 @@ open import foundation.injective-maps
open import foundation.negated-equality
open import foundation.negation
open import foundation.noncontractible-types
+open import foundation.path-algebra
+open import foundation.preunivalent-type-families
open import foundation.raising-universe-levels
+open import foundation.retractions
+open import foundation.sections
open import foundation.sets
+open import foundation.transport-along-identifications
open import foundation.unit-type
open import foundation.universe-levels
@@ -427,22 +432,55 @@ leq-nat-succ-Fin (succ-ℕ k) (inr star) =
( leq-zero-ℕ (succ-ℕ (nat-Fin (succ-ℕ k) (inr star))))
```
-### Fin is injective
+### `Fin` is injective
```agda
-abstract
- is-equivalence-injective-Fin : is-equivalence-injective Fin
- is-equivalence-injective-Fin {zero-ℕ} {zero-ℕ} e =
- refl
- is-equivalence-injective-Fin {zero-ℕ} {succ-ℕ l} e =
- ex-falso (map-inv-equiv e (zero-Fin l))
- is-equivalence-injective-Fin {succ-ℕ k} {zero-ℕ} e =
- ex-falso (map-equiv e (zero-Fin k))
- is-equivalence-injective-Fin {succ-ℕ k} {succ-ℕ l} e =
- ap succ-ℕ (is-equivalence-injective-Fin (equiv-equiv-Maybe e))
+is-equivalence-injective-Fin : is-equivalence-injective Fin
+is-equivalence-injective-Fin {zero-ℕ} {zero-ℕ} e =
+ refl
+is-equivalence-injective-Fin {zero-ℕ} {succ-ℕ l} e =
+ ex-falso (map-inv-equiv e (zero-Fin l))
+is-equivalence-injective-Fin {succ-ℕ k} {zero-ℕ} e =
+ ex-falso (map-equiv e (zero-Fin k))
+is-equivalence-injective-Fin {succ-ℕ k} {succ-ℕ l} e =
+ ap succ-ℕ (is-equivalence-injective-Fin (equiv-equiv-Maybe e))
abstract
is-injective-Fin : is-injective Fin
is-injective-Fin =
is-injective-is-equivalence-injective is-equivalence-injective-Fin
+
+compute-is-equivalence-injective-Fin-id-equiv :
+ {n : ℕ} → is-equivalence-injective-Fin {n} {n} id-equiv = refl
+compute-is-equivalence-injective-Fin-id-equiv {zero-ℕ} = refl
+compute-is-equivalence-injective-Fin-id-equiv {succ-ℕ n} =
+ ap² succ-ℕ
+ ( ( ap is-equivalence-injective-Fin compute-equiv-equiv-Maybe-id-equiv) ∙
+ ( compute-is-equivalence-injective-Fin-id-equiv {n}))
+```
+
+### `Fin` is a preunivalent type family
+
+The proof does not rely on the (pre-)univalence axiom.
+
+```agda
+is-section-on-diagonal-is-equivalence-injective-Fin :
+ {n : ℕ} →
+ equiv-tr Fin (is-equivalence-injective-Fin {n} {n} id-equiv) = id-equiv
+is-section-on-diagonal-is-equivalence-injective-Fin =
+ ap (equiv-tr Fin) compute-is-equivalence-injective-Fin-id-equiv
+
+is-retraction-is-equivalence-injective-Fin :
+ {n m : ℕ} →
+ is-retraction (equiv-tr Fin) (is-equivalence-injective-Fin {n} {m})
+is-retraction-is-equivalence-injective-Fin refl =
+ compute-is-equivalence-injective-Fin-id-equiv
+
+retraction-equiv-tr-Fin : (n m : ℕ) → retraction (equiv-tr Fin {n} {m})
+pr1 (retraction-equiv-tr-Fin n m) = is-equivalence-injective-Fin
+pr2 (retraction-equiv-tr-Fin n m) = is-retraction-is-equivalence-injective-Fin
+
+is-preunivalent-Fin : is-preunivalent Fin
+is-preunivalent-Fin =
+ is-preunivalent-retraction-equiv-tr-Set Fin-Set retraction-equiv-tr-Fin
```