Other Agda modules in this section (188)
- Associativity
- Composition
- EvaluationCalculus.CompositionShortEdges
- EvaluationCalculus.DoubleEvaluationCoordinates
- EvaluationCalculus.Endpoints.CompositionEndpointComparison
- EvaluationCalculus.Endpoints.DoubleEvaluationCorners
- EvaluationCalculus.Endpoints.EndpointBoundaryComposition
- EvaluationCalculus.Endpoints.EndpointConeRoutes
- EvaluationCalculus.Endpoints.EndpointCornerComparison
- EvaluationCalculus.Endpoints.EndpointCornerFamilies
- EvaluationCalculus.Endpoints.EndpointFrameCones
- EvaluationCalculus.Endpoints.EndpointInputNaturality
- EvaluationCalculus.Endpoints.FramedCornerPasting
- EvaluationCalculus.Endpoints.InsertedShapeCorners
- EvaluationCalculus.Endpoints.RectangularCornerNormalization
- EvaluationCalculus.Endpoints.TransposedCornerComparisons
- EvaluationCalculus.Endpoints.TransposedEndpointFrames
- EvaluationCalculus.EquivalenceUnit
- EvaluationCalculus.EvaluationComposition
- EvaluationCalculus.EvaluationIsomorphisms
- EvaluationCalculus.PairedProjectionComposition
- EvaluationCalculus.Postcomposition.CurryPostcomposition
- EvaluationCalculus.Postcomposition.PostcompositionCorners
- EvaluationCalculus.Postcomposition.PostcompositionDiagramFrames
- EvaluationCalculus.Postcomposition.PostcompositionEndpointCones
- EvaluationCalculus.Postcomposition.PostcompositionObjectEvaluation
- EvaluationCalculus.Postcomposition.PostcompositionParameterEvaluation
- EvaluationCalculus.Restriction.ConstantRestrictionCoordinates
- EvaluationCalculus.Restriction.ConstantRestrictionEvaluation
- EvaluationCalculus.Restriction.CornerRestrictionEvaluation
- EvaluationCalculus.Restriction.CurryRestrictionCorner
- EvaluationCalculus.Restriction.EndpointRestrictionCones
- EvaluationCalculus.Restriction.FramedConeRestriction
- EvaluationCalculus.Restriction.FramedRestrictionCorners
- EvaluationCalculus.Restriction.IdentityRestrictionEvaluation
- EvaluationCalculus.Restriction.InsertionEvaluation
- EvaluationCalculus.Restriction.InsertionParameterComposition
- EvaluationCalculus.Restriction.InsertionProjectionWitnesses
- EvaluationCalculus.Restriction.InsertionRestrictionCompatibility
- EvaluationCalculus.Restriction.InsertionRestrictionEvaluation
- EvaluationCalculus.Restriction.PostcompositionRestrictionEvaluation
- EvaluationCalculus.Restriction.RestrictionCompositorEvaluation
- EvaluationCalculus.Restriction.RestrictionCornerTransport
- EvaluationCalculus.Restriction.RestrictionEdgeEndpoints
- EvaluationCalculus.Restriction.RestrictionEndpointComposition
- EvaluationCalculus.Restriction.RestrictionEvaluation
- EvaluationCalculus.Restriction.RestrictionIdentificationComposition
- EvaluationCalculus.Restriction.RestrictionInsertionCompositionEvaluation
- EvaluationCalculus.Restriction.RestrictionInsertions
- EvaluationCalculus.Restriction.RestrictionParameterEvaluation
- EvaluationCalculus.UniversalArrowEvaluation
- EvaluationCalculus.UniversalArrowSubstitution
- EvaluationCalculus.WhiskeringComparisonTransfer
- Everything
- ExpressionAssociativity
- ExpressionUnitLaws
- GlobalCompositionLaws
- Interchange
- InternalComposition
- MorphismCalculus.CompositePresentations
- MorphismCalculus.CompositionExpressions
- MorphismCalculus.CompositionIdentifications
- MorphismCalculus.CompositionSubstitution
- MorphismCalculus.CompositionWithIdentifications
- MorphismCalculus.ConstantFunctorExpressions
- MorphismCalculus.ConstantSourceNaturality
- MorphismCalculus.ConstantSourceRestriction
- MorphismCalculus.CurriedDiagramComparisons
- MorphismCalculus.CurriedRestrictionFrames
- MorphismCalculus.CurryingEndpointImages
- MorphismCalculus.CurryingExpressionComparisons
- MorphismCalculus.CurryingExpressions
- MorphismCalculus.CurryingInsertion
- MorphismCalculus.CurryingUncurryingRecovery
- MorphismCalculus.DiagramExpressionIdentifications
- MorphismCalculus.DiagramNames
- MorphismCalculus.DoublePostcompositionFrames
- MorphismCalculus.EndpointFiberContractibility
- MorphismCalculus.EndpointFiberEquivalences
- MorphismCalculus.EndpointFiberExpressions
- MorphismCalculus.EndpointFiberLifts
- MorphismCalculus.EndpointFiberOperationEquivalences
- MorphismCalculus.EndpointFiberOperations
- MorphismCalculus.EvaluatedPairRestriction
- MorphismCalculus.EvaluatedParameterChange
- MorphismCalculus.EvaluatedTriangleFamilies
- MorphismCalculus.EvaluatedUncurryingEndpoints
- MorphismCalculus.ExpressionCalculus
- MorphismCalculus.ExpressionDiagramPresentations
- MorphismCalculus.ExpressionEquivalences
- MorphismCalculus.ExpressionFrameCalculus
- MorphismCalculus.ExpressionFrameSquares
- MorphismCalculus.ExpressionIdentifications
- MorphismCalculus.ExpressionPostcomposition
- MorphismCalculus.ExpressionPostcompositionPasting
- MorphismCalculus.ExpressionRestriction
- MorphismCalculus.ExpressionRestrictionFrames
- MorphismCalculus.ExpressionRestrictionPostcomposition
- MorphismCalculus.ExpressionRestrictionSquare
- MorphismCalculus.ExternalProductExpressions
- MorphismCalculus.ExternalProductPostcomposition
- MorphismCalculus.ExternalProductRestriction
- MorphismCalculus.ExternalProductSeparation
- MorphismCalculus.FixedCoordinateExpressions
- MorphismCalculus.FixedCoordinateTriangles
- MorphismCalculus.GlobalCompositionExpressions
- MorphismCalculus.GluedCompositePresentations
- MorphismCalculus.IdentityExpressionPostcomposition
- MorphismCalculus.IdentityExpressionRetargeting
- MorphismCalculus.IdentityExpressionSubstitution
- MorphismCalculus.IdentityFromDiagram
- MorphismCalculus.IdentityFunctorExpressions
- MorphismCalculus.IsomorphicPostcomposition
- MorphismCalculus.IsomorphismExpressionOperations
- MorphismCalculus.NormalizedIdentityExpressions
- MorphismCalculus.PairedCoordinatePostcomposition
- MorphismCalculus.PairedParameterChange
- MorphismCalculus.PostcompositionPairing
- MorphismCalculus.PostcompositionPresentations
- MorphismCalculus.PresentationComparisons
- MorphismCalculus.PresentationSubstitution
- MorphismCalculus.ProductExpressionFrames
- MorphismCalculus.ProductExpressionFunctoriality
- MorphismCalculus.ProductExpressionReflection
- MorphismCalculus.ProductExpressionRestriction
- MorphismCalculus.ProductExpressions
- MorphismCalculus.ProductIdentities
- MorphismCalculus.PullbackDiagramLifting
- MorphismCalculus.RestrictionAlongSection
- MorphismCalculus.SquareCompositePresentations
- MorphismCalculus.TriangleComparisons
- MorphismCalculus.TriangleFamilies
- MorphismCalculus.TriangleFamilyPresentations
- MorphismCalculus.TriangleVertices
- MorphismCalculus.UncurriedExpressionComparisons
- MorphismCalculus.UncurriedPostcompositionComparisons
- MorphismCalculus.UncurriedProductExpressions
- MorphismCalculus.UncurriedRestrictionExpressions
- MorphismCalculus.UncurryingCoordinateEndpoints
- MorphismCalculus.UncurryingCurryingRecovery
- MorphismCalculus.UncurryingDiagramEndpoints
- MorphismCalculus.UncurryingExpressionCoordinates
- MorphismCalculus.UncurryingExpressionFrames
- MorphismCalculus.UncurryingExpressionRestriction
- MorphismCalculus.UncurryingExpressions
- MorphismCalculus.UncurryingFramedOperations
- MorphismCalculus.UncurryingFunctorPostcomposition
- MorphismCalculus.UncurryingFunctorPrecomposition
- MorphismCalculus.UncurryingIdentifiedPostcomposition
- MorphismCalculus.UncurryingPostcomposition
- MorphismCalculus.UncurryingPrecompositionFrames
- MorphismCalculus.UncurryingReflection
- MorphismCalculus.UncurryingTriangleReflection
- NaturalTransformationWhiskering
- Naturality
- PrimitiveIdentificationComposition
- ProductComposition
- ProductInterchange
- SegalAxiom
- SquareCalculus.ArrowCategorySquares
- SquareCalculus.AssociativitySquares
- SquareCalculus.CommonRestrictionDiagonal
- SquareCalculus.EvaluatedSquareExpressions
- SquareCalculus.FramedSquareCommutativity
- SquareCalculus.FramedSquareEndpoints
- SquareCalculus.GluedFramedSquares
- SquareCalculus.GluedSquareArrows
- SquareCalculus.GluedSquareCorners
- SquareCalculus.PairedFaceCorners
- SquareCalculus.SquareBoundaryCones
- SquareCalculus.SquareBoundaryTransfer
- SquareCalculus.SquareCornerEvaluation
- SquareCalculus.SquareCurrying
- SquareCalculus.SquareCurryingCoordinates
- SquareCalculus.SquareCurryingCorner
- SquareCalculus.SquareCurryingEquivalence
- SquareCalculus.SquareDiagramCorners
- SquareCalculus.SquareEndpointCalculus
- SquareCalculus.SquareFaceCorners
- SquareCalculus.SquareInsertionCorner
- SquareCalculus.SquareInsertionNormalization
- SquareCalculus.SquareParameterCorner
- SquareCalculus.UncurryFramedSquare
- TrianglePullbacks
- UnitCalculus.DirectUnitEndpoints
- UnitCalculus.DirectUnitPresentations
- UnitCalculus.DirectUnitTriangles
- UnitCalculus.UnitTriangleFamilies
Complete compiler-highlighted source. Follow a symbol to its declaration.
# Corner comparisons under a change of diagram shape Restriction by a face and then by a shape map is compared with restriction by the specified boundary edge. Evaluation carries this comparison and its vertex identification. The resulting comparison of whole cones can then be restricted to an arbitrary family. ```agda {-# OPTIONS --safe --without-K #-} open import Agda.Primitive using (Level) open import SCT.VolumeI.Chapter01.Theory using (Theory) import SCT.VolumeI.Chapter01.Section04.MappingAnimae as Mapping import SCT.VolumeI.Chapter01.Section07.FunctorCategories as Categories import SCT.VolumeI.Chapter01.Section06.PullbackLaws as Laws import SCT.VolumeI.Chapter02.Section02.EvaluationCalculus.Restriction.RestrictionEndpointComposition as Composition import SCT.VolumeI.Chapter02.Section02.EvaluationCalculus.Restriction.RestrictionCornerTransport as Corners import SCT.VolumeI.Chapter01.Section03.ProductCalculus.PairingNaturality as PN module SCT.VolumeI.Chapter02.Section02.EvaluationCalculus.Restriction.RestrictionBoundaryCorners {c m a : Level} (π― : Theory c m a) (M : Mapping.MappingAnimae π―) (β± : Categories.FunctorCategories π― M) (P : Laws.PullbackStructure π―) where open import SCT.VolumeI.Chapter02.Section02.EvaluationCalculus.Restriction.RestrictionEvaluation π― M β± P public open import SCT.VolumeI.Chapter02.Section02.EvaluationCalculus.Endpoints.EndpointCornerFamilies π― M β± P using (evaluate-cong-inverse) open import SCT.VolumeI.Chapter01.Section08.FunctorCategoryCalculus.FunctorSquares π― M β± P using (preComp; preCong) open import SCT.VolumeI.Chapter01.Section02.Isomorphisms vocabulary terminal products productLaws composition vertical whiskering using (cancel-inverse) open import SCT.VolumeI.Chapter01.Section06.ConeCalculus.InverseCalculus π― using (inverse-composite) open import SCT.VolumeI.Chapter01.Section06.Cones π― open import SCT.VolumeI.Chapter01.Section06.ConeCalculus.ConeRestriction π― using (coneIso-pre; conePre-assoc; coneIso-compose; coneIso-inverse; coneIso-adjust) open import SCT.VolumeI.Chapter01.Section06.ConeCalculus.ComparisonSquares π― using (post-square) open import SCT.VolumeI.Chapter01.Section04.SquareCalculus.ProjectionSquares π― using (post-inverse) open PN vocabulary terminal products productLaws composition vertical whiskering using (move-square; cancel-right; cancel-left; cancel-left-reflect) module Edge {A K B C : CAT} (d : MAP A K) (j : MAP K B) (r : MAP A B) (Ξ± : (j β d) =β r) (u : Obj-abs A) where pc = preComp {E = C} d j pg = preCong {E = C} Ξ± forward = pg β pc backward = pc β»ΒΉ β pg β»ΒΉ ev = evaluate {C = C} u va = evaluate-cong {C = C} (comp-assoc u d j) vΞ± = evaluate-cong {C = C} (Ξ± β· u) old = evaluate-pre {C = C} (j β d) u new = evaluate-pre {C = C} r u route = evaluate-pre {C = C} j (d β u) β ((evaluate-pre d u β· funPre j) β (comp-assoc (funPre j) (funPre d) ev) β»ΒΉ) vertex = (Ξ± β· u) β (comp-assoc u d j) β»ΒΉ abstract first : (old β (ev β pc)) =β (va β»ΒΉ β route) first = isoComp-cong (idIso (va β»ΒΉ)) (Composition.At.comparison π― M β± P d j u) β (cancel-left va (old β (ev β pc))) β»ΒΉ forward-image : (new β (ev β forward)) =β (evaluate-cong vertex β route) forward-image = isoComp-cong ((isoComp-cong (idIso vΞ±) (evaluate-cong-inverse (comp-assoc u d j)) β evaluate-cong-comp (Ξ± β· u) ((comp-assoc u d j) β»ΒΉ)) β»ΒΉ) (idIso route) β ((isoComp-assoc-at vΞ± (va β»ΒΉ) route) β»ΒΉ β (isoComp-cong (idIso vΞ±) first β ((isoComp-assoc-at vΞ± old (ev β pc)) β (isoComp-cong (Restriction.natural Ξ± u) (idIso (ev β pc)) β ((isoComp-assoc-at new (ev β pg) (ev β pc)) β»ΒΉ β isoComp-cong (idIso new) (postWhisker-isoComp-at ev pg pc)))))) module Corner {A D K B C : CAT} (u : Obj-abs A) (v : Obj-abs D) (d : MAP A K) (k : MAP D K) (j : MAP K B) (Ξ΄ : (d β u) =β (k β v)) (r : MAP A B) (s : MAP D B) (Ξ± : (j β d) =β r) (Ξ² : (j β k) =β s) (Ξ΅ : (r β u) =β (s β v)) (shape : (Ξ΅ β Edge.vertex {C = C} d j r Ξ± u) =β (Edge.vertex {C = C} k j s Ξ² v β (j β Ξ΄))) where module L = Edge {C = C} d j r Ξ± u module R = Edge {C = C} k j s Ξ² v module Inner = Corners.At π― M β± P {C = C} u v d k j Ξ΄ p = L.new q = R.new vertex = evaluate-cong {C = C} Ξ΅ Ο = evaluate-cong {C = C} L.vertex Ο = evaluate-cong {C = C} R.vertex middle = evaluate-cong {C = C} (j β Ξ΄) Ο = q β»ΒΉ β (vertex β p) outer : Cone (evaluate {C = C} u) (evaluate v) (Fun B C) outer = record { left = funPre r ; right = funPre s ; match = Ο } abstract outer-square : (q β Ο) =β (vertex β p) outer-square = cancel-inverse q (vertex β p) vertex-square : (vertex β Ο) =β (Ο β middle) vertex-square = evaluate-cong-comp R.vertex (j β Ξ΄) β (evaluate-cong-Isoβ shape β (evaluate-cong-comp Ξ΅ L.vertex) β»ΒΉ) compatible : (Ο β (evaluate u β L.forward)) =β ((evaluate v β R.forward) β Inner.matching) compatible = cancel-left-reflect q (isoComp-assoc-at q (evaluate v β R.forward) Inner.matching β (isoComp-cong (R.forward-image β»ΒΉ) (idIso Inner.matching) β ((isoComp-assoc-at Ο Inner.right-route Inner.matching) β»ΒΉ β (isoComp-cong (idIso Ο) (Inner.comparison β»ΒΉ) β (isoComp-assoc-at Ο middle Inner.left-route β (isoComp-cong vertex-square (idIso Inner.left-route) β ((isoComp-assoc-at vertex Ο Inner.left-route) β»ΒΉ β (isoComp-cong (idIso vertex) L.forward-image β (isoComp-assoc-at vertex p (evaluate u β L.forward) β (isoComp-cong outer-square (idIso (evaluate u β L.forward)) β (isoComp-assoc-at q Ο (evaluate u β L.forward)) β»ΒΉ)))))))))) comparison : ConeIso (conePre (funPre j) Inner.cone) outer comparison = record { leftIso = L.forward ; rightIso = R.forward ; compatible = compatible } module Family {Ξ : CAT} (W : MAP Ξ (Fun B C)) where raw = coneIso-compose (conePre-assoc W (funPre j) Inner.cone) (coneIso-inverse (coneIso-pre W comparison)) left = comp-assoc W (funPre j) (funPre d) β ((L.pc β· W) β»ΒΉ β (L.pg β· W) β»ΒΉ) right = comp-assoc W (funPre j) (funPre k) β ((R.pc β· W) β»ΒΉ β (R.pg β· W) β»ΒΉ) abstract left-normal : ConeIso.leftIso raw =β left left-normal = isoComp-cong (idIso (comp-assoc W (funPre j) (funPre d))) (inverse-composite (L.pg β· W) (L.pc β· W) β (οΌ-inv β preWhisker-isoComp-at L.pg L.pc W)) right-normal : ConeIso.rightIso raw =β right right-normal = isoComp-cong (idIso (comp-assoc W (funPre j) (funPre k))) (inverse-composite (R.pg β· W) (R.pc β· W) β (οΌ-inv β preWhisker-isoComp-at R.pg R.pc W)) value : ConeIso (conePre W outer) (conePre (funPre j β W) Inner.cone) value = coneIso-adjust raw left right left-normal right-normal ```