k
-Equivalences
module foundation.truncation-equivalences where
Imports
open import foundation.commuting-squares-of-maps open import foundation.equivalences open import foundation.functoriality-truncation open import foundation.truncations open import foundation-core.dependent-pair-types open import foundation-core.functions open import foundation-core.homotopies open import foundation-core.truncated-types open import foundation-core.truncation-levels open import foundation-core.universe-levels
Idea
A map f : A → B
is said to be a k
-equivalence if the map
map-trunc k f : trunc k A → trunc k B
is an equivalence.
Definition
is-truncation-equivalence : {l1 l2 : Level} (k : 𝕋) {A : UU l1} {B : UU l2} → (A → B) → UU (l1 ⊔ l2) is-truncation-equivalence k f = is-equiv (map-trunc k f) truncation-equivalence : {l1 l2 : Level} (k : 𝕋) → UU l1 → UU l2 → UU (l1 ⊔ l2) truncation-equivalence k A B = Σ (A → B) (is-truncation-equivalence k) module _ {l1 l2 : Level} (k : 𝕋) {A : UU l1} {B : UU l2} (f : truncation-equivalence k A B) where map-truncation-equivalence : A → B map-truncation-equivalence = pr1 f is-truncation-equivalence-truncation-equivalence : is-truncation-equivalence k map-truncation-equivalence is-truncation-equivalence-truncation-equivalence = pr2 f
Properties
A map f : A → B
is a k
-equivalence if and only if - ∘ f : (B → X) → (A → X)
is an equivalence for every k
-truncated type X
is-equiv-precomp-is-truncation-equivalence : {l1 l2 l3 : Level} (k : 𝕋) {A : UU l1} {B : UU l2} (f : A → B) → is-truncation-equivalence k f → (X : Truncated-Type l3 k) → is-equiv (precomp f (type-Truncated-Type X)) is-equiv-precomp-is-truncation-equivalence k f H X = is-equiv-bottom-is-equiv-top-square ( precomp unit-trunc (type-Truncated-Type X)) ( precomp unit-trunc (type-Truncated-Type X)) ( precomp (map-trunc k f) (type-Truncated-Type X)) ( precomp f (type-Truncated-Type X)) ( precomp-coherence-square-maps ( unit-trunc) ( f) ( map-trunc k f) ( unit-trunc) ( inv-htpy (coherence-square-map-trunc k f)) ( type-Truncated-Type X)) ( is-truncation-trunc X) ( is-truncation-trunc X) ( is-equiv-precomp-is-equiv (map-trunc k f) H (type-Truncated-Type X)) is-truncation-equivalence-is-equiv-precomp : {l1 l2 : Level} (k : 𝕋) {A : UU l1} {B : UU l2} (f : A → B) → ( (l : Level) (X : Truncated-Type l k) → is-equiv (precomp f (type-Truncated-Type X))) → is-truncation-equivalence k f is-truncation-equivalence-is-equiv-precomp k {A} {B} f H = is-equiv-is-equiv-precomp-Truncated-Type k ( trunc k A) ( trunc k B) ( map-trunc k f) ( λ X → is-equiv-top-is-equiv-bottom-square ( precomp unit-trunc (type-Truncated-Type X)) ( precomp unit-trunc (type-Truncated-Type X)) ( precomp (map-trunc k f) (type-Truncated-Type X)) ( precomp f (type-Truncated-Type X)) ( precomp-coherence-square-maps ( unit-trunc) ( f) ( map-trunc k f) ( unit-trunc) ( inv-htpy (coherence-square-map-trunc k f)) ( type-Truncated-Type X)) ( is-truncation-trunc X) ( is-truncation-trunc X) ( H _ X))
References
The notion of k
-equivalence is a special case of the notion of
L
-equivalence, where L
is a reflective subuniverse. They were studied in the
paper
- J. D. Christensen, M. Opie, E. Rijke, and L. Scoccola. Localization in Homotopy Type Theory. Higher Structures, 2020.
The class of k
-equivalences is left orthogonal to the class of k
-étale maps.
This was shown in
- F. Cherubini, and E. Rijke. Modal descent. Mathematical Structures in Computer Science, 2021.