Other Agda modules in this section (135)
- ConeCalculus.BaseChangeInclusion
- ConeCalculus.ComparisonEquivalences
- ConeCalculus.ComparisonSquares
- ConeCalculus.Comparisons
- ConeCalculus.CompositeCones
- ConeCalculus.CompositePasting
- ConeCalculus.ConeAction
- ConeCalculus.ConeArrowChange
- ConeCalculus.ConeComparisonEncoding
- ConeCalculus.ConeIdentificationTransport
- ConeCalculus.ConePasting
- ConeCalculus.ConeRestriction
- ConeCalculus.ConeSymmetry
- ConeCalculus.ConeTransportPullbacks
- ConeCalculus.CospanAction
- ConeCalculus.CospanPullbacks
- ConeCalculus.CospanPullbacksLeft
- ConeCalculus.CospanRestriction
- ConeCalculus.CospanSymmetry
- ConeCalculus.FramedEdgeCones
- ConeCalculus.HigherComparisons
- ConeCalculus.HigherLifting
- ConeCalculus.HigherReflection
- ConeCalculus.InverseCalculus
- ConeCalculus.LeftLifts
- ConeCalculus.Operations
- ConeCalculus.ParameterizedCones
- ConeCalculus.ParameterizedPullbacks
- ConeCalculus.PointEvaluationNaturality
- ConeCalculus.PullbackLifting
- ConeCalculus.PullbackReindexing
- ConeCalculus.QuotientComparisons
- ConeCalculus.SplitComparisonLifts
- ConeCalculus.SquareRotation
- ConeCalculus.SquareTransport
- ConeCalculus.TriangleCones
- ConeCalculus.UniversalBaseChangeEquivalences
- ConeCalculus.UniversalConeComparison
- ConeCalculus.UniversalConeLifting
- ConeCalculus.UniversalFactorComparisons
- Cones
- Coordinates.BoundaryTransport
- Coordinates.DiagonalCoordinates
- Coordinates.DiagonalPullbacks
- Coordinates.DiagonalRestriction
- Coordinates.FramedProjectionRestriction
- Coordinates.PairedConeCoordinates
- Coordinates.PointDiagonalCoordinates
- Coordinates.PointDiagonalRestriction
- Coordinates.PointFrameRestriction
- Coordinates.PointProductSquares
- Coordinates.ProductConeFrames
- Coordinates.ProductCones
- Coordinates.ProductFamilyFrames
- Coordinates.ProductPullbacks
- Coordinates.ProductSquares
- Coordinates.ProjectedCones
- Coordinates.ProjectedSquareRestriction
- Coordinates.ProjectionFibers
- Coordinates.ProjectionRestriction
- Coordinates.UniversalConeProjectionCalculus
- CoproductCalculus.ContractibleCoproduct
- CoproductCalculus.CoproductCones
- CoproductCalculus.CoproductDescentSquare
- CoproductCalculus.InitialPullbacks
- CoproductCalculus.ParametrizedCases
- CoproductCalculus.UniversalCoproductDescent
- CoproductDescent
- Cospans.ConeAction
- Cospans.CospanCartesian
- Cospans.CospanEquivalences
- Cospans.EquivalentCospanCone
- Cospans.FamilyChange
- Cospans.FiberImageFamilyChange
- Cospans.FiberImages
- Cospans.FiberInterchange
- Cospans.FiberInterchangeProjections
- Cospans.FiberInterchangeSquare
- Cospans.Fibers
- Cospans.FixedBaseConeAction
- Cospans.FixedParameterConeAction
- Cospans.PairedMaps
- Cospans.PairedSquares
- Cospans.ProjectedImages
- Cospans.PullbackCubeFibers
- Cospans.SquareSubstitution
- DisjointCoproducts
- Distributivity
- EmbeddingCalculus.ConeLifting
- EmbeddingCalculus.CospanEmbeddings
- EmbeddingCalculus.EmbeddingCalculus
- EmbeddingCalculus.EmbeddingCancellation
- EmbeddingCalculus.EmbeddingConeInvariance
- EmbeddingCalculus.PrescribedLifting
- EmbeddingCalculus.PullbackProjections
- EmbeddingCharacterizations
- Embeddings
- Everything
- Fibers
- MappingCalculus.ConeCurrying
- MappingCalculus.ConeReflection
- MappingCalculus.ConeUncurrying
- MappingCalculus.ConeUncurryingNormalization
- MappingCalculus.ConeUncurryingPre
- MappingCalculus.EvaluationSubstitution
- MappingCalculus.MappedCones
- MappingCalculus.MappingCompatibility
- MappingCalculus.MappingProofs
- MappingCalculus.MappingSubstitution
- MappingCalculus.TerminalPullbackTest
- MappingPullbacks
- Pasting.BaseChangeConeRecovery
- Pasting.BaseChangeSquares
- Pasting.ComparisonCancellation
- Pasting.ComparisonPasting
- Pasting.FactoredComposition
- Pasting.NestedPullbacks
- Pasting.UniversalNestedPullbacks
- Pasting.VerticalPasting
- PastingLemma
- PullbackArrowChange
- PullbackAssociativity
- PullbackComparison
- PullbackCriterion
- PullbackData
- PullbackEquivalences
- PullbackFunctor
- PullbackLaws
- PullbackProducts
- PullbackSquares
- PullbackSymmetry
- Representability
- RepresentabilityDiagonal
- SectionBaseChange
- UniversalCoproducts
Complete compiler-highlighted source. Follow a symbol to its declaration.
# Normalizing a matching along a retraction A matching into the image of a section can be adjusted to have any prescribed image under its retraction. The adjustment retains both legs and supplies the equation for its image. No embedding or uniqueness of matching identifications is assumed in this calculation. ```agda {-# OPTIONS --safe --without-K #-} open import Agda.Primitive using (Level) open import SCT.VolumeI.Chapter01.Theory using (Theory) module SCT.VolumeI.Chapter01.Section06.ConeCalculus.SplitRetractionMatching {c m a : Level} (π― : Theory c m a) where open import SCT.VolumeI.Chapter01.Section04.Setup π― open import SCT.VolumeI.Chapter01.Section06.ConeCalculus.ComparisonSquares π― using (post-square) open import SCT.VolumeI.Chapter01.Section06.Coordinates.ProjectionRestriction π― using (restricted-normalization) open import SCT.VolumeI.Chapter01.Section04.SquareCalculus.ProjectionSquares π― using (post-inverse) open import SCT.VolumeI.Chapter01.Section03.ProductCalculus.PairingNaturality vocabulary terminal products productLaws composition vertical whiskering using (substitution-square-projection; project-composite; pre-square-projection) open import SCT.VolumeI.Chapter01.Section03.ProductCalculus.IteratedPairing vocabulary terminal products productLaws composition vertical whiskering pentagonTriangle using (transport-pre; transport-pre-assoc) open import SCT.VolumeI.Chapter01.Section03.ProductCalculus.ProductFunctorUnits vocabulary terminal products productLaws composition vertical whiskering pentagonTriangle using (left-unitor-comp) open import SCT.VolumeI.Chapter01.Section03.IdentificationCalculus.Structural vocabulary terminal products productLaws composition whiskering using (postWhisker-id-at) module WithRetraction {A B : CAT} (i : MAP A B) (r : MAP B A) (Ο : (r β i) =β id A) where frame : {Ξ : CAT} (v : MAP Ξ A) β (r β (i β v)) =β v frame v = comp-unitΛ‘ v β ((Ο β· v) β (comp-assoc v i r) β»ΒΉ) abstract precompose-image : {Ξ : CAT} {G H : MAP Ξ B} {v : MAP Ξ A} (Ο : H =β (i β v)) (Ξ΄ : G =β H) (p : (r β G) =β v) β (frame v β (r β Ο)) =β (p β (r β Ξ΄) β»ΒΉ) β (frame v β (r β (Ο β Ξ΄))) =β p precompose-image {v = v} Ο Ξ΄ p image = isoComp-unitΚ³-at p β (isoComp-cong (idIso p) (isoComp-inverseΛ‘-at (r β Ξ΄)) β (isoComp-assoc-at p ((r β Ξ΄) β»ΒΉ) (r β Ξ΄) β (isoComp-cong image (idIso (r β Ξ΄)) β project-composite r Ο Ξ΄ (frame v)))) frame-natural : {Ξ : CAT} {v w : MAP Ξ A} (Ο : v =β w) β (frame w β (r β (i β Ο))) =β (Ο β frame v) frame-natural {v = v} {w} Ο = paste-squares ((Ο β· v) β (comp-assoc v i r) β»ΒΉ) ((Ο β· w) β (comp-assoc w i r) β»ΒΉ) (comp-unitΛ‘ v) (comp-unitΛ‘ w) (r β (i β Ο)) (id A β Ο) Ο (substitution-square-projection r i (id A) Ο Ο) (postWhisker-id-at Ο) frame-restrict : {Ξ Ξ : CAT} (v : MAP Ξ A) (t : MAP Ξ Ξ) β (frame (v β t) β (r β comp-assoc t v i)) =β transport-pre r (i β v) (frame v) t frame-restrict v t = isoComp-cong ((preWhisker-isoComp-at (comp-unitΛ‘ v) (transport-pre r i Ο v) t) β»ΒΉ) (idIso outer) β (isoComp-cong (isoComp-cong (left-unitor-comp t v) (idIso inner)) (idIso outer) β (isoComp-cong ((isoComp-assoc-at unit assoc inner) β»ΒΉ) (idIso outer) β ((isoComp-assoc-at unit (assoc β inner) outer) β»ΒΉ β (isoComp-cong (idIso unit) ((transport-pre-assoc r i (id A) Ο v t) β»ΒΉ) β isoComp-assoc-at unit (transport-pre r i Ο (v β t)) (r β comp-assoc t v i))))) where unit : (id A β (v β t)) =β (v β t) unit = comp-unitΛ‘ (v β t) assoc : ((id A β v) β t) =β (id A β (v β t)) assoc = comp-assoc t v (id A) outer : (r β ((i β v) β t)) =β ((r β (i β v)) β t) outer = (comp-assoc t (i β v) r) β»ΒΉ inner : ((r β (i β v)) β t) =β ((id A β v) β t) inner = transport-pre r i Ο v β· t image-restrict : {Ξ Ξ : CAT} {H : MAP Ξ B} {v : MAP Ξ A} (Ο : H =β (i β v)) (p : (r β H) =β v) (t : MAP Ξ Ξ) β (frame v β (r β Ο)) =β p β (frame (v β t) β (r β (comp-assoc t v i β (Ο β· t)))) =β transport-pre r H p t image-restrict {H = H} {v} Ο p t image = isoComp-unitΛ‘-at (transport-pre r H p t) β (isoComp-cong (preWhisker-idIso v t) (idIso (transport-pre r H p t)) β (pre-square-projection r Ο (idIso v) p (frame v) t ((isoComp-unitΛ‘-at p) β»ΒΉ β image) β (isoComp-cong (frame-restrict v t) (idIso (r β (Ο β· t))) β project-composite r (comp-assoc t v i) (Ο β· t) (frame (v β t))))) image-nested-restrict : {Ξ Ξ X : CAT} (F : MAP X B) (h : MAP Ξ X) {v : MAP Ξ A} (Ο : (F β h) =β (i β v)) (p : (r β (F β h)) =β v) (t : MAP Ξ Ξ) β (frame v β (r β Ο)) =β p β (frame (v β t) β (r β (comp-assoc t v i β ((Ο β· t) β (comp-assoc t h F) β»ΒΉ)))) =β restricted-normalization r F h p t image-nested-restrict F h {v} Ο p t image = isoComp-cong (idIso (transport-pre r (F β h) p t)) (post-inverse r (comp-assoc t h F)) β (isoComp-cong (image-restrict Ο p t image) (idIso (r β (comp-assoc t h F) β»ΒΉ)) β (project-composite r (comp-assoc t v i β (Ο β· t)) ((comp-assoc t h F) β»ΒΉ) (frame (v β t)) β isoComp-cong (idIso (frame (v β t))) (postWhisker r β (isoComp-assoc-at (comp-assoc t v i) (Ο β· t) ((comp-assoc t h F) β»ΒΉ)) β»ΒΉ))) image-two-step-restrict : {Ξ Ξ X Y : CAT} (F : MAP Y B) (n : MAP X Y) (k : MAP Ξ X) {v : MAP Ξ A} (Ο : (F β (n β k)) =β (i β v)) (p : (r β (F β (n β k))) =β v) (t : MAP Ξ Ξ) β (frame v β (r β Ο)) =β p β (frame (v β t) β (r β (comp-assoc t v i β restricted-normalization F n k Ο t))) =β (restricted-normalization r F (n β k) p t β (r β (F β comp-assoc t k n)) β»ΒΉ) image-two-step-restrict F n k {v} Ο p t image = isoComp-cong (idIso (restricted-normalization r F (n β k) p t)) (post-inverse r (F β comp-assoc t k n)) β (isoComp-cong (image-nested-restrict F (n β k) Ο p t image) (idIso (r β (F β comp-assoc t k n) β»ΒΉ)) β (project-composite r (comp-assoc t v i β transport-pre F (n β k) Ο t) ((F β comp-assoc t k n) β»ΒΉ) (frame (v β t)) β isoComp-cong (idIso (frame (v β t))) (postWhisker r β (isoComp-assoc-at (comp-assoc t v i) (transport-pre F (n β k) Ο t) ((F β comp-assoc t k n) β»ΒΉ)) β»ΒΉ))) retract-square : {Ξ : CAT} {h k : MAP Ξ B} {v w : MAP Ξ A} (ΟL : h =β (i β v)) (ΟR : k =β (i β w)) (Ο : h =β k) (Ξ΄ : v =β w) (p : (r β h) =β v) (q : (r β k) =β w) β (ΟR β Ο) =β ((i β Ξ΄) β ΟL) β (frame v β (r β ΟL)) =β p β (frame w β (r β ΟR)) =β q β (q β (r β Ο)) =β (Ξ΄ β p) retract-square {v = v} {w} ΟL ΟR Ο Ξ΄ p q square imageL imageR = isoComp-cong (idIso Ξ΄) imageL β (paste-squares (r β ΟL) (r β ΟR) (frame v) (frame w) (r β Ο) (r β (i β Ξ΄)) Ξ΄ (post-square r ΟL ΟR Ο (i β Ξ΄) square) (frame-natural Ξ΄) β isoComp-cong (imageR β»ΒΉ) (idIso (r β Ο))) module Normalize {Ξ : CAT} {H : MAP Ξ B} {v : MAP Ξ A} (Ο : H =β (i β v)) (p : (r β H) =β v) where image : (r β H) =β v image = frame v β (r β Ο) correction : v =β v correction = p β image β»ΒΉ matching : H =β (i β v) matching = (i β correction) β Ο abstract image-law : (frame v β (r β matching)) =β p image-law = isoComp-unitΚ³-at p β (isoComp-cong (idIso p) (isoComp-inverseΛ‘-at image) β (isoComp-assoc-at p (image β»ΒΉ) image β (isoComp-assoc-at correction (frame v) (r β Ο) β (isoComp-cong (frame-natural correction) (idIso (r β Ο)) β project-composite r (i β correction) Ο (frame v))))) ```