Reflexive globular equivalences
Content created by Egbert Rijke.
Created on 2024-12-03.
Last modified on 2024-12-03.
{-# OPTIONS --guardedness #-} module globular-types.reflexive-globular-equivalences where
Imports
open import foundation.action-on-identifications-functions open import foundation.dependent-pair-types open import foundation.equivalences open import foundation.function-types open import foundation.identity-types open import foundation.universe-levels open import globular-types.globular-equivalences open import globular-types.globular-maps open import globular-types.reflexive-globular-maps open import globular-types.reflexive-globular-types
Idea
A reflexive globular equivalence¶
e
between
reflexive-globular types A
and
B
is a globular equivalence that
preserves reflexivity.
Definitions
The predicate on globular equivalences of preserving reflexivity
module _ {l1 l2 l3 l4 : Level} (G : Reflexive-Globular-Type l1 l2) (H : Reflexive-Globular-Type l3 l4) where preserves-refl-globular-equiv : globular-equiv ( globular-type-Reflexive-Globular-Type G) ( globular-type-Reflexive-Globular-Type H) → UU (l1 ⊔ l2 ⊔ l4) preserves-refl-globular-equiv e = preserves-refl-globular-map G H (globular-map-globular-equiv e)
Equivalences between globular types
record reflexive-globular-equiv {l1 l2 l3 l4 : Level} (G : Reflexive-Globular-Type l1 l2) (H : Reflexive-Globular-Type l3 l4) : UU (l1 ⊔ l2 ⊔ l3 ⊔ l4) where field globular-equiv-reflexive-globular-equiv : globular-equiv ( globular-type-Reflexive-Globular-Type G) ( globular-type-Reflexive-Globular-Type H) 0-cell-equiv-reflexive-globular-equiv : 0-cell-Reflexive-Globular-Type G ≃ 0-cell-Reflexive-Globular-Type H 0-cell-equiv-reflexive-globular-equiv = 0-cell-equiv-globular-equiv globular-equiv-reflexive-globular-equiv 0-cell-reflexive-globular-equiv : 0-cell-Reflexive-Globular-Type G → 0-cell-Reflexive-Globular-Type H 0-cell-reflexive-globular-equiv = 0-cell-globular-equiv globular-equiv-reflexive-globular-equiv 1-cell-equiv-reflexive-globular-equiv : {x y : 0-cell-Reflexive-Globular-Type G} → 1-cell-Reflexive-Globular-Type G x y ≃ 1-cell-Reflexive-Globular-Type H ( 0-cell-reflexive-globular-equiv x) ( 0-cell-reflexive-globular-equiv y) 1-cell-equiv-reflexive-globular-equiv = 1-cell-equiv-globular-equiv globular-equiv-reflexive-globular-equiv 1-cell-reflexive-globular-equiv : {x y : 0-cell-Reflexive-Globular-Type G} → 1-cell-Reflexive-Globular-Type G x y → 1-cell-Reflexive-Globular-Type H ( 0-cell-reflexive-globular-equiv x) ( 0-cell-reflexive-globular-equiv y) 1-cell-reflexive-globular-equiv = 1-cell-globular-equiv globular-equiv-reflexive-globular-equiv 1-cell-globular-equiv-reflexive-globular-equiv : {x y : 0-cell-Reflexive-Globular-Type G} → globular-equiv ( 1-cell-globular-type-Reflexive-Globular-Type G x y) ( 1-cell-globular-type-Reflexive-Globular-Type H ( 0-cell-reflexive-globular-equiv x) ( 0-cell-reflexive-globular-equiv y)) 1-cell-globular-equiv-reflexive-globular-equiv = 1-cell-globular-equiv-globular-equiv globular-equiv-reflexive-globular-equiv 2-cell-equiv-reflexive-globular-equiv : {x y : 0-cell-Reflexive-Globular-Type G} {f g : 1-cell-Reflexive-Globular-Type G x y} → 2-cell-Reflexive-Globular-Type G f g ≃ 2-cell-Reflexive-Globular-Type H ( 1-cell-reflexive-globular-equiv f) ( 1-cell-reflexive-globular-equiv g) 2-cell-equiv-reflexive-globular-equiv = 2-cell-equiv-globular-equiv globular-equiv-reflexive-globular-equiv 2-cell-reflexive-globular-equiv : {x y : 0-cell-Reflexive-Globular-Type G} {f g : 1-cell-Reflexive-Globular-Type G x y} → 2-cell-Reflexive-Globular-Type G f g → 2-cell-Reflexive-Globular-Type H ( 1-cell-reflexive-globular-equiv f) ( 1-cell-reflexive-globular-equiv g) 2-cell-reflexive-globular-equiv = 2-cell-globular-equiv globular-equiv-reflexive-globular-equiv 3-cell-equiv-reflexive-globular-equiv : {x y : 0-cell-Reflexive-Globular-Type G} {f g : 1-cell-Reflexive-Globular-Type G x y} → {s t : 2-cell-Reflexive-Globular-Type G f g} → 3-cell-Reflexive-Globular-Type G s t ≃ 3-cell-Reflexive-Globular-Type H ( 2-cell-reflexive-globular-equiv s) ( 2-cell-reflexive-globular-equiv t) 3-cell-equiv-reflexive-globular-equiv = 3-cell-equiv-globular-equiv globular-equiv-reflexive-globular-equiv globular-map-reflexive-globular-equiv : globular-map ( globular-type-Reflexive-Globular-Type G) ( globular-type-Reflexive-Globular-Type H) globular-map-reflexive-globular-equiv = globular-map-globular-equiv globular-equiv-reflexive-globular-equiv field preserves-refl-reflexive-globular-equiv : preserves-refl-globular-equiv G H globular-equiv-reflexive-globular-equiv preserves-refl-1-cell-reflexive-globular-equiv : (x : 0-cell-Reflexive-Globular-Type G) → 1-cell-reflexive-globular-equiv ( refl-1-cell-Reflexive-Globular-Type G {x}) = refl-1-cell-Reflexive-Globular-Type H preserves-refl-1-cell-reflexive-globular-equiv = preserves-refl-1-cell-preserves-refl-globular-map preserves-refl-reflexive-globular-equiv preserves-refl-1-cell-globular-equiv-reflexive-globular-equiv : {x y : 0-cell-Reflexive-Globular-Type G} → preserves-refl-globular-equiv ( 1-cell-reflexive-globular-type-Reflexive-Globular-Type G x y) ( 1-cell-reflexive-globular-type-Reflexive-Globular-Type H _ _) ( 1-cell-globular-equiv-reflexive-globular-equiv) preserves-refl-1-cell-globular-equiv-reflexive-globular-equiv = preserves-refl-1-cell-globular-map-preserves-refl-globular-map preserves-refl-reflexive-globular-equiv 1-cell-reflexive-globular-equiv-reflexive-globular-equiv : (x y : 0-cell-Reflexive-Globular-Type G) → reflexive-globular-equiv ( 1-cell-reflexive-globular-type-Reflexive-Globular-Type G x y) ( 1-cell-reflexive-globular-type-Reflexive-Globular-Type H _ _) globular-equiv-reflexive-globular-equiv ( 1-cell-reflexive-globular-equiv-reflexive-globular-equiv x y) = 1-cell-globular-equiv-reflexive-globular-equiv preserves-refl-reflexive-globular-equiv ( 1-cell-reflexive-globular-equiv-reflexive-globular-equiv x y) = preserves-refl-1-cell-globular-equiv-reflexive-globular-equiv open reflexive-globular-equiv public
The identity equivalence on a reflexive globular type
preserves-refl-id-globular-equiv : {l1 l2 : Level} (G : Reflexive-Globular-Type l1 l2) → preserves-refl-globular-equiv ( G) ( G) ( id-globular-equiv (globular-type-Reflexive-Globular-Type G)) preserves-refl-1-cell-preserves-refl-globular-map ( preserves-refl-id-globular-equiv G) ( x) = refl preserves-refl-1-cell-globular-map-preserves-refl-globular-map ( preserves-refl-id-globular-equiv G) = preserves-refl-id-globular-equiv ( 1-cell-reflexive-globular-type-Reflexive-Globular-Type G _ _) id-reflexive-globular-equiv : {l1 l2 : Level} (G : Reflexive-Globular-Type l1 l2) → reflexive-globular-equiv G G globular-equiv-reflexive-globular-equiv (id-reflexive-globular-equiv G) = id-globular-equiv (globular-type-Reflexive-Globular-Type G) preserves-refl-reflexive-globular-equiv (id-reflexive-globular-equiv G) = preserves-refl-id-globular-equiv G
Composition of equivalences of reflexive globular types
globular-equiv-comp-reflexive-globular-equiv : {l1 l2 l3 l4 l5 l6 : Level} {G : Reflexive-Globular-Type l1 l2} {H : Reflexive-Globular-Type l3 l4} {K : Reflexive-Globular-Type l5 l6} → (f : reflexive-globular-equiv H K) (e : reflexive-globular-equiv G H) → globular-equiv ( globular-type-Reflexive-Globular-Type G) ( globular-type-Reflexive-Globular-Type K) globular-equiv-comp-reflexive-globular-equiv f e = comp-globular-equiv ( globular-equiv-reflexive-globular-equiv f) ( globular-equiv-reflexive-globular-equiv e) preserves-refl-comp-reflexive-globular-equiv : {l1 l2 l3 l4 l5 l6 : Level} {G : Reflexive-Globular-Type l1 l2} {H : Reflexive-Globular-Type l3 l4} {K : Reflexive-Globular-Type l5 l6} → (g : reflexive-globular-equiv H K) (f : reflexive-globular-equiv G H) → preserves-refl-globular-equiv G K ( globular-equiv-comp-reflexive-globular-equiv g f) preserves-refl-1-cell-preserves-refl-globular-map ( preserves-refl-comp-reflexive-globular-equiv g f) x = ( ap ( 1-cell-reflexive-globular-equiv g) ( preserves-refl-1-cell-reflexive-globular-equiv f _)) ∙ ( preserves-refl-1-cell-reflexive-globular-equiv g _) preserves-refl-1-cell-globular-map-preserves-refl-globular-map ( preserves-refl-comp-reflexive-globular-equiv g f) = preserves-refl-comp-reflexive-globular-equiv ( 1-cell-reflexive-globular-equiv-reflexive-globular-equiv g _ _) ( 1-cell-reflexive-globular-equiv-reflexive-globular-equiv f _ _) comp-reflexive-globular-equiv : {l1 l2 l3 l4 l5 l6 : Level} {G : Reflexive-Globular-Type l1 l2} {H : Reflexive-Globular-Type l3 l4} {K : Reflexive-Globular-Type l5 l6} → reflexive-globular-equiv H K → reflexive-globular-equiv G H → reflexive-globular-equiv G K globular-equiv-reflexive-globular-equiv ( comp-reflexive-globular-equiv g f) = globular-equiv-comp-reflexive-globular-equiv g f preserves-refl-reflexive-globular-equiv (comp-reflexive-globular-equiv g f) = preserves-refl-comp-reflexive-globular-equiv g f
Recent changes
- 2024-12-03. Egbert Rijke. Hofmann-Streicher universes for graphs and globular types (#1196).