The pullback of a shift by a monoid morphism #
Given a shift by a monoid B
on a category C
and a monoid morphism φ : A →+ B
,
we define a shift by A
on a category PullbackShift C φ
which is a type synonym for C
.
If F : C ⥤ D
is a functor between categories equipped with shifts by B
, we define
a type synonym PullbackShift.functor F φ
for F
. When F
has a CommShift
structure
by B
, we define a pulled back CommShift
structure by A
on PullbackShift.functor F φ
.
Similarly,if τ
is a natural transformation between functors F,G : C ⥤ D
, we define
a type synonym
PullbackShift.natTrans τ φ : PullbackShift.functor F φ ⟶ PullbackShift.functor G φ
.
When τ
has a CommShift
structure by B
(i.e. is compatible with CommShift
structures
on F
and G
), we define a pulled back CommShift
structure by A
on
PullbackShift.natTrans τ φ
.
Finally, if we have an adjunction F ⊣ G
(with G : D ⥤ C
), we define a type synonym
PullbackShift.adjunction adj φ : PullbackShift.functor F φ ⊣ PullbackShift.functor G φ
and we show that, if adj
compatible with CommShift
structures
on F
and G
, then PullbackShift.adjunction adj φ
iis also compatible with the pulled back
CommShift
structures.
The category PullbackShift C φ
is equipped with a shift such that for all a
,
the shift functor by a
is shiftFunctor C (φ a)
.
Equations
- CategoryTheory.PullbackShift C x✝ = C
Instances For
Equations
The shift on PullbackShift C φ
is obtained by precomposing the shift on C
with
the monoidal functor Discrete.addMonoidalFunctor φ : Discrete A ⥤ Discrete B
.
Equations
- CategoryTheory.instHasShiftPullbackShift C φ = { shift := (CategoryTheory.Discrete.addMonoidalFunctor φ).comp (CategoryTheory.shiftMonoidalFunctor C B), shiftMonoidal := inferInstance }
Equations
When b = φ a
, this is the canonical
isomorphism shiftFunctor (PullbackShift C φ) a ≅ shiftFunctor C b
.
Equations
- CategoryTheory.pullbackShiftIso C φ a b h = CategoryTheory.eqToIso ⋯
Instances For
The functor F
, seen as a functor from PullbackShift C φ
to PullbackShift D φ
.
Then a CommShift B
instance on F
will define a CommShift A
instance on
PullbackShift.functor F φ
, and we won't have to juggle with two CommShift
instances
on F
.
Equations
Instances For
The natural transformation τ
, seen as a natural transformation from PullbackShift.functor F φ
to PullbackShift.functor G φ
. Then a CommShift B
instance on τ
will define a CommShift A
instance on PullbackShift.natTrans τ φ
, and we won't have to juggle with two CommShift
instances on τ
.
Equations
Instances For
If F : C ⥤ D
commutes with the shifts on C
and D
, then PullbackShift.functor F φ
commutes with their pullbacks by an additive map φ
.
Equations
- One or more equations did not get rendered due to their size.
The natural isomorphism between the identity of PullbackShift C φ
and the
pullback of the identity of C
.
Equations
Instances For
This expresses the compatibility between two CommShift
structures by A
on (synonyms of)
𝟭 C
: the canonical CommShift
structure on 𝟭 (PullbackShift C φ)
, and the CommShift
structure on PullbackShift.functor (𝟭 C) φ
(i.e the pullback of the canonical CommShift
structure on 𝟭 C
).
The natural isomorphism between the pullback of F ⋙ G
and the
composition of the pullbacks of F
and G
.
Equations
Instances For
The adjunction adj
, seen as an adjunction between PullbackShift.functor F φ
and PullbackShift.functor G φ
.
Equations
- One or more equations did not get rendered due to their size.
Instances For
If an adjunction F ⊣ G
is compatible with CommShift
structures on F
and G
, then
it is also compatible with the pulled back CommShift
structures by an additive map
φ : B →+ A
.