Other Agda modules in this section (72)
- BaseChange.BaseChangeFamilyProjection
- BaseChange.BaseChangeNativePoints
- BaseChange.BaseChangeSubstitution
- BaseChange.BeckChevalley
- BaseChange.BeckChevalleyCones
- BaseChange.BeckChevalleyDomain
- BaseChange.BeckChevalleyEvaluation
- BaseChange.BeckChevalleyFamilies
- BaseChange.BeckChevalleyMapping
- BaseChange.BeckChevalleyUncurrying
- BaseChange.DependentProductSourceTransport
- BaseChange.DependentProductTargetTransport
- BaseChange.EvaluatedBaseChange
- BaseChange.ProductBaseChangeFamilies
- ConstantFamilyEvaluation
- ConstantFamilyUniversalProperty
- Currying.ActedConeRestriction
- Currying.ChangedConeAction
- Currying.ConeRestrictionTriangles
- Currying.ConstantBaseFunctoriality
- Currying.CurryingPostcomposition
- Currying.DependentUncurryingFamilies
- Currying.EvaluatedPullbackTargets
- Currying.EvaluatedRelativeExponentialLaw
- Currying.FamilyProjection
- Currying.ParameterizedConeComparison
- Currying.ParameterizedPullbackPasting
- Currying.PointParameterProjection
- Currying.PointPullbackCone
- Currying.PointRestrictionOverBase
- Currying.PointRestrictionSquare
- Currying.ProjectedRelativeEvaluation
- Currying.PullbackTargetFamilies
- Currying.RelativeCurrying
- Currying.RelativeEvaluationFamilies
- Currying.RelativeTransposition
- Currying.SourceChangeFamilies
- Currying.TargetChangeIdentifications
- Currying.UncurriedFamilyProjection
- Currying.UncurriedFamilySubstitution
- Currying.UncurriedParameterComparison
- Currying.UncurriedTriangleComposition
- DependentProductAction
- DependentProductActionLaws
- DependentProductEmbeddings
- DependentProductUniqueness
- DependentProducts
- DependentProductsBaseChange
- ExponentiabilityCriterion
- ExponentiableFunctors
- InternalFunctorCalculus.ConstantFamilyInternalFunctors
- InternalFunctorCalculus.ConstantFamilyNativeEvaluation
- InternalFunctorCalculus.ConstantFamilyReassociation
- InternalFunctorCalculus.InternalEvaluation
- InternalFunctorCalculus.InternalProductFamily
- InternalFunctorCalculus.RelativeInternalFunctors
- InternalFunctorFibers
- InternalFunctorSections
- InternalFunctors
- InternalFunctorsBaseChange
- ProductCalculus.DependentProductActionIdentifications
- ProductCalculus.FunctorCategoryUncurrying
- ProductCalculus.ProductDependentProducts
- ProductCalculus.ProductDependentUncurrying
- ProductCalculus.ProductEvaluationComposition
- ProductCalculus.ProductEvaluationFamilies
- ProductCalculus.ProductFamilyProjection
- ProductCalculus.ProductFamilyReassociation
- ProductCalculus.ProductParameterCones
- ProductCalculus.ReassociatedProductLifting
- SectionsOfDependentProducts
- TerminalExponentiability
Complete compiler-highlighted source. Follow a symbol to its declaration.
# Pullback targets and change of base The two iterated pullbacks defining the base change of an internal functor category have the same universal property. Paste each into a pullback over the original base. The comparison retains the projection to the new source category, hence is an equivalence over that category. ```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 Pullbacks module SCT.VolumeI.Chapter03.Section05.BaseChange.PullbackTargetsBaseChange {c m a : Level} (𝒯 : Theory c m a) (M : Mapping.MappingAnimae 𝒯) (ℱ : Categories.FunctorCategories 𝒯 M) (P : Pullbacks.PullbackStructure 𝒯) where open import SCT.VolumeI.Chapter01.Section05.Setup 𝒯 M open Pullbacks.PullbackStructure P open import SCT.VolumeI.Chapter01.Section06.PullbackSquares 𝒯 P open import SCT.VolumeI.Chapter01.Section06.ConeCalculus.ConeSymmetry 𝒯 using (coneSwap) open import SCT.VolumeI.Chapter01.Section06.PullbackSymmetry 𝒯 P using (pullback-swap) open import SCT.VolumeI.Chapter01.Section06.ConeCalculus.ConePasting 𝒯 using (module PasteCones) open import SCT.VolumeI.Chapter01.Section06.PastingLemma 𝒯 P using (module Pasting) open import SCT.VolumeI.Chapter01.Section06.ConeCalculus.ConeArrowChange 𝒯 using (changeLeft) open import SCT.VolumeI.Chapter01.Section06.PullbackArrowChange 𝒯 P using (module ChangeLeft) open import SCT.VolumeI.Chapter03.RelativeCategories.Functors 𝒯 M ℱ P module Targets {C D S T : CAT} (p : MAP C S) (q : MAP D S) (t : MAP T S) where C′ = Pullback p t D′ = Pullback q t h : MAP C′ C h = pullback₁ p′ : MAP C′ T p′ = pullback₂ q′ : MAP D′ T q′ = pullback₂ f : MAP (Pullback q p) C f = pullback₂ old = Pullback f h new = Pullback q′ p′ old-projection : MAP old C′ old-projection = pullback₂ new-projection : MAP new C′ new-projection = pullback₂ old-right = coneSwap (pullbackCone q p) old-inner = coneSwap (pullbackCone f h) old-flat = PasteCones.flatten h p old-right old-inner new-right = coneSwap (pullbackCone q t) new-inner = coneSwap (pullbackCone q′ p′) new-pasted = PasteCones.flatten p′ t new-right new-inner change : (t ∘ p′) =₁ (p ∘ h) change = (pullbackMatch {f = p} {t}) ⁻¹ new-flat = changeLeft change new-pasted abstract old-flat-isPullback : IsPullback old-flat old-flat-isPullback = Pasting.paste-isPullback h p q old-right (pullback-swap (pullbackCone q p) (pullbackCone-isPullback q p)) old-inner (pullback-swap (pullbackCone f h) (pullbackCone-isPullback f h)) new-flat-isPullback : IsPullback new-flat new-flat-isPullback = ChangeLeft.preserve change q new-pasted (Pasting.paste-isPullback p′ t q new-right (pullback-swap (pullbackCone q t) (pullbackCone-isPullback q t)) new-inner (pullback-swap (pullbackCone q′ p′) (pullbackCone-isPullback q′ p′))) module Universal = UniversalCone old-flat old-flat-isPullback forward : FunctorOver new-projection old-projection forward = record { lift = Universal.factor new-flat ; comparison = ConeIso.leftIso (Universal.factor-β new-flat) } abstract forward-isEquiv : IsEquiv (FunctorLift.lift forward) forward-isEquiv = pullback-comparison new-flat old-flat (FunctorLift.lift forward) (Universal.factor-β new-flat) new-flat-isPullback old-flat-isPullback ```