Documentation

Mathlib.CategoryTheory.Shift.Pullback

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.

def CategoryTheory.PullbackShift (C : Type u_1) [CategoryTheory.Category.{u_4, u_1} C] {A : Type u_2} {B : Type u_3} [AddMonoid A] [AddMonoid B] :
(A →+ B)[inst : CategoryTheory.HasShift C B] → Type u_1

The category PullbackShift C φ is equipped with a shift such that for all a, the shift functor by a is shiftFunctor C (φ a).

Equations
Instances For

    The shift on PullbackShift C φ is obtained by precomposing the shift on C with the monoidal functor Discrete.addMonoidalFunctor φ : Discrete A ⥤ Discrete B.

    Equations

    When b = φ a, this is the canonical isomorphism shiftFunctor (PullbackShift C φ) a ≅ shiftFunctor C b.

    Equations
    Instances For
      theorem CategoryTheory.pullbackShiftFunctorAdd'_inv_app {C : Type u_1} [CategoryTheory.Category.{u_4, u_1} C] {A : Type u_2} {B : Type u_3} [AddMonoid A] [AddMonoid B] (φ : A →+ B) [CategoryTheory.HasShift C B] (X : CategoryTheory.PullbackShift C φ) (a₁ : A) (a₂ : A) (a₃ : A) (h : a₁ + a₂ = a₃) (b₁ : B) (b₂ : B) (b₃ : B) (h₁ : b₁ = φ a₁) (h₂ : b₂ = φ a₂) (h₃ : b₃ = φ a₃) :
      (CategoryTheory.shiftFunctorAdd' (CategoryTheory.PullbackShift C φ) a₁ a₂ a₃ h).inv.app X = CategoryTheory.CategoryStruct.comp ((CategoryTheory.shiftFunctor (CategoryTheory.PullbackShift C φ) a₂).toPrefunctor.map ((CategoryTheory.pullbackShiftIso C φ a₁ b₁ h₁).hom.app X)) (CategoryTheory.CategoryStruct.comp ((CategoryTheory.pullbackShiftIso C φ a₂ b₂ h₂).hom.app ((CategoryTheory.shiftFunctor C b₁).toPrefunctor.obj X)) (CategoryTheory.CategoryStruct.comp ((CategoryTheory.shiftFunctorAdd' C b₁ b₂ b₃ (_ : b₁ + b₂ = b₃)).inv.app X) ((CategoryTheory.pullbackShiftIso C φ a₃ b₃ h₃).inv.app X)))
      theorem CategoryTheory.pullbackShiftFunctorAdd'_hom_app {C : Type u_1} [CategoryTheory.Category.{u_4, u_1} C] {A : Type u_2} {B : Type u_3} [AddMonoid A] [AddMonoid B] (φ : A →+ B) [CategoryTheory.HasShift C B] (X : CategoryTheory.PullbackShift C φ) (a₁ : A) (a₂ : A) (a₃ : A) (h : a₁ + a₂ = a₃) (b₁ : B) (b₂ : B) (b₃ : B) (h₁ : b₁ = φ a₁) (h₂ : b₂ = φ a₂) (h₃ : b₃ = φ a₃) :
      (CategoryTheory.shiftFunctorAdd' (CategoryTheory.PullbackShift C φ) a₁ a₂ a₃ h).hom.app X = CategoryTheory.CategoryStruct.comp ((CategoryTheory.pullbackShiftIso C φ a₃ b₃ h₃).hom.app X) (CategoryTheory.CategoryStruct.comp ((CategoryTheory.shiftFunctorAdd' C b₁ b₂ b₃ (_ : b₁ + b₂ = b₃)).hom.app X) (CategoryTheory.CategoryStruct.comp ((CategoryTheory.pullbackShiftIso C φ a₂ b₂ h₂).inv.app ((CategoryTheory.shiftFunctor C b₁).toPrefunctor.obj X)) ((CategoryTheory.shiftFunctor (CategoryTheory.PullbackShift C φ) a₂).toPrefunctor.map ((CategoryTheory.pullbackShiftIso C φ a₁ b₁ h₁).inv.app X))))