Other Agda modules in this section (28)
- Equivalences
- Everything
- IdentificationCalculus.CoordinateComparisons
- IdentificationCalculus.CoordinateNaturality
- IdentificationCalculus.FamilyNaturality
- IdentificationCalculus.FramedSubstitution
- IdentificationCalculus.FunctorCoherence
- IdentificationCalculus.Inverses
- IdentificationCalculus.Parameterized
- IdentificationCalculus.Structural
- ProductCalculus.BinaryFunctorCalculus
- ProductCalculus.ChosenPairing
- ProductCalculus.ChosenPairingFunctoriality
- ProductCalculus.FamilyPairing
- ProductCalculus.FamilyProductFunctor
- ProductCalculus.IteratedPairing
- ProductCalculus.NestedSymmetry
- ProductCalculus.PairingAssembly
- ProductCalculus.PairingCoherence
- ProductCalculus.PairingInterface
- ProductCalculus.PairingNaturality
- ProductCalculus.PairingUnits
- ProductCalculus.ProductFunctorCoherence
- ProductCalculus.ProductFunctorUnits
- ProductCalculus.ProductPairing
- ProductConstructions
- Retracts
- Whiskering
Complete compiler-highlighted source. Follow a symbol to its declaration.
# Algebra of absolute identifications The vertical composition interface needs the elementary comparison laws, but no whiskering coherence or pentagon. This adapter is shared by generic pasting arguments at any fixed pair of categories. ```agda {-# OPTIONS --safe --without-K #-} open import Agda.Primitive using (Level) open import SCT.VolumeI.Chapter01.Section01.Vocabulary import SCT.VolumeI.Chapter01.Section01.Terminal as Terminal import SCT.VolumeI.Chapter01.Section01.Products as Products import SCT.VolumeI.Chapter01.Section02.Coherence as Coherence import SCT.VolumeI.Chapter01.Section02.Specialization as Specialization import SCT.Calculus.Composition as Algebra module SCT.VolumeI.Chapter01.Section03.IdentificationCalculus.VerticalComposition {c m a : Level} (V : Vocabulary c m a) (T : Terminal.TerminalStructure V) (P : Products.ProductData V) (PL : Products.ProductLaws V P) (S : Coherence.CompositionStructure V T P) (VC : Coherence.VerticalCoherence V T P S) where open Vocabulary V open Operations V open Coherence.CompositionStructure S open Coherence.Composition V T P S module Original = Specialization V T P PL S using (isoComp-cong; module Units) module Units = Original.Units VC using (isoComp-assoc-at; isoComp-unitˡ-at; isoComp-unitʳ-at) comparisons : (X C : CAT) → Algebra.Composition m m m comparisons X C = record { Obj = MAP X C; Hom = _=₁_; _≈_ = _=₂_ ; id = idIso; _∘_ = _∙_; refl = idIso; sym = _⁻¹; trans = _∙_ ; congr = Original.isoComp-cong } abstract laws : (X C : CAT) → Algebra.Laws (comparisons X C) laws X C = record { assoc = Units.isoComp-assoc-at ; unitˡ = Units.isoComp-unitˡ-at; unitʳ = Units.isoComp-unitʳ-at } ```