Derivatives for Containers in Univalent Foundations
Cubical.Displayed.Universe
Initializing search
    phijor/derivatives
    • Overview
    • Library
    phijor/derivatives
    • Overview
      • Derivative.Bag
      • Derivative.Adjunction
      • Derivative.Basics.Sum
      • Derivative.Basics.Unit
      • Derivative.Basics.W
      • Derivative.Basics.Decidable
      • Derivative.Basics.Embedding
      • Derivative.Basics.Equiv
      • Derivative.Basics.Maybe
      • Derivative.Basics.Sigma
      • Derivative.Category
      • Derivative.ChainRule
      • Derivative.Container
      • Derivative.Derivative
      • Derivative.Indexed.Mu
      • Derivative.Indexed.ChainRule
      • Derivative.Indexed.Container
      • Derivative.Indexed.Derivative
      • Derivative.Indexed.MuRule
      • Derivative.Indexed.Univalence
      • Derivative.Isolated.Base
      • Derivative.Isolated
      • Derivative.Isolated.S1
      • Derivative.Isolated.Sum
      • Derivative.Isolated.W
      • Derivative.Isolated.DependentGrafting
      • Derivative.Isolated.Grafting
      • Derivative.Isolated.Maybe
      • Derivative.Isolated.Sigma
      • Derivative.Prelude
      • Derivative.Properties
      • Derivative.Remove

    Cubical.Displayed.Universe

    {-
    
      - UARel given by a universe and equivalences
      - SubstRel and DUARel for the element family over the universe
    
    -}
    {-# OPTIONS --no-exact-split #-}
    module Cubical.Displayed.Universe where
    
    open import Cubical.Foundations.Prelude
    open import Cubical.Foundations.Equiv
    open import Cubical.Foundations.Isomorphism
    open import Cubical.Foundations.Univalence
    
    open import Cubical.Displayed.Base
    open import Cubical.Displayed.Subst
    
    private
      variable
        ℓA ℓ≅A ℓB ℓ≅B ℓP : Level
    
    𝒮-Univ : ∀ ℓ → UARel (Type ℓ) ℓ
    𝒮-Univ ℓ .UARel._≅_ = _≃_
    𝒮-Univ ℓ .UARel.ua _ _ = isoToEquiv (invIso univalenceIso)
    
    𝒮ˢ-El : ∀ ℓ → SubstRel (𝒮-Univ ℓ) (λ X → X)
    𝒮ˢ-El ℓ .SubstRel.act e = e
    𝒮ˢ-El ℓ .SubstRel.uaˢ e a = uaβ e a
    
    𝒮ᴰ-El : ∀ ℓ → DUARel (𝒮-Univ ℓ) (λ X → X) ℓ
    𝒮ᴰ-El ℓ .DUARel._≅ᴰ⟨_⟩_  a e a' = e .fst a ≡ a'
    𝒮ᴰ-El ℓ .DUARel.uaᴰ a e a' = invEquiv (ua-ungluePath-Equiv e)
    
    Made with Material for MkDocs