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.RestrictionBoundaryCorners
- 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.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.
# An insertion comparison with prescribed coordinate images The two coordinates used by evaluation form an equivalence. Lifting the desired coordinate comparisons through it chooses the insertion witness for currying. Its images are retained, so both endpoint calculations can use those comparisons directly. This changes only a chosen witness, not the underlying coordinate permutation. ```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.Chapter02.Section01.WalkingMorphism as Walking module SCT.VolumeI.Chapter02.Section02.MorphismCalculus.CurryingInsertion {c m a : Level} (π― : Theory c m a) (M : Mapping.MappingAnimae π―) (β± : Categories.FunctorCategories π― M) (I : Walking.WalkingMorphism π―) where open import SCT.VolumeI.Chapter02.Section01.Morphisms π― M β± I public import SCT.VolumeI.Chapter02.Section02.MorphismCalculus.UncurryingExpressionCoordinates as Coordinates import SCT.VolumeI.Chapter01.Section03.ProductCalculus.NestedSymmetry as Symmetry import SCT.VolumeI.Chapter01.Section04.ProductCalculus.ProductSubstitution as Substitution import SCT.VolumeI.Chapter01.Section03.ProductCalculus.PairingNaturality as PN import SCT.VolumeI.Chapter01.Section03.ProductCalculus.PairingUnits as PU import SCT.VolumeI.Chapter01.Section02.Isomorphisms as Iso open PN vocabulary terminal products productLaws composition vertical whiskering using (substitution-square-projection) open PU vocabulary terminal products productLaws composition vertical whiskering pentagonTriangle using (cancel-right-reflect) open Iso vocabulary terminal products productLaws composition vertical whiskering using (cancel-inverse) open import SCT.VolumeI.Chapter01.Section04.ProductCalculus.ProductAssociativity π― M using (cancel-inverse-tail) module At (Ξ X : CAT) where module Coordinate = Coordinates.Coordinates π― M β± I Ξ X permutation = Coordinate.permutation first-coordinate : MAP ((Ξ Γ X) Γ [1]) (Ξ Γ [1]) first-coordinate = Coordinate.step second-coordinate : MAP ((Ξ Γ X) Γ [1]) X second-coordinate = Coordinate.fixed β prβ joint : MAP ((Ξ Γ X) Γ [1]) ((Ξ Γ [1]) Γ X) joint = pair first-coordinate second-coordinate joint-comparison : joint =β Symmetry.exchange π― {Ξ} {X} {[1]} joint-comparison = pair-cong (pair-cong (idIso (prβ β prβ)) (comp-unitΛ‘ prβ)) (comp-unitΛ‘ prβ β· prβ) joint-isEquiv : IsEquiv joint joint-isEquiv = equiv-transport (joint-comparison β»ΒΉ) (Symmetry.exchange-isEquiv π― Ξ X [1]) module Endpoint (z : Obj-abs [1]) where i = insert {X = Ξ} z j = insert {X = Ξ Γ X} z substitution = productMap i (id X) before = permutation β substitution module Product = Substitution.Coordinates π― M X (id (Ξ Γ [1])) i first-pasting : ((first-coordinate β permutation) β substitution) =β (first-coordinate β j) first-pasting = insert-natural prβ z β (pair-Ξ²β (i β prβ) (id X β prβ) β (Coordinate.step-comparison β· substitution)) second-pasting : ((second-coordinate β permutation) β substitution) =β (second-coordinate β j) second-pasting = (identity-boundary z Coordinate.fixed) β»ΒΉ β (Product.second β (Coordinate.second β· substitution)) first-image = first-pasting β (comp-assoc substitution permutation first-coordinate) β»ΒΉ second-image = second-pasting β (comp-assoc substitution permutation second-coordinate) β»ΒΉ first-frame : (u : MAP (Ξ Γ X) ((Ξ Γ X) Γ [1])) β (prβ β (joint β u)) =β (first-coordinate β u) first-frame u = (pair-Ξ²β first-coordinate second-coordinate β· u) β (comp-assoc u joint prβ) β»ΒΉ second-frame : (u : MAP (Ξ Γ X) ((Ξ Γ X) Γ [1])) β (prβ β (joint β u)) =β (second-coordinate β u) second-frame u = (pair-Ξ²β first-coordinate second-coordinate β· u) β (comp-assoc u joint prβ) β»ΒΉ first-lift = (first-frame j) β»ΒΉ β (first-image β first-frame before) second-lift = (second-frame j) β»ΒΉ β (second-image β second-frame before) paired = pair-iso first-lift second-lift lifted = postWhisker-lift joint joint-isEquiv paired abstract comparison : before =β j comparison = FunctorLift.lift lifted comparison-image : (joint β comparison) =β paired comparison-image = FunctorLift.comparison lifted projection-image : {Y : CAT} (Ο : MAP ((Ξ Γ [1]) Γ X) Y) (q : MAP ((Ξ Γ X) Γ [1]) Y) (b : (Ο β joint) =β q) (Ξ± : (q β before) =β (q β j)) β (Ο β paired) =β (((b β· j) β (comp-assoc j joint Ο) β»ΒΉ) β»ΒΉ β (Ξ± β ((b β· before) β (comp-assoc before joint Ο) β»ΒΉ))) β (q β comparison) =β Ξ± projection-image Ο q b Ξ± prescribed = cancel-right-reflect bh (cancel-inverse bk (Ξ± β bh) β isoComp-cong (idIso bk) prescribed β isoComp-cong (idIso bk) (postWhisker Ο β comparison-image) β (substitution-square-projection Ο joint q b comparison) β»ΒΉ) where bh = (b β· before) β (comp-assoc before joint Ο) β»ΒΉ bk = (b β· j) β (comp-assoc j joint Ο) β»ΒΉ abstract first-prescribed : (first-coordinate β comparison) =β first-image first-prescribed = projection-image prβ first-coordinate (pair-Ξ²β first-coordinate second-coordinate) first-image (pair-iso-Ξ²β first-lift second-lift) second-prescribed : (second-coordinate β comparison) =β second-image second-prescribed = projection-image prβ second-coordinate (pair-Ξ²β first-coordinate second-coordinate) second-image (pair-iso-Ξ²β first-lift second-lift) first-square : ((first-coordinate β comparison) β comp-assoc substitution permutation first-coordinate) =β first-pasting first-square = cancel-inverse-tail first-pasting (comp-assoc substitution permutation first-coordinate) β isoComp-cong first-prescribed (idIso (comp-assoc substitution permutation first-coordinate)) second-square : ((second-coordinate β comparison) β comp-assoc substitution permutation second-coordinate) =β second-pasting second-square = cancel-inverse-tail second-pasting (comp-assoc substitution permutation second-coordinate) β isoComp-cong second-prescribed (idIso (comp-assoc substitution permutation second-coordinate)) ```