Other Agda modules in this section (54)
- AbsoluteObjects
- Contractible
- CoproductDomain
- CoreOfFun
- Currying
- Evaluation
- EvaluationCalculus.CoreViaFunctorCategories
- EvaluationCalculus.EvaluatedAssociativitySquare
- EvaluationCalculus.EvaluatedProjectionNormalization
- EvaluationCalculus.EvaluatedRightUnit
- EvaluationCalculus.EvaluatedSeparationChange
- EvaluationCalculus.EvaluatedUnitSquare
- EvaluationCalculus.EvaluationNaturality
- EvaluationCalculus.IsomorphismLifting
- EvaluationCalculus.IteratedCompatibility
- EvaluationCalculus.MappingCompatibility
- EvaluationCalculus.MappingSubstitution
- EvaluationCalculus.MappingTests
- EvaluationCalculus.NestedCoordinateNaturality
- EvaluationCalculus.PostcompositionTriangleFrames
- EvaluationCalculus.PostcompositionUnitFrame
- EvaluationCalculus.PrecompositionMiddleEvaluation
- EvaluationCalculus.PrecompositionMiddleRestriction
- EvaluationCalculus.PrecompositionOuterFrame
- EvaluationCalculus.PrecompositionProductFrameComparison
- EvaluationCalculus.PrecompositionRestrictedOuterFrame
- EvaluationCalculus.PrecompositionTriangleFrames
- EvaluationCalculus.PrecompositionUnitEvaluation
- EvaluationCalculus.ProductSeparationUnits
- EvaluationCalculus.Representation
- EvaluationCalculus.RestrictedFrameNaturality
- EvaluationCalculus.RestrictedFrames
- EvaluationCalculus.SubstitutionCoherence
- EvaluationCalculus.UncurryingAction
- EvaluationCalculus.UncurryingUnits
- Everything
- ExponentialLaw
- FunctorCategories
- FunctorProducts
- FunctorPullbacks
- Functoriality
- MappingComparison
- PullbackCalculus.ConeCurrying
- PullbackCalculus.ConeReflection
- PullbackCalculus.ConeUncurrying
- PullbackCalculus.ConeUncurryingNormalization
- PullbackCalculus.ConeUncurryingPre
- PullbackCalculus.MappedCones
- PullbackCalculus.PullbackMappingTests
- PullbackCalculus.UncurryingCones
- PullbackCalculus.UncurryingSquares
- Setup
- TerminalDomain
- Uniqueness
Complete compiler-highlighted source. Follow a symbol to its declaration.
# Uncurrying, vertical composition, and restriction These aliases collect the comparisons for uncurrying a vertical composite, an inverse, or a restriction of the inputs. The cone calculations use their statements without unfolding the underlying evaluation and product proofs. All comparison maps retain their definitions. ```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.Setup as Setup import SCT.VolumeI.Chapter01.Section04.Substitution.Compatibility as Compatibility import SCT.VolumeI.Chapter01.Section04.Substitution.ParameterChange as ParameterChange import SCT.VolumeI.Chapter01.Section07.FunctorCategories as Categories module SCT.VolumeI.Chapter01.Section07.EvaluationCalculus.MappingProofs {c m a : Level} (𝒯 : Theory c m a) (M : Mapping.MappingAnimae 𝒯) (ℱ : Categories.FunctorCategories 𝒯 M) where module Original = Setup 𝒯 M ℱ open Original hiding (funUncurryIso-comp; funUncurryIso-inverse; funUncurry-restrict-inputs) module Change = Setup 𝒯 M ℱ module Compatible = Setup 𝒯 M ℱ abstract funUncurryIso-comp : {X C D : CAT} {f g h : MAP X (Fun C D)} (β : g =₁ h) (α : f =₁ g) → (funUncurryIso (β ∙ α)) =₂ (funUncurryIso β ∙ funUncurryIso α) funUncurryIso-comp = Original.funUncurryIso-comp funUncurryIso-inverse : {X C D : CAT} {f g : MAP X (Fun C D)} (α : f =₁ g) → (funUncurryIso (α ⁻¹)) =₂ ((funUncurryIso α) ⁻¹) funUncurryIso-inverse = Change.funUncurryIso-inverse funUncurry-restrict-inputs : {Y X C D : CAT} {f g : MAP X (Fun C D)} (α : f =₁ g) (σ : MAP Y X) → (funUncurry-restrict g σ ∙ funUncurryIso (α ▷ σ)) =₂ ((funUncurryIso α ▷ productMap σ (id C)) ∙ funUncurry-restrict f σ) funUncurry-restrict-inputs = Compatible.funUncurry-restrict-inputs ```