category_theory.abelian.functor_category
⟷
Mathlib.CategoryTheory.Abelian.FunctorCategory
The following section lists changes to this file in mathlib3 and mathlib4 that occured after the initial port. Most recent changes are shown first. Hovering over a commit will show all commits associated with the same mathlib3 commit.
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(last sync)
mathlib commit https://github.com/leanprover-community/mathlib/commit/ce64cd319bb6b3e82f31c2d38e79080d377be451
@@ -3,10 +3,10 @@ Copyright (c) 2022 Scott Morrison. All rights reserved.
Released under Apache 2.0 license as described in the file LICENSE.
Authors: Scott Morrison
-/
-import Mathbin.CategoryTheory.Abelian.Basic
-import Mathbin.CategoryTheory.Preadditive.FunctorCategory
-import Mathbin.CategoryTheory.Limits.Shapes.FunctorCategory
-import Mathbin.CategoryTheory.Limits.Preserves.Shapes.Kernels
+import CategoryTheory.Abelian.Basic
+import CategoryTheory.Preadditive.FunctorCategory
+import CategoryTheory.Limits.Shapes.FunctorCategory
+import CategoryTheory.Limits.Preserves.Shapes.Kernels
#align_import category_theory.abelian.functor_category from "leanprover-community/mathlib"@"25a9423c6b2c8626e91c688bfd6c1d0a986a3e6e"
mathlib commit https://github.com/leanprover-community/mathlib/commit/8ea5598db6caeddde6cb734aa179cc2408dbd345
@@ -2,17 +2,14 @@
Copyright (c) 2022 Scott Morrison. All rights reserved.
Released under Apache 2.0 license as described in the file LICENSE.
Authors: Scott Morrison
-
-! This file was ported from Lean 3 source module category_theory.abelian.functor_category
-! leanprover-community/mathlib commit 25a9423c6b2c8626e91c688bfd6c1d0a986a3e6e
-! Please do not edit these lines, except to modify the commit id
-! if you have ported upstream changes.
-/
import Mathbin.CategoryTheory.Abelian.Basic
import Mathbin.CategoryTheory.Preadditive.FunctorCategory
import Mathbin.CategoryTheory.Limits.Shapes.FunctorCategory
import Mathbin.CategoryTheory.Limits.Preserves.Shapes.Kernels
+#align_import category_theory.abelian.functor_category from "leanprover-community/mathlib"@"25a9423c6b2c8626e91c688bfd6c1d0a986a3e6e"
+
/-!
# If `D` is abelian, then the functor category `C ⥤ D` is also abelian.
mathlib commit https://github.com/leanprover-community/mathlib/commit/9fb8964792b4237dac6200193a0d533f1b3f7423
@@ -42,6 +42,7 @@ namespace FunctorCategory
variable {F G : C ⥤ D} (α : F ⟶ G) (X : C)
+#print CategoryTheory.Abelian.FunctorCategory.coimageObjIso /-
/-- The abelian coimage in a functor category can be calculated componentwise. -/
@[simps]
def coimageObjIso : (Abelian.coimage α).obj X ≅ Abelian.coimage (α.app X) :=
@@ -52,7 +53,9 @@ def coimageObjIso : (Abelian.coimage α).obj X ≅ Abelian.coimage (α.app X) :=
simp only [category.comp_id]
exact (kernel_comparison_comp_ι _ ((evaluation C D).obj X)).symm)
#align category_theory.abelian.functor_category.coimage_obj_iso CategoryTheory.Abelian.FunctorCategory.coimageObjIso
+-/
+#print CategoryTheory.Abelian.FunctorCategory.imageObjIso /-
/-- The abelian image in a functor category can be calculated componentwise. -/
@[simps]
def imageObjIso : (Abelian.image α).obj X ≅ Abelian.image (α.app X) :=
@@ -65,7 +68,9 @@ def imageObjIso : (Abelian.image α).obj X ≅ Abelian.image (α.app X) :=
simp only [category.id_comp, category.comp_id]
exact (π_comp_cokernel_comparison _ ((evaluation C D).obj X)).symm)
#align category_theory.abelian.functor_category.image_obj_iso CategoryTheory.Abelian.FunctorCategory.imageObjIso
+-/
+#print CategoryTheory.Abelian.FunctorCategory.coimageImageComparison_app /-
theorem coimageImageComparison_app :
coimageImageComparison (α.app X) =
(coimage_obj_iso α X).inv ≫ (coimageImageComparison α).app X ≫ (image_obj_iso α X).Hom :=
@@ -80,7 +85,9 @@ theorem coimageImageComparison_app :
simp only [← functor.map_comp]
simp only [coimage_image_factorisation, evaluation_obj_map]
#align category_theory.abelian.functor_category.coimage_image_comparison_app CategoryTheory.Abelian.FunctorCategory.coimageImageComparison_app
+-/
+#print CategoryTheory.Abelian.FunctorCategory.coimageImageComparison_app' /-
theorem coimageImageComparison_app' :
(coimageImageComparison α).app X =
(coimage_obj_iso α X).Hom ≫ coimageImageComparison (α.app X) ≫ (image_obj_iso α X).inv :=
@@ -88,19 +95,24 @@ theorem coimageImageComparison_app' :
simp only [coimage_image_comparison_app, iso.hom_inv_id_assoc, iso.hom_inv_id, category.assoc,
category.comp_id]
#align category_theory.abelian.functor_category.coimage_image_comparison_app' CategoryTheory.Abelian.FunctorCategory.coimageImageComparison_app'
+-/
+#print CategoryTheory.Abelian.FunctorCategory.functor_category_isIso_coimageImageComparison /-
instance functor_category_isIso_coimageImageComparison : IsIso (Abelian.coimageImageComparison α) :=
by
have : ∀ X : C, is_iso ((abelian.coimage_image_comparison α).app X) := by intros;
rw [coimage_image_comparison_app']; infer_instance
apply nat_iso.is_iso_of_is_iso_app
#align category_theory.abelian.functor_category.functor_category_is_iso_coimage_image_comparison CategoryTheory.Abelian.FunctorCategory.functor_category_isIso_coimageImageComparison
+-/
end FunctorCategory
+#print CategoryTheory.Abelian.functorCategoryAbelian /-
noncomputable instance functorCategoryAbelian : Abelian (C ⥤ D) :=
Abelian.ofCoimageImageComparisonIsIso
#align category_theory.abelian.functor_category_abelian CategoryTheory.Abelian.functorCategoryAbelian
+-/
end
mathlib commit https://github.com/leanprover-community/mathlib/commit/cca40788df1b8755d5baf17ab2f27dacc2e17acb
@@ -91,7 +91,7 @@ theorem coimageImageComparison_app' :
instance functor_category_isIso_coimageImageComparison : IsIso (Abelian.coimageImageComparison α) :=
by
- have : ∀ X : C, is_iso ((abelian.coimage_image_comparison α).app X) := by intros ;
+ have : ∀ X : C, is_iso ((abelian.coimage_image_comparison α).app X) := by intros;
rw [coimage_image_comparison_app']; infer_instance
apply nat_iso.is_iso_of_is_iso_app
#align category_theory.abelian.functor_category.functor_category_is_iso_coimage_image_comparison CategoryTheory.Abelian.FunctorCategory.functor_category_isIso_coimageImageComparison
mathlib commit https://github.com/leanprover-community/mathlib/commit/917c3c072e487b3cccdbfeff17e75b40e45f66cb
@@ -42,12 +42,6 @@ namespace FunctorCategory
variable {F G : C ⥤ D} (α : F ⟶ G) (X : C)
-/- warning: category_theory.abelian.functor_category.coimage_obj_iso -> CategoryTheory.Abelian.FunctorCategory.coimageObjIso is a dubious translation:
-lean 3 declaration is
- forall {C : Type.{max u3 u4}} [_inst_1 : CategoryTheory.Category.{u3, max u3 u4} C] {D : Type.{u2}} [_inst_2 : CategoryTheory.Category.{max u1 u3 u4, u2} D] [_inst_3 : CategoryTheory.Abelian.{max u1 u3 u4, u2} D _inst_2] {F : CategoryTheory.Functor.{u3, max u1 u3 u4, max u3 u4, u2} C _inst_1 D _inst_2} {G : CategoryTheory.Functor.{u3, max u1 u3 u4, max u3 u4, u2} C _inst_1 D _inst_2} (α : Quiver.Hom.{succ (max u1 u3 u4), max u3 (max u1 u3 u4) (max u3 u4) u2} (CategoryTheory.Functor.{u3, max u1 u3 u4, max u3 u4, u2} C _inst_1 D _inst_2) (CategoryTheory.CategoryStruct.toQuiver.{max u1 u3 u4, max u3 (max u1 u3 u4) (max u3 u4) u2} (CategoryTheory.Functor.{u3, max u1 u3 u4, max u3 u4, u2} C _inst_1 D _inst_2) (CategoryTheory.Category.toCategoryStruct.{max u1 u3 u4, max u3 (max u1 u3 u4) (max u3 u4) u2} (CategoryTheory.Functor.{u3, max u1 u3 u4, max u3 u4, u2} C _inst_1 D _inst_2) (CategoryTheory.Functor.category.{u3, max u1 u3 u4, max u3 u4, u2} C _inst_1 D _inst_2))) F G) (X : C), CategoryTheory.Iso.{max u1 u3 u4, u2} D _inst_2 (CategoryTheory.Functor.obj.{u3, max u1 u3 u4, max u3 u4, u2} C _inst_1 D _inst_2 (CategoryTheory.Abelian.coimage.{max u1 u3 u4, max u3 (max u1 u3 u4) (max u3 u4) u2} (CategoryTheory.Functor.{u3, max u1 u3 u4, max u3 u4, u2} C _inst_1 D _inst_2) (CategoryTheory.Functor.category.{u3, max u1 u3 u4, max u3 u4, u2} C _inst_1 D _inst_2) (CategoryTheory.Limits.CategoryTheory.Functor.hasZeroMorphisms.{u3, max u3 u4, max u1 u3 u4, u2} C _inst_1 D _inst_2 (CategoryTheory.Preadditive.preadditiveHasZeroMorphisms.{max u1 u3 u4, u2} D _inst_2 (CategoryTheory.Abelian.toPreadditive.{max u1 u3 u4, u2} D _inst_2 _inst_3))) (CategoryTheory.Abelian.FunctorCategory.coimageObjIso._proof_1.{u4, u3, u2, u1} C _inst_1 D _inst_2 _inst_3) (CategoryTheory.Abelian.FunctorCategory.coimageObjIso._proof_2.{u4, u3, u2, u1} C _inst_1 D _inst_2 _inst_3) F G α) X) (CategoryTheory.Abelian.coimage.{max u1 u3 u4, u2} D _inst_2 (CategoryTheory.Preadditive.preadditiveHasZeroMorphisms.{max u1 u3 u4, u2} D _inst_2 (CategoryTheory.Abelian.toPreadditive.{max u1 u3 u4, u2} D _inst_2 _inst_3)) (CategoryTheory.Abelian.hasKernels.{max u1 u3 u4, u2} D _inst_2 _inst_3) (CategoryTheory.Abelian.hasCokernels.{max u1 u3 u4, u2} D _inst_2 _inst_3) (CategoryTheory.Functor.obj.{u3, max u1 u3 u4, max u3 u4, u2} C _inst_1 D _inst_2 F X) (CategoryTheory.Functor.obj.{u3, max u1 u3 u4, max u3 u4, u2} C _inst_1 D _inst_2 G X) (CategoryTheory.NatTrans.app.{u3, max u1 u3 u4, max u3 u4, u2} C _inst_1 D _inst_2 F G α X))
-but is expected to have type
- forall {C : Type.{u4}} [_inst_1 : CategoryTheory.Category.{u3, u4} C] {D : Type.{u2}} [_inst_2 : CategoryTheory.Category.{u1, u2} D] [_inst_3 : CategoryTheory.Abelian.{u1, u2} D _inst_2] {F : CategoryTheory.Functor.{u3, u1, u4, u2} C _inst_1 D _inst_2} {G : CategoryTheory.Functor.{u3, u1, u4, u2} C _inst_1 D _inst_2} (α : Quiver.Hom.{max (succ u4) (succ u1), max (max (max u4 u3) u2) u1} (CategoryTheory.Functor.{u3, u1, u4, u2} C _inst_1 D _inst_2) (CategoryTheory.CategoryStruct.toQuiver.{max u4 u1, max (max (max u4 u3) u2) u1} (CategoryTheory.Functor.{u3, u1, u4, u2} C _inst_1 D _inst_2) (CategoryTheory.Category.toCategoryStruct.{max u4 u1, max (max (max u4 u3) u2) u1} (CategoryTheory.Functor.{u3, u1, u4, u2} C _inst_1 D _inst_2) (CategoryTheory.Functor.category.{u3, u1, u4, u2} C _inst_1 D _inst_2))) F G) (X : C), CategoryTheory.Iso.{u1, u2} D _inst_2 (Prefunctor.obj.{succ u3, succ u1, u4, u2} C (CategoryTheory.CategoryStruct.toQuiver.{u3, u4} C (CategoryTheory.Category.toCategoryStruct.{u3, u4} C _inst_1)) D (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} D (CategoryTheory.Category.toCategoryStruct.{u1, u2} D _inst_2)) (CategoryTheory.Functor.toPrefunctor.{u3, u1, u4, u2} C _inst_1 D _inst_2 (CategoryTheory.Abelian.coimage.{max u4 u1, max (max (max u4 u3) u2) u1} (CategoryTheory.Functor.{u3, u1, u4, u2} C _inst_1 D _inst_2) (CategoryTheory.Functor.category.{u3, u1, u4, u2} C _inst_1 D _inst_2) (CategoryTheory.Limits.instHasZeroMorphismsFunctorCategory.{u3, u4, u1, u2} C _inst_1 D _inst_2 (CategoryTheory.Preadditive.preadditiveHasZeroMorphisms.{u1, u2} D _inst_2 (CategoryTheory.Abelian.toPreadditive.{u1, u2} D _inst_2 _inst_3))) (CategoryTheory.Limits.hasKernels_of_hasEqualizers.{max u4 u1, max (max (max u4 u3) u2) u1} (CategoryTheory.Functor.{u3, u1, u4, u2} C _inst_1 D _inst_2) (CategoryTheory.Functor.category.{u3, u1, u4, u2} C _inst_1 D _inst_2) (CategoryTheory.Limits.instHasZeroMorphismsFunctorCategory.{u3, u4, u1, u2} C _inst_1 D _inst_2 (CategoryTheory.Preadditive.preadditiveHasZeroMorphisms.{u1, u2} D _inst_2 (CategoryTheory.Abelian.toPreadditive.{u1, u2} D _inst_2 _inst_3))) (CategoryTheory.Limits.functorCategoryHasLimitsOfShape.{0, u3, 0, u4, u1, u2} D _inst_2 CategoryTheory.Limits.WalkingParallelPair CategoryTheory.Limits.walkingParallelPairHomCategory C _inst_1 (CategoryTheory.Abelian.hasEqualizers.{u1, u2} D _inst_2 _inst_3))) (CategoryTheory.Limits.hasCokernels_of_hasCoequalizers.{max u4 u1, max (max (max u4 u3) u2) u1} (CategoryTheory.Functor.{u3, u1, u4, u2} C _inst_1 D _inst_2) (CategoryTheory.Functor.category.{u3, u1, u4, u2} C _inst_1 D _inst_2) (CategoryTheory.Limits.instHasZeroMorphismsFunctorCategory.{u3, u4, u1, u2} C _inst_1 D _inst_2 (CategoryTheory.Preadditive.preadditiveHasZeroMorphisms.{u1, u2} D _inst_2 (CategoryTheory.Abelian.toPreadditive.{u1, u2} D _inst_2 _inst_3))) (CategoryTheory.Limits.functorCategoryHasColimitsOfShape.{0, u3, 0, u4, u1, u2} D _inst_2 CategoryTheory.Limits.WalkingParallelPair CategoryTheory.Limits.walkingParallelPairHomCategory C _inst_1 (CategoryTheory.Abelian.hasCoequalizers.{u1, u2} D _inst_2 _inst_3))) F G α)) X) (CategoryTheory.Abelian.coimage.{u1, u2} D _inst_2 (CategoryTheory.Preadditive.preadditiveHasZeroMorphisms.{u1, u2} D _inst_2 (CategoryTheory.Abelian.toPreadditive.{u1, u2} D _inst_2 _inst_3)) (CategoryTheory.Limits.hasKernels_of_hasEqualizers.{u1, u2} D _inst_2 (CategoryTheory.Preadditive.preadditiveHasZeroMorphisms.{u1, u2} D _inst_2 (CategoryTheory.Abelian.toPreadditive.{u1, u2} D _inst_2 _inst_3)) (CategoryTheory.Abelian.hasEqualizers.{u1, u2} D _inst_2 _inst_3)) (CategoryTheory.Limits.hasCokernels_of_hasCoequalizers.{u1, u2} D _inst_2 (CategoryTheory.Preadditive.preadditiveHasZeroMorphisms.{u1, u2} D _inst_2 (CategoryTheory.Abelian.toPreadditive.{u1, u2} D _inst_2 _inst_3)) (CategoryTheory.Abelian.hasCoequalizers.{u1, u2} D _inst_2 _inst_3)) (Prefunctor.obj.{succ u3, succ u1, u4, u2} C (CategoryTheory.CategoryStruct.toQuiver.{u3, u4} C (CategoryTheory.Category.toCategoryStruct.{u3, u4} C _inst_1)) D (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} D (CategoryTheory.Category.toCategoryStruct.{u1, u2} D _inst_2)) (CategoryTheory.Functor.toPrefunctor.{u3, u1, u4, u2} C _inst_1 D _inst_2 F) X) (Prefunctor.obj.{succ u3, succ u1, u4, u2} C (CategoryTheory.CategoryStruct.toQuiver.{u3, u4} C (CategoryTheory.Category.toCategoryStruct.{u3, u4} C _inst_1)) D (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} D (CategoryTheory.Category.toCategoryStruct.{u1, u2} D _inst_2)) (CategoryTheory.Functor.toPrefunctor.{u3, u1, u4, u2} C _inst_1 D _inst_2 G) X) (CategoryTheory.NatTrans.app.{u3, u1, u4, u2} C _inst_1 D _inst_2 F G α X))
-Case conversion may be inaccurate. Consider using '#align category_theory.abelian.functor_category.coimage_obj_iso CategoryTheory.Abelian.FunctorCategory.coimageObjIsoₓ'. -/
/-- The abelian coimage in a functor category can be calculated componentwise. -/
@[simps]
def coimageObjIso : (Abelian.coimage α).obj X ≅ Abelian.coimage (α.app X) :=
@@ -59,12 +53,6 @@ def coimageObjIso : (Abelian.coimage α).obj X ≅ Abelian.coimage (α.app X) :=
exact (kernel_comparison_comp_ι _ ((evaluation C D).obj X)).symm)
#align category_theory.abelian.functor_category.coimage_obj_iso CategoryTheory.Abelian.FunctorCategory.coimageObjIso
-/- warning: category_theory.abelian.functor_category.image_obj_iso -> CategoryTheory.Abelian.FunctorCategory.imageObjIso is a dubious translation:
-lean 3 declaration is
- forall {C : Type.{max u3 u4}} [_inst_1 : CategoryTheory.Category.{u3, max u3 u4} C] {D : Type.{u2}} [_inst_2 : CategoryTheory.Category.{max u1 u3 u4, u2} D] [_inst_3 : CategoryTheory.Abelian.{max u1 u3 u4, u2} D _inst_2] {F : CategoryTheory.Functor.{u3, max u1 u3 u4, max u3 u4, u2} C _inst_1 D _inst_2} {G : CategoryTheory.Functor.{u3, max u1 u3 u4, max u3 u4, u2} C _inst_1 D _inst_2} (α : Quiver.Hom.{succ (max u1 u3 u4), max u3 (max u1 u3 u4) (max u3 u4) u2} (CategoryTheory.Functor.{u3, max u1 u3 u4, max u3 u4, u2} C _inst_1 D _inst_2) (CategoryTheory.CategoryStruct.toQuiver.{max u1 u3 u4, max u3 (max u1 u3 u4) (max u3 u4) u2} (CategoryTheory.Functor.{u3, max u1 u3 u4, max u3 u4, u2} C _inst_1 D _inst_2) (CategoryTheory.Category.toCategoryStruct.{max u1 u3 u4, max u3 (max u1 u3 u4) (max u3 u4) u2} (CategoryTheory.Functor.{u3, max u1 u3 u4, max u3 u4, u2} C _inst_1 D _inst_2) (CategoryTheory.Functor.category.{u3, max u1 u3 u4, max u3 u4, u2} C _inst_1 D _inst_2))) F G) (X : C), CategoryTheory.Iso.{max u1 u3 u4, u2} D _inst_2 (CategoryTheory.Functor.obj.{u3, max u1 u3 u4, max u3 u4, u2} C _inst_1 D _inst_2 (CategoryTheory.Abelian.image.{max u1 u3 u4, max u3 (max u1 u3 u4) (max u3 u4) u2} (CategoryTheory.Functor.{u3, max u1 u3 u4, max u3 u4, u2} C _inst_1 D _inst_2) (CategoryTheory.Functor.category.{u3, max u1 u3 u4, max u3 u4, u2} C _inst_1 D _inst_2) (CategoryTheory.Limits.CategoryTheory.Functor.hasZeroMorphisms.{u3, max u3 u4, max u1 u3 u4, u2} C _inst_1 D _inst_2 (CategoryTheory.Preadditive.preadditiveHasZeroMorphisms.{max u1 u3 u4, u2} D _inst_2 (CategoryTheory.Abelian.toPreadditive.{max u1 u3 u4, u2} D _inst_2 _inst_3))) (CategoryTheory.Abelian.FunctorCategory.imageObjIso._proof_1.{u4, u3, u2, u1} C _inst_1 D _inst_2 _inst_3) (CategoryTheory.Abelian.FunctorCategory.imageObjIso._proof_2.{u4, u3, u2, u1} C _inst_1 D _inst_2 _inst_3) F G α) X) (CategoryTheory.Abelian.image.{max u1 u3 u4, u2} D _inst_2 (CategoryTheory.Preadditive.preadditiveHasZeroMorphisms.{max u1 u3 u4, u2} D _inst_2 (CategoryTheory.Abelian.toPreadditive.{max u1 u3 u4, u2} D _inst_2 _inst_3)) (CategoryTheory.Abelian.hasKernels.{max u1 u3 u4, u2} D _inst_2 _inst_3) (CategoryTheory.Abelian.hasCokernels.{max u1 u3 u4, u2} D _inst_2 _inst_3) (CategoryTheory.Functor.obj.{u3, max u1 u3 u4, max u3 u4, u2} C _inst_1 D _inst_2 F X) (CategoryTheory.Functor.obj.{u3, max u1 u3 u4, max u3 u4, u2} C _inst_1 D _inst_2 G X) (CategoryTheory.NatTrans.app.{u3, max u1 u3 u4, max u3 u4, u2} C _inst_1 D _inst_2 F G α X))
-but is expected to have type
- forall {C : Type.{u4}} [_inst_1 : CategoryTheory.Category.{u3, u4} C] {D : Type.{u2}} [_inst_2 : CategoryTheory.Category.{u1, u2} D] [_inst_3 : CategoryTheory.Abelian.{u1, u2} D _inst_2] {F : CategoryTheory.Functor.{u3, u1, u4, u2} C _inst_1 D _inst_2} {G : CategoryTheory.Functor.{u3, u1, u4, u2} C _inst_1 D _inst_2} (α : Quiver.Hom.{max (succ u4) (succ u1), max (max (max u4 u3) u2) u1} (CategoryTheory.Functor.{u3, u1, u4, u2} C _inst_1 D _inst_2) (CategoryTheory.CategoryStruct.toQuiver.{max u4 u1, max (max (max u4 u3) u2) u1} (CategoryTheory.Functor.{u3, u1, u4, u2} C _inst_1 D _inst_2) (CategoryTheory.Category.toCategoryStruct.{max u4 u1, max (max (max u4 u3) u2) u1} (CategoryTheory.Functor.{u3, u1, u4, u2} C _inst_1 D _inst_2) (CategoryTheory.Functor.category.{u3, u1, u4, u2} C _inst_1 D _inst_2))) F G) (X : C), CategoryTheory.Iso.{u1, u2} D _inst_2 (Prefunctor.obj.{succ u3, succ u1, u4, u2} C (CategoryTheory.CategoryStruct.toQuiver.{u3, u4} C (CategoryTheory.Category.toCategoryStruct.{u3, u4} C _inst_1)) D (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} D (CategoryTheory.Category.toCategoryStruct.{u1, u2} D _inst_2)) (CategoryTheory.Functor.toPrefunctor.{u3, u1, u4, u2} C _inst_1 D _inst_2 (CategoryTheory.Abelian.image.{max u4 u1, max (max (max u4 u3) u2) u1} (CategoryTheory.Functor.{u3, u1, u4, u2} C _inst_1 D _inst_2) (CategoryTheory.Functor.category.{u3, u1, u4, u2} C _inst_1 D _inst_2) (CategoryTheory.Limits.instHasZeroMorphismsFunctorCategory.{u3, u4, u1, u2} C _inst_1 D _inst_2 (CategoryTheory.Preadditive.preadditiveHasZeroMorphisms.{u1, u2} D _inst_2 (CategoryTheory.Abelian.toPreadditive.{u1, u2} D _inst_2 _inst_3))) (CategoryTheory.Limits.hasKernels_of_hasEqualizers.{max u4 u1, max (max (max u4 u3) u2) u1} (CategoryTheory.Functor.{u3, u1, u4, u2} C _inst_1 D _inst_2) (CategoryTheory.Functor.category.{u3, u1, u4, u2} C _inst_1 D _inst_2) (CategoryTheory.Limits.instHasZeroMorphismsFunctorCategory.{u3, u4, u1, u2} C _inst_1 D _inst_2 (CategoryTheory.Preadditive.preadditiveHasZeroMorphisms.{u1, u2} D _inst_2 (CategoryTheory.Abelian.toPreadditive.{u1, u2} D _inst_2 _inst_3))) (CategoryTheory.Limits.functorCategoryHasLimitsOfShape.{0, u3, 0, u4, u1, u2} D _inst_2 CategoryTheory.Limits.WalkingParallelPair CategoryTheory.Limits.walkingParallelPairHomCategory C _inst_1 (CategoryTheory.Abelian.hasEqualizers.{u1, u2} D _inst_2 _inst_3))) (CategoryTheory.Limits.hasCokernels_of_hasCoequalizers.{max u4 u1, max (max (max u4 u3) u2) u1} (CategoryTheory.Functor.{u3, u1, u4, u2} C _inst_1 D _inst_2) (CategoryTheory.Functor.category.{u3, u1, u4, u2} C _inst_1 D _inst_2) (CategoryTheory.Limits.instHasZeroMorphismsFunctorCategory.{u3, u4, u1, u2} C _inst_1 D _inst_2 (CategoryTheory.Preadditive.preadditiveHasZeroMorphisms.{u1, u2} D _inst_2 (CategoryTheory.Abelian.toPreadditive.{u1, u2} D _inst_2 _inst_3))) (CategoryTheory.Limits.functorCategoryHasColimitsOfShape.{0, u3, 0, u4, u1, u2} D _inst_2 CategoryTheory.Limits.WalkingParallelPair CategoryTheory.Limits.walkingParallelPairHomCategory C _inst_1 (CategoryTheory.Abelian.hasCoequalizers.{u1, u2} D _inst_2 _inst_3))) F G α)) X) (CategoryTheory.Abelian.image.{u1, u2} D _inst_2 (CategoryTheory.Preadditive.preadditiveHasZeroMorphisms.{u1, u2} D _inst_2 (CategoryTheory.Abelian.toPreadditive.{u1, u2} D _inst_2 _inst_3)) (CategoryTheory.Limits.hasKernels_of_hasEqualizers.{u1, u2} D _inst_2 (CategoryTheory.Preadditive.preadditiveHasZeroMorphisms.{u1, u2} D _inst_2 (CategoryTheory.Abelian.toPreadditive.{u1, u2} D _inst_2 _inst_3)) (CategoryTheory.Abelian.hasEqualizers.{u1, u2} D _inst_2 _inst_3)) (CategoryTheory.Limits.hasCokernels_of_hasCoequalizers.{u1, u2} D _inst_2 (CategoryTheory.Preadditive.preadditiveHasZeroMorphisms.{u1, u2} D _inst_2 (CategoryTheory.Abelian.toPreadditive.{u1, u2} D _inst_2 _inst_3)) (CategoryTheory.Abelian.hasCoequalizers.{u1, u2} D _inst_2 _inst_3)) (Prefunctor.obj.{succ u3, succ u1, u4, u2} C (CategoryTheory.CategoryStruct.toQuiver.{u3, u4} C (CategoryTheory.Category.toCategoryStruct.{u3, u4} C _inst_1)) D (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} D (CategoryTheory.Category.toCategoryStruct.{u1, u2} D _inst_2)) (CategoryTheory.Functor.toPrefunctor.{u3, u1, u4, u2} C _inst_1 D _inst_2 F) X) (Prefunctor.obj.{succ u3, succ u1, u4, u2} C (CategoryTheory.CategoryStruct.toQuiver.{u3, u4} C (CategoryTheory.Category.toCategoryStruct.{u3, u4} C _inst_1)) D (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} D (CategoryTheory.Category.toCategoryStruct.{u1, u2} D _inst_2)) (CategoryTheory.Functor.toPrefunctor.{u3, u1, u4, u2} C _inst_1 D _inst_2 G) X) (CategoryTheory.NatTrans.app.{u3, u1, u4, u2} C _inst_1 D _inst_2 F G α X))
-Case conversion may be inaccurate. Consider using '#align category_theory.abelian.functor_category.image_obj_iso CategoryTheory.Abelian.FunctorCategory.imageObjIsoₓ'. -/
/-- The abelian image in a functor category can be calculated componentwise. -/
@[simps]
def imageObjIso : (Abelian.image α).obj X ≅ Abelian.image (α.app X) :=
@@ -78,9 +66,6 @@ def imageObjIso : (Abelian.image α).obj X ≅ Abelian.image (α.app X) :=
exact (π_comp_cokernel_comparison _ ((evaluation C D).obj X)).symm)
#align category_theory.abelian.functor_category.image_obj_iso CategoryTheory.Abelian.FunctorCategory.imageObjIso
-/- warning: category_theory.abelian.functor_category.coimage_image_comparison_app -> CategoryTheory.Abelian.FunctorCategory.coimageImageComparison_app is a dubious translation:
-<too large>
-Case conversion may be inaccurate. Consider using '#align category_theory.abelian.functor_category.coimage_image_comparison_app CategoryTheory.Abelian.FunctorCategory.coimageImageComparison_appₓ'. -/
theorem coimageImageComparison_app :
coimageImageComparison (α.app X) =
(coimage_obj_iso α X).inv ≫ (coimageImageComparison α).app X ≫ (image_obj_iso α X).Hom :=
@@ -96,9 +81,6 @@ theorem coimageImageComparison_app :
simp only [coimage_image_factorisation, evaluation_obj_map]
#align category_theory.abelian.functor_category.coimage_image_comparison_app CategoryTheory.Abelian.FunctorCategory.coimageImageComparison_app
-/- warning: category_theory.abelian.functor_category.coimage_image_comparison_app' -> CategoryTheory.Abelian.FunctorCategory.coimageImageComparison_app' is a dubious translation:
-<too large>
-Case conversion may be inaccurate. Consider using '#align category_theory.abelian.functor_category.coimage_image_comparison_app' CategoryTheory.Abelian.FunctorCategory.coimageImageComparison_app'ₓ'. -/
theorem coimageImageComparison_app' :
(coimageImageComparison α).app X =
(coimage_obj_iso α X).Hom ≫ coimageImageComparison (α.app X) ≫ (image_obj_iso α X).inv :=
@@ -107,9 +89,6 @@ theorem coimageImageComparison_app' :
category.comp_id]
#align category_theory.abelian.functor_category.coimage_image_comparison_app' CategoryTheory.Abelian.FunctorCategory.coimageImageComparison_app'
-/- warning: category_theory.abelian.functor_category.functor_category_is_iso_coimage_image_comparison -> CategoryTheory.Abelian.FunctorCategory.functor_category_isIso_coimageImageComparison is a dubious translation:
-<too large>
-Case conversion may be inaccurate. Consider using '#align category_theory.abelian.functor_category.functor_category_is_iso_coimage_image_comparison CategoryTheory.Abelian.FunctorCategory.functor_category_isIso_coimageImageComparisonₓ'. -/
instance functor_category_isIso_coimageImageComparison : IsIso (Abelian.coimageImageComparison α) :=
by
have : ∀ X : C, is_iso ((abelian.coimage_image_comparison α).app X) := by intros ;
@@ -119,12 +98,6 @@ instance functor_category_isIso_coimageImageComparison : IsIso (Abelian.coimageI
end FunctorCategory
-/- warning: category_theory.abelian.functor_category_abelian -> CategoryTheory.Abelian.functorCategoryAbelian is a dubious translation:
-lean 3 declaration is
- forall {C : Type.{max u3 u4}} [_inst_1 : CategoryTheory.Category.{u3, max u3 u4} C] {D : Type.{u2}} [_inst_2 : CategoryTheory.Category.{max u1 u3 u4, u2} D] [_inst_3 : CategoryTheory.Abelian.{max u1 u3 u4, u2} D _inst_2], CategoryTheory.Abelian.{max u1 u3 u4, max u3 (max u1 u3 u4) (max u3 u4) u2} (CategoryTheory.Functor.{u3, max u1 u3 u4, max u3 u4, u2} C _inst_1 D _inst_2) (CategoryTheory.Functor.category.{u3, max u1 u3 u4, max u3 u4, u2} C _inst_1 D _inst_2)
-but is expected to have type
- forall {C : Type.{u4}} [_inst_1 : CategoryTheory.Category.{u3, u4} C] {D : Type.{u2}} [_inst_2 : CategoryTheory.Category.{u1, u2} D] [_inst_3 : CategoryTheory.Abelian.{u1, u2} D _inst_2], CategoryTheory.Abelian.{max u4 u1, max (max (max u2 u4) u1) u3} (CategoryTheory.Functor.{u3, u1, u4, u2} C _inst_1 D _inst_2) (CategoryTheory.Functor.category.{u3, u1, u4, u2} C _inst_1 D _inst_2)
-Case conversion may be inaccurate. Consider using '#align category_theory.abelian.functor_category_abelian CategoryTheory.Abelian.functorCategoryAbelianₓ'. -/
noncomputable instance functorCategoryAbelian : Abelian (C ⥤ D) :=
Abelian.ofCoimageImageComparisonIsIso
#align category_theory.abelian.functor_category_abelian CategoryTheory.Abelian.functorCategoryAbelian
mathlib commit https://github.com/leanprover-community/mathlib/commit/917c3c072e487b3cccdbfeff17e75b40e45f66cb
@@ -112,11 +112,8 @@ theorem coimageImageComparison_app' :
Case conversion may be inaccurate. Consider using '#align category_theory.abelian.functor_category.functor_category_is_iso_coimage_image_comparison CategoryTheory.Abelian.FunctorCategory.functor_category_isIso_coimageImageComparisonₓ'. -/
instance functor_category_isIso_coimageImageComparison : IsIso (Abelian.coimageImageComparison α) :=
by
- have : ∀ X : C, is_iso ((abelian.coimage_image_comparison α).app X) :=
- by
- intros
- rw [coimage_image_comparison_app']
- infer_instance
+ have : ∀ X : C, is_iso ((abelian.coimage_image_comparison α).app X) := by intros ;
+ rw [coimage_image_comparison_app']; infer_instance
apply nat_iso.is_iso_of_is_iso_app
#align category_theory.abelian.functor_category.functor_category_is_iso_coimage_image_comparison CategoryTheory.Abelian.FunctorCategory.functor_category_isIso_coimageImageComparison
mathlib commit https://github.com/leanprover-community/mathlib/commit/917c3c072e487b3cccdbfeff17e75b40e45f66cb
@@ -79,10 +79,7 @@ def imageObjIso : (Abelian.image α).obj X ≅ Abelian.image (α.app X) :=
#align category_theory.abelian.functor_category.image_obj_iso CategoryTheory.Abelian.FunctorCategory.imageObjIso
/- warning: category_theory.abelian.functor_category.coimage_image_comparison_app -> CategoryTheory.Abelian.FunctorCategory.coimageImageComparison_app is a dubious translation:
-lean 3 declaration is
- forall {C : Type.{max u3 u4}} [_inst_1 : CategoryTheory.Category.{u3, max u3 u4} C] {D : Type.{u2}} [_inst_2 : CategoryTheory.Category.{max u1 u3 u4, u2} D] [_inst_3 : CategoryTheory.Abelian.{max u1 u3 u4, u2} D _inst_2] {F : CategoryTheory.Functor.{u3, max u1 u3 u4, max u3 u4, u2} C _inst_1 D _inst_2} {G : CategoryTheory.Functor.{u3, max u1 u3 u4, max u3 u4, u2} C _inst_1 D _inst_2} (α : Quiver.Hom.{succ (max u1 u3 u4), max u3 (max u1 u3 u4) (max u3 u4) u2} (CategoryTheory.Functor.{u3, max u1 u3 u4, max u3 u4, u2} C _inst_1 D _inst_2) (CategoryTheory.CategoryStruct.toQuiver.{max u1 u3 u4, max u3 (max u1 u3 u4) (max u3 u4) u2} (CategoryTheory.Functor.{u3, max u1 u3 u4, max u3 u4, u2} C _inst_1 D _inst_2) (CategoryTheory.Category.toCategoryStruct.{max u1 u3 u4, max u3 (max u1 u3 u4) (max u3 u4) u2} (CategoryTheory.Functor.{u3, max u1 u3 u4, max u3 u4, u2} C _inst_1 D _inst_2) (CategoryTheory.Functor.category.{u3, max u1 u3 u4, max u3 u4, u2} C _inst_1 D _inst_2))) F G) (X : C), Eq.{succ (max u1 u3 u4)} (Quiver.Hom.{succ (max u1 u3 u4), u2} D (CategoryTheory.CategoryStruct.toQuiver.{max u1 u3 u4, u2} D (CategoryTheory.Category.toCategoryStruct.{max u1 u3 u4, u2} D _inst_2)) (CategoryTheory.Abelian.coimage.{max u1 u3 u4, u2} D _inst_2 (CategoryTheory.Preadditive.preadditiveHasZeroMorphisms.{max u1 u3 u4, u2} D _inst_2 (CategoryTheory.Abelian.toPreadditive.{max u1 u3 u4, u2} D _inst_2 _inst_3)) (CategoryTheory.Abelian.hasKernels.{max u1 u3 u4, u2} D _inst_2 _inst_3) (CategoryTheory.Abelian.hasCokernels.{max u1 u3 u4, u2} D _inst_2 _inst_3) (CategoryTheory.Functor.obj.{u3, max u1 u3 u4, max u3 u4, u2} C _inst_1 D _inst_2 F X) (CategoryTheory.Functor.obj.{u3, max u1 u3 u4, max u3 u4, u2} C _inst_1 D _inst_2 G X) (CategoryTheory.NatTrans.app.{u3, max u1 u3 u4, max u3 u4, u2} C _inst_1 D _inst_2 F G α X)) (CategoryTheory.Abelian.image.{max u1 u3 u4, u2} D _inst_2 (CategoryTheory.Preadditive.preadditiveHasZeroMorphisms.{max u1 u3 u4, u2} D _inst_2 (CategoryTheory.Abelian.toPreadditive.{max u1 u3 u4, u2} D _inst_2 _inst_3)) (CategoryTheory.Abelian.hasKernels.{max u1 u3 u4, u2} D _inst_2 _inst_3) (CategoryTheory.Abelian.hasCokernels.{max u1 u3 u4, u2} D _inst_2 _inst_3) (CategoryTheory.Functor.obj.{u3, max u1 u3 u4, max u3 u4, u2} C _inst_1 D _inst_2 F X) (CategoryTheory.Functor.obj.{u3, max u1 u3 u4, max u3 u4, u2} C _inst_1 D _inst_2 G X) (CategoryTheory.NatTrans.app.{u3, max u1 u3 u4, max u3 u4, u2} C _inst_1 D _inst_2 F G α X))) (CategoryTheory.Abelian.coimageImageComparison.{max u1 u3 u4, u2} D _inst_2 (CategoryTheory.Preadditive.preadditiveHasZeroMorphisms.{max u1 u3 u4, u2} D _inst_2 (CategoryTheory.Abelian.toPreadditive.{max u1 u3 u4, u2} D _inst_2 _inst_3)) (CategoryTheory.Abelian.hasKernels.{max u1 u3 u4, u2} D _inst_2 _inst_3) (CategoryTheory.Abelian.hasCokernels.{max u1 u3 u4, u2} D _inst_2 _inst_3) (CategoryTheory.Functor.obj.{u3, max u1 u3 u4, max u3 u4, u2} C _inst_1 D _inst_2 F X) (CategoryTheory.Functor.obj.{u3, max u1 u3 u4, max u3 u4, u2} C _inst_1 D _inst_2 G X) (CategoryTheory.NatTrans.app.{u3, max u1 u3 u4, max u3 u4, u2} C _inst_1 D _inst_2 F G α X)) (CategoryTheory.CategoryStruct.comp.{max u1 u3 u4, u2} D (CategoryTheory.Category.toCategoryStruct.{max u1 u3 u4, u2} D _inst_2) (CategoryTheory.Abelian.coimage.{max u1 u3 u4, u2} D _inst_2 (CategoryTheory.Preadditive.preadditiveHasZeroMorphisms.{max u1 u3 u4, u2} D _inst_2 (CategoryTheory.Abelian.toPreadditive.{max u1 u3 u4, u2} D _inst_2 _inst_3)) (CategoryTheory.Abelian.hasKernels.{max u1 u3 u4, u2} D _inst_2 _inst_3) (CategoryTheory.Abelian.hasCokernels.{max u1 u3 u4, u2} D _inst_2 _inst_3) (CategoryTheory.Functor.obj.{u3, max u1 u3 u4, max u3 u4, u2} C _inst_1 D _inst_2 F X) (CategoryTheory.Functor.obj.{u3, max u1 u3 u4, max u3 u4, u2} C _inst_1 D _inst_2 G X) (CategoryTheory.NatTrans.app.{u3, max u1 u3 u4, max u3 u4, u2} C _inst_1 D _inst_2 F G α X)) (CategoryTheory.Functor.obj.{u3, max u1 u3 u4, max u3 u4, u2} C _inst_1 D _inst_2 (CategoryTheory.Abelian.coimage.{max u1 u3 u4, max u3 (max u1 u3 u4) (max u3 u4) u2} (CategoryTheory.Functor.{u3, max u1 u3 u4, max u3 u4, u2} C _inst_1 D _inst_2) (CategoryTheory.Functor.category.{u3, max u1 u3 u4, max u3 u4, u2} C _inst_1 D _inst_2) (CategoryTheory.Limits.CategoryTheory.Functor.hasZeroMorphisms.{u3, max u3 u4, max u1 u3 u4, u2} C _inst_1 D _inst_2 (CategoryTheory.Preadditive.preadditiveHasZeroMorphisms.{max u1 u3 u4, u2} D _inst_2 (CategoryTheory.Abelian.toPreadditive.{max u1 u3 u4, u2} D _inst_2 _inst_3))) (CategoryTheory.Abelian.FunctorCategory.coimageObjIso._proof_1.{u4, u3, u2, u1} C _inst_1 D _inst_2 _inst_3) (CategoryTheory.Abelian.FunctorCategory.coimageObjIso._proof_2.{u4, u3, u2, u1} C _inst_1 D _inst_2 _inst_3) F G α) X) (CategoryTheory.Abelian.image.{max u1 u3 u4, u2} D _inst_2 (CategoryTheory.Preadditive.preadditiveHasZeroMorphisms.{max u1 u3 u4, u2} D _inst_2 (CategoryTheory.Abelian.toPreadditive.{max u1 u3 u4, u2} D _inst_2 _inst_3)) (CategoryTheory.Abelian.hasKernels.{max u1 u3 u4, u2} D _inst_2 _inst_3) (CategoryTheory.Abelian.hasCokernels.{max u1 u3 u4, u2} D _inst_2 _inst_3) (CategoryTheory.Functor.obj.{u3, max u1 u3 u4, max u3 u4, u2} C _inst_1 D _inst_2 F X) (CategoryTheory.Functor.obj.{u3, max u1 u3 u4, max u3 u4, u2} C _inst_1 D _inst_2 G X) (CategoryTheory.NatTrans.app.{u3, max u1 u3 u4, max u3 u4, u2} C _inst_1 D _inst_2 F G α X)) (CategoryTheory.Iso.inv.{max u1 u3 u4, u2} D _inst_2 (CategoryTheory.Functor.obj.{u3, max u1 u3 u4, max u3 u4, u2} C _inst_1 D _inst_2 (CategoryTheory.Abelian.coimage.{max u1 u3 u4, max u3 (max u1 u3 u4) (max u3 u4) u2} (CategoryTheory.Functor.{u3, max u1 u3 u4, max u3 u4, u2} C _inst_1 D _inst_2) (CategoryTheory.Functor.category.{u3, max u1 u3 u4, max u3 u4, u2} C _inst_1 D _inst_2) (CategoryTheory.Limits.CategoryTheory.Functor.hasZeroMorphisms.{u3, max u3 u4, max u1 u3 u4, u2} C _inst_1 D _inst_2 (CategoryTheory.Preadditive.preadditiveHasZeroMorphisms.{max u1 u3 u4, u2} D _inst_2 (CategoryTheory.Abelian.toPreadditive.{max u1 u3 u4, u2} D _inst_2 _inst_3))) (CategoryTheory.Abelian.FunctorCategory.coimageObjIso._proof_1.{u4, u3, u2, u1} C _inst_1 D _inst_2 _inst_3) (CategoryTheory.Abelian.FunctorCategory.coimageObjIso._proof_2.{u4, u3, u2, u1} C _inst_1 D _inst_2 _inst_3) F G α) X) (CategoryTheory.Abelian.coimage.{max u1 u3 u4, u2} D _inst_2 (CategoryTheory.Preadditive.preadditiveHasZeroMorphisms.{max u1 u3 u4, u2} D _inst_2 (CategoryTheory.Abelian.toPreadditive.{max u1 u3 u4, u2} D _inst_2 _inst_3)) (CategoryTheory.Abelian.hasKernels.{max u1 u3 u4, u2} D _inst_2 _inst_3) (CategoryTheory.Abelian.hasCokernels.{max u1 u3 u4, u2} D _inst_2 _inst_3) (CategoryTheory.Functor.obj.{u3, max u1 u3 u4, max u3 u4, u2} C _inst_1 D _inst_2 F X) (CategoryTheory.Functor.obj.{u3, max u1 u3 u4, max u3 u4, u2} C _inst_1 D _inst_2 G X) (CategoryTheory.NatTrans.app.{u3, max u1 u3 u4, max u3 u4, u2} C _inst_1 D _inst_2 F G α X)) (CategoryTheory.Abelian.FunctorCategory.coimageObjIso.{u1, u2, u3, u4} C _inst_1 D _inst_2 _inst_3 F G α X)) (CategoryTheory.CategoryStruct.comp.{max u1 u3 u4, u2} D (CategoryTheory.Category.toCategoryStruct.{max u1 u3 u4, u2} D _inst_2) (CategoryTheory.Functor.obj.{u3, max u1 u3 u4, max u3 u4, u2} C _inst_1 D _inst_2 (CategoryTheory.Abelian.coimage.{max u1 u3 u4, max u3 (max u1 u3 u4) (max u3 u4) u2} (CategoryTheory.Functor.{u3, max u1 u3 u4, max u3 u4, u2} C _inst_1 D _inst_2) (CategoryTheory.Functor.category.{u3, max u1 u3 u4, max u3 u4, u2} C _inst_1 D _inst_2) (CategoryTheory.Limits.CategoryTheory.Functor.hasZeroMorphisms.{u3, max u3 u4, max u1 u3 u4, u2} C _inst_1 D _inst_2 (CategoryTheory.Preadditive.preadditiveHasZeroMorphisms.{max u1 u3 u4, u2} D _inst_2 (CategoryTheory.Abelian.toPreadditive.{max u1 u3 u4, u2} D _inst_2 _inst_3))) (CategoryTheory.Abelian.FunctorCategory.coimageObjIso._proof_1.{u4, u3, u2, u1} C _inst_1 D _inst_2 _inst_3) (CategoryTheory.Abelian.FunctorCategory.coimageObjIso._proof_2.{u4, u3, u2, u1} C _inst_1 D _inst_2 _inst_3) F G α) X) (CategoryTheory.Functor.obj.{u3, max u1 u3 u4, max u3 u4, u2} C _inst_1 D _inst_2 (CategoryTheory.Abelian.image.{max u1 u3 u4, max u3 (max u1 u3 u4) (max u3 u4) u2} (CategoryTheory.Functor.{u3, max u1 u3 u4, max u3 u4, u2} C _inst_1 D _inst_2) (CategoryTheory.Functor.category.{u3, max u1 u3 u4, max u3 u4, u2} C _inst_1 D _inst_2) (CategoryTheory.Limits.CategoryTheory.Functor.hasZeroMorphisms.{u3, max u3 u4, max u1 u3 u4, u2} C _inst_1 D _inst_2 (CategoryTheory.Preadditive.preadditiveHasZeroMorphisms.{max u1 u3 u4, u2} D _inst_2 (CategoryTheory.Abelian.toPreadditive.{max u1 u3 u4, u2} D _inst_2 _inst_3))) (CategoryTheory.Abelian.FunctorCategory.coimageObjIso._proof_1.{u4, u3, u2, u1} C _inst_1 D _inst_2 _inst_3) (CategoryTheory.Abelian.FunctorCategory.coimageObjIso._proof_2.{u4, u3, u2, u1} C _inst_1 D _inst_2 _inst_3) F G α) X) (CategoryTheory.Abelian.image.{max u1 u3 u4, u2} D _inst_2 (CategoryTheory.Preadditive.preadditiveHasZeroMorphisms.{max u1 u3 u4, u2} D _inst_2 (CategoryTheory.Abelian.toPreadditive.{max u1 u3 u4, u2} D _inst_2 _inst_3)) (CategoryTheory.Abelian.hasKernels.{max u1 u3 u4, u2} D _inst_2 _inst_3) (CategoryTheory.Abelian.hasCokernels.{max u1 u3 u4, u2} D _inst_2 _inst_3) (CategoryTheory.Functor.obj.{u3, max u1 u3 u4, max u3 u4, u2} C _inst_1 D _inst_2 F X) (CategoryTheory.Functor.obj.{u3, max u1 u3 u4, max u3 u4, u2} C _inst_1 D _inst_2 G X) (CategoryTheory.NatTrans.app.{u3, max u1 u3 u4, max u3 u4, u2} C _inst_1 D _inst_2 F G α X)) (CategoryTheory.NatTrans.app.{u3, max u1 u3 u4, max u3 u4, u2} C _inst_1 D _inst_2 (CategoryTheory.Abelian.coimage.{max u1 u3 u4, max u3 (max u1 u3 u4) (max u3 u4) u2} (CategoryTheory.Functor.{u3, max u1 u3 u4, max u3 u4, u2} C _inst_1 D _inst_2) (CategoryTheory.Functor.category.{u3, max u1 u3 u4, max u3 u4, u2} C _inst_1 D _inst_2) (CategoryTheory.Limits.CategoryTheory.Functor.hasZeroMorphisms.{u3, max u3 u4, max u1 u3 u4, u2} C _inst_1 D _inst_2 (CategoryTheory.Preadditive.preadditiveHasZeroMorphisms.{max u1 u3 u4, u2} D _inst_2 (CategoryTheory.Abelian.toPreadditive.{max u1 u3 u4, u2} D _inst_2 _inst_3))) (CategoryTheory.Abelian.FunctorCategory.coimageObjIso._proof_1.{u4, u3, u2, u1} C _inst_1 D _inst_2 _inst_3) (CategoryTheory.Abelian.FunctorCategory.coimageObjIso._proof_2.{u4, u3, u2, u1} C _inst_1 D _inst_2 _inst_3) F G α) (CategoryTheory.Abelian.image.{max u1 u3 u4, max u3 (max u1 u3 u4) (max u3 u4) u2} (CategoryTheory.Functor.{u3, max u1 u3 u4, max u3 u4, u2} C _inst_1 D _inst_2) (CategoryTheory.Functor.category.{u3, max u1 u3 u4, max u3 u4, u2} C _inst_1 D _inst_2) (CategoryTheory.Limits.CategoryTheory.Functor.hasZeroMorphisms.{u3, max u3 u4, max u1 u3 u4, u2} C _inst_1 D _inst_2 (CategoryTheory.Preadditive.preadditiveHasZeroMorphisms.{max u1 u3 u4, u2} D _inst_2 (CategoryTheory.Abelian.toPreadditive.{max u1 u3 u4, u2} D _inst_2 _inst_3))) (CategoryTheory.Abelian.FunctorCategory.coimageObjIso._proof_1.{u4, u3, u2, u1} C _inst_1 D _inst_2 _inst_3) (CategoryTheory.Abelian.FunctorCategory.coimageObjIso._proof_2.{u4, u3, u2, u1} C _inst_1 D _inst_2 _inst_3) F G α) (CategoryTheory.Abelian.coimageImageComparison.{max u1 u3 u4, max u3 (max u1 u3 u4) (max u3 u4) u2} (CategoryTheory.Functor.{u3, max u1 u3 u4, max u3 u4, u2} C _inst_1 D _inst_2) (CategoryTheory.Functor.category.{u3, max u1 u3 u4, max u3 u4, u2} C _inst_1 D _inst_2) (CategoryTheory.Limits.CategoryTheory.Functor.hasZeroMorphisms.{u3, max u3 u4, max u1 u3 u4, u2} C _inst_1 D _inst_2 (CategoryTheory.Preadditive.preadditiveHasZeroMorphisms.{max u1 u3 u4, u2} D _inst_2 (CategoryTheory.Abelian.toPreadditive.{max u1 u3 u4, u2} D _inst_2 _inst_3))) (CategoryTheory.Abelian.FunctorCategory.coimageObjIso._proof_1.{u4, u3, u2, u1} C _inst_1 D _inst_2 _inst_3) (CategoryTheory.Abelian.FunctorCategory.coimageObjIso._proof_2.{u4, u3, u2, u1} C _inst_1 D _inst_2 _inst_3) F G α) X) (CategoryTheory.Iso.hom.{max u1 u3 u4, u2} D _inst_2 (CategoryTheory.Functor.obj.{u3, max u1 u3 u4, max u3 u4, u2} C _inst_1 D _inst_2 (CategoryTheory.Abelian.image.{max u1 u3 u4, max u3 (max u1 u3 u4) (max u3 u4) u2} (CategoryTheory.Functor.{u3, max u1 u3 u4, max u3 u4, u2} C _inst_1 D _inst_2) (CategoryTheory.Functor.category.{u3, max u1 u3 u4, max u3 u4, u2} C _inst_1 D _inst_2) (CategoryTheory.Limits.CategoryTheory.Functor.hasZeroMorphisms.{u3, max u3 u4, max u1 u3 u4, u2} C _inst_1 D _inst_2 (CategoryTheory.Preadditive.preadditiveHasZeroMorphisms.{max u1 u3 u4, u2} D _inst_2 (CategoryTheory.Abelian.toPreadditive.{max u1 u3 u4, u2} D _inst_2 _inst_3))) (CategoryTheory.Abelian.FunctorCategory.imageObjIso._proof_1.{u4, u3, u2, u1} C _inst_1 D _inst_2 _inst_3) (CategoryTheory.Abelian.FunctorCategory.imageObjIso._proof_2.{u4, u3, u2, u1} C _inst_1 D _inst_2 _inst_3) F G α) X) (CategoryTheory.Abelian.image.{max u1 u3 u4, u2} D _inst_2 (CategoryTheory.Preadditive.preadditiveHasZeroMorphisms.{max u1 u3 u4, u2} D _inst_2 (CategoryTheory.Abelian.toPreadditive.{max u1 u3 u4, u2} D _inst_2 _inst_3)) (CategoryTheory.Abelian.hasKernels.{max u1 u3 u4, u2} D _inst_2 _inst_3) (CategoryTheory.Abelian.hasCokernels.{max u1 u3 u4, u2} D _inst_2 _inst_3) (CategoryTheory.Functor.obj.{u3, max u1 u3 u4, max u3 u4, u2} C _inst_1 D _inst_2 F X) (CategoryTheory.Functor.obj.{u3, max u1 u3 u4, max u3 u4, u2} C _inst_1 D _inst_2 G X) (CategoryTheory.NatTrans.app.{u3, max u1 u3 u4, max u3 u4, u2} C _inst_1 D _inst_2 F G α X)) (CategoryTheory.Abelian.FunctorCategory.imageObjIso.{u1, u2, u3, u4} C _inst_1 D _inst_2 _inst_3 F G α X))))
-but is expected to have type
- forall {C : Type.{u4}} [_inst_1 : CategoryTheory.Category.{u3, u4} C] {D : Type.{u2}} [_inst_2 : CategoryTheory.Category.{u1, u2} D] [_inst_3 : CategoryTheory.Abelian.{u1, u2} D _inst_2] {F : CategoryTheory.Functor.{u3, u1, u4, u2} C _inst_1 D _inst_2} {G : CategoryTheory.Functor.{u3, u1, u4, u2} C _inst_1 D _inst_2} (α : Quiver.Hom.{max (succ u4) (succ u1), max (max (max u4 u3) u2) u1} (CategoryTheory.Functor.{u3, u1, u4, u2} C _inst_1 D _inst_2) (CategoryTheory.CategoryStruct.toQuiver.{max u4 u1, max (max (max u4 u3) u2) u1} (CategoryTheory.Functor.{u3, u1, u4, u2} C _inst_1 D _inst_2) (CategoryTheory.Category.toCategoryStruct.{max u4 u1, max (max (max u4 u3) u2) u1} (CategoryTheory.Functor.{u3, u1, u4, u2} C _inst_1 D _inst_2) (CategoryTheory.Functor.category.{u3, u1, u4, u2} C _inst_1 D _inst_2))) F G) (X : C), Eq.{succ u1} (Quiver.Hom.{succ u1, u2} D (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} D (CategoryTheory.Category.toCategoryStruct.{u1, u2} D _inst_2)) (CategoryTheory.Abelian.coimage.{u1, u2} D _inst_2 (CategoryTheory.Preadditive.preadditiveHasZeroMorphisms.{u1, u2} D _inst_2 (CategoryTheory.Abelian.toPreadditive.{u1, u2} D _inst_2 _inst_3)) (CategoryTheory.Limits.hasKernels_of_hasEqualizers.{u1, u2} D _inst_2 (CategoryTheory.Preadditive.preadditiveHasZeroMorphisms.{u1, u2} D _inst_2 (CategoryTheory.Abelian.toPreadditive.{u1, u2} D _inst_2 _inst_3)) (CategoryTheory.Abelian.hasEqualizers.{u1, u2} D _inst_2 _inst_3)) (CategoryTheory.Limits.hasCokernels_of_hasCoequalizers.{u1, u2} D _inst_2 (CategoryTheory.Preadditive.preadditiveHasZeroMorphisms.{u1, u2} D _inst_2 (CategoryTheory.Abelian.toPreadditive.{u1, u2} D _inst_2 _inst_3)) (CategoryTheory.Abelian.hasCoequalizers.{u1, u2} D _inst_2 _inst_3)) (Prefunctor.obj.{succ u3, succ u1, u4, u2} C (CategoryTheory.CategoryStruct.toQuiver.{u3, u4} C (CategoryTheory.Category.toCategoryStruct.{u3, u4} C _inst_1)) D (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} D (CategoryTheory.Category.toCategoryStruct.{u1, u2} D _inst_2)) (CategoryTheory.Functor.toPrefunctor.{u3, u1, u4, u2} C _inst_1 D _inst_2 F) X) (Prefunctor.obj.{succ u3, succ u1, u4, u2} C (CategoryTheory.CategoryStruct.toQuiver.{u3, u4} C (CategoryTheory.Category.toCategoryStruct.{u3, u4} C _inst_1)) D (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} D (CategoryTheory.Category.toCategoryStruct.{u1, u2} D _inst_2)) (CategoryTheory.Functor.toPrefunctor.{u3, u1, u4, u2} C _inst_1 D _inst_2 G) X) (CategoryTheory.NatTrans.app.{u3, u1, u4, u2} C _inst_1 D _inst_2 F G α X)) (CategoryTheory.Abelian.image.{u1, u2} D _inst_2 (CategoryTheory.Preadditive.preadditiveHasZeroMorphisms.{u1, u2} D _inst_2 (CategoryTheory.Abelian.toPreadditive.{u1, u2} D _inst_2 _inst_3)) (CategoryTheory.Limits.hasKernels_of_hasEqualizers.{u1, u2} D _inst_2 (CategoryTheory.Preadditive.preadditiveHasZeroMorphisms.{u1, u2} D _inst_2 (CategoryTheory.Abelian.toPreadditive.{u1, u2} D _inst_2 _inst_3)) (CategoryTheory.Abelian.hasEqualizers.{u1, u2} D _inst_2 _inst_3)) (CategoryTheory.Limits.hasCokernels_of_hasCoequalizers.{u1, u2} D _inst_2 (CategoryTheory.Preadditive.preadditiveHasZeroMorphisms.{u1, u2} D _inst_2 (CategoryTheory.Abelian.toPreadditive.{u1, u2} D _inst_2 _inst_3)) (CategoryTheory.Abelian.hasCoequalizers.{u1, u2} D _inst_2 _inst_3)) (Prefunctor.obj.{succ u3, succ u1, u4, u2} C (CategoryTheory.CategoryStruct.toQuiver.{u3, u4} C (CategoryTheory.Category.toCategoryStruct.{u3, u4} C _inst_1)) D (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} D (CategoryTheory.Category.toCategoryStruct.{u1, u2} D _inst_2)) (CategoryTheory.Functor.toPrefunctor.{u3, u1, u4, u2} C _inst_1 D _inst_2 F) X) (Prefunctor.obj.{succ u3, succ u1, u4, u2} C (CategoryTheory.CategoryStruct.toQuiver.{u3, u4} C (CategoryTheory.Category.toCategoryStruct.{u3, u4} C _inst_1)) D (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} D (CategoryTheory.Category.toCategoryStruct.{u1, u2} D _inst_2)) (CategoryTheory.Functor.toPrefunctor.{u3, u1, u4, u2} C _inst_1 D _inst_2 G) X) (CategoryTheory.NatTrans.app.{u3, u1, u4, u2} C _inst_1 D _inst_2 F G α X))) (CategoryTheory.Abelian.coimageImageComparison.{u1, u2} D _inst_2 (CategoryTheory.Preadditive.preadditiveHasZeroMorphisms.{u1, u2} D _inst_2 (CategoryTheory.Abelian.toPreadditive.{u1, u2} D _inst_2 _inst_3)) (CategoryTheory.Limits.hasKernels_of_hasEqualizers.{u1, u2} D _inst_2 (CategoryTheory.Preadditive.preadditiveHasZeroMorphisms.{u1, u2} D _inst_2 (CategoryTheory.Abelian.toPreadditive.{u1, u2} D _inst_2 _inst_3)) (CategoryTheory.Abelian.hasEqualizers.{u1, u2} D _inst_2 _inst_3)) (CategoryTheory.Limits.hasCokernels_of_hasCoequalizers.{u1, u2} D _inst_2 (CategoryTheory.Preadditive.preadditiveHasZeroMorphisms.{u1, u2} D _inst_2 (CategoryTheory.Abelian.toPreadditive.{u1, u2} D _inst_2 _inst_3)) (CategoryTheory.Abelian.hasCoequalizers.{u1, u2} D _inst_2 _inst_3)) (Prefunctor.obj.{succ u3, succ u1, u4, u2} C (CategoryTheory.CategoryStruct.toQuiver.{u3, u4} C (CategoryTheory.Category.toCategoryStruct.{u3, u4} C _inst_1)) D (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} D (CategoryTheory.Category.toCategoryStruct.{u1, u2} D _inst_2)) (CategoryTheory.Functor.toPrefunctor.{u3, u1, u4, u2} C _inst_1 D _inst_2 F) X) (Prefunctor.obj.{succ u3, succ u1, u4, u2} C (CategoryTheory.CategoryStruct.toQuiver.{u3, u4} C (CategoryTheory.Category.toCategoryStruct.{u3, u4} C _inst_1)) D (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} D (CategoryTheory.Category.toCategoryStruct.{u1, u2} D _inst_2)) (CategoryTheory.Functor.toPrefunctor.{u3, u1, u4, u2} C _inst_1 D _inst_2 G) X) (CategoryTheory.NatTrans.app.{u3, u1, u4, u2} C _inst_1 D _inst_2 F G α X)) (CategoryTheory.CategoryStruct.comp.{u1, u2} D (CategoryTheory.Category.toCategoryStruct.{u1, u2} D _inst_2) (CategoryTheory.Abelian.coimage.{u1, u2} D _inst_2 (CategoryTheory.Preadditive.preadditiveHasZeroMorphisms.{u1, u2} D _inst_2 (CategoryTheory.Abelian.toPreadditive.{u1, u2} D _inst_2 _inst_3)) (CategoryTheory.Limits.hasKernels_of_hasEqualizers.{u1, u2} D _inst_2 (CategoryTheory.Preadditive.preadditiveHasZeroMorphisms.{u1, u2} D _inst_2 (CategoryTheory.Abelian.toPreadditive.{u1, u2} D _inst_2 _inst_3)) (CategoryTheory.Abelian.hasEqualizers.{u1, u2} D _inst_2 _inst_3)) (CategoryTheory.Limits.hasCokernels_of_hasCoequalizers.{u1, u2} D _inst_2 (CategoryTheory.Preadditive.preadditiveHasZeroMorphisms.{u1, u2} D _inst_2 (CategoryTheory.Abelian.toPreadditive.{u1, u2} D _inst_2 _inst_3)) (CategoryTheory.Abelian.hasCoequalizers.{u1, u2} D _inst_2 _inst_3)) (Prefunctor.obj.{succ u3, succ u1, u4, u2} C (CategoryTheory.CategoryStruct.toQuiver.{u3, u4} C (CategoryTheory.Category.toCategoryStruct.{u3, u4} C _inst_1)) D (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} D (CategoryTheory.Category.toCategoryStruct.{u1, u2} D _inst_2)) (CategoryTheory.Functor.toPrefunctor.{u3, u1, u4, u2} C _inst_1 D _inst_2 F) X) (Prefunctor.obj.{succ u3, succ u1, u4, u2} C (CategoryTheory.CategoryStruct.toQuiver.{u3, u4} C (CategoryTheory.Category.toCategoryStruct.{u3, u4} C _inst_1)) D (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} D (CategoryTheory.Category.toCategoryStruct.{u1, u2} D _inst_2)) (CategoryTheory.Functor.toPrefunctor.{u3, u1, u4, u2} C _inst_1 D _inst_2 G) X) (CategoryTheory.NatTrans.app.{u3, u1, u4, u2} C _inst_1 D _inst_2 F G α X)) (Prefunctor.obj.{succ u3, succ u1, u4, u2} C (CategoryTheory.CategoryStruct.toQuiver.{u3, u4} C (CategoryTheory.Category.toCategoryStruct.{u3, u4} C _inst_1)) D (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} D (CategoryTheory.Category.toCategoryStruct.{u1, u2} D _inst_2)) (CategoryTheory.Functor.toPrefunctor.{u3, u1, u4, u2} C _inst_1 D _inst_2 (CategoryTheory.Abelian.coimage.{max u4 u1, max (max (max u4 u3) u2) u1} (CategoryTheory.Functor.{u3, u1, u4, u2} C _inst_1 D _inst_2) (CategoryTheory.Functor.category.{u3, u1, u4, u2} C _inst_1 D _inst_2) (CategoryTheory.Limits.instHasZeroMorphismsFunctorCategory.{u3, u4, u1, u2} C _inst_1 D _inst_2 (CategoryTheory.Preadditive.preadditiveHasZeroMorphisms.{u1, u2} D _inst_2 (CategoryTheory.Abelian.toPreadditive.{u1, u2} D _inst_2 _inst_3))) (CategoryTheory.Limits.hasKernels_of_hasEqualizers.{max u4 u1, max (max (max u4 u3) u2) u1} (CategoryTheory.Functor.{u3, u1, u4, u2} C _inst_1 D _inst_2) (CategoryTheory.Functor.category.{u3, u1, u4, u2} C _inst_1 D _inst_2) (CategoryTheory.Limits.instHasZeroMorphismsFunctorCategory.{u3, u4, u1, u2} C _inst_1 D _inst_2 (CategoryTheory.Preadditive.preadditiveHasZeroMorphisms.{u1, u2} D _inst_2 (CategoryTheory.Abelian.toPreadditive.{u1, u2} D _inst_2 _inst_3))) (CategoryTheory.Limits.functorCategoryHasLimitsOfShape.{0, u3, 0, u4, u1, u2} D _inst_2 CategoryTheory.Limits.WalkingParallelPair CategoryTheory.Limits.walkingParallelPairHomCategory C _inst_1 (CategoryTheory.Abelian.hasEqualizers.{u1, u2} D _inst_2 _inst_3))) (CategoryTheory.Limits.hasCokernels_of_hasCoequalizers.{max u4 u1, max (max (max u4 u3) u2) u1} (CategoryTheory.Functor.{u3, u1, u4, u2} C _inst_1 D _inst_2) (CategoryTheory.Functor.category.{u3, u1, u4, u2} C _inst_1 D _inst_2) (CategoryTheory.Limits.instHasZeroMorphismsFunctorCategory.{u3, u4, u1, u2} C _inst_1 D _inst_2 (CategoryTheory.Preadditive.preadditiveHasZeroMorphisms.{u1, u2} D _inst_2 (CategoryTheory.Abelian.toPreadditive.{u1, u2} D _inst_2 _inst_3))) (CategoryTheory.Limits.functorCategoryHasColimitsOfShape.{0, u3, 0, u4, u1, u2} D _inst_2 CategoryTheory.Limits.WalkingParallelPair CategoryTheory.Limits.walkingParallelPairHomCategory C _inst_1 (CategoryTheory.Abelian.hasCoequalizers.{u1, u2} D _inst_2 _inst_3))) F G α)) X) (CategoryTheory.Abelian.image.{u1, u2} D _inst_2 (CategoryTheory.Preadditive.preadditiveHasZeroMorphisms.{u1, u2} D _inst_2 (CategoryTheory.Abelian.toPreadditive.{u1, u2} D _inst_2 _inst_3)) (CategoryTheory.Limits.hasKernels_of_hasEqualizers.{u1, u2} D _inst_2 (CategoryTheory.Preadditive.preadditiveHasZeroMorphisms.{u1, u2} D _inst_2 (CategoryTheory.Abelian.toPreadditive.{u1, u2} D _inst_2 _inst_3)) (CategoryTheory.Abelian.hasEqualizers.{u1, u2} D _inst_2 _inst_3)) (CategoryTheory.Limits.hasCokernels_of_hasCoequalizers.{u1, u2} D _inst_2 (CategoryTheory.Preadditive.preadditiveHasZeroMorphisms.{u1, u2} D _inst_2 (CategoryTheory.Abelian.toPreadditive.{u1, u2} D _inst_2 _inst_3)) (CategoryTheory.Abelian.hasCoequalizers.{u1, u2} D _inst_2 _inst_3)) (Prefunctor.obj.{succ u3, succ u1, u4, u2} C (CategoryTheory.CategoryStruct.toQuiver.{u3, u4} C (CategoryTheory.Category.toCategoryStruct.{u3, u4} C _inst_1)) D (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} D (CategoryTheory.Category.toCategoryStruct.{u1, u2} D _inst_2)) (CategoryTheory.Functor.toPrefunctor.{u3, u1, u4, u2} C _inst_1 D _inst_2 F) X) (Prefunctor.obj.{succ u3, succ u1, u4, u2} C (CategoryTheory.CategoryStruct.toQuiver.{u3, u4} C (CategoryTheory.Category.toCategoryStruct.{u3, u4} C _inst_1)) D (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} D (CategoryTheory.Category.toCategoryStruct.{u1, u2} D _inst_2)) (CategoryTheory.Functor.toPrefunctor.{u3, u1, u4, u2} C _inst_1 D _inst_2 G) X) (CategoryTheory.NatTrans.app.{u3, u1, u4, u2} C _inst_1 D _inst_2 F G α X)) (CategoryTheory.Iso.inv.{u1, u2} D _inst_2 (Prefunctor.obj.{succ u3, succ u1, u4, u2} C (CategoryTheory.CategoryStruct.toQuiver.{u3, u4} C (CategoryTheory.Category.toCategoryStruct.{u3, u4} C _inst_1)) D (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} D (CategoryTheory.Category.toCategoryStruct.{u1, u2} D _inst_2)) (CategoryTheory.Functor.toPrefunctor.{u3, u1, u4, u2} C _inst_1 D _inst_2 (CategoryTheory.Abelian.coimage.{max u4 u1, max (max (max u4 u3) u2) u1} (CategoryTheory.Functor.{u3, u1, u4, u2} C _inst_1 D _inst_2) (CategoryTheory.Functor.category.{u3, u1, u4, u2} C _inst_1 D _inst_2) (CategoryTheory.Limits.instHasZeroMorphismsFunctorCategory.{u3, u4, u1, u2} C _inst_1 D _inst_2 (CategoryTheory.Preadditive.preadditiveHasZeroMorphisms.{u1, u2} D _inst_2 (CategoryTheory.Abelian.toPreadditive.{u1, u2} D _inst_2 _inst_3))) (CategoryTheory.Limits.hasKernels_of_hasEqualizers.{max u4 u1, max (max (max u4 u3) u2) u1} (CategoryTheory.Functor.{u3, u1, u4, u2} C _inst_1 D _inst_2) (CategoryTheory.Functor.category.{u3, u1, u4, u2} C _inst_1 D _inst_2) (CategoryTheory.Limits.instHasZeroMorphismsFunctorCategory.{u3, u4, u1, u2} C _inst_1 D _inst_2 (CategoryTheory.Preadditive.preadditiveHasZeroMorphisms.{u1, u2} D _inst_2 (CategoryTheory.Abelian.toPreadditive.{u1, u2} D _inst_2 _inst_3))) (CategoryTheory.Limits.functorCategoryHasLimitsOfShape.{0, u3, 0, u4, u1, u2} D _inst_2 CategoryTheory.Limits.WalkingParallelPair CategoryTheory.Limits.walkingParallelPairHomCategory C _inst_1 (CategoryTheory.Abelian.hasEqualizers.{u1, u2} D _inst_2 _inst_3))) (CategoryTheory.Limits.hasCokernels_of_hasCoequalizers.{max u4 u1, max (max (max u4 u3) u2) u1} (CategoryTheory.Functor.{u3, u1, u4, u2} C _inst_1 D _inst_2) (CategoryTheory.Functor.category.{u3, u1, u4, u2} C _inst_1 D _inst_2) (CategoryTheory.Limits.instHasZeroMorphismsFunctorCategory.{u3, u4, u1, u2} C _inst_1 D _inst_2 (CategoryTheory.Preadditive.preadditiveHasZeroMorphisms.{u1, u2} D _inst_2 (CategoryTheory.Abelian.toPreadditive.{u1, u2} D _inst_2 _inst_3))) (CategoryTheory.Limits.functorCategoryHasColimitsOfShape.{0, u3, 0, u4, u1, u2} D _inst_2 CategoryTheory.Limits.WalkingParallelPair CategoryTheory.Limits.walkingParallelPairHomCategory C _inst_1 (CategoryTheory.Abelian.hasCoequalizers.{u1, u2} D _inst_2 _inst_3))) F G α)) X) (CategoryTheory.Abelian.coimage.{u1, u2} D _inst_2 (CategoryTheory.Preadditive.preadditiveHasZeroMorphisms.{u1, u2} D _inst_2 (CategoryTheory.Abelian.toPreadditive.{u1, u2} D _inst_2 _inst_3)) (CategoryTheory.Limits.hasKernels_of_hasEqualizers.{u1, u2} D _inst_2 (CategoryTheory.Preadditive.preadditiveHasZeroMorphisms.{u1, u2} D _inst_2 (CategoryTheory.Abelian.toPreadditive.{u1, u2} D _inst_2 _inst_3)) (CategoryTheory.Abelian.hasEqualizers.{u1, u2} D _inst_2 _inst_3)) (CategoryTheory.Limits.hasCokernels_of_hasCoequalizers.{u1, u2} D _inst_2 (CategoryTheory.Preadditive.preadditiveHasZeroMorphisms.{u1, u2} D _inst_2 (CategoryTheory.Abelian.toPreadditive.{u1, u2} D _inst_2 _inst_3)) (CategoryTheory.Abelian.hasCoequalizers.{u1, u2} D _inst_2 _inst_3)) (Prefunctor.obj.{succ u3, succ u1, u4, u2} C (CategoryTheory.CategoryStruct.toQuiver.{u3, u4} C (CategoryTheory.Category.toCategoryStruct.{u3, u4} C _inst_1)) D (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} D (CategoryTheory.Category.toCategoryStruct.{u1, u2} D _inst_2)) (CategoryTheory.Functor.toPrefunctor.{u3, u1, u4, u2} C _inst_1 D _inst_2 F) X) (Prefunctor.obj.{succ u3, succ u1, u4, u2} C (CategoryTheory.CategoryStruct.toQuiver.{u3, u4} C (CategoryTheory.Category.toCategoryStruct.{u3, u4} C _inst_1)) D (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} D (CategoryTheory.Category.toCategoryStruct.{u1, u2} D _inst_2)) (CategoryTheory.Functor.toPrefunctor.{u3, u1, u4, u2} C _inst_1 D _inst_2 G) X) (CategoryTheory.NatTrans.app.{u3, u1, u4, u2} C _inst_1 D _inst_2 F G α X)) (CategoryTheory.Abelian.FunctorCategory.coimageObjIso.{u1, u2, u3, u4} C _inst_1 D _inst_2 _inst_3 F G α X)) (CategoryTheory.CategoryStruct.comp.{u1, u2} D (CategoryTheory.Category.toCategoryStruct.{u1, u2} D _inst_2) (Prefunctor.obj.{succ u3, succ u1, u4, u2} C (CategoryTheory.CategoryStruct.toQuiver.{u3, u4} C (CategoryTheory.Category.toCategoryStruct.{u3, u4} C _inst_1)) D (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} D (CategoryTheory.Category.toCategoryStruct.{u1, u2} D _inst_2)) (CategoryTheory.Functor.toPrefunctor.{u3, u1, u4, u2} C _inst_1 D _inst_2 (CategoryTheory.Abelian.coimage.{max u4 u1, max (max (max u4 u3) u2) u1} (CategoryTheory.Functor.{u3, u1, u4, u2} C _inst_1 D _inst_2) (CategoryTheory.Functor.category.{u3, u1, u4, u2} C _inst_1 D _inst_2) (CategoryTheory.Limits.instHasZeroMorphismsFunctorCategory.{u3, u4, u1, u2} C _inst_1 D _inst_2 (CategoryTheory.Preadditive.preadditiveHasZeroMorphisms.{u1, u2} D _inst_2 (CategoryTheory.Abelian.toPreadditive.{u1, u2} D _inst_2 _inst_3))) (CategoryTheory.Limits.hasKernels_of_hasEqualizers.{max u4 u1, max (max (max u4 u3) u2) u1} (CategoryTheory.Functor.{u3, u1, u4, u2} C _inst_1 D _inst_2) (CategoryTheory.Functor.category.{u3, u1, u4, u2} C _inst_1 D _inst_2) (CategoryTheory.Limits.instHasZeroMorphismsFunctorCategory.{u3, u4, u1, u2} C _inst_1 D _inst_2 (CategoryTheory.Preadditive.preadditiveHasZeroMorphisms.{u1, u2} D _inst_2 (CategoryTheory.Abelian.toPreadditive.{u1, u2} D _inst_2 _inst_3))) (CategoryTheory.Limits.functorCategoryHasLimitsOfShape.{0, u3, 0, u4, u1, u2} D _inst_2 CategoryTheory.Limits.WalkingParallelPair CategoryTheory.Limits.walkingParallelPairHomCategory C _inst_1 (CategoryTheory.Abelian.hasEqualizers.{u1, u2} D _inst_2 _inst_3))) (CategoryTheory.Limits.hasCokernels_of_hasCoequalizers.{max u4 u1, max (max (max u4 u3) u2) u1} (CategoryTheory.Functor.{u3, u1, u4, u2} C _inst_1 D _inst_2) (CategoryTheory.Functor.category.{u3, u1, u4, u2} C _inst_1 D _inst_2) (CategoryTheory.Limits.instHasZeroMorphismsFunctorCategory.{u3, u4, u1, u2} C _inst_1 D _inst_2 (CategoryTheory.Preadditive.preadditiveHasZeroMorphisms.{u1, u2} D _inst_2 (CategoryTheory.Abelian.toPreadditive.{u1, u2} D _inst_2 _inst_3))) (CategoryTheory.Limits.functorCategoryHasColimitsOfShape.{0, u3, 0, u4, u1, u2} D _inst_2 CategoryTheory.Limits.WalkingParallelPair CategoryTheory.Limits.walkingParallelPairHomCategory C _inst_1 (CategoryTheory.Abelian.hasCoequalizers.{u1, u2} D _inst_2 _inst_3))) F G α)) X) (Prefunctor.obj.{succ u3, succ u1, u4, u2} C (CategoryTheory.CategoryStruct.toQuiver.{u3, u4} C (CategoryTheory.Category.toCategoryStruct.{u3, u4} C _inst_1)) D (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} D (CategoryTheory.Category.toCategoryStruct.{u1, u2} D _inst_2)) (CategoryTheory.Functor.toPrefunctor.{u3, u1, u4, u2} C _inst_1 D _inst_2 (CategoryTheory.Abelian.image.{max u4 u1, max (max (max u4 u3) u2) u1} (CategoryTheory.Functor.{u3, u1, u4, u2} C _inst_1 D _inst_2) (CategoryTheory.Functor.category.{u3, u1, u4, u2} C _inst_1 D _inst_2) (CategoryTheory.Limits.instHasZeroMorphismsFunctorCategory.{u3, u4, u1, u2} C _inst_1 D _inst_2 (CategoryTheory.Preadditive.preadditiveHasZeroMorphisms.{u1, u2} D _inst_2 (CategoryTheory.Abelian.toPreadditive.{u1, u2} D _inst_2 _inst_3))) (CategoryTheory.Limits.hasKernels_of_hasEqualizers.{max u4 u1, max (max (max u4 u3) u2) u1} (CategoryTheory.Functor.{u3, u1, u4, u2} C _inst_1 D _inst_2) (CategoryTheory.Functor.category.{u3, u1, u4, u2} C _inst_1 D _inst_2) (CategoryTheory.Limits.instHasZeroMorphismsFunctorCategory.{u3, u4, u1, u2} C _inst_1 D _inst_2 (CategoryTheory.Preadditive.preadditiveHasZeroMorphisms.{u1, u2} D _inst_2 (CategoryTheory.Abelian.toPreadditive.{u1, u2} D _inst_2 _inst_3))) (CategoryTheory.Limits.functorCategoryHasLimitsOfShape.{0, u3, 0, u4, u1, u2} D _inst_2 CategoryTheory.Limits.WalkingParallelPair CategoryTheory.Limits.walkingParallelPairHomCategory C _inst_1 (CategoryTheory.Abelian.hasEqualizers.{u1, u2} D _inst_2 _inst_3))) (CategoryTheory.Limits.hasCokernels_of_hasCoequalizers.{max u4 u1, max (max (max u4 u3) u2) u1} (CategoryTheory.Functor.{u3, u1, u4, u2} C _inst_1 D _inst_2) (CategoryTheory.Functor.category.{u3, u1, u4, u2} C _inst_1 D _inst_2) (CategoryTheory.Limits.instHasZeroMorphismsFunctorCategory.{u3, u4, u1, u2} C _inst_1 D _inst_2 (CategoryTheory.Preadditive.preadditiveHasZeroMorphisms.{u1, u2} D _inst_2 (CategoryTheory.Abelian.toPreadditive.{u1, u2} D _inst_2 _inst_3))) (CategoryTheory.Limits.functorCategoryHasColimitsOfShape.{0, u3, 0, u4, u1, u2} D _inst_2 CategoryTheory.Limits.WalkingParallelPair CategoryTheory.Limits.walkingParallelPairHomCategory C _inst_1 (CategoryTheory.Abelian.hasCoequalizers.{u1, u2} D _inst_2 _inst_3))) F G α)) X) (CategoryTheory.Abelian.image.{u1, u2} D _inst_2 (CategoryTheory.Preadditive.preadditiveHasZeroMorphisms.{u1, u2} D _inst_2 (CategoryTheory.Abelian.toPreadditive.{u1, u2} D _inst_2 _inst_3)) (CategoryTheory.Limits.hasKernels_of_hasEqualizers.{u1, u2} D _inst_2 (CategoryTheory.Preadditive.preadditiveHasZeroMorphisms.{u1, u2} D _inst_2 (CategoryTheory.Abelian.toPreadditive.{u1, u2} D _inst_2 _inst_3)) (CategoryTheory.Abelian.hasEqualizers.{u1, u2} D _inst_2 _inst_3)) (CategoryTheory.Limits.hasCokernels_of_hasCoequalizers.{u1, u2} D _inst_2 (CategoryTheory.Preadditive.preadditiveHasZeroMorphisms.{u1, u2} D _inst_2 (CategoryTheory.Abelian.toPreadditive.{u1, u2} D _inst_2 _inst_3)) (CategoryTheory.Abelian.hasCoequalizers.{u1, u2} D _inst_2 _inst_3)) (Prefunctor.obj.{succ u3, succ u1, u4, u2} C (CategoryTheory.CategoryStruct.toQuiver.{u3, u4} C (CategoryTheory.Category.toCategoryStruct.{u3, u4} C _inst_1)) D (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} D (CategoryTheory.Category.toCategoryStruct.{u1, u2} D _inst_2)) (CategoryTheory.Functor.toPrefunctor.{u3, u1, u4, u2} C _inst_1 D _inst_2 F) X) (Prefunctor.obj.{succ u3, succ u1, u4, u2} C (CategoryTheory.CategoryStruct.toQuiver.{u3, u4} C (CategoryTheory.Category.toCategoryStruct.{u3, u4} C _inst_1)) D (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} D (CategoryTheory.Category.toCategoryStruct.{u1, u2} D _inst_2)) (CategoryTheory.Functor.toPrefunctor.{u3, u1, u4, u2} C _inst_1 D _inst_2 G) X) (CategoryTheory.NatTrans.app.{u3, u1, u4, u2} C _inst_1 D _inst_2 F G α X)) (CategoryTheory.NatTrans.app.{u3, u1, u4, u2} C _inst_1 D _inst_2 (CategoryTheory.Abelian.coimage.{max u4 u1, max (max (max u4 u3) u2) u1} (CategoryTheory.Functor.{u3, u1, u4, u2} C _inst_1 D _inst_2) (CategoryTheory.Functor.category.{u3, u1, u4, u2} C _inst_1 D _inst_2) (CategoryTheory.Limits.instHasZeroMorphismsFunctorCategory.{u3, u4, u1, u2} C _inst_1 D _inst_2 (CategoryTheory.Preadditive.preadditiveHasZeroMorphisms.{u1, u2} D _inst_2 (CategoryTheory.Abelian.toPreadditive.{u1, u2} D _inst_2 _inst_3))) (CategoryTheory.Limits.hasKernels_of_hasEqualizers.{max u4 u1, max (max (max u4 u3) u2) u1} (CategoryTheory.Functor.{u3, u1, u4, u2} C _inst_1 D _inst_2) (CategoryTheory.Functor.category.{u3, u1, u4, u2} C _inst_1 D _inst_2) (CategoryTheory.Limits.instHasZeroMorphismsFunctorCategory.{u3, u4, u1, u2} C _inst_1 D _inst_2 (CategoryTheory.Preadditive.preadditiveHasZeroMorphisms.{u1, u2} D _inst_2 (CategoryTheory.Abelian.toPreadditive.{u1, u2} D _inst_2 _inst_3))) (CategoryTheory.Limits.functorCategoryHasLimitsOfShape.{0, u3, 0, u4, u1, u2} D _inst_2 CategoryTheory.Limits.WalkingParallelPair CategoryTheory.Limits.walkingParallelPairHomCategory C _inst_1 (CategoryTheory.Abelian.hasEqualizers.{u1, u2} D _inst_2 _inst_3))) (CategoryTheory.Limits.hasCokernels_of_hasCoequalizers.{max u4 u1, max (max (max u4 u3) u2) u1} (CategoryTheory.Functor.{u3, u1, u4, u2} C _inst_1 D _inst_2) (CategoryTheory.Functor.category.{u3, u1, u4, u2} C _inst_1 D _inst_2) (CategoryTheory.Limits.instHasZeroMorphismsFunctorCategory.{u3, u4, u1, u2} C _inst_1 D _inst_2 (CategoryTheory.Preadditive.preadditiveHasZeroMorphisms.{u1, u2} D _inst_2 (CategoryTheory.Abelian.toPreadditive.{u1, u2} D _inst_2 _inst_3))) (CategoryTheory.Limits.functorCategoryHasColimitsOfShape.{0, u3, 0, u4, u1, u2} D _inst_2 CategoryTheory.Limits.WalkingParallelPair CategoryTheory.Limits.walkingParallelPairHomCategory C _inst_1 (CategoryTheory.Abelian.hasCoequalizers.{u1, u2} D _inst_2 _inst_3))) F G α) (CategoryTheory.Abelian.image.{max u4 u1, max (max (max u4 u3) u2) u1} (CategoryTheory.Functor.{u3, u1, u4, u2} C _inst_1 D _inst_2) (CategoryTheory.Functor.category.{u3, u1, u4, u2} C _inst_1 D _inst_2) (CategoryTheory.Limits.instHasZeroMorphismsFunctorCategory.{u3, u4, u1, u2} C _inst_1 D _inst_2 (CategoryTheory.Preadditive.preadditiveHasZeroMorphisms.{u1, u2} D _inst_2 (CategoryTheory.Abelian.toPreadditive.{u1, u2} D _inst_2 _inst_3))) (CategoryTheory.Limits.hasKernels_of_hasEqualizers.{max u4 u1, max (max (max u4 u3) u2) u1} (CategoryTheory.Functor.{u3, u1, u4, u2} C _inst_1 D _inst_2) (CategoryTheory.Functor.category.{u3, u1, u4, u2} C _inst_1 D _inst_2) (CategoryTheory.Limits.instHasZeroMorphismsFunctorCategory.{u3, u4, u1, u2} C _inst_1 D _inst_2 (CategoryTheory.Preadditive.preadditiveHasZeroMorphisms.{u1, u2} D _inst_2 (CategoryTheory.Abelian.toPreadditive.{u1, u2} D _inst_2 _inst_3))) (CategoryTheory.Limits.functorCategoryHasLimitsOfShape.{0, u3, 0, u4, u1, u2} D _inst_2 CategoryTheory.Limits.WalkingParallelPair CategoryTheory.Limits.walkingParallelPairHomCategory C _inst_1 (CategoryTheory.Abelian.hasEqualizers.{u1, u2} D _inst_2 _inst_3))) (CategoryTheory.Limits.hasCokernels_of_hasCoequalizers.{max u4 u1, max (max (max u4 u3) u2) u1} (CategoryTheory.Functor.{u3, u1, u4, u2} C _inst_1 D _inst_2) (CategoryTheory.Functor.category.{u3, u1, u4, u2} C _inst_1 D _inst_2) (CategoryTheory.Limits.instHasZeroMorphismsFunctorCategory.{u3, u4, u1, u2} C _inst_1 D _inst_2 (CategoryTheory.Preadditive.preadditiveHasZeroMorphisms.{u1, u2} D _inst_2 (CategoryTheory.Abelian.toPreadditive.{u1, u2} D _inst_2 _inst_3))) (CategoryTheory.Limits.functorCategoryHasColimitsOfShape.{0, u3, 0, u4, u1, u2} D _inst_2 CategoryTheory.Limits.WalkingParallelPair CategoryTheory.Limits.walkingParallelPairHomCategory C _inst_1 (CategoryTheory.Abelian.hasCoequalizers.{u1, u2} D _inst_2 _inst_3))) F G α) (CategoryTheory.Abelian.coimageImageComparison.{max u4 u1, max (max (max u4 u3) u2) u1} (CategoryTheory.Functor.{u3, u1, u4, u2} C _inst_1 D _inst_2) (CategoryTheory.Functor.category.{u3, u1, u4, u2} C _inst_1 D _inst_2) (CategoryTheory.Limits.instHasZeroMorphismsFunctorCategory.{u3, u4, u1, u2} C _inst_1 D _inst_2 (CategoryTheory.Preadditive.preadditiveHasZeroMorphisms.{u1, u2} D _inst_2 (CategoryTheory.Abelian.toPreadditive.{u1, u2} D _inst_2 _inst_3))) (CategoryTheory.Limits.hasKernels_of_hasEqualizers.{max u4 u1, max (max (max u4 u3) u2) u1} (CategoryTheory.Functor.{u3, u1, u4, u2} C _inst_1 D _inst_2) (CategoryTheory.Functor.category.{u3, u1, u4, u2} C _inst_1 D _inst_2) (CategoryTheory.Limits.instHasZeroMorphismsFunctorCategory.{u3, u4, u1, u2} C _inst_1 D _inst_2 (CategoryTheory.Preadditive.preadditiveHasZeroMorphisms.{u1, u2} D _inst_2 (CategoryTheory.Abelian.toPreadditive.{u1, u2} D _inst_2 _inst_3))) (CategoryTheory.Limits.functorCategoryHasLimitsOfShape.{0, u3, 0, u4, u1, u2} D _inst_2 CategoryTheory.Limits.WalkingParallelPair CategoryTheory.Limits.walkingParallelPairHomCategory C _inst_1 (CategoryTheory.Abelian.hasEqualizers.{u1, u2} D _inst_2 _inst_3))) (CategoryTheory.Limits.hasCokernels_of_hasCoequalizers.{max u4 u1, max (max (max u4 u3) u2) u1} (CategoryTheory.Functor.{u3, u1, u4, u2} C _inst_1 D _inst_2) (CategoryTheory.Functor.category.{u3, u1, u4, u2} C _inst_1 D _inst_2) (CategoryTheory.Limits.instHasZeroMorphismsFunctorCategory.{u3, u4, u1, u2} C _inst_1 D _inst_2 (CategoryTheory.Preadditive.preadditiveHasZeroMorphisms.{u1, u2} D _inst_2 (CategoryTheory.Abelian.toPreadditive.{u1, u2} D _inst_2 _inst_3))) (CategoryTheory.Limits.functorCategoryHasColimitsOfShape.{0, u3, 0, u4, u1, u2} D _inst_2 CategoryTheory.Limits.WalkingParallelPair CategoryTheory.Limits.walkingParallelPairHomCategory C _inst_1 (CategoryTheory.Abelian.hasCoequalizers.{u1, u2} D _inst_2 _inst_3))) F G α) X) (CategoryTheory.Iso.hom.{u1, u2} D _inst_2 (Prefunctor.obj.{succ u3, succ u1, u4, u2} C (CategoryTheory.CategoryStruct.toQuiver.{u3, u4} C (CategoryTheory.Category.toCategoryStruct.{u3, u4} C _inst_1)) D (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} D (CategoryTheory.Category.toCategoryStruct.{u1, u2} D _inst_2)) (CategoryTheory.Functor.toPrefunctor.{u3, u1, u4, u2} C _inst_1 D _inst_2 (CategoryTheory.Abelian.image.{max u4 u1, max (max (max u4 u3) u2) u1} (CategoryTheory.Functor.{u3, u1, u4, u2} C _inst_1 D _inst_2) (CategoryTheory.Functor.category.{u3, u1, u4, u2} C _inst_1 D _inst_2) (CategoryTheory.Limits.instHasZeroMorphismsFunctorCategory.{u3, u4, u1, u2} C _inst_1 D _inst_2 (CategoryTheory.Preadditive.preadditiveHasZeroMorphisms.{u1, u2} D _inst_2 (CategoryTheory.Abelian.toPreadditive.{u1, u2} D _inst_2 _inst_3))) (CategoryTheory.Limits.hasKernels_of_hasEqualizers.{max u4 u1, max (max (max u4 u3) u2) u1} (CategoryTheory.Functor.{u3, u1, u4, u2} C _inst_1 D _inst_2) (CategoryTheory.Functor.category.{u3, u1, u4, u2} C _inst_1 D _inst_2) (CategoryTheory.Limits.instHasZeroMorphismsFunctorCategory.{u3, u4, u1, u2} C _inst_1 D _inst_2 (CategoryTheory.Preadditive.preadditiveHasZeroMorphisms.{u1, u2} D _inst_2 (CategoryTheory.Abelian.toPreadditive.{u1, u2} D _inst_2 _inst_3))) (CategoryTheory.Limits.functorCategoryHasLimitsOfShape.{0, u3, 0, u4, u1, u2} D _inst_2 CategoryTheory.Limits.WalkingParallelPair CategoryTheory.Limits.walkingParallelPairHomCategory C _inst_1 (CategoryTheory.Abelian.hasEqualizers.{u1, u2} D _inst_2 _inst_3))) (CategoryTheory.Limits.hasCokernels_of_hasCoequalizers.{max u4 u1, max (max (max u4 u3) u2) u1} (CategoryTheory.Functor.{u3, u1, u4, u2} C _inst_1 D _inst_2) (CategoryTheory.Functor.category.{u3, u1, u4, u2} C _inst_1 D _inst_2) (CategoryTheory.Limits.instHasZeroMorphismsFunctorCategory.{u3, u4, u1, u2} C _inst_1 D _inst_2 (CategoryTheory.Preadditive.preadditiveHasZeroMorphisms.{u1, u2} D _inst_2 (CategoryTheory.Abelian.toPreadditive.{u1, u2} D _inst_2 _inst_3))) (CategoryTheory.Limits.functorCategoryHasColimitsOfShape.{0, u3, 0, u4, u1, u2} D _inst_2 CategoryTheory.Limits.WalkingParallelPair CategoryTheory.Limits.walkingParallelPairHomCategory C _inst_1 (CategoryTheory.Abelian.hasCoequalizers.{u1, u2} D _inst_2 _inst_3))) F G α)) X) (CategoryTheory.Abelian.image.{u1, u2} D _inst_2 (CategoryTheory.Preadditive.preadditiveHasZeroMorphisms.{u1, u2} D _inst_2 (CategoryTheory.Abelian.toPreadditive.{u1, u2} D _inst_2 _inst_3)) (CategoryTheory.Limits.hasKernels_of_hasEqualizers.{u1, u2} D _inst_2 (CategoryTheory.Preadditive.preadditiveHasZeroMorphisms.{u1, u2} D _inst_2 (CategoryTheory.Abelian.toPreadditive.{u1, u2} D _inst_2 _inst_3)) (CategoryTheory.Abelian.hasEqualizers.{u1, u2} D _inst_2 _inst_3)) (CategoryTheory.Limits.hasCokernels_of_hasCoequalizers.{u1, u2} D _inst_2 (CategoryTheory.Preadditive.preadditiveHasZeroMorphisms.{u1, u2} D _inst_2 (CategoryTheory.Abelian.toPreadditive.{u1, u2} D _inst_2 _inst_3)) (CategoryTheory.Abelian.hasCoequalizers.{u1, u2} D _inst_2 _inst_3)) (Prefunctor.obj.{succ u3, succ u1, u4, u2} C (CategoryTheory.CategoryStruct.toQuiver.{u3, u4} C (CategoryTheory.Category.toCategoryStruct.{u3, u4} C _inst_1)) D (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} D (CategoryTheory.Category.toCategoryStruct.{u1, u2} D _inst_2)) (CategoryTheory.Functor.toPrefunctor.{u3, u1, u4, u2} C _inst_1 D _inst_2 F) X) (Prefunctor.obj.{succ u3, succ u1, u4, u2} C (CategoryTheory.CategoryStruct.toQuiver.{u3, u4} C (CategoryTheory.Category.toCategoryStruct.{u3, u4} C _inst_1)) D (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} D (CategoryTheory.Category.toCategoryStruct.{u1, u2} D _inst_2)) (CategoryTheory.Functor.toPrefunctor.{u3, u1, u4, u2} C _inst_1 D _inst_2 G) X) (CategoryTheory.NatTrans.app.{u3, u1, u4, u2} C _inst_1 D _inst_2 F G α X)) (CategoryTheory.Abelian.FunctorCategory.imageObjIso.{u1, u2, u3, u4} C _inst_1 D _inst_2 _inst_3 F G α X))))
+<too large>
Case conversion may be inaccurate. Consider using '#align category_theory.abelian.functor_category.coimage_image_comparison_app CategoryTheory.Abelian.FunctorCategory.coimageImageComparison_appₓ'. -/
theorem coimageImageComparison_app :
coimageImageComparison (α.app X) =
@@ -100,10 +97,7 @@ theorem coimageImageComparison_app :
#align category_theory.abelian.functor_category.coimage_image_comparison_app CategoryTheory.Abelian.FunctorCategory.coimageImageComparison_app
/- warning: category_theory.abelian.functor_category.coimage_image_comparison_app' -> CategoryTheory.Abelian.FunctorCategory.coimageImageComparison_app' is a dubious translation:
-lean 3 declaration is
- forall {C : Type.{max u3 u4}} [_inst_1 : CategoryTheory.Category.{u3, max u3 u4} C] {D : Type.{u2}} [_inst_2 : CategoryTheory.Category.{max u1 u3 u4, u2} D] [_inst_3 : CategoryTheory.Abelian.{max u1 u3 u4, u2} D _inst_2] {F : CategoryTheory.Functor.{u3, max u1 u3 u4, max u3 u4, u2} C _inst_1 D _inst_2} {G : CategoryTheory.Functor.{u3, max u1 u3 u4, max u3 u4, u2} C _inst_1 D _inst_2} (α : Quiver.Hom.{succ (max u1 u3 u4), max u3 (max u1 u3 u4) (max u3 u4) u2} (CategoryTheory.Functor.{u3, max u1 u3 u4, max u3 u4, u2} C _inst_1 D _inst_2) (CategoryTheory.CategoryStruct.toQuiver.{max u1 u3 u4, max u3 (max u1 u3 u4) (max u3 u4) u2} (CategoryTheory.Functor.{u3, max u1 u3 u4, max u3 u4, u2} C _inst_1 D _inst_2) (CategoryTheory.Category.toCategoryStruct.{max u1 u3 u4, max u3 (max u1 u3 u4) (max u3 u4) u2} (CategoryTheory.Functor.{u3, max u1 u3 u4, max u3 u4, u2} C _inst_1 D _inst_2) (CategoryTheory.Functor.category.{u3, max u1 u3 u4, max u3 u4, u2} C _inst_1 D _inst_2))) F G) (X : C), Eq.{succ (max u1 u3 u4)} (Quiver.Hom.{succ (max u1 u3 u4), u2} D (CategoryTheory.CategoryStruct.toQuiver.{max u1 u3 u4, u2} D (CategoryTheory.Category.toCategoryStruct.{max u1 u3 u4, u2} D _inst_2)) (CategoryTheory.Functor.obj.{u3, max u1 u3 u4, max u3 u4, u2} C _inst_1 D _inst_2 (CategoryTheory.Abelian.coimage.{max u1 u3 u4, max u3 (max u1 u3 u4) (max u3 u4) u2} (CategoryTheory.Functor.{u3, max u1 u3 u4, max u3 u4, u2} C _inst_1 D _inst_2) (CategoryTheory.Functor.category.{u3, max u1 u3 u4, max u3 u4, u2} C _inst_1 D _inst_2) (CategoryTheory.Limits.CategoryTheory.Functor.hasZeroMorphisms.{u3, max u3 u4, max u1 u3 u4, u2} C _inst_1 D _inst_2 (CategoryTheory.Preadditive.preadditiveHasZeroMorphisms.{max u1 u3 u4, u2} D _inst_2 (CategoryTheory.Abelian.toPreadditive.{max u1 u3 u4, u2} D _inst_2 _inst_3))) (CategoryTheory.Abelian.FunctorCategory.coimageObjIso._proof_1.{u4, u3, u2, u1} C _inst_1 D _inst_2 _inst_3) (CategoryTheory.Abelian.FunctorCategory.coimageObjIso._proof_2.{u4, u3, u2, u1} C _inst_1 D _inst_2 _inst_3) F G α) X) (CategoryTheory.Functor.obj.{u3, max u1 u3 u4, max u3 u4, u2} C _inst_1 D _inst_2 (CategoryTheory.Abelian.image.{max u1 u3 u4, max u3 (max u1 u3 u4) (max u3 u4) u2} (CategoryTheory.Functor.{u3, max u1 u3 u4, max u3 u4, u2} C _inst_1 D _inst_2) (CategoryTheory.Functor.category.{u3, max u1 u3 u4, max u3 u4, u2} C _inst_1 D _inst_2) (CategoryTheory.Limits.CategoryTheory.Functor.hasZeroMorphisms.{u3, max u3 u4, max u1 u3 u4, u2} C _inst_1 D _inst_2 (CategoryTheory.Preadditive.preadditiveHasZeroMorphisms.{max u1 u3 u4, u2} D _inst_2 (CategoryTheory.Abelian.toPreadditive.{max u1 u3 u4, u2} D _inst_2 _inst_3))) (CategoryTheory.Abelian.FunctorCategory.coimageObjIso._proof_1.{u4, u3, u2, u1} C _inst_1 D _inst_2 _inst_3) (CategoryTheory.Abelian.FunctorCategory.coimageObjIso._proof_2.{u4, u3, u2, u1} C _inst_1 D _inst_2 _inst_3) F G α) X)) (CategoryTheory.NatTrans.app.{u3, max u1 u3 u4, max u3 u4, u2} C _inst_1 D _inst_2 (CategoryTheory.Abelian.coimage.{max u1 u3 u4, max u3 (max u1 u3 u4) (max u3 u4) u2} (CategoryTheory.Functor.{u3, max u1 u3 u4, max u3 u4, u2} C _inst_1 D _inst_2) (CategoryTheory.Functor.category.{u3, max u1 u3 u4, max u3 u4, u2} C _inst_1 D _inst_2) (CategoryTheory.Limits.CategoryTheory.Functor.hasZeroMorphisms.{u3, max u3 u4, max u1 u3 u4, u2} C _inst_1 D _inst_2 (CategoryTheory.Preadditive.preadditiveHasZeroMorphisms.{max u1 u3 u4, u2} D _inst_2 (CategoryTheory.Abelian.toPreadditive.{max u1 u3 u4, u2} D _inst_2 _inst_3))) (CategoryTheory.Abelian.FunctorCategory.coimageObjIso._proof_1.{u4, u3, u2, u1} C _inst_1 D _inst_2 _inst_3) (CategoryTheory.Abelian.FunctorCategory.coimageObjIso._proof_2.{u4, u3, u2, u1} C _inst_1 D _inst_2 _inst_3) F G α) (CategoryTheory.Abelian.image.{max u1 u3 u4, max u3 (max u1 u3 u4) (max u3 u4) u2} (CategoryTheory.Functor.{u3, max u1 u3 u4, max u3 u4, u2} C _inst_1 D _inst_2) (CategoryTheory.Functor.category.{u3, max u1 u3 u4, max u3 u4, u2} C _inst_1 D _inst_2) (CategoryTheory.Limits.CategoryTheory.Functor.hasZeroMorphisms.{u3, max u3 u4, max u1 u3 u4, u2} C _inst_1 D _inst_2 (CategoryTheory.Preadditive.preadditiveHasZeroMorphisms.{max u1 u3 u4, u2} D _inst_2 (CategoryTheory.Abelian.toPreadditive.{max u1 u3 u4, u2} D _inst_2 _inst_3))) (CategoryTheory.Abelian.FunctorCategory.coimageObjIso._proof_1.{u4, u3, u2, u1} C _inst_1 D _inst_2 _inst_3) (CategoryTheory.Abelian.FunctorCategory.coimageObjIso._proof_2.{u4, u3, u2, u1} C _inst_1 D _inst_2 _inst_3) F G α) (CategoryTheory.Abelian.coimageImageComparison.{max u1 u3 u4, max u3 (max u1 u3 u4) (max u3 u4) u2} (CategoryTheory.Functor.{u3, max u1 u3 u4, max u3 u4, u2} C _inst_1 D _inst_2) (CategoryTheory.Functor.category.{u3, max u1 u3 u4, max u3 u4, u2} C _inst_1 D _inst_2) (CategoryTheory.Limits.CategoryTheory.Functor.hasZeroMorphisms.{u3, max u3 u4, max u1 u3 u4, u2} C _inst_1 D _inst_2 (CategoryTheory.Preadditive.preadditiveHasZeroMorphisms.{max u1 u3 u4, u2} D _inst_2 (CategoryTheory.Abelian.toPreadditive.{max u1 u3 u4, u2} D _inst_2 _inst_3))) (CategoryTheory.Abelian.FunctorCategory.coimageObjIso._proof_1.{u4, u3, u2, u1} C _inst_1 D _inst_2 _inst_3) (CategoryTheory.Abelian.FunctorCategory.coimageObjIso._proof_2.{u4, u3, u2, u1} C _inst_1 D _inst_2 _inst_3) F G α) X) (CategoryTheory.CategoryStruct.comp.{max u1 u3 u4, u2} D (CategoryTheory.Category.toCategoryStruct.{max u1 u3 u4, u2} D _inst_2) (CategoryTheory.Functor.obj.{u3, max u1 u3 u4, max u3 u4, u2} C _inst_1 D _inst_2 (CategoryTheory.Abelian.coimage.{max u1 u3 u4, max u3 (max u1 u3 u4) (max u3 u4) u2} (CategoryTheory.Functor.{u3, max u1 u3 u4, max u3 u4, u2} C _inst_1 D _inst_2) (CategoryTheory.Functor.category.{u3, max u1 u3 u4, max u3 u4, u2} C _inst_1 D _inst_2) (CategoryTheory.Limits.CategoryTheory.Functor.hasZeroMorphisms.{u3, max u3 u4, max u1 u3 u4, u2} C _inst_1 D _inst_2 (CategoryTheory.Preadditive.preadditiveHasZeroMorphisms.{max u1 u3 u4, u2} D _inst_2 (CategoryTheory.Abelian.toPreadditive.{max u1 u3 u4, u2} D _inst_2 _inst_3))) (CategoryTheory.Abelian.FunctorCategory.coimageObjIso._proof_1.{u4, u3, u2, u1} C _inst_1 D _inst_2 _inst_3) (CategoryTheory.Abelian.FunctorCategory.coimageObjIso._proof_2.{u4, u3, u2, u1} C _inst_1 D _inst_2 _inst_3) F G α) X) (CategoryTheory.Abelian.coimage.{max u1 u3 u4, u2} D _inst_2 (CategoryTheory.Preadditive.preadditiveHasZeroMorphisms.{max u1 u3 u4, u2} D _inst_2 (CategoryTheory.Abelian.toPreadditive.{max u1 u3 u4, u2} D _inst_2 _inst_3)) (CategoryTheory.Abelian.hasKernels.{max u1 u3 u4, u2} D _inst_2 _inst_3) (CategoryTheory.Abelian.hasCokernels.{max u1 u3 u4, u2} D _inst_2 _inst_3) (CategoryTheory.Functor.obj.{u3, max u1 u3 u4, max u3 u4, u2} C _inst_1 D _inst_2 F X) (CategoryTheory.Functor.obj.{u3, max u1 u3 u4, max u3 u4, u2} C _inst_1 D _inst_2 G X) (CategoryTheory.NatTrans.app.{u3, max u1 u3 u4, max u3 u4, u2} C _inst_1 D _inst_2 F G α X)) (CategoryTheory.Functor.obj.{u3, max u1 u3 u4, max u3 u4, u2} C _inst_1 D _inst_2 (CategoryTheory.Abelian.image.{max u1 u3 u4, max u3 (max u1 u3 u4) (max u3 u4) u2} (CategoryTheory.Functor.{u3, max u1 u3 u4, max u3 u4, u2} C _inst_1 D _inst_2) (CategoryTheory.Functor.category.{u3, max u1 u3 u4, max u3 u4, u2} C _inst_1 D _inst_2) (CategoryTheory.Limits.CategoryTheory.Functor.hasZeroMorphisms.{u3, max u3 u4, max u1 u3 u4, u2} C _inst_1 D _inst_2 (CategoryTheory.Preadditive.preadditiveHasZeroMorphisms.{max u1 u3 u4, u2} D _inst_2 (CategoryTheory.Abelian.toPreadditive.{max u1 u3 u4, u2} D _inst_2 _inst_3))) (CategoryTheory.Abelian.FunctorCategory.coimageObjIso._proof_1.{u4, u3, u2, u1} C _inst_1 D _inst_2 _inst_3) (CategoryTheory.Abelian.FunctorCategory.coimageObjIso._proof_2.{u4, u3, u2, u1} C _inst_1 D _inst_2 _inst_3) F G α) X) (CategoryTheory.Iso.hom.{max u1 u3 u4, u2} D _inst_2 (CategoryTheory.Functor.obj.{u3, max u1 u3 u4, max u3 u4, u2} C _inst_1 D _inst_2 (CategoryTheory.Abelian.coimage.{max u1 u3 u4, max u3 (max u1 u3 u4) (max u3 u4) u2} (CategoryTheory.Functor.{u3, max u1 u3 u4, max u3 u4, u2} C _inst_1 D _inst_2) (CategoryTheory.Functor.category.{u3, max u1 u3 u4, max u3 u4, u2} C _inst_1 D _inst_2) (CategoryTheory.Limits.CategoryTheory.Functor.hasZeroMorphisms.{u3, max u3 u4, max u1 u3 u4, u2} C _inst_1 D _inst_2 (CategoryTheory.Preadditive.preadditiveHasZeroMorphisms.{max u1 u3 u4, u2} D _inst_2 (CategoryTheory.Abelian.toPreadditive.{max u1 u3 u4, u2} D _inst_2 _inst_3))) (CategoryTheory.Abelian.FunctorCategory.coimageObjIso._proof_1.{u4, u3, u2, u1} C _inst_1 D _inst_2 _inst_3) (CategoryTheory.Abelian.FunctorCategory.coimageObjIso._proof_2.{u4, u3, u2, u1} C _inst_1 D _inst_2 _inst_3) F G α) X) (CategoryTheory.Abelian.coimage.{max u1 u3 u4, u2} D _inst_2 (CategoryTheory.Preadditive.preadditiveHasZeroMorphisms.{max u1 u3 u4, u2} D _inst_2 (CategoryTheory.Abelian.toPreadditive.{max u1 u3 u4, u2} D _inst_2 _inst_3)) (CategoryTheory.Abelian.hasKernels.{max u1 u3 u4, u2} D _inst_2 _inst_3) (CategoryTheory.Abelian.hasCokernels.{max u1 u3 u4, u2} D _inst_2 _inst_3) (CategoryTheory.Functor.obj.{u3, max u1 u3 u4, max u3 u4, u2} C _inst_1 D _inst_2 F X) (CategoryTheory.Functor.obj.{u3, max u1 u3 u4, max u3 u4, u2} C _inst_1 D _inst_2 G X) (CategoryTheory.NatTrans.app.{u3, max u1 u3 u4, max u3 u4, u2} C _inst_1 D _inst_2 F G α X)) (CategoryTheory.Abelian.FunctorCategory.coimageObjIso.{u1, u2, u3, u4} C _inst_1 D _inst_2 _inst_3 F G α X)) (CategoryTheory.CategoryStruct.comp.{max u1 u3 u4, u2} D (CategoryTheory.Category.toCategoryStruct.{max u1 u3 u4, u2} D _inst_2) (CategoryTheory.Abelian.coimage.{max u1 u3 u4, u2} D _inst_2 (CategoryTheory.Preadditive.preadditiveHasZeroMorphisms.{max u1 u3 u4, u2} D _inst_2 (CategoryTheory.Abelian.toPreadditive.{max u1 u3 u4, u2} D _inst_2 _inst_3)) (CategoryTheory.Abelian.hasKernels.{max u1 u3 u4, u2} D _inst_2 _inst_3) (CategoryTheory.Abelian.hasCokernels.{max u1 u3 u4, u2} D _inst_2 _inst_3) (CategoryTheory.Functor.obj.{u3, max u1 u3 u4, max u3 u4, u2} C _inst_1 D _inst_2 F X) (CategoryTheory.Functor.obj.{u3, max u1 u3 u4, max u3 u4, u2} C _inst_1 D _inst_2 G X) (CategoryTheory.NatTrans.app.{u3, max u1 u3 u4, max u3 u4, u2} C _inst_1 D _inst_2 F G α X)) (CategoryTheory.Abelian.image.{max u1 u3 u4, u2} D _inst_2 (CategoryTheory.Preadditive.preadditiveHasZeroMorphisms.{max u1 u3 u4, u2} D _inst_2 (CategoryTheory.Abelian.toPreadditive.{max u1 u3 u4, u2} D _inst_2 _inst_3)) (CategoryTheory.Abelian.hasKernels.{max u1 u3 u4, u2} D _inst_2 _inst_3) (CategoryTheory.Abelian.hasCokernels.{max u1 u3 u4, u2} D _inst_2 _inst_3) (CategoryTheory.Functor.obj.{u3, max u1 u3 u4, max u3 u4, u2} C _inst_1 D _inst_2 F X) (CategoryTheory.Functor.obj.{u3, max u1 u3 u4, max u3 u4, u2} C _inst_1 D _inst_2 G X) (CategoryTheory.NatTrans.app.{u3, max u1 u3 u4, max u3 u4, u2} C _inst_1 D _inst_2 F G α X)) (CategoryTheory.Functor.obj.{u3, max u1 u3 u4, max u3 u4, u2} C _inst_1 D _inst_2 (CategoryTheory.Abelian.image.{max u1 u3 u4, max u3 (max u1 u3 u4) (max u3 u4) u2} (CategoryTheory.Functor.{u3, max u1 u3 u4, max u3 u4, u2} C _inst_1 D _inst_2) (CategoryTheory.Functor.category.{u3, max u1 u3 u4, max u3 u4, u2} C _inst_1 D _inst_2) (CategoryTheory.Limits.CategoryTheory.Functor.hasZeroMorphisms.{u3, max u3 u4, max u1 u3 u4, u2} C _inst_1 D _inst_2 (CategoryTheory.Preadditive.preadditiveHasZeroMorphisms.{max u1 u3 u4, u2} D _inst_2 (CategoryTheory.Abelian.toPreadditive.{max u1 u3 u4, u2} D _inst_2 _inst_3))) (CategoryTheory.Abelian.FunctorCategory.coimageObjIso._proof_1.{u4, u3, u2, u1} C _inst_1 D _inst_2 _inst_3) (CategoryTheory.Abelian.FunctorCategory.coimageObjIso._proof_2.{u4, u3, u2, u1} C _inst_1 D _inst_2 _inst_3) F G α) X) (CategoryTheory.Abelian.coimageImageComparison.{max u1 u3 u4, u2} D _inst_2 (CategoryTheory.Preadditive.preadditiveHasZeroMorphisms.{max u1 u3 u4, u2} D _inst_2 (CategoryTheory.Abelian.toPreadditive.{max u1 u3 u4, u2} D _inst_2 _inst_3)) (CategoryTheory.Abelian.hasKernels.{max u1 u3 u4, u2} D _inst_2 _inst_3) (CategoryTheory.Abelian.hasCokernels.{max u1 u3 u4, u2} D _inst_2 _inst_3) (CategoryTheory.Functor.obj.{u3, max u1 u3 u4, max u3 u4, u2} C _inst_1 D _inst_2 F X) (CategoryTheory.Functor.obj.{u3, max u1 u3 u4, max u3 u4, u2} C _inst_1 D _inst_2 G X) (CategoryTheory.NatTrans.app.{u3, max u1 u3 u4, max u3 u4, u2} C _inst_1 D _inst_2 F G α X)) (CategoryTheory.Iso.inv.{max u1 u3 u4, u2} D _inst_2 (CategoryTheory.Functor.obj.{u3, max u1 u3 u4, max u3 u4, u2} C _inst_1 D _inst_2 (CategoryTheory.Abelian.image.{max u1 u3 u4, max u3 (max u1 u3 u4) (max u3 u4) u2} (CategoryTheory.Functor.{u3, max u1 u3 u4, max u3 u4, u2} C _inst_1 D _inst_2) (CategoryTheory.Functor.category.{u3, max u1 u3 u4, max u3 u4, u2} C _inst_1 D _inst_2) (CategoryTheory.Limits.CategoryTheory.Functor.hasZeroMorphisms.{u3, max u3 u4, max u1 u3 u4, u2} C _inst_1 D _inst_2 (CategoryTheory.Preadditive.preadditiveHasZeroMorphisms.{max u1 u3 u4, u2} D _inst_2 (CategoryTheory.Abelian.toPreadditive.{max u1 u3 u4, u2} D _inst_2 _inst_3))) (CategoryTheory.Abelian.FunctorCategory.imageObjIso._proof_1.{u4, u3, u2, u1} C _inst_1 D _inst_2 _inst_3) (CategoryTheory.Abelian.FunctorCategory.imageObjIso._proof_2.{u4, u3, u2, u1} C _inst_1 D _inst_2 _inst_3) F G α) X) (CategoryTheory.Abelian.image.{max u1 u3 u4, u2} D _inst_2 (CategoryTheory.Preadditive.preadditiveHasZeroMorphisms.{max u1 u3 u4, u2} D _inst_2 (CategoryTheory.Abelian.toPreadditive.{max u1 u3 u4, u2} D _inst_2 _inst_3)) (CategoryTheory.Abelian.hasKernels.{max u1 u3 u4, u2} D _inst_2 _inst_3) (CategoryTheory.Abelian.hasCokernels.{max u1 u3 u4, u2} D _inst_2 _inst_3) (CategoryTheory.Functor.obj.{u3, max u1 u3 u4, max u3 u4, u2} C _inst_1 D _inst_2 F X) (CategoryTheory.Functor.obj.{u3, max u1 u3 u4, max u3 u4, u2} C _inst_1 D _inst_2 G X) (CategoryTheory.NatTrans.app.{u3, max u1 u3 u4, max u3 u4, u2} C _inst_1 D _inst_2 F G α X)) (CategoryTheory.Abelian.FunctorCategory.imageObjIso.{u1, u2, u3, u4} C _inst_1 D _inst_2 _inst_3 F G α X))))
-but is expected to have type
- forall {C : Type.{u4}} [_inst_1 : CategoryTheory.Category.{u3, u4} C] {D : Type.{u2}} [_inst_2 : CategoryTheory.Category.{u1, u2} D] [_inst_3 : CategoryTheory.Abelian.{u1, u2} D _inst_2] {F : CategoryTheory.Functor.{u3, u1, u4, u2} C _inst_1 D _inst_2} {G : CategoryTheory.Functor.{u3, u1, u4, u2} C _inst_1 D _inst_2} (α : Quiver.Hom.{max (succ u4) (succ u1), max (max (max u4 u3) u2) u1} (CategoryTheory.Functor.{u3, u1, u4, u2} C _inst_1 D _inst_2) (CategoryTheory.CategoryStruct.toQuiver.{max u4 u1, max (max (max u4 u3) u2) u1} (CategoryTheory.Functor.{u3, u1, u4, u2} C _inst_1 D _inst_2) (CategoryTheory.Category.toCategoryStruct.{max u4 u1, max (max (max u4 u3) u2) u1} (CategoryTheory.Functor.{u3, u1, u4, u2} C _inst_1 D _inst_2) (CategoryTheory.Functor.category.{u3, u1, u4, u2} C _inst_1 D _inst_2))) F G) (X : C), Eq.{succ u1} (Quiver.Hom.{succ u1, u2} D (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} D (CategoryTheory.Category.toCategoryStruct.{u1, u2} D _inst_2)) (Prefunctor.obj.{succ u3, succ u1, u4, u2} C (CategoryTheory.CategoryStruct.toQuiver.{u3, u4} C (CategoryTheory.Category.toCategoryStruct.{u3, u4} C _inst_1)) D (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} D (CategoryTheory.Category.toCategoryStruct.{u1, u2} D _inst_2)) (CategoryTheory.Functor.toPrefunctor.{u3, u1, u4, u2} C _inst_1 D _inst_2 (CategoryTheory.Abelian.coimage.{max u4 u1, max (max (max u4 u3) u2) u1} (CategoryTheory.Functor.{u3, u1, u4, u2} C _inst_1 D _inst_2) (CategoryTheory.Functor.category.{u3, u1, u4, u2} C _inst_1 D _inst_2) (CategoryTheory.Limits.instHasZeroMorphismsFunctorCategory.{u3, u4, u1, u2} C _inst_1 D _inst_2 (CategoryTheory.Preadditive.preadditiveHasZeroMorphisms.{u1, u2} D _inst_2 (CategoryTheory.Abelian.toPreadditive.{u1, u2} D _inst_2 _inst_3))) (CategoryTheory.Limits.hasKernels_of_hasEqualizers.{max u4 u1, max (max (max u4 u3) u2) u1} (CategoryTheory.Functor.{u3, u1, u4, u2} C _inst_1 D _inst_2) (CategoryTheory.Functor.category.{u3, u1, u4, u2} C _inst_1 D _inst_2) (CategoryTheory.Limits.instHasZeroMorphismsFunctorCategory.{u3, u4, u1, u2} C _inst_1 D _inst_2 (CategoryTheory.Preadditive.preadditiveHasZeroMorphisms.{u1, u2} D _inst_2 (CategoryTheory.Abelian.toPreadditive.{u1, u2} D _inst_2 _inst_3))) (CategoryTheory.Limits.functorCategoryHasLimitsOfShape.{0, u3, 0, u4, u1, u2} D _inst_2 CategoryTheory.Limits.WalkingParallelPair CategoryTheory.Limits.walkingParallelPairHomCategory C _inst_1 (CategoryTheory.Abelian.hasEqualizers.{u1, u2} D _inst_2 _inst_3))) (CategoryTheory.Limits.hasCokernels_of_hasCoequalizers.{max u4 u1, max (max (max u4 u3) u2) u1} (CategoryTheory.Functor.{u3, u1, u4, u2} C _inst_1 D _inst_2) (CategoryTheory.Functor.category.{u3, u1, u4, u2} C _inst_1 D _inst_2) (CategoryTheory.Limits.instHasZeroMorphismsFunctorCategory.{u3, u4, u1, u2} C _inst_1 D _inst_2 (CategoryTheory.Preadditive.preadditiveHasZeroMorphisms.{u1, u2} D _inst_2 (CategoryTheory.Abelian.toPreadditive.{u1, u2} D _inst_2 _inst_3))) (CategoryTheory.Limits.functorCategoryHasColimitsOfShape.{0, u3, 0, u4, u1, u2} D _inst_2 CategoryTheory.Limits.WalkingParallelPair CategoryTheory.Limits.walkingParallelPairHomCategory C _inst_1 (CategoryTheory.Abelian.hasCoequalizers.{u1, u2} D _inst_2 _inst_3))) F G α)) X) (Prefunctor.obj.{succ u3, succ u1, u4, u2} C (CategoryTheory.CategoryStruct.toQuiver.{u3, u4} C (CategoryTheory.Category.toCategoryStruct.{u3, u4} C _inst_1)) D (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} D (CategoryTheory.Category.toCategoryStruct.{u1, u2} D _inst_2)) (CategoryTheory.Functor.toPrefunctor.{u3, u1, u4, u2} C _inst_1 D _inst_2 (CategoryTheory.Abelian.image.{max u4 u1, max (max (max u4 u3) u2) u1} (CategoryTheory.Functor.{u3, u1, u4, u2} C _inst_1 D _inst_2) (CategoryTheory.Functor.category.{u3, u1, u4, u2} C _inst_1 D _inst_2) (CategoryTheory.Limits.instHasZeroMorphismsFunctorCategory.{u3, u4, u1, u2} C _inst_1 D _inst_2 (CategoryTheory.Preadditive.preadditiveHasZeroMorphisms.{u1, u2} D _inst_2 (CategoryTheory.Abelian.toPreadditive.{u1, u2} D _inst_2 _inst_3))) (CategoryTheory.Limits.hasKernels_of_hasEqualizers.{max u4 u1, max (max (max u4 u3) u2) u1} (CategoryTheory.Functor.{u3, u1, u4, u2} C _inst_1 D _inst_2) (CategoryTheory.Functor.category.{u3, u1, u4, u2} C _inst_1 D _inst_2) (CategoryTheory.Limits.instHasZeroMorphismsFunctorCategory.{u3, u4, u1, u2} C _inst_1 D _inst_2 (CategoryTheory.Preadditive.preadditiveHasZeroMorphisms.{u1, u2} D _inst_2 (CategoryTheory.Abelian.toPreadditive.{u1, u2} D _inst_2 _inst_3))) (CategoryTheory.Limits.functorCategoryHasLimitsOfShape.{0, u3, 0, u4, u1, u2} D _inst_2 CategoryTheory.Limits.WalkingParallelPair CategoryTheory.Limits.walkingParallelPairHomCategory C _inst_1 (CategoryTheory.Abelian.hasEqualizers.{u1, u2} D _inst_2 _inst_3))) (CategoryTheory.Limits.hasCokernels_of_hasCoequalizers.{max u4 u1, max (max (max u4 u3) u2) u1} (CategoryTheory.Functor.{u3, u1, u4, u2} C _inst_1 D _inst_2) (CategoryTheory.Functor.category.{u3, u1, u4, u2} C _inst_1 D _inst_2) (CategoryTheory.Limits.instHasZeroMorphismsFunctorCategory.{u3, u4, u1, u2} C _inst_1 D _inst_2 (CategoryTheory.Preadditive.preadditiveHasZeroMorphisms.{u1, u2} D _inst_2 (CategoryTheory.Abelian.toPreadditive.{u1, u2} D _inst_2 _inst_3))) (CategoryTheory.Limits.functorCategoryHasColimitsOfShape.{0, u3, 0, u4, u1, u2} D _inst_2 CategoryTheory.Limits.WalkingParallelPair CategoryTheory.Limits.walkingParallelPairHomCategory C _inst_1 (CategoryTheory.Abelian.hasCoequalizers.{u1, u2} D _inst_2 _inst_3))) F G α)) X)) (CategoryTheory.NatTrans.app.{u3, u1, u4, u2} C _inst_1 D _inst_2 (CategoryTheory.Abelian.coimage.{max u4 u1, max (max (max u4 u3) u2) u1} (CategoryTheory.Functor.{u3, u1, u4, u2} C _inst_1 D _inst_2) (CategoryTheory.Functor.category.{u3, u1, u4, u2} C _inst_1 D _inst_2) (CategoryTheory.Limits.instHasZeroMorphismsFunctorCategory.{u3, u4, u1, u2} C _inst_1 D _inst_2 (CategoryTheory.Preadditive.preadditiveHasZeroMorphisms.{u1, u2} D _inst_2 (CategoryTheory.Abelian.toPreadditive.{u1, u2} D _inst_2 _inst_3))) (CategoryTheory.Limits.hasKernels_of_hasEqualizers.{max u4 u1, max (max (max u4 u3) u2) u1} (CategoryTheory.Functor.{u3, u1, u4, u2} C _inst_1 D _inst_2) (CategoryTheory.Functor.category.{u3, u1, u4, u2} C _inst_1 D _inst_2) (CategoryTheory.Limits.instHasZeroMorphismsFunctorCategory.{u3, u4, u1, u2} C _inst_1 D _inst_2 (CategoryTheory.Preadditive.preadditiveHasZeroMorphisms.{u1, u2} D _inst_2 (CategoryTheory.Abelian.toPreadditive.{u1, u2} D _inst_2 _inst_3))) (CategoryTheory.Limits.functorCategoryHasLimitsOfShape.{0, u3, 0, u4, u1, u2} D _inst_2 CategoryTheory.Limits.WalkingParallelPair CategoryTheory.Limits.walkingParallelPairHomCategory C _inst_1 (CategoryTheory.Abelian.hasEqualizers.{u1, u2} D _inst_2 _inst_3))) (CategoryTheory.Limits.hasCokernels_of_hasCoequalizers.{max u4 u1, max (max (max u4 u3) u2) u1} (CategoryTheory.Functor.{u3, u1, u4, u2} C _inst_1 D _inst_2) (CategoryTheory.Functor.category.{u3, u1, u4, u2} C _inst_1 D _inst_2) (CategoryTheory.Limits.instHasZeroMorphismsFunctorCategory.{u3, u4, u1, u2} C _inst_1 D _inst_2 (CategoryTheory.Preadditive.preadditiveHasZeroMorphisms.{u1, u2} D _inst_2 (CategoryTheory.Abelian.toPreadditive.{u1, u2} D _inst_2 _inst_3))) (CategoryTheory.Limits.functorCategoryHasColimitsOfShape.{0, u3, 0, u4, u1, u2} D _inst_2 CategoryTheory.Limits.WalkingParallelPair CategoryTheory.Limits.walkingParallelPairHomCategory C _inst_1 (CategoryTheory.Abelian.hasCoequalizers.{u1, u2} D _inst_2 _inst_3))) F G α) (CategoryTheory.Abelian.image.{max u4 u1, max (max (max u4 u3) u2) u1} (CategoryTheory.Functor.{u3, u1, u4, u2} C _inst_1 D _inst_2) (CategoryTheory.Functor.category.{u3, u1, u4, u2} C _inst_1 D _inst_2) (CategoryTheory.Limits.instHasZeroMorphismsFunctorCategory.{u3, u4, u1, u2} C _inst_1 D _inst_2 (CategoryTheory.Preadditive.preadditiveHasZeroMorphisms.{u1, u2} D _inst_2 (CategoryTheory.Abelian.toPreadditive.{u1, u2} D _inst_2 _inst_3))) (CategoryTheory.Limits.hasKernels_of_hasEqualizers.{max u4 u1, max (max (max u4 u3) u2) u1} (CategoryTheory.Functor.{u3, u1, u4, u2} C _inst_1 D _inst_2) (CategoryTheory.Functor.category.{u3, u1, u4, u2} C _inst_1 D _inst_2) (CategoryTheory.Limits.instHasZeroMorphismsFunctorCategory.{u3, u4, u1, u2} C _inst_1 D _inst_2 (CategoryTheory.Preadditive.preadditiveHasZeroMorphisms.{u1, u2} D _inst_2 (CategoryTheory.Abelian.toPreadditive.{u1, u2} D _inst_2 _inst_3))) (CategoryTheory.Limits.functorCategoryHasLimitsOfShape.{0, u3, 0, u4, u1, u2} D _inst_2 CategoryTheory.Limits.WalkingParallelPair CategoryTheory.Limits.walkingParallelPairHomCategory C _inst_1 (CategoryTheory.Abelian.hasEqualizers.{u1, u2} D _inst_2 _inst_3))) (CategoryTheory.Limits.hasCokernels_of_hasCoequalizers.{max u4 u1, max (max (max u4 u3) u2) u1} (CategoryTheory.Functor.{u3, u1, u4, u2} C _inst_1 D _inst_2) (CategoryTheory.Functor.category.{u3, u1, u4, u2} C _inst_1 D _inst_2) (CategoryTheory.Limits.instHasZeroMorphismsFunctorCategory.{u3, u4, u1, u2} C _inst_1 D _inst_2 (CategoryTheory.Preadditive.preadditiveHasZeroMorphisms.{u1, u2} D _inst_2 (CategoryTheory.Abelian.toPreadditive.{u1, u2} D _inst_2 _inst_3))) (CategoryTheory.Limits.functorCategoryHasColimitsOfShape.{0, u3, 0, u4, u1, u2} D _inst_2 CategoryTheory.Limits.WalkingParallelPair CategoryTheory.Limits.walkingParallelPairHomCategory C _inst_1 (CategoryTheory.Abelian.hasCoequalizers.{u1, u2} D _inst_2 _inst_3))) F G α) (CategoryTheory.Abelian.coimageImageComparison.{max u4 u1, max (max (max u4 u3) u2) u1} (CategoryTheory.Functor.{u3, u1, u4, u2} C _inst_1 D _inst_2) (CategoryTheory.Functor.category.{u3, u1, u4, u2} C _inst_1 D _inst_2) (CategoryTheory.Limits.instHasZeroMorphismsFunctorCategory.{u3, u4, u1, u2} C _inst_1 D _inst_2 (CategoryTheory.Preadditive.preadditiveHasZeroMorphisms.{u1, u2} D _inst_2 (CategoryTheory.Abelian.toPreadditive.{u1, u2} D _inst_2 _inst_3))) (CategoryTheory.Limits.hasKernels_of_hasEqualizers.{max u4 u1, max (max (max u4 u3) u2) u1} (CategoryTheory.Functor.{u3, u1, u4, u2} C _inst_1 D _inst_2) (CategoryTheory.Functor.category.{u3, u1, u4, u2} C _inst_1 D _inst_2) (CategoryTheory.Limits.instHasZeroMorphismsFunctorCategory.{u3, u4, u1, u2} C _inst_1 D _inst_2 (CategoryTheory.Preadditive.preadditiveHasZeroMorphisms.{u1, u2} D _inst_2 (CategoryTheory.Abelian.toPreadditive.{u1, u2} D _inst_2 _inst_3))) (CategoryTheory.Limits.functorCategoryHasLimitsOfShape.{0, u3, 0, u4, u1, u2} D _inst_2 CategoryTheory.Limits.WalkingParallelPair CategoryTheory.Limits.walkingParallelPairHomCategory C _inst_1 (CategoryTheory.Abelian.hasEqualizers.{u1, u2} D _inst_2 _inst_3))) (CategoryTheory.Limits.hasCokernels_of_hasCoequalizers.{max u4 u1, max (max (max u4 u3) u2) u1} (CategoryTheory.Functor.{u3, u1, u4, u2} C _inst_1 D _inst_2) (CategoryTheory.Functor.category.{u3, u1, u4, u2} C _inst_1 D _inst_2) (CategoryTheory.Limits.instHasZeroMorphismsFunctorCategory.{u3, u4, u1, u2} C _inst_1 D _inst_2 (CategoryTheory.Preadditive.preadditiveHasZeroMorphisms.{u1, u2} D _inst_2 (CategoryTheory.Abelian.toPreadditive.{u1, u2} D _inst_2 _inst_3))) (CategoryTheory.Limits.functorCategoryHasColimitsOfShape.{0, u3, 0, u4, u1, u2} D _inst_2 CategoryTheory.Limits.WalkingParallelPair CategoryTheory.Limits.walkingParallelPairHomCategory C _inst_1 (CategoryTheory.Abelian.hasCoequalizers.{u1, u2} D _inst_2 _inst_3))) F G α) X) (CategoryTheory.CategoryStruct.comp.{u1, u2} D (CategoryTheory.Category.toCategoryStruct.{u1, u2} D _inst_2) (Prefunctor.obj.{succ u3, succ u1, u4, u2} C (CategoryTheory.CategoryStruct.toQuiver.{u3, u4} C (CategoryTheory.Category.toCategoryStruct.{u3, u4} C _inst_1)) D (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} D (CategoryTheory.Category.toCategoryStruct.{u1, u2} D _inst_2)) (CategoryTheory.Functor.toPrefunctor.{u3, u1, u4, u2} C _inst_1 D _inst_2 (CategoryTheory.Abelian.coimage.{max u4 u1, max (max (max u4 u3) u2) u1} (CategoryTheory.Functor.{u3, u1, u4, u2} C _inst_1 D _inst_2) (CategoryTheory.Functor.category.{u3, u1, u4, u2} C _inst_1 D _inst_2) (CategoryTheory.Limits.instHasZeroMorphismsFunctorCategory.{u3, u4, u1, u2} C _inst_1 D _inst_2 (CategoryTheory.Preadditive.preadditiveHasZeroMorphisms.{u1, u2} D _inst_2 (CategoryTheory.Abelian.toPreadditive.{u1, u2} D _inst_2 _inst_3))) (CategoryTheory.Limits.hasKernels_of_hasEqualizers.{max u4 u1, max (max (max u4 u3) u2) u1} (CategoryTheory.Functor.{u3, u1, u4, u2} C _inst_1 D _inst_2) (CategoryTheory.Functor.category.{u3, u1, u4, u2} C _inst_1 D _inst_2) (CategoryTheory.Limits.instHasZeroMorphismsFunctorCategory.{u3, u4, u1, u2} C _inst_1 D _inst_2 (CategoryTheory.Preadditive.preadditiveHasZeroMorphisms.{u1, u2} D _inst_2 (CategoryTheory.Abelian.toPreadditive.{u1, u2} D _inst_2 _inst_3))) (CategoryTheory.Limits.functorCategoryHasLimitsOfShape.{0, u3, 0, u4, u1, u2} D _inst_2 CategoryTheory.Limits.WalkingParallelPair CategoryTheory.Limits.walkingParallelPairHomCategory C _inst_1 (CategoryTheory.Abelian.hasEqualizers.{u1, u2} D _inst_2 _inst_3))) (CategoryTheory.Limits.hasCokernels_of_hasCoequalizers.{max u4 u1, max (max (max u4 u3) u2) u1} (CategoryTheory.Functor.{u3, u1, u4, u2} C _inst_1 D _inst_2) (CategoryTheory.Functor.category.{u3, u1, u4, u2} C _inst_1 D _inst_2) (CategoryTheory.Limits.instHasZeroMorphismsFunctorCategory.{u3, u4, u1, u2} C _inst_1 D _inst_2 (CategoryTheory.Preadditive.preadditiveHasZeroMorphisms.{u1, u2} D _inst_2 (CategoryTheory.Abelian.toPreadditive.{u1, u2} D _inst_2 _inst_3))) (CategoryTheory.Limits.functorCategoryHasColimitsOfShape.{0, u3, 0, u4, u1, u2} D _inst_2 CategoryTheory.Limits.WalkingParallelPair CategoryTheory.Limits.walkingParallelPairHomCategory C _inst_1 (CategoryTheory.Abelian.hasCoequalizers.{u1, u2} D _inst_2 _inst_3))) F G α)) X) (CategoryTheory.Abelian.coimage.{u1, u2} D _inst_2 (CategoryTheory.Preadditive.preadditiveHasZeroMorphisms.{u1, u2} D _inst_2 (CategoryTheory.Abelian.toPreadditive.{u1, u2} D _inst_2 _inst_3)) (CategoryTheory.Limits.hasKernels_of_hasEqualizers.{u1, u2} D _inst_2 (CategoryTheory.Preadditive.preadditiveHasZeroMorphisms.{u1, u2} D _inst_2 (CategoryTheory.Abelian.toPreadditive.{u1, u2} D _inst_2 _inst_3)) (CategoryTheory.Abelian.hasEqualizers.{u1, u2} D _inst_2 _inst_3)) (CategoryTheory.Limits.hasCokernels_of_hasCoequalizers.{u1, u2} D _inst_2 (CategoryTheory.Preadditive.preadditiveHasZeroMorphisms.{u1, u2} D _inst_2 (CategoryTheory.Abelian.toPreadditive.{u1, u2} D _inst_2 _inst_3)) (CategoryTheory.Abelian.hasCoequalizers.{u1, u2} D _inst_2 _inst_3)) (Prefunctor.obj.{succ u3, succ u1, u4, u2} C (CategoryTheory.CategoryStruct.toQuiver.{u3, u4} C (CategoryTheory.Category.toCategoryStruct.{u3, u4} C _inst_1)) D (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} D (CategoryTheory.Category.toCategoryStruct.{u1, u2} D _inst_2)) (CategoryTheory.Functor.toPrefunctor.{u3, u1, u4, u2} C _inst_1 D _inst_2 F) X) (Prefunctor.obj.{succ u3, succ u1, u4, u2} C (CategoryTheory.CategoryStruct.toQuiver.{u3, u4} C (CategoryTheory.Category.toCategoryStruct.{u3, u4} C _inst_1)) D (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} D (CategoryTheory.Category.toCategoryStruct.{u1, u2} D _inst_2)) (CategoryTheory.Functor.toPrefunctor.{u3, u1, u4, u2} C _inst_1 D _inst_2 G) X) (CategoryTheory.NatTrans.app.{u3, u1, u4, u2} C _inst_1 D _inst_2 F G α X)) (Prefunctor.obj.{succ u3, succ u1, u4, u2} C (CategoryTheory.CategoryStruct.toQuiver.{u3, u4} C (CategoryTheory.Category.toCategoryStruct.{u3, u4} C _inst_1)) D (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} D (CategoryTheory.Category.toCategoryStruct.{u1, u2} D _inst_2)) (CategoryTheory.Functor.toPrefunctor.{u3, u1, u4, u2} C _inst_1 D _inst_2 (CategoryTheory.Abelian.image.{max u4 u1, max (max (max u4 u3) u2) u1} (CategoryTheory.Functor.{u3, u1, u4, u2} C _inst_1 D _inst_2) (CategoryTheory.Functor.category.{u3, u1, u4, u2} C _inst_1 D _inst_2) (CategoryTheory.Limits.instHasZeroMorphismsFunctorCategory.{u3, u4, u1, u2} C _inst_1 D _inst_2 (CategoryTheory.Preadditive.preadditiveHasZeroMorphisms.{u1, u2} D _inst_2 (CategoryTheory.Abelian.toPreadditive.{u1, u2} D _inst_2 _inst_3))) (CategoryTheory.Limits.hasKernels_of_hasEqualizers.{max u4 u1, max (max (max u4 u3) u2) u1} (CategoryTheory.Functor.{u3, u1, u4, u2} C _inst_1 D _inst_2) (CategoryTheory.Functor.category.{u3, u1, u4, u2} C _inst_1 D _inst_2) (CategoryTheory.Limits.instHasZeroMorphismsFunctorCategory.{u3, u4, u1, u2} C _inst_1 D _inst_2 (CategoryTheory.Preadditive.preadditiveHasZeroMorphisms.{u1, u2} D _inst_2 (CategoryTheory.Abelian.toPreadditive.{u1, u2} D _inst_2 _inst_3))) (CategoryTheory.Limits.functorCategoryHasLimitsOfShape.{0, u3, 0, u4, u1, u2} D _inst_2 CategoryTheory.Limits.WalkingParallelPair CategoryTheory.Limits.walkingParallelPairHomCategory C _inst_1 (CategoryTheory.Abelian.hasEqualizers.{u1, u2} D _inst_2 _inst_3))) (CategoryTheory.Limits.hasCokernels_of_hasCoequalizers.{max u4 u1, max (max (max u4 u3) u2) u1} (CategoryTheory.Functor.{u3, u1, u4, u2} C _inst_1 D _inst_2) (CategoryTheory.Functor.category.{u3, u1, u4, u2} C _inst_1 D _inst_2) (CategoryTheory.Limits.instHasZeroMorphismsFunctorCategory.{u3, u4, u1, u2} C _inst_1 D _inst_2 (CategoryTheory.Preadditive.preadditiveHasZeroMorphisms.{u1, u2} D _inst_2 (CategoryTheory.Abelian.toPreadditive.{u1, u2} D _inst_2 _inst_3))) (CategoryTheory.Limits.functorCategoryHasColimitsOfShape.{0, u3, 0, u4, u1, u2} D _inst_2 CategoryTheory.Limits.WalkingParallelPair CategoryTheory.Limits.walkingParallelPairHomCategory C _inst_1 (CategoryTheory.Abelian.hasCoequalizers.{u1, u2} D _inst_2 _inst_3))) F G α)) X) (CategoryTheory.Iso.hom.{u1, u2} D _inst_2 (Prefunctor.obj.{succ u3, succ u1, u4, u2} C (CategoryTheory.CategoryStruct.toQuiver.{u3, u4} C (CategoryTheory.Category.toCategoryStruct.{u3, u4} C _inst_1)) D (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} D (CategoryTheory.Category.toCategoryStruct.{u1, u2} D _inst_2)) (CategoryTheory.Functor.toPrefunctor.{u3, u1, u4, u2} C _inst_1 D _inst_2 (CategoryTheory.Abelian.coimage.{max u4 u1, max (max (max u4 u3) u2) u1} (CategoryTheory.Functor.{u3, u1, u4, u2} C _inst_1 D _inst_2) (CategoryTheory.Functor.category.{u3, u1, u4, u2} C _inst_1 D _inst_2) (CategoryTheory.Limits.instHasZeroMorphismsFunctorCategory.{u3, u4, u1, u2} C _inst_1 D _inst_2 (CategoryTheory.Preadditive.preadditiveHasZeroMorphisms.{u1, u2} D _inst_2 (CategoryTheory.Abelian.toPreadditive.{u1, u2} D _inst_2 _inst_3))) (CategoryTheory.Limits.hasKernels_of_hasEqualizers.{max u4 u1, max (max (max u4 u3) u2) u1} (CategoryTheory.Functor.{u3, u1, u4, u2} C _inst_1 D _inst_2) (CategoryTheory.Functor.category.{u3, u1, u4, u2} C _inst_1 D _inst_2) (CategoryTheory.Limits.instHasZeroMorphismsFunctorCategory.{u3, u4, u1, u2} C _inst_1 D _inst_2 (CategoryTheory.Preadditive.preadditiveHasZeroMorphisms.{u1, u2} D _inst_2 (CategoryTheory.Abelian.toPreadditive.{u1, u2} D _inst_2 _inst_3))) (CategoryTheory.Limits.functorCategoryHasLimitsOfShape.{0, u3, 0, u4, u1, u2} D _inst_2 CategoryTheory.Limits.WalkingParallelPair CategoryTheory.Limits.walkingParallelPairHomCategory C _inst_1 (CategoryTheory.Abelian.hasEqualizers.{u1, u2} D _inst_2 _inst_3))) (CategoryTheory.Limits.hasCokernels_of_hasCoequalizers.{max u4 u1, max (max (max u4 u3) u2) u1} (CategoryTheory.Functor.{u3, u1, u4, u2} C _inst_1 D _inst_2) (CategoryTheory.Functor.category.{u3, u1, u4, u2} C _inst_1 D _inst_2) (CategoryTheory.Limits.instHasZeroMorphismsFunctorCategory.{u3, u4, u1, u2} C _inst_1 D _inst_2 (CategoryTheory.Preadditive.preadditiveHasZeroMorphisms.{u1, u2} D _inst_2 (CategoryTheory.Abelian.toPreadditive.{u1, u2} D _inst_2 _inst_3))) (CategoryTheory.Limits.functorCategoryHasColimitsOfShape.{0, u3, 0, u4, u1, u2} D _inst_2 CategoryTheory.Limits.WalkingParallelPair CategoryTheory.Limits.walkingParallelPairHomCategory C _inst_1 (CategoryTheory.Abelian.hasCoequalizers.{u1, u2} D _inst_2 _inst_3))) F G α)) X) (CategoryTheory.Abelian.coimage.{u1, u2} D _inst_2 (CategoryTheory.Preadditive.preadditiveHasZeroMorphisms.{u1, u2} D _inst_2 (CategoryTheory.Abelian.toPreadditive.{u1, u2} D _inst_2 _inst_3)) (CategoryTheory.Limits.hasKernels_of_hasEqualizers.{u1, u2} D _inst_2 (CategoryTheory.Preadditive.preadditiveHasZeroMorphisms.{u1, u2} D _inst_2 (CategoryTheory.Abelian.toPreadditive.{u1, u2} D _inst_2 _inst_3)) (CategoryTheory.Abelian.hasEqualizers.{u1, u2} D _inst_2 _inst_3)) (CategoryTheory.Limits.hasCokernels_of_hasCoequalizers.{u1, u2} D _inst_2 (CategoryTheory.Preadditive.preadditiveHasZeroMorphisms.{u1, u2} D _inst_2 (CategoryTheory.Abelian.toPreadditive.{u1, u2} D _inst_2 _inst_3)) (CategoryTheory.Abelian.hasCoequalizers.{u1, u2} D _inst_2 _inst_3)) (Prefunctor.obj.{succ u3, succ u1, u4, u2} C (CategoryTheory.CategoryStruct.toQuiver.{u3, u4} C (CategoryTheory.Category.toCategoryStruct.{u3, u4} C _inst_1)) D (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} D (CategoryTheory.Category.toCategoryStruct.{u1, u2} D _inst_2)) (CategoryTheory.Functor.toPrefunctor.{u3, u1, u4, u2} C _inst_1 D _inst_2 F) X) (Prefunctor.obj.{succ u3, succ u1, u4, u2} C (CategoryTheory.CategoryStruct.toQuiver.{u3, u4} C (CategoryTheory.Category.toCategoryStruct.{u3, u4} C _inst_1)) D (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} D (CategoryTheory.Category.toCategoryStruct.{u1, u2} D _inst_2)) (CategoryTheory.Functor.toPrefunctor.{u3, u1, u4, u2} C _inst_1 D _inst_2 G) X) (CategoryTheory.NatTrans.app.{u3, u1, u4, u2} C _inst_1 D _inst_2 F G α X)) (CategoryTheory.Abelian.FunctorCategory.coimageObjIso.{u1, u2, u3, u4} C _inst_1 D _inst_2 _inst_3 F G α X)) (CategoryTheory.CategoryStruct.comp.{u1, u2} D (CategoryTheory.Category.toCategoryStruct.{u1, u2} D _inst_2) (CategoryTheory.Abelian.coimage.{u1, u2} D _inst_2 (CategoryTheory.Preadditive.preadditiveHasZeroMorphisms.{u1, u2} D _inst_2 (CategoryTheory.Abelian.toPreadditive.{u1, u2} D _inst_2 _inst_3)) (CategoryTheory.Limits.hasKernels_of_hasEqualizers.{u1, u2} D _inst_2 (CategoryTheory.Preadditive.preadditiveHasZeroMorphisms.{u1, u2} D _inst_2 (CategoryTheory.Abelian.toPreadditive.{u1, u2} D _inst_2 _inst_3)) (CategoryTheory.Abelian.hasEqualizers.{u1, u2} D _inst_2 _inst_3)) (CategoryTheory.Limits.hasCokernels_of_hasCoequalizers.{u1, u2} D _inst_2 (CategoryTheory.Preadditive.preadditiveHasZeroMorphisms.{u1, u2} D _inst_2 (CategoryTheory.Abelian.toPreadditive.{u1, u2} D _inst_2 _inst_3)) (CategoryTheory.Abelian.hasCoequalizers.{u1, u2} D _inst_2 _inst_3)) (Prefunctor.obj.{succ u3, succ u1, u4, u2} C (CategoryTheory.CategoryStruct.toQuiver.{u3, u4} C (CategoryTheory.Category.toCategoryStruct.{u3, u4} C _inst_1)) D (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} D (CategoryTheory.Category.toCategoryStruct.{u1, u2} D _inst_2)) (CategoryTheory.Functor.toPrefunctor.{u3, u1, u4, u2} C _inst_1 D _inst_2 F) X) (Prefunctor.obj.{succ u3, succ u1, u4, u2} C (CategoryTheory.CategoryStruct.toQuiver.{u3, u4} C (CategoryTheory.Category.toCategoryStruct.{u3, u4} C _inst_1)) D (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} D (CategoryTheory.Category.toCategoryStruct.{u1, u2} D _inst_2)) (CategoryTheory.Functor.toPrefunctor.{u3, u1, u4, u2} C _inst_1 D _inst_2 G) X) (CategoryTheory.NatTrans.app.{u3, u1, u4, u2} C _inst_1 D _inst_2 F G α X)) (CategoryTheory.Abelian.image.{u1, u2} D _inst_2 (CategoryTheory.Preadditive.preadditiveHasZeroMorphisms.{u1, u2} D _inst_2 (CategoryTheory.Abelian.toPreadditive.{u1, u2} D _inst_2 _inst_3)) (CategoryTheory.Limits.hasKernels_of_hasEqualizers.{u1, u2} D _inst_2 (CategoryTheory.Preadditive.preadditiveHasZeroMorphisms.{u1, u2} D _inst_2 (CategoryTheory.Abelian.toPreadditive.{u1, u2} D _inst_2 _inst_3)) (CategoryTheory.Abelian.hasEqualizers.{u1, u2} D _inst_2 _inst_3)) (CategoryTheory.Limits.hasCokernels_of_hasCoequalizers.{u1, u2} D _inst_2 (CategoryTheory.Preadditive.preadditiveHasZeroMorphisms.{u1, u2} D _inst_2 (CategoryTheory.Abelian.toPreadditive.{u1, u2} D _inst_2 _inst_3)) (CategoryTheory.Abelian.hasCoequalizers.{u1, u2} D _inst_2 _inst_3)) (Prefunctor.obj.{succ u3, succ u1, u4, u2} C (CategoryTheory.CategoryStruct.toQuiver.{u3, u4} C (CategoryTheory.Category.toCategoryStruct.{u3, u4} C _inst_1)) D (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} D (CategoryTheory.Category.toCategoryStruct.{u1, u2} D _inst_2)) (CategoryTheory.Functor.toPrefunctor.{u3, u1, u4, u2} C _inst_1 D _inst_2 F) X) (Prefunctor.obj.{succ u3, succ u1, u4, u2} C (CategoryTheory.CategoryStruct.toQuiver.{u3, u4} C (CategoryTheory.Category.toCategoryStruct.{u3, u4} C _inst_1)) D (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} D (CategoryTheory.Category.toCategoryStruct.{u1, u2} D _inst_2)) (CategoryTheory.Functor.toPrefunctor.{u3, u1, u4, u2} C _inst_1 D _inst_2 G) X) (CategoryTheory.NatTrans.app.{u3, u1, u4, u2} C _inst_1 D _inst_2 F G α X)) (Prefunctor.obj.{succ u3, succ u1, u4, u2} C (CategoryTheory.CategoryStruct.toQuiver.{u3, u4} C (CategoryTheory.Category.toCategoryStruct.{u3, u4} C _inst_1)) D (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} D (CategoryTheory.Category.toCategoryStruct.{u1, u2} D _inst_2)) (CategoryTheory.Functor.toPrefunctor.{u3, u1, u4, u2} C _inst_1 D _inst_2 (CategoryTheory.Abelian.image.{max u4 u1, max (max (max u4 u3) u2) u1} (CategoryTheory.Functor.{u3, u1, u4, u2} C _inst_1 D _inst_2) (CategoryTheory.Functor.category.{u3, u1, u4, u2} C _inst_1 D _inst_2) (CategoryTheory.Limits.instHasZeroMorphismsFunctorCategory.{u3, u4, u1, u2} C _inst_1 D _inst_2 (CategoryTheory.Preadditive.preadditiveHasZeroMorphisms.{u1, u2} D _inst_2 (CategoryTheory.Abelian.toPreadditive.{u1, u2} D _inst_2 _inst_3))) (CategoryTheory.Limits.hasKernels_of_hasEqualizers.{max u4 u1, max (max (max u4 u3) u2) u1} (CategoryTheory.Functor.{u3, u1, u4, u2} C _inst_1 D _inst_2) (CategoryTheory.Functor.category.{u3, u1, u4, u2} C _inst_1 D _inst_2) (CategoryTheory.Limits.instHasZeroMorphismsFunctorCategory.{u3, u4, u1, u2} C _inst_1 D _inst_2 (CategoryTheory.Preadditive.preadditiveHasZeroMorphisms.{u1, u2} D _inst_2 (CategoryTheory.Abelian.toPreadditive.{u1, u2} D _inst_2 _inst_3))) (CategoryTheory.Limits.functorCategoryHasLimitsOfShape.{0, u3, 0, u4, u1, u2} D _inst_2 CategoryTheory.Limits.WalkingParallelPair CategoryTheory.Limits.walkingParallelPairHomCategory C _inst_1 (CategoryTheory.Abelian.hasEqualizers.{u1, u2} D _inst_2 _inst_3))) (CategoryTheory.Limits.hasCokernels_of_hasCoequalizers.{max u4 u1, max (max (max u4 u3) u2) u1} (CategoryTheory.Functor.{u3, u1, u4, u2} C _inst_1 D _inst_2) (CategoryTheory.Functor.category.{u3, u1, u4, u2} C _inst_1 D _inst_2) (CategoryTheory.Limits.instHasZeroMorphismsFunctorCategory.{u3, u4, u1, u2} C _inst_1 D _inst_2 (CategoryTheory.Preadditive.preadditiveHasZeroMorphisms.{u1, u2} D _inst_2 (CategoryTheory.Abelian.toPreadditive.{u1, u2} D _inst_2 _inst_3))) (CategoryTheory.Limits.functorCategoryHasColimitsOfShape.{0, u3, 0, u4, u1, u2} D _inst_2 CategoryTheory.Limits.WalkingParallelPair CategoryTheory.Limits.walkingParallelPairHomCategory C _inst_1 (CategoryTheory.Abelian.hasCoequalizers.{u1, u2} D _inst_2 _inst_3))) F G α)) X) (CategoryTheory.Abelian.coimageImageComparison.{u1, u2} D _inst_2 (CategoryTheory.Preadditive.preadditiveHasZeroMorphisms.{u1, u2} D _inst_2 (CategoryTheory.Abelian.toPreadditive.{u1, u2} D _inst_2 _inst_3)) (CategoryTheory.Limits.hasKernels_of_hasEqualizers.{u1, u2} D _inst_2 (CategoryTheory.Preadditive.preadditiveHasZeroMorphisms.{u1, u2} D _inst_2 (CategoryTheory.Abelian.toPreadditive.{u1, u2} D _inst_2 _inst_3)) (CategoryTheory.Abelian.hasEqualizers.{u1, u2} D _inst_2 _inst_3)) (CategoryTheory.Limits.hasCokernels_of_hasCoequalizers.{u1, u2} D _inst_2 (CategoryTheory.Preadditive.preadditiveHasZeroMorphisms.{u1, u2} D _inst_2 (CategoryTheory.Abelian.toPreadditive.{u1, u2} D _inst_2 _inst_3)) (CategoryTheory.Abelian.hasCoequalizers.{u1, u2} D _inst_2 _inst_3)) (Prefunctor.obj.{succ u3, succ u1, u4, u2} C (CategoryTheory.CategoryStruct.toQuiver.{u3, u4} C (CategoryTheory.Category.toCategoryStruct.{u3, u4} C _inst_1)) D (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} D (CategoryTheory.Category.toCategoryStruct.{u1, u2} D _inst_2)) (CategoryTheory.Functor.toPrefunctor.{u3, u1, u4, u2} C _inst_1 D _inst_2 F) X) (Prefunctor.obj.{succ u3, succ u1, u4, u2} C (CategoryTheory.CategoryStruct.toQuiver.{u3, u4} C (CategoryTheory.Category.toCategoryStruct.{u3, u4} C _inst_1)) D (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} D (CategoryTheory.Category.toCategoryStruct.{u1, u2} D _inst_2)) (CategoryTheory.Functor.toPrefunctor.{u3, u1, u4, u2} C _inst_1 D _inst_2 G) X) (CategoryTheory.NatTrans.app.{u3, u1, u4, u2} C _inst_1 D _inst_2 F G α X)) (CategoryTheory.Iso.inv.{u1, u2} D _inst_2 (Prefunctor.obj.{succ u3, succ u1, u4, u2} C (CategoryTheory.CategoryStruct.toQuiver.{u3, u4} C (CategoryTheory.Category.toCategoryStruct.{u3, u4} C _inst_1)) D (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} D (CategoryTheory.Category.toCategoryStruct.{u1, u2} D _inst_2)) (CategoryTheory.Functor.toPrefunctor.{u3, u1, u4, u2} C _inst_1 D _inst_2 (CategoryTheory.Abelian.image.{max u4 u1, max (max (max u4 u3) u2) u1} (CategoryTheory.Functor.{u3, u1, u4, u2} C _inst_1 D _inst_2) (CategoryTheory.Functor.category.{u3, u1, u4, u2} C _inst_1 D _inst_2) (CategoryTheory.Limits.instHasZeroMorphismsFunctorCategory.{u3, u4, u1, u2} C _inst_1 D _inst_2 (CategoryTheory.Preadditive.preadditiveHasZeroMorphisms.{u1, u2} D _inst_2 (CategoryTheory.Abelian.toPreadditive.{u1, u2} D _inst_2 _inst_3))) (CategoryTheory.Limits.hasKernels_of_hasEqualizers.{max u4 u1, max (max (max u4 u3) u2) u1} (CategoryTheory.Functor.{u3, u1, u4, u2} C _inst_1 D _inst_2) (CategoryTheory.Functor.category.{u3, u1, u4, u2} C _inst_1 D _inst_2) (CategoryTheory.Limits.instHasZeroMorphismsFunctorCategory.{u3, u4, u1, u2} C _inst_1 D _inst_2 (CategoryTheory.Preadditive.preadditiveHasZeroMorphisms.{u1, u2} D _inst_2 (CategoryTheory.Abelian.toPreadditive.{u1, u2} D _inst_2 _inst_3))) (CategoryTheory.Limits.functorCategoryHasLimitsOfShape.{0, u3, 0, u4, u1, u2} D _inst_2 CategoryTheory.Limits.WalkingParallelPair CategoryTheory.Limits.walkingParallelPairHomCategory C _inst_1 (CategoryTheory.Abelian.hasEqualizers.{u1, u2} D _inst_2 _inst_3))) (CategoryTheory.Limits.hasCokernels_of_hasCoequalizers.{max u4 u1, max (max (max u4 u3) u2) u1} (CategoryTheory.Functor.{u3, u1, u4, u2} C _inst_1 D _inst_2) (CategoryTheory.Functor.category.{u3, u1, u4, u2} C _inst_1 D _inst_2) (CategoryTheory.Limits.instHasZeroMorphismsFunctorCategory.{u3, u4, u1, u2} C _inst_1 D _inst_2 (CategoryTheory.Preadditive.preadditiveHasZeroMorphisms.{u1, u2} D _inst_2 (CategoryTheory.Abelian.toPreadditive.{u1, u2} D _inst_2 _inst_3))) (CategoryTheory.Limits.functorCategoryHasColimitsOfShape.{0, u3, 0, u4, u1, u2} D _inst_2 CategoryTheory.Limits.WalkingParallelPair CategoryTheory.Limits.walkingParallelPairHomCategory C _inst_1 (CategoryTheory.Abelian.hasCoequalizers.{u1, u2} D _inst_2 _inst_3))) F G α)) X) (CategoryTheory.Abelian.image.{u1, u2} D _inst_2 (CategoryTheory.Preadditive.preadditiveHasZeroMorphisms.{u1, u2} D _inst_2 (CategoryTheory.Abelian.toPreadditive.{u1, u2} D _inst_2 _inst_3)) (CategoryTheory.Limits.hasKernels_of_hasEqualizers.{u1, u2} D _inst_2 (CategoryTheory.Preadditive.preadditiveHasZeroMorphisms.{u1, u2} D _inst_2 (CategoryTheory.Abelian.toPreadditive.{u1, u2} D _inst_2 _inst_3)) (CategoryTheory.Abelian.hasEqualizers.{u1, u2} D _inst_2 _inst_3)) (CategoryTheory.Limits.hasCokernels_of_hasCoequalizers.{u1, u2} D _inst_2 (CategoryTheory.Preadditive.preadditiveHasZeroMorphisms.{u1, u2} D _inst_2 (CategoryTheory.Abelian.toPreadditive.{u1, u2} D _inst_2 _inst_3)) (CategoryTheory.Abelian.hasCoequalizers.{u1, u2} D _inst_2 _inst_3)) (Prefunctor.obj.{succ u3, succ u1, u4, u2} C (CategoryTheory.CategoryStruct.toQuiver.{u3, u4} C (CategoryTheory.Category.toCategoryStruct.{u3, u4} C _inst_1)) D (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} D (CategoryTheory.Category.toCategoryStruct.{u1, u2} D _inst_2)) (CategoryTheory.Functor.toPrefunctor.{u3, u1, u4, u2} C _inst_1 D _inst_2 F) X) (Prefunctor.obj.{succ u3, succ u1, u4, u2} C (CategoryTheory.CategoryStruct.toQuiver.{u3, u4} C (CategoryTheory.Category.toCategoryStruct.{u3, u4} C _inst_1)) D (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} D (CategoryTheory.Category.toCategoryStruct.{u1, u2} D _inst_2)) (CategoryTheory.Functor.toPrefunctor.{u3, u1, u4, u2} C _inst_1 D _inst_2 G) X) (CategoryTheory.NatTrans.app.{u3, u1, u4, u2} C _inst_1 D _inst_2 F G α X)) (CategoryTheory.Abelian.FunctorCategory.imageObjIso.{u1, u2, u3, u4} C _inst_1 D _inst_2 _inst_3 F G α X))))
+<too large>
Case conversion may be inaccurate. Consider using '#align category_theory.abelian.functor_category.coimage_image_comparison_app' CategoryTheory.Abelian.FunctorCategory.coimageImageComparison_app'ₓ'. -/
theorem coimageImageComparison_app' :
(coimageImageComparison α).app X =
@@ -114,10 +108,7 @@ theorem coimageImageComparison_app' :
#align category_theory.abelian.functor_category.coimage_image_comparison_app' CategoryTheory.Abelian.FunctorCategory.coimageImageComparison_app'
/- warning: category_theory.abelian.functor_category.functor_category_is_iso_coimage_image_comparison -> CategoryTheory.Abelian.FunctorCategory.functor_category_isIso_coimageImageComparison is a dubious translation:
-lean 3 declaration is
- forall {C : Type.{max u3 u4}} [_inst_1 : CategoryTheory.Category.{u3, max u3 u4} C] {D : Type.{u2}} [_inst_2 : CategoryTheory.Category.{max u1 u3 u4, u2} D] [_inst_3 : CategoryTheory.Abelian.{max u1 u3 u4, u2} D _inst_2] {F : CategoryTheory.Functor.{u3, max u1 u3 u4, max u3 u4, u2} C _inst_1 D _inst_2} {G : CategoryTheory.Functor.{u3, max u1 u3 u4, max u3 u4, u2} C _inst_1 D _inst_2} (α : Quiver.Hom.{succ (max u1 u3 u4), max u3 (max u1 u3 u4) (max u3 u4) u2} (CategoryTheory.Functor.{u3, max u1 u3 u4, max u3 u4, u2} C _inst_1 D _inst_2) (CategoryTheory.CategoryStruct.toQuiver.{max u1 u3 u4, max u3 (max u1 u3 u4) (max u3 u4) u2} (CategoryTheory.Functor.{u3, max u1 u3 u4, max u3 u4, u2} C _inst_1 D _inst_2) (CategoryTheory.Category.toCategoryStruct.{max u1 u3 u4, max u3 (max u1 u3 u4) (max u3 u4) u2} (CategoryTheory.Functor.{u3, max u1 u3 u4, max u3 u4, u2} C _inst_1 D _inst_2) (CategoryTheory.Functor.category.{u3, max u1 u3 u4, max u3 u4, u2} C _inst_1 D _inst_2))) F G), CategoryTheory.IsIso.{max u1 u3 u4, max u3 (max u1 u3 u4) (max u3 u4) u2} (CategoryTheory.Functor.{u3, max u1 u3 u4, max u3 u4, u2} C _inst_1 D _inst_2) (CategoryTheory.Functor.category.{u3, max u1 u3 u4, max u3 u4, u2} C _inst_1 D _inst_2) (CategoryTheory.Abelian.coimage.{max u1 u3 u4, max u3 (max u1 u3 u4) (max u3 u4) u2} (CategoryTheory.Functor.{u3, max u1 u3 u4, max u3 u4, u2} C _inst_1 D _inst_2) (CategoryTheory.Functor.category.{u3, max u1 u3 u4, max u3 u4, u2} C _inst_1 D _inst_2) (CategoryTheory.Limits.CategoryTheory.Functor.hasZeroMorphisms.{u3, max u3 u4, max u1 u3 u4, u2} C _inst_1 D _inst_2 (CategoryTheory.Preadditive.preadditiveHasZeroMorphisms.{max u1 u3 u4, u2} D _inst_2 (CategoryTheory.Abelian.toPreadditive.{max u1 u3 u4, u2} D _inst_2 _inst_3))) (CategoryTheory.Limits.hasKernels_of_hasEqualizers.{max u1 u3 u4, max u3 (max u1 u3 u4) (max u3 u4) u2} (CategoryTheory.Functor.{u3, max u1 u3 u4, max u3 u4, u2} C _inst_1 D _inst_2) (CategoryTheory.Functor.category.{u3, max u1 u3 u4, max u3 u4, u2} C _inst_1 D _inst_2) (CategoryTheory.Limits.CategoryTheory.Functor.hasZeroMorphisms.{u3, max u3 u4, max u1 u3 u4, u2} C _inst_1 D _inst_2 (CategoryTheory.Preadditive.preadditiveHasZeroMorphisms.{max u1 u3 u4, u2} D _inst_2 (CategoryTheory.Abelian.toPreadditive.{max u1 u3 u4, u2} D _inst_2 _inst_3))) (CategoryTheory.Limits.functorCategoryHasLimitsOfShape.{0, u3, 0, max u3 u4, max u1 u3 u4, u2} D _inst_2 CategoryTheory.Limits.WalkingParallelPair CategoryTheory.Limits.walkingParallelPairHomCategory C _inst_1 (CategoryTheory.Abelian.hasEqualizers.{max u1 u3 u4, u2} D _inst_2 _inst_3))) (CategoryTheory.Limits.hasCokernels_of_hasCoequalizers.{max u1 u3 u4, max u3 (max u1 u3 u4) (max u3 u4) u2} (CategoryTheory.Functor.{u3, max u1 u3 u4, max u3 u4, u2} C _inst_1 D _inst_2) (CategoryTheory.Functor.category.{u3, max u1 u3 u4, max u3 u4, u2} C _inst_1 D _inst_2) (CategoryTheory.Limits.CategoryTheory.Functor.hasZeroMorphisms.{u3, max u3 u4, max u1 u3 u4, u2} C _inst_1 D _inst_2 (CategoryTheory.Preadditive.preadditiveHasZeroMorphisms.{max u1 u3 u4, u2} D _inst_2 (CategoryTheory.Abelian.toPreadditive.{max u1 u3 u4, u2} D _inst_2 _inst_3))) (CategoryTheory.Limits.functorCategoryHasColimitsOfShape.{0, u3, 0, max u3 u4, max u1 u3 u4, u2} D _inst_2 CategoryTheory.Limits.WalkingParallelPair CategoryTheory.Limits.walkingParallelPairHomCategory C _inst_1 (CategoryTheory.Abelian.hasCoequalizers.{max u1 u3 u4, u2} D _inst_2 _inst_3))) F G α) (CategoryTheory.Abelian.image.{max u1 u3 u4, max u3 (max u1 u3 u4) (max u3 u4) u2} (CategoryTheory.Functor.{u3, max u1 u3 u4, max u3 u4, u2} C _inst_1 D _inst_2) (CategoryTheory.Functor.category.{u3, max u1 u3 u4, max u3 u4, u2} C _inst_1 D _inst_2) (CategoryTheory.Limits.CategoryTheory.Functor.hasZeroMorphisms.{u3, max u3 u4, max u1 u3 u4, u2} C _inst_1 D _inst_2 (CategoryTheory.Preadditive.preadditiveHasZeroMorphisms.{max u1 u3 u4, u2} D _inst_2 (CategoryTheory.Abelian.toPreadditive.{max u1 u3 u4, u2} D _inst_2 _inst_3))) (CategoryTheory.Limits.hasKernels_of_hasEqualizers.{max u1 u3 u4, max u3 (max u1 u3 u4) (max u3 u4) u2} (CategoryTheory.Functor.{u3, max u1 u3 u4, max u3 u4, u2} C _inst_1 D _inst_2) (CategoryTheory.Functor.category.{u3, max u1 u3 u4, max u3 u4, u2} C _inst_1 D _inst_2) (CategoryTheory.Limits.CategoryTheory.Functor.hasZeroMorphisms.{u3, max u3 u4, max u1 u3 u4, u2} C _inst_1 D _inst_2 (CategoryTheory.Preadditive.preadditiveHasZeroMorphisms.{max u1 u3 u4, u2} D _inst_2 (CategoryTheory.Abelian.toPreadditive.{max u1 u3 u4, u2} D _inst_2 _inst_3))) (CategoryTheory.Limits.functorCategoryHasLimitsOfShape.{0, u3, 0, max u3 u4, max u1 u3 u4, u2} D _inst_2 CategoryTheory.Limits.WalkingParallelPair CategoryTheory.Limits.walkingParallelPairHomCategory C _inst_1 (CategoryTheory.Abelian.hasEqualizers.{max u1 u3 u4, u2} D _inst_2 _inst_3))) (CategoryTheory.Limits.hasCokernels_of_hasCoequalizers.{max u1 u3 u4, max u3 (max u1 u3 u4) (max u3 u4) u2} (CategoryTheory.Functor.{u3, max u1 u3 u4, max u3 u4, u2} C _inst_1 D _inst_2) (CategoryTheory.Functor.category.{u3, max u1 u3 u4, max u3 u4, u2} C _inst_1 D _inst_2) (CategoryTheory.Limits.CategoryTheory.Functor.hasZeroMorphisms.{u3, max u3 u4, max u1 u3 u4, u2} C _inst_1 D _inst_2 (CategoryTheory.Preadditive.preadditiveHasZeroMorphisms.{max u1 u3 u4, u2} D _inst_2 (CategoryTheory.Abelian.toPreadditive.{max u1 u3 u4, u2} D _inst_2 _inst_3))) (CategoryTheory.Limits.functorCategoryHasColimitsOfShape.{0, u3, 0, max u3 u4, max u1 u3 u4, u2} D _inst_2 CategoryTheory.Limits.WalkingParallelPair CategoryTheory.Limits.walkingParallelPairHomCategory C _inst_1 (CategoryTheory.Abelian.hasCoequalizers.{max u1 u3 u4, u2} D _inst_2 _inst_3))) F G α) (CategoryTheory.Abelian.coimageImageComparison.{max u1 u3 u4, max u3 (max u1 u3 u4) (max u3 u4) u2} (CategoryTheory.Functor.{u3, max u1 u3 u4, max u3 u4, u2} C _inst_1 D _inst_2) (CategoryTheory.Functor.category.{u3, max u1 u3 u4, max u3 u4, u2} C _inst_1 D _inst_2) (CategoryTheory.Limits.CategoryTheory.Functor.hasZeroMorphisms.{u3, max u3 u4, max u1 u3 u4, u2} C _inst_1 D _inst_2 (CategoryTheory.Preadditive.preadditiveHasZeroMorphisms.{max u1 u3 u4, u2} D _inst_2 (CategoryTheory.Abelian.toPreadditive.{max u1 u3 u4, u2} D _inst_2 _inst_3))) (CategoryTheory.Limits.hasKernels_of_hasEqualizers.{max u1 u3 u4, max u3 (max u1 u3 u4) (max u3 u4) u2} (CategoryTheory.Functor.{u3, max u1 u3 u4, max u3 u4, u2} C _inst_1 D _inst_2) (CategoryTheory.Functor.category.{u3, max u1 u3 u4, max u3 u4, u2} C _inst_1 D _inst_2) (CategoryTheory.Limits.CategoryTheory.Functor.hasZeroMorphisms.{u3, max u3 u4, max u1 u3 u4, u2} C _inst_1 D _inst_2 (CategoryTheory.Preadditive.preadditiveHasZeroMorphisms.{max u1 u3 u4, u2} D _inst_2 (CategoryTheory.Abelian.toPreadditive.{max u1 u3 u4, u2} D _inst_2 _inst_3))) (CategoryTheory.Limits.functorCategoryHasLimitsOfShape.{0, u3, 0, max u3 u4, max u1 u3 u4, u2} D _inst_2 CategoryTheory.Limits.WalkingParallelPair CategoryTheory.Limits.walkingParallelPairHomCategory C _inst_1 (CategoryTheory.Abelian.hasEqualizers.{max u1 u3 u4, u2} D _inst_2 _inst_3))) (CategoryTheory.Limits.hasCokernels_of_hasCoequalizers.{max u1 u3 u4, max u3 (max u1 u3 u4) (max u3 u4) u2} (CategoryTheory.Functor.{u3, max u1 u3 u4, max u3 u4, u2} C _inst_1 D _inst_2) (CategoryTheory.Functor.category.{u3, max u1 u3 u4, max u3 u4, u2} C _inst_1 D _inst_2) (CategoryTheory.Limits.CategoryTheory.Functor.hasZeroMorphisms.{u3, max u3 u4, max u1 u3 u4, u2} C _inst_1 D _inst_2 (CategoryTheory.Preadditive.preadditiveHasZeroMorphisms.{max u1 u3 u4, u2} D _inst_2 (CategoryTheory.Abelian.toPreadditive.{max u1 u3 u4, u2} D _inst_2 _inst_3))) (CategoryTheory.Limits.functorCategoryHasColimitsOfShape.{0, u3, 0, max u3 u4, max u1 u3 u4, u2} D _inst_2 CategoryTheory.Limits.WalkingParallelPair CategoryTheory.Limits.walkingParallelPairHomCategory C _inst_1 (CategoryTheory.Abelian.hasCoequalizers.{max u1 u3 u4, u2} D _inst_2 _inst_3))) F G α)
-but is expected to have type
- forall {C : Type.{u4}} [_inst_1 : CategoryTheory.Category.{u3, u4} C] {D : Type.{u2}} [_inst_2 : CategoryTheory.Category.{u1, u2} D] [_inst_3 : CategoryTheory.Abelian.{u1, u2} D _inst_2] {F : CategoryTheory.Functor.{u3, u1, u4, u2} C _inst_1 D _inst_2} {G : CategoryTheory.Functor.{u3, u1, u4, u2} C _inst_1 D _inst_2} (α : Quiver.Hom.{max (succ u4) (succ u1), max (max (max u4 u3) u2) u1} (CategoryTheory.Functor.{u3, u1, u4, u2} C _inst_1 D _inst_2) (CategoryTheory.CategoryStruct.toQuiver.{max u4 u1, max (max (max u4 u3) u2) u1} (CategoryTheory.Functor.{u3, u1, u4, u2} C _inst_1 D _inst_2) (CategoryTheory.Category.toCategoryStruct.{max u4 u1, max (max (max u4 u3) u2) u1} (CategoryTheory.Functor.{u3, u1, u4, u2} C _inst_1 D _inst_2) (CategoryTheory.Functor.category.{u3, u1, u4, u2} C _inst_1 D _inst_2))) F G), CategoryTheory.IsIso.{max u4 u1, max (max (max u4 u3) u2) u1} (CategoryTheory.Functor.{u3, u1, u4, u2} C _inst_1 D _inst_2) (CategoryTheory.Functor.category.{u3, u1, u4, u2} C _inst_1 D _inst_2) (CategoryTheory.Abelian.coimage.{max u4 u1, max (max (max u4 u3) u2) u1} (CategoryTheory.Functor.{u3, u1, u4, u2} C _inst_1 D _inst_2) (CategoryTheory.Functor.category.{u3, u1, u4, u2} C _inst_1 D _inst_2) (CategoryTheory.Limits.instHasZeroMorphismsFunctorCategory.{u3, u4, u1, u2} C _inst_1 D _inst_2 (CategoryTheory.Preadditive.preadditiveHasZeroMorphisms.{u1, u2} D _inst_2 (CategoryTheory.Abelian.toPreadditive.{u1, u2} D _inst_2 _inst_3))) (CategoryTheory.Limits.hasKernels_of_hasEqualizers.{max u4 u1, max (max (max u4 u3) u2) u1} (CategoryTheory.Functor.{u3, u1, u4, u2} C _inst_1 D _inst_2) (CategoryTheory.Functor.category.{u3, u1, u4, u2} C _inst_1 D _inst_2) (CategoryTheory.Limits.instHasZeroMorphismsFunctorCategory.{u3, u4, u1, u2} C _inst_1 D _inst_2 (CategoryTheory.Preadditive.preadditiveHasZeroMorphisms.{u1, u2} D _inst_2 (CategoryTheory.Abelian.toPreadditive.{u1, u2} D _inst_2 _inst_3))) (CategoryTheory.Limits.functorCategoryHasLimitsOfShape.{0, u3, 0, u4, u1, u2} D _inst_2 CategoryTheory.Limits.WalkingParallelPair CategoryTheory.Limits.walkingParallelPairHomCategory C _inst_1 (CategoryTheory.Abelian.hasEqualizers.{u1, u2} D _inst_2 _inst_3))) (CategoryTheory.Limits.hasCokernels_of_hasCoequalizers.{max u4 u1, max (max (max u4 u3) u2) u1} (CategoryTheory.Functor.{u3, u1, u4, u2} C _inst_1 D _inst_2) (CategoryTheory.Functor.category.{u3, u1, u4, u2} C _inst_1 D _inst_2) (CategoryTheory.Limits.instHasZeroMorphismsFunctorCategory.{u3, u4, u1, u2} C _inst_1 D _inst_2 (CategoryTheory.Preadditive.preadditiveHasZeroMorphisms.{u1, u2} D _inst_2 (CategoryTheory.Abelian.toPreadditive.{u1, u2} D _inst_2 _inst_3))) (CategoryTheory.Limits.functorCategoryHasColimitsOfShape.{0, u3, 0, u4, u1, u2} D _inst_2 CategoryTheory.Limits.WalkingParallelPair CategoryTheory.Limits.walkingParallelPairHomCategory C _inst_1 (CategoryTheory.Abelian.hasCoequalizers.{u1, u2} D _inst_2 _inst_3))) F G α) (CategoryTheory.Abelian.image.{max u4 u1, max (max (max u4 u3) u2) u1} (CategoryTheory.Functor.{u3, u1, u4, u2} C _inst_1 D _inst_2) (CategoryTheory.Functor.category.{u3, u1, u4, u2} C _inst_1 D _inst_2) (CategoryTheory.Limits.instHasZeroMorphismsFunctorCategory.{u3, u4, u1, u2} C _inst_1 D _inst_2 (CategoryTheory.Preadditive.preadditiveHasZeroMorphisms.{u1, u2} D _inst_2 (CategoryTheory.Abelian.toPreadditive.{u1, u2} D _inst_2 _inst_3))) (CategoryTheory.Limits.hasKernels_of_hasEqualizers.{max u4 u1, max (max (max u4 u3) u2) u1} (CategoryTheory.Functor.{u3, u1, u4, u2} C _inst_1 D _inst_2) (CategoryTheory.Functor.category.{u3, u1, u4, u2} C _inst_1 D _inst_2) (CategoryTheory.Limits.instHasZeroMorphismsFunctorCategory.{u3, u4, u1, u2} C _inst_1 D _inst_2 (CategoryTheory.Preadditive.preadditiveHasZeroMorphisms.{u1, u2} D _inst_2 (CategoryTheory.Abelian.toPreadditive.{u1, u2} D _inst_2 _inst_3))) (CategoryTheory.Limits.functorCategoryHasLimitsOfShape.{0, u3, 0, u4, u1, u2} D _inst_2 CategoryTheory.Limits.WalkingParallelPair CategoryTheory.Limits.walkingParallelPairHomCategory C _inst_1 (CategoryTheory.Abelian.hasEqualizers.{u1, u2} D _inst_2 _inst_3))) (CategoryTheory.Limits.hasCokernels_of_hasCoequalizers.{max u4 u1, max (max (max u4 u3) u2) u1} (CategoryTheory.Functor.{u3, u1, u4, u2} C _inst_1 D _inst_2) (CategoryTheory.Functor.category.{u3, u1, u4, u2} C _inst_1 D _inst_2) (CategoryTheory.Limits.instHasZeroMorphismsFunctorCategory.{u3, u4, u1, u2} C _inst_1 D _inst_2 (CategoryTheory.Preadditive.preadditiveHasZeroMorphisms.{u1, u2} D _inst_2 (CategoryTheory.Abelian.toPreadditive.{u1, u2} D _inst_2 _inst_3))) (CategoryTheory.Limits.functorCategoryHasColimitsOfShape.{0, u3, 0, u4, u1, u2} D _inst_2 CategoryTheory.Limits.WalkingParallelPair CategoryTheory.Limits.walkingParallelPairHomCategory C _inst_1 (CategoryTheory.Abelian.hasCoequalizers.{u1, u2} D _inst_2 _inst_3))) F G α) (CategoryTheory.Abelian.coimageImageComparison.{max u4 u1, max (max (max u4 u3) u2) u1} (CategoryTheory.Functor.{u3, u1, u4, u2} C _inst_1 D _inst_2) (CategoryTheory.Functor.category.{u3, u1, u4, u2} C _inst_1 D _inst_2) (CategoryTheory.Limits.instHasZeroMorphismsFunctorCategory.{u3, u4, u1, u2} C _inst_1 D _inst_2 (CategoryTheory.Preadditive.preadditiveHasZeroMorphisms.{u1, u2} D _inst_2 (CategoryTheory.Abelian.toPreadditive.{u1, u2} D _inst_2 _inst_3))) (CategoryTheory.Limits.hasKernels_of_hasEqualizers.{max u4 u1, max (max (max u4 u3) u2) u1} (CategoryTheory.Functor.{u3, u1, u4, u2} C _inst_1 D _inst_2) (CategoryTheory.Functor.category.{u3, u1, u4, u2} C _inst_1 D _inst_2) (CategoryTheory.Limits.instHasZeroMorphismsFunctorCategory.{u3, u4, u1, u2} C _inst_1 D _inst_2 (CategoryTheory.Preadditive.preadditiveHasZeroMorphisms.{u1, u2} D _inst_2 (CategoryTheory.Abelian.toPreadditive.{u1, u2} D _inst_2 _inst_3))) (CategoryTheory.Limits.functorCategoryHasLimitsOfShape.{0, u3, 0, u4, u1, u2} D _inst_2 CategoryTheory.Limits.WalkingParallelPair CategoryTheory.Limits.walkingParallelPairHomCategory C _inst_1 (CategoryTheory.Abelian.hasEqualizers.{u1, u2} D _inst_2 _inst_3))) (CategoryTheory.Limits.hasCokernels_of_hasCoequalizers.{max u4 u1, max (max (max u4 u3) u2) u1} (CategoryTheory.Functor.{u3, u1, u4, u2} C _inst_1 D _inst_2) (CategoryTheory.Functor.category.{u3, u1, u4, u2} C _inst_1 D _inst_2) (CategoryTheory.Limits.instHasZeroMorphismsFunctorCategory.{u3, u4, u1, u2} C _inst_1 D _inst_2 (CategoryTheory.Preadditive.preadditiveHasZeroMorphisms.{u1, u2} D _inst_2 (CategoryTheory.Abelian.toPreadditive.{u1, u2} D _inst_2 _inst_3))) (CategoryTheory.Limits.functorCategoryHasColimitsOfShape.{0, u3, 0, u4, u1, u2} D _inst_2 CategoryTheory.Limits.WalkingParallelPair CategoryTheory.Limits.walkingParallelPairHomCategory C _inst_1 (CategoryTheory.Abelian.hasCoequalizers.{u1, u2} D _inst_2 _inst_3))) F G α)
+<too large>
Case conversion may be inaccurate. Consider using '#align category_theory.abelian.functor_category.functor_category_is_iso_coimage_image_comparison CategoryTheory.Abelian.FunctorCategory.functor_category_isIso_coimageImageComparisonₓ'. -/
instance functor_category_isIso_coimageImageComparison : IsIso (Abelian.coimageImageComparison α) :=
by
mathlib commit https://github.com/leanprover-community/mathlib/commit/09079525fd01b3dda35e96adaa08d2f943e1648c
@@ -46,7 +46,7 @@ variable {F G : C ⥤ D} (α : F ⟶ G) (X : C)
lean 3 declaration is
forall {C : Type.{max u3 u4}} [_inst_1 : CategoryTheory.Category.{u3, max u3 u4} C] {D : Type.{u2}} [_inst_2 : CategoryTheory.Category.{max u1 u3 u4, u2} D] [_inst_3 : CategoryTheory.Abelian.{max u1 u3 u4, u2} D _inst_2] {F : CategoryTheory.Functor.{u3, max u1 u3 u4, max u3 u4, u2} C _inst_1 D _inst_2} {G : CategoryTheory.Functor.{u3, max u1 u3 u4, max u3 u4, u2} C _inst_1 D _inst_2} (α : Quiver.Hom.{succ (max u1 u3 u4), max u3 (max u1 u3 u4) (max u3 u4) u2} (CategoryTheory.Functor.{u3, max u1 u3 u4, max u3 u4, u2} C _inst_1 D _inst_2) (CategoryTheory.CategoryStruct.toQuiver.{max u1 u3 u4, max u3 (max u1 u3 u4) (max u3 u4) u2} (CategoryTheory.Functor.{u3, max u1 u3 u4, max u3 u4, u2} C _inst_1 D _inst_2) (CategoryTheory.Category.toCategoryStruct.{max u1 u3 u4, max u3 (max u1 u3 u4) (max u3 u4) u2} (CategoryTheory.Functor.{u3, max u1 u3 u4, max u3 u4, u2} C _inst_1 D _inst_2) (CategoryTheory.Functor.category.{u3, max u1 u3 u4, max u3 u4, u2} C _inst_1 D _inst_2))) F G) (X : C), CategoryTheory.Iso.{max u1 u3 u4, u2} D _inst_2 (CategoryTheory.Functor.obj.{u3, max u1 u3 u4, max u3 u4, u2} C _inst_1 D _inst_2 (CategoryTheory.Abelian.coimage.{max u1 u3 u4, max u3 (max u1 u3 u4) (max u3 u4) u2} (CategoryTheory.Functor.{u3, max u1 u3 u4, max u3 u4, u2} C _inst_1 D _inst_2) (CategoryTheory.Functor.category.{u3, max u1 u3 u4, max u3 u4, u2} C _inst_1 D _inst_2) (CategoryTheory.Limits.CategoryTheory.Functor.hasZeroMorphisms.{u3, max u3 u4, max u1 u3 u4, u2} C _inst_1 D _inst_2 (CategoryTheory.Preadditive.preadditiveHasZeroMorphisms.{max u1 u3 u4, u2} D _inst_2 (CategoryTheory.Abelian.toPreadditive.{max u1 u3 u4, u2} D _inst_2 _inst_3))) (CategoryTheory.Abelian.FunctorCategory.coimageObjIso._proof_1.{u4, u3, u2, u1} C _inst_1 D _inst_2 _inst_3) (CategoryTheory.Abelian.FunctorCategory.coimageObjIso._proof_2.{u4, u3, u2, u1} C _inst_1 D _inst_2 _inst_3) F G α) X) (CategoryTheory.Abelian.coimage.{max u1 u3 u4, u2} D _inst_2 (CategoryTheory.Preadditive.preadditiveHasZeroMorphisms.{max u1 u3 u4, u2} D _inst_2 (CategoryTheory.Abelian.toPreadditive.{max u1 u3 u4, u2} D _inst_2 _inst_3)) (CategoryTheory.Abelian.hasKernels.{max u1 u3 u4, u2} D _inst_2 _inst_3) (CategoryTheory.Abelian.hasCokernels.{max u1 u3 u4, u2} D _inst_2 _inst_3) (CategoryTheory.Functor.obj.{u3, max u1 u3 u4, max u3 u4, u2} C _inst_1 D _inst_2 F X) (CategoryTheory.Functor.obj.{u3, max u1 u3 u4, max u3 u4, u2} C _inst_1 D _inst_2 G X) (CategoryTheory.NatTrans.app.{u3, max u1 u3 u4, max u3 u4, u2} C _inst_1 D _inst_2 F G α X))
but is expected to have type
- forall {C : Type.{u4}} [_inst_1 : CategoryTheory.Category.{u3, u4} C] {D : Type.{u2}} [_inst_2 : CategoryTheory.Category.{u1, u2} D] [_inst_3 : CategoryTheory.Abelian.{u1, u2} D _inst_2] {F : CategoryTheory.Functor.{u3, u1, u4, u2} C _inst_1 D _inst_2} {G : CategoryTheory.Functor.{u3, u1, u4, u2} C _inst_1 D _inst_2} (α : Quiver.Hom.{max (succ u4) (succ u1), max (max (max u4 u3) u2) u1} (CategoryTheory.Functor.{u3, u1, u4, u2} C _inst_1 D _inst_2) (CategoryTheory.CategoryStruct.toQuiver.{max u4 u1, max (max (max u4 u3) u2) u1} (CategoryTheory.Functor.{u3, u1, u4, u2} C _inst_1 D _inst_2) (CategoryTheory.Category.toCategoryStruct.{max u4 u1, max (max (max u4 u3) u2) u1} (CategoryTheory.Functor.{u3, u1, u4, u2} C _inst_1 D _inst_2) (CategoryTheory.Functor.category.{u3, u1, u4, u2} C _inst_1 D _inst_2))) F G) (X : C), CategoryTheory.Iso.{u1, u2} D _inst_2 (Prefunctor.obj.{succ u3, succ u1, u4, u2} C (CategoryTheory.CategoryStruct.toQuiver.{u3, u4} C (CategoryTheory.Category.toCategoryStruct.{u3, u4} C _inst_1)) D (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} D (CategoryTheory.Category.toCategoryStruct.{u1, u2} D _inst_2)) (CategoryTheory.Functor.toPrefunctor.{u3, u1, u4, u2} C _inst_1 D _inst_2 (CategoryTheory.Abelian.coimage.{max u4 u1, max (max (max u4 u3) u2) u1} (CategoryTheory.Functor.{u3, u1, u4, u2} C _inst_1 D _inst_2) (CategoryTheory.Functor.category.{u3, u1, u4, u2} C _inst_1 D _inst_2) (CategoryTheory.Limits.instHasZeroMorphismsFunctorCategory.{u3, u4, u1, u2} C _inst_1 D _inst_2 (CategoryTheory.Preadditive.preadditiveHasZeroMorphisms.{u1, u2} D _inst_2 (CategoryTheory.Abelian.toPreadditive.{u1, u2} D _inst_2 _inst_3))) (CategoryTheory.Limits.hasKernels_of_hasEqualizers.{max u4 u1, max (max (max u4 u3) u2) u1} (CategoryTheory.Functor.{u3, u1, u4, u2} C _inst_1 D _inst_2) (CategoryTheory.Functor.category.{u3, u1, u4, u2} C _inst_1 D _inst_2) (CategoryTheory.Limits.instHasZeroMorphismsFunctorCategory.{u3, u4, u1, u2} C _inst_1 D _inst_2 (CategoryTheory.Preadditive.preadditiveHasZeroMorphisms.{u1, u2} D _inst_2 (CategoryTheory.Abelian.toPreadditive.{u1, u2} D _inst_2 _inst_3))) (CategoryTheory.Limits.functorCategoryHasLimitsOfShape.{0, u3, 0, u4, u1, u2} D _inst_2 CategoryTheory.Limits.WalkingParallelPair CategoryTheory.Limits.walkingParallelPairHomCategory C _inst_1 (CategoryTheory.Abelian.hasEqualizers.{u1, u2} D _inst_2 _inst_3))) (CategoryTheory.Limits.hasCokernels_of_hasCoequalizers.{max u4 u1, max (max (max u4 u3) u2) u1} (CategoryTheory.Functor.{u3, u1, u4, u2} C _inst_1 D _inst_2) (CategoryTheory.Functor.category.{u3, u1, u4, u2} C _inst_1 D _inst_2) (CategoryTheory.Limits.instHasZeroMorphismsFunctorCategory.{u3, u4, u1, u2} C _inst_1 D _inst_2 (CategoryTheory.Preadditive.preadditiveHasZeroMorphisms.{u1, u2} D _inst_2 (CategoryTheory.Abelian.toPreadditive.{u1, u2} D _inst_2 _inst_3))) (CategoryTheory.Limits.functorCategoryHasColimitsOfShape.{0, u3, 0, u4, u1, u2} D _inst_2 CategoryTheory.Limits.WalkingParallelPair CategoryTheory.Limits.walkingParallelPairHomCategory C _inst_1 (CategoryTheory.Abelian.hasCoequalizers.{u1, u2} D _inst_2 _inst_3))) F G α)) X) (CategoryTheory.Abelian.coimage.{u1, u2} D _inst_2 (CategoryTheory.Preadditive.preadditiveHasZeroMorphisms.{u1, u2} D _inst_2 (CategoryTheory.Abelian.toPreadditive.{u1, u2} D _inst_2 _inst_3)) (CategoryTheory.Abelian.has_kernels.{u1, u2} D _inst_2 _inst_3) (CategoryTheory.Abelian.has_cokernels.{u1, u2} D _inst_2 _inst_3) (Prefunctor.obj.{succ u3, succ u1, u4, u2} C (CategoryTheory.CategoryStruct.toQuiver.{u3, u4} C (CategoryTheory.Category.toCategoryStruct.{u3, u4} C _inst_1)) D (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} D (CategoryTheory.Category.toCategoryStruct.{u1, u2} D _inst_2)) (CategoryTheory.Functor.toPrefunctor.{u3, u1, u4, u2} C _inst_1 D _inst_2 F) X) (Prefunctor.obj.{succ u3, succ u1, u4, u2} C (CategoryTheory.CategoryStruct.toQuiver.{u3, u4} C (CategoryTheory.Category.toCategoryStruct.{u3, u4} C _inst_1)) D (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} D (CategoryTheory.Category.toCategoryStruct.{u1, u2} D _inst_2)) (CategoryTheory.Functor.toPrefunctor.{u3, u1, u4, u2} C _inst_1 D _inst_2 G) X) (CategoryTheory.NatTrans.app.{u3, u1, u4, u2} C _inst_1 D _inst_2 F G α X))
+ forall {C : Type.{u4}} [_inst_1 : CategoryTheory.Category.{u3, u4} C] {D : Type.{u2}} [_inst_2 : CategoryTheory.Category.{u1, u2} D] [_inst_3 : CategoryTheory.Abelian.{u1, u2} D _inst_2] {F : CategoryTheory.Functor.{u3, u1, u4, u2} C _inst_1 D _inst_2} {G : CategoryTheory.Functor.{u3, u1, u4, u2} C _inst_1 D _inst_2} (α : Quiver.Hom.{max (succ u4) (succ u1), max (max (max u4 u3) u2) u1} (CategoryTheory.Functor.{u3, u1, u4, u2} C _inst_1 D _inst_2) (CategoryTheory.CategoryStruct.toQuiver.{max u4 u1, max (max (max u4 u3) u2) u1} (CategoryTheory.Functor.{u3, u1, u4, u2} C _inst_1 D _inst_2) (CategoryTheory.Category.toCategoryStruct.{max u4 u1, max (max (max u4 u3) u2) u1} (CategoryTheory.Functor.{u3, u1, u4, u2} C _inst_1 D _inst_2) (CategoryTheory.Functor.category.{u3, u1, u4, u2} C _inst_1 D _inst_2))) F G) (X : C), CategoryTheory.Iso.{u1, u2} D _inst_2 (Prefunctor.obj.{succ u3, succ u1, u4, u2} C (CategoryTheory.CategoryStruct.toQuiver.{u3, u4} C (CategoryTheory.Category.toCategoryStruct.{u3, u4} C _inst_1)) D (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} D (CategoryTheory.Category.toCategoryStruct.{u1, u2} D _inst_2)) (CategoryTheory.Functor.toPrefunctor.{u3, u1, u4, u2} C _inst_1 D _inst_2 (CategoryTheory.Abelian.coimage.{max u4 u1, max (max (max u4 u3) u2) u1} (CategoryTheory.Functor.{u3, u1, u4, u2} C _inst_1 D _inst_2) (CategoryTheory.Functor.category.{u3, u1, u4, u2} C _inst_1 D _inst_2) (CategoryTheory.Limits.instHasZeroMorphismsFunctorCategory.{u3, u4, u1, u2} C _inst_1 D _inst_2 (CategoryTheory.Preadditive.preadditiveHasZeroMorphisms.{u1, u2} D _inst_2 (CategoryTheory.Abelian.toPreadditive.{u1, u2} D _inst_2 _inst_3))) (CategoryTheory.Limits.hasKernels_of_hasEqualizers.{max u4 u1, max (max (max u4 u3) u2) u1} (CategoryTheory.Functor.{u3, u1, u4, u2} C _inst_1 D _inst_2) (CategoryTheory.Functor.category.{u3, u1, u4, u2} C _inst_1 D _inst_2) (CategoryTheory.Limits.instHasZeroMorphismsFunctorCategory.{u3, u4, u1, u2} C _inst_1 D _inst_2 (CategoryTheory.Preadditive.preadditiveHasZeroMorphisms.{u1, u2} D _inst_2 (CategoryTheory.Abelian.toPreadditive.{u1, u2} D _inst_2 _inst_3))) (CategoryTheory.Limits.functorCategoryHasLimitsOfShape.{0, u3, 0, u4, u1, u2} D _inst_2 CategoryTheory.Limits.WalkingParallelPair CategoryTheory.Limits.walkingParallelPairHomCategory C _inst_1 (CategoryTheory.Abelian.hasEqualizers.{u1, u2} D _inst_2 _inst_3))) (CategoryTheory.Limits.hasCokernels_of_hasCoequalizers.{max u4 u1, max (max (max u4 u3) u2) u1} (CategoryTheory.Functor.{u3, u1, u4, u2} C _inst_1 D _inst_2) (CategoryTheory.Functor.category.{u3, u1, u4, u2} C _inst_1 D _inst_2) (CategoryTheory.Limits.instHasZeroMorphismsFunctorCategory.{u3, u4, u1, u2} C _inst_1 D _inst_2 (CategoryTheory.Preadditive.preadditiveHasZeroMorphisms.{u1, u2} D _inst_2 (CategoryTheory.Abelian.toPreadditive.{u1, u2} D _inst_2 _inst_3))) (CategoryTheory.Limits.functorCategoryHasColimitsOfShape.{0, u3, 0, u4, u1, u2} D _inst_2 CategoryTheory.Limits.WalkingParallelPair CategoryTheory.Limits.walkingParallelPairHomCategory C _inst_1 (CategoryTheory.Abelian.hasCoequalizers.{u1, u2} D _inst_2 _inst_3))) F G α)) X) (CategoryTheory.Abelian.coimage.{u1, u2} D _inst_2 (CategoryTheory.Preadditive.preadditiveHasZeroMorphisms.{u1, u2} D _inst_2 (CategoryTheory.Abelian.toPreadditive.{u1, u2} D _inst_2 _inst_3)) (CategoryTheory.Limits.hasKernels_of_hasEqualizers.{u1, u2} D _inst_2 (CategoryTheory.Preadditive.preadditiveHasZeroMorphisms.{u1, u2} D _inst_2 (CategoryTheory.Abelian.toPreadditive.{u1, u2} D _inst_2 _inst_3)) (CategoryTheory.Abelian.hasEqualizers.{u1, u2} D _inst_2 _inst_3)) (CategoryTheory.Limits.hasCokernels_of_hasCoequalizers.{u1, u2} D _inst_2 (CategoryTheory.Preadditive.preadditiveHasZeroMorphisms.{u1, u2} D _inst_2 (CategoryTheory.Abelian.toPreadditive.{u1, u2} D _inst_2 _inst_3)) (CategoryTheory.Abelian.hasCoequalizers.{u1, u2} D _inst_2 _inst_3)) (Prefunctor.obj.{succ u3, succ u1, u4, u2} C (CategoryTheory.CategoryStruct.toQuiver.{u3, u4} C (CategoryTheory.Category.toCategoryStruct.{u3, u4} C _inst_1)) D (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} D (CategoryTheory.Category.toCategoryStruct.{u1, u2} D _inst_2)) (CategoryTheory.Functor.toPrefunctor.{u3, u1, u4, u2} C _inst_1 D _inst_2 F) X) (Prefunctor.obj.{succ u3, succ u1, u4, u2} C (CategoryTheory.CategoryStruct.toQuiver.{u3, u4} C (CategoryTheory.Category.toCategoryStruct.{u3, u4} C _inst_1)) D (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} D (CategoryTheory.Category.toCategoryStruct.{u1, u2} D _inst_2)) (CategoryTheory.Functor.toPrefunctor.{u3, u1, u4, u2} C _inst_1 D _inst_2 G) X) (CategoryTheory.NatTrans.app.{u3, u1, u4, u2} C _inst_1 D _inst_2 F G α X))
Case conversion may be inaccurate. Consider using '#align category_theory.abelian.functor_category.coimage_obj_iso CategoryTheory.Abelian.FunctorCategory.coimageObjIsoₓ'. -/
/-- The abelian coimage in a functor category can be calculated componentwise. -/
@[simps]
@@ -63,7 +63,7 @@ def coimageObjIso : (Abelian.coimage α).obj X ≅ Abelian.coimage (α.app X) :=
lean 3 declaration is
forall {C : Type.{max u3 u4}} [_inst_1 : CategoryTheory.Category.{u3, max u3 u4} C] {D : Type.{u2}} [_inst_2 : CategoryTheory.Category.{max u1 u3 u4, u2} D] [_inst_3 : CategoryTheory.Abelian.{max u1 u3 u4, u2} D _inst_2] {F : CategoryTheory.Functor.{u3, max u1 u3 u4, max u3 u4, u2} C _inst_1 D _inst_2} {G : CategoryTheory.Functor.{u3, max u1 u3 u4, max u3 u4, u2} C _inst_1 D _inst_2} (α : Quiver.Hom.{succ (max u1 u3 u4), max u3 (max u1 u3 u4) (max u3 u4) u2} (CategoryTheory.Functor.{u3, max u1 u3 u4, max u3 u4, u2} C _inst_1 D _inst_2) (CategoryTheory.CategoryStruct.toQuiver.{max u1 u3 u4, max u3 (max u1 u3 u4) (max u3 u4) u2} (CategoryTheory.Functor.{u3, max u1 u3 u4, max u3 u4, u2} C _inst_1 D _inst_2) (CategoryTheory.Category.toCategoryStruct.{max u1 u3 u4, max u3 (max u1 u3 u4) (max u3 u4) u2} (CategoryTheory.Functor.{u3, max u1 u3 u4, max u3 u4, u2} C _inst_1 D _inst_2) (CategoryTheory.Functor.category.{u3, max u1 u3 u4, max u3 u4, u2} C _inst_1 D _inst_2))) F G) (X : C), CategoryTheory.Iso.{max u1 u3 u4, u2} D _inst_2 (CategoryTheory.Functor.obj.{u3, max u1 u3 u4, max u3 u4, u2} C _inst_1 D _inst_2 (CategoryTheory.Abelian.image.{max u1 u3 u4, max u3 (max u1 u3 u4) (max u3 u4) u2} (CategoryTheory.Functor.{u3, max u1 u3 u4, max u3 u4, u2} C _inst_1 D _inst_2) (CategoryTheory.Functor.category.{u3, max u1 u3 u4, max u3 u4, u2} C _inst_1 D _inst_2) (CategoryTheory.Limits.CategoryTheory.Functor.hasZeroMorphisms.{u3, max u3 u4, max u1 u3 u4, u2} C _inst_1 D _inst_2 (CategoryTheory.Preadditive.preadditiveHasZeroMorphisms.{max u1 u3 u4, u2} D _inst_2 (CategoryTheory.Abelian.toPreadditive.{max u1 u3 u4, u2} D _inst_2 _inst_3))) (CategoryTheory.Abelian.FunctorCategory.imageObjIso._proof_1.{u4, u3, u2, u1} C _inst_1 D _inst_2 _inst_3) (CategoryTheory.Abelian.FunctorCategory.imageObjIso._proof_2.{u4, u3, u2, u1} C _inst_1 D _inst_2 _inst_3) F G α) X) (CategoryTheory.Abelian.image.{max u1 u3 u4, u2} D _inst_2 (CategoryTheory.Preadditive.preadditiveHasZeroMorphisms.{max u1 u3 u4, u2} D _inst_2 (CategoryTheory.Abelian.toPreadditive.{max u1 u3 u4, u2} D _inst_2 _inst_3)) (CategoryTheory.Abelian.hasKernels.{max u1 u3 u4, u2} D _inst_2 _inst_3) (CategoryTheory.Abelian.hasCokernels.{max u1 u3 u4, u2} D _inst_2 _inst_3) (CategoryTheory.Functor.obj.{u3, max u1 u3 u4, max u3 u4, u2} C _inst_1 D _inst_2 F X) (CategoryTheory.Functor.obj.{u3, max u1 u3 u4, max u3 u4, u2} C _inst_1 D _inst_2 G X) (CategoryTheory.NatTrans.app.{u3, max u1 u3 u4, max u3 u4, u2} C _inst_1 D _inst_2 F G α X))
but is expected to have type
- forall {C : Type.{u4}} [_inst_1 : CategoryTheory.Category.{u3, u4} C] {D : Type.{u2}} [_inst_2 : CategoryTheory.Category.{u1, u2} D] [_inst_3 : CategoryTheory.Abelian.{u1, u2} D _inst_2] {F : CategoryTheory.Functor.{u3, u1, u4, u2} C _inst_1 D _inst_2} {G : CategoryTheory.Functor.{u3, u1, u4, u2} C _inst_1 D _inst_2} (α : Quiver.Hom.{max (succ u4) (succ u1), max (max (max u4 u3) u2) u1} (CategoryTheory.Functor.{u3, u1, u4, u2} C _inst_1 D _inst_2) (CategoryTheory.CategoryStruct.toQuiver.{max u4 u1, max (max (max u4 u3) u2) u1} (CategoryTheory.Functor.{u3, u1, u4, u2} C _inst_1 D _inst_2) (CategoryTheory.Category.toCategoryStruct.{max u4 u1, max (max (max u4 u3) u2) u1} (CategoryTheory.Functor.{u3, u1, u4, u2} C _inst_1 D _inst_2) (CategoryTheory.Functor.category.{u3, u1, u4, u2} C _inst_1 D _inst_2))) F G) (X : C), CategoryTheory.Iso.{u1, u2} D _inst_2 (Prefunctor.obj.{succ u3, succ u1, u4, u2} C (CategoryTheory.CategoryStruct.toQuiver.{u3, u4} C (CategoryTheory.Category.toCategoryStruct.{u3, u4} C _inst_1)) D (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} D (CategoryTheory.Category.toCategoryStruct.{u1, u2} D _inst_2)) (CategoryTheory.Functor.toPrefunctor.{u3, u1, u4, u2} C _inst_1 D _inst_2 (CategoryTheory.Abelian.image.{max u4 u1, max (max (max u4 u3) u2) u1} (CategoryTheory.Functor.{u3, u1, u4, u2} C _inst_1 D _inst_2) (CategoryTheory.Functor.category.{u3, u1, u4, u2} C _inst_1 D _inst_2) (CategoryTheory.Limits.instHasZeroMorphismsFunctorCategory.{u3, u4, u1, u2} C _inst_1 D _inst_2 (CategoryTheory.Preadditive.preadditiveHasZeroMorphisms.{u1, u2} D _inst_2 (CategoryTheory.Abelian.toPreadditive.{u1, u2} D _inst_2 _inst_3))) (CategoryTheory.Limits.hasKernels_of_hasEqualizers.{max u4 u1, max (max (max u4 u3) u2) u1} (CategoryTheory.Functor.{u3, u1, u4, u2} C _inst_1 D _inst_2) (CategoryTheory.Functor.category.{u3, u1, u4, u2} C _inst_1 D _inst_2) (CategoryTheory.Limits.instHasZeroMorphismsFunctorCategory.{u3, u4, u1, u2} C _inst_1 D _inst_2 (CategoryTheory.Preadditive.preadditiveHasZeroMorphisms.{u1, u2} D _inst_2 (CategoryTheory.Abelian.toPreadditive.{u1, u2} D _inst_2 _inst_3))) (CategoryTheory.Limits.functorCategoryHasLimitsOfShape.{0, u3, 0, u4, u1, u2} D _inst_2 CategoryTheory.Limits.WalkingParallelPair CategoryTheory.Limits.walkingParallelPairHomCategory C _inst_1 (CategoryTheory.Abelian.hasEqualizers.{u1, u2} D _inst_2 _inst_3))) (CategoryTheory.Limits.hasCokernels_of_hasCoequalizers.{max u4 u1, max (max (max u4 u3) u2) u1} (CategoryTheory.Functor.{u3, u1, u4, u2} C _inst_1 D _inst_2) (CategoryTheory.Functor.category.{u3, u1, u4, u2} C _inst_1 D _inst_2) (CategoryTheory.Limits.instHasZeroMorphismsFunctorCategory.{u3, u4, u1, u2} C _inst_1 D _inst_2 (CategoryTheory.Preadditive.preadditiveHasZeroMorphisms.{u1, u2} D _inst_2 (CategoryTheory.Abelian.toPreadditive.{u1, u2} D _inst_2 _inst_3))) (CategoryTheory.Limits.functorCategoryHasColimitsOfShape.{0, u3, 0, u4, u1, u2} D _inst_2 CategoryTheory.Limits.WalkingParallelPair CategoryTheory.Limits.walkingParallelPairHomCategory C _inst_1 (CategoryTheory.Abelian.hasCoequalizers.{u1, u2} D _inst_2 _inst_3))) F G α)) X) (CategoryTheory.Abelian.image.{u1, u2} D _inst_2 (CategoryTheory.Preadditive.preadditiveHasZeroMorphisms.{u1, u2} D _inst_2 (CategoryTheory.Abelian.toPreadditive.{u1, u2} D _inst_2 _inst_3)) (CategoryTheory.Abelian.has_kernels.{u1, u2} D _inst_2 _inst_3) (CategoryTheory.Abelian.has_cokernels.{u1, u2} D _inst_2 _inst_3) (Prefunctor.obj.{succ u3, succ u1, u4, u2} C (CategoryTheory.CategoryStruct.toQuiver.{u3, u4} C (CategoryTheory.Category.toCategoryStruct.{u3, u4} C _inst_1)) D (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} D (CategoryTheory.Category.toCategoryStruct.{u1, u2} D _inst_2)) (CategoryTheory.Functor.toPrefunctor.{u3, u1, u4, u2} C _inst_1 D _inst_2 F) X) (Prefunctor.obj.{succ u3, succ u1, u4, u2} C (CategoryTheory.CategoryStruct.toQuiver.{u3, u4} C (CategoryTheory.Category.toCategoryStruct.{u3, u4} C _inst_1)) D (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} D (CategoryTheory.Category.toCategoryStruct.{u1, u2} D _inst_2)) (CategoryTheory.Functor.toPrefunctor.{u3, u1, u4, u2} C _inst_1 D _inst_2 G) X) (CategoryTheory.NatTrans.app.{u3, u1, u4, u2} C _inst_1 D _inst_2 F G α X))
+ forall {C : Type.{u4}} [_inst_1 : CategoryTheory.Category.{u3, u4} C] {D : Type.{u2}} [_inst_2 : CategoryTheory.Category.{u1, u2} D] [_inst_3 : CategoryTheory.Abelian.{u1, u2} D _inst_2] {F : CategoryTheory.Functor.{u3, u1, u4, u2} C _inst_1 D _inst_2} {G : CategoryTheory.Functor.{u3, u1, u4, u2} C _inst_1 D _inst_2} (α : Quiver.Hom.{max (succ u4) (succ u1), max (max (max u4 u3) u2) u1} (CategoryTheory.Functor.{u3, u1, u4, u2} C _inst_1 D _inst_2) (CategoryTheory.CategoryStruct.toQuiver.{max u4 u1, max (max (max u4 u3) u2) u1} (CategoryTheory.Functor.{u3, u1, u4, u2} C _inst_1 D _inst_2) (CategoryTheory.Category.toCategoryStruct.{max u4 u1, max (max (max u4 u3) u2) u1} (CategoryTheory.Functor.{u3, u1, u4, u2} C _inst_1 D _inst_2) (CategoryTheory.Functor.category.{u3, u1, u4, u2} C _inst_1 D _inst_2))) F G) (X : C), CategoryTheory.Iso.{u1, u2} D _inst_2 (Prefunctor.obj.{succ u3, succ u1, u4, u2} C (CategoryTheory.CategoryStruct.toQuiver.{u3, u4} C (CategoryTheory.Category.toCategoryStruct.{u3, u4} C _inst_1)) D (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} D (CategoryTheory.Category.toCategoryStruct.{u1, u2} D _inst_2)) (CategoryTheory.Functor.toPrefunctor.{u3, u1, u4, u2} C _inst_1 D _inst_2 (CategoryTheory.Abelian.image.{max u4 u1, max (max (max u4 u3) u2) u1} (CategoryTheory.Functor.{u3, u1, u4, u2} C _inst_1 D _inst_2) (CategoryTheory.Functor.category.{u3, u1, u4, u2} C _inst_1 D _inst_2) (CategoryTheory.Limits.instHasZeroMorphismsFunctorCategory.{u3, u4, u1, u2} C _inst_1 D _inst_2 (CategoryTheory.Preadditive.preadditiveHasZeroMorphisms.{u1, u2} D _inst_2 (CategoryTheory.Abelian.toPreadditive.{u1, u2} D _inst_2 _inst_3))) (CategoryTheory.Limits.hasKernels_of_hasEqualizers.{max u4 u1, max (max (max u4 u3) u2) u1} (CategoryTheory.Functor.{u3, u1, u4, u2} C _inst_1 D _inst_2) (CategoryTheory.Functor.category.{u3, u1, u4, u2} C _inst_1 D _inst_2) (CategoryTheory.Limits.instHasZeroMorphismsFunctorCategory.{u3, u4, u1, u2} C _inst_1 D _inst_2 (CategoryTheory.Preadditive.preadditiveHasZeroMorphisms.{u1, u2} D _inst_2 (CategoryTheory.Abelian.toPreadditive.{u1, u2} D _inst_2 _inst_3))) (CategoryTheory.Limits.functorCategoryHasLimitsOfShape.{0, u3, 0, u4, u1, u2} D _inst_2 CategoryTheory.Limits.WalkingParallelPair CategoryTheory.Limits.walkingParallelPairHomCategory C _inst_1 (CategoryTheory.Abelian.hasEqualizers.{u1, u2} D _inst_2 _inst_3))) (CategoryTheory.Limits.hasCokernels_of_hasCoequalizers.{max u4 u1, max (max (max u4 u3) u2) u1} (CategoryTheory.Functor.{u3, u1, u4, u2} C _inst_1 D _inst_2) (CategoryTheory.Functor.category.{u3, u1, u4, u2} C _inst_1 D _inst_2) (CategoryTheory.Limits.instHasZeroMorphismsFunctorCategory.{u3, u4, u1, u2} C _inst_1 D _inst_2 (CategoryTheory.Preadditive.preadditiveHasZeroMorphisms.{u1, u2} D _inst_2 (CategoryTheory.Abelian.toPreadditive.{u1, u2} D _inst_2 _inst_3))) (CategoryTheory.Limits.functorCategoryHasColimitsOfShape.{0, u3, 0, u4, u1, u2} D _inst_2 CategoryTheory.Limits.WalkingParallelPair CategoryTheory.Limits.walkingParallelPairHomCategory C _inst_1 (CategoryTheory.Abelian.hasCoequalizers.{u1, u2} D _inst_2 _inst_3))) F G α)) X) (CategoryTheory.Abelian.image.{u1, u2} D _inst_2 (CategoryTheory.Preadditive.preadditiveHasZeroMorphisms.{u1, u2} D _inst_2 (CategoryTheory.Abelian.toPreadditive.{u1, u2} D _inst_2 _inst_3)) (CategoryTheory.Limits.hasKernels_of_hasEqualizers.{u1, u2} D _inst_2 (CategoryTheory.Preadditive.preadditiveHasZeroMorphisms.{u1, u2} D _inst_2 (CategoryTheory.Abelian.toPreadditive.{u1, u2} D _inst_2 _inst_3)) (CategoryTheory.Abelian.hasEqualizers.{u1, u2} D _inst_2 _inst_3)) (CategoryTheory.Limits.hasCokernels_of_hasCoequalizers.{u1, u2} D _inst_2 (CategoryTheory.Preadditive.preadditiveHasZeroMorphisms.{u1, u2} D _inst_2 (CategoryTheory.Abelian.toPreadditive.{u1, u2} D _inst_2 _inst_3)) (CategoryTheory.Abelian.hasCoequalizers.{u1, u2} D _inst_2 _inst_3)) (Prefunctor.obj.{succ u3, succ u1, u4, u2} C (CategoryTheory.CategoryStruct.toQuiver.{u3, u4} C (CategoryTheory.Category.toCategoryStruct.{u3, u4} C _inst_1)) D (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} D (CategoryTheory.Category.toCategoryStruct.{u1, u2} D _inst_2)) (CategoryTheory.Functor.toPrefunctor.{u3, u1, u4, u2} C _inst_1 D _inst_2 F) X) (Prefunctor.obj.{succ u3, succ u1, u4, u2} C (CategoryTheory.CategoryStruct.toQuiver.{u3, u4} C (CategoryTheory.Category.toCategoryStruct.{u3, u4} C _inst_1)) D (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} D (CategoryTheory.Category.toCategoryStruct.{u1, u2} D _inst_2)) (CategoryTheory.Functor.toPrefunctor.{u3, u1, u4, u2} C _inst_1 D _inst_2 G) X) (CategoryTheory.NatTrans.app.{u3, u1, u4, u2} C _inst_1 D _inst_2 F G α X))
Case conversion may be inaccurate. Consider using '#align category_theory.abelian.functor_category.image_obj_iso CategoryTheory.Abelian.FunctorCategory.imageObjIsoₓ'. -/
/-- The abelian image in a functor category can be calculated componentwise. -/
@[simps]
@@ -82,7 +82,7 @@ def imageObjIso : (Abelian.image α).obj X ≅ Abelian.image (α.app X) :=
lean 3 declaration is
forall {C : Type.{max u3 u4}} [_inst_1 : CategoryTheory.Category.{u3, max u3 u4} C] {D : Type.{u2}} [_inst_2 : CategoryTheory.Category.{max u1 u3 u4, u2} D] [_inst_3 : CategoryTheory.Abelian.{max u1 u3 u4, u2} D _inst_2] {F : CategoryTheory.Functor.{u3, max u1 u3 u4, max u3 u4, u2} C _inst_1 D _inst_2} {G : CategoryTheory.Functor.{u3, max u1 u3 u4, max u3 u4, u2} C _inst_1 D _inst_2} (α : Quiver.Hom.{succ (max u1 u3 u4), max u3 (max u1 u3 u4) (max u3 u4) u2} (CategoryTheory.Functor.{u3, max u1 u3 u4, max u3 u4, u2} C _inst_1 D _inst_2) (CategoryTheory.CategoryStruct.toQuiver.{max u1 u3 u4, max u3 (max u1 u3 u4) (max u3 u4) u2} (CategoryTheory.Functor.{u3, max u1 u3 u4, max u3 u4, u2} C _inst_1 D _inst_2) (CategoryTheory.Category.toCategoryStruct.{max u1 u3 u4, max u3 (max u1 u3 u4) (max u3 u4) u2} (CategoryTheory.Functor.{u3, max u1 u3 u4, max u3 u4, u2} C _inst_1 D _inst_2) (CategoryTheory.Functor.category.{u3, max u1 u3 u4, max u3 u4, u2} C _inst_1 D _inst_2))) F G) (X : C), Eq.{succ (max u1 u3 u4)} (Quiver.Hom.{succ (max u1 u3 u4), u2} D (CategoryTheory.CategoryStruct.toQuiver.{max u1 u3 u4, u2} D (CategoryTheory.Category.toCategoryStruct.{max u1 u3 u4, u2} D _inst_2)) (CategoryTheory.Abelian.coimage.{max u1 u3 u4, u2} D _inst_2 (CategoryTheory.Preadditive.preadditiveHasZeroMorphisms.{max u1 u3 u4, u2} D _inst_2 (CategoryTheory.Abelian.toPreadditive.{max u1 u3 u4, u2} D _inst_2 _inst_3)) (CategoryTheory.Abelian.hasKernels.{max u1 u3 u4, u2} D _inst_2 _inst_3) (CategoryTheory.Abelian.hasCokernels.{max u1 u3 u4, u2} D _inst_2 _inst_3) (CategoryTheory.Functor.obj.{u3, max u1 u3 u4, max u3 u4, u2} C _inst_1 D _inst_2 F X) (CategoryTheory.Functor.obj.{u3, max u1 u3 u4, max u3 u4, u2} C _inst_1 D _inst_2 G X) (CategoryTheory.NatTrans.app.{u3, max u1 u3 u4, max u3 u4, u2} C _inst_1 D _inst_2 F G α X)) (CategoryTheory.Abelian.image.{max u1 u3 u4, u2} D _inst_2 (CategoryTheory.Preadditive.preadditiveHasZeroMorphisms.{max u1 u3 u4, u2} D _inst_2 (CategoryTheory.Abelian.toPreadditive.{max u1 u3 u4, u2} D _inst_2 _inst_3)) (CategoryTheory.Abelian.hasKernels.{max u1 u3 u4, u2} D _inst_2 _inst_3) (CategoryTheory.Abelian.hasCokernels.{max u1 u3 u4, u2} D _inst_2 _inst_3) (CategoryTheory.Functor.obj.{u3, max u1 u3 u4, max u3 u4, u2} C _inst_1 D _inst_2 F X) (CategoryTheory.Functor.obj.{u3, max u1 u3 u4, max u3 u4, u2} C _inst_1 D _inst_2 G X) (CategoryTheory.NatTrans.app.{u3, max u1 u3 u4, max u3 u4, u2} C _inst_1 D _inst_2 F G α X))) (CategoryTheory.Abelian.coimageImageComparison.{max u1 u3 u4, u2} D _inst_2 (CategoryTheory.Preadditive.preadditiveHasZeroMorphisms.{max u1 u3 u4, u2} D _inst_2 (CategoryTheory.Abelian.toPreadditive.{max u1 u3 u4, u2} D _inst_2 _inst_3)) (CategoryTheory.Abelian.hasKernels.{max u1 u3 u4, u2} D _inst_2 _inst_3) (CategoryTheory.Abelian.hasCokernels.{max u1 u3 u4, u2} D _inst_2 _inst_3) (CategoryTheory.Functor.obj.{u3, max u1 u3 u4, max u3 u4, u2} C _inst_1 D _inst_2 F X) (CategoryTheory.Functor.obj.{u3, max u1 u3 u4, max u3 u4, u2} C _inst_1 D _inst_2 G X) (CategoryTheory.NatTrans.app.{u3, max u1 u3 u4, max u3 u4, u2} C _inst_1 D _inst_2 F G α X)) (CategoryTheory.CategoryStruct.comp.{max u1 u3 u4, u2} D (CategoryTheory.Category.toCategoryStruct.{max u1 u3 u4, u2} D _inst_2) (CategoryTheory.Abelian.coimage.{max u1 u3 u4, u2} D _inst_2 (CategoryTheory.Preadditive.preadditiveHasZeroMorphisms.{max u1 u3 u4, u2} D _inst_2 (CategoryTheory.Abelian.toPreadditive.{max u1 u3 u4, u2} D _inst_2 _inst_3)) (CategoryTheory.Abelian.hasKernels.{max u1 u3 u4, u2} D _inst_2 _inst_3) (CategoryTheory.Abelian.hasCokernels.{max u1 u3 u4, u2} D _inst_2 _inst_3) (CategoryTheory.Functor.obj.{u3, max u1 u3 u4, max u3 u4, u2} C _inst_1 D _inst_2 F X) (CategoryTheory.Functor.obj.{u3, max u1 u3 u4, max u3 u4, u2} C _inst_1 D _inst_2 G X) (CategoryTheory.NatTrans.app.{u3, max u1 u3 u4, max u3 u4, u2} C _inst_1 D _inst_2 F G α X)) (CategoryTheory.Functor.obj.{u3, max u1 u3 u4, max u3 u4, u2} C _inst_1 D _inst_2 (CategoryTheory.Abelian.coimage.{max u1 u3 u4, max u3 (max u1 u3 u4) (max u3 u4) u2} (CategoryTheory.Functor.{u3, max u1 u3 u4, max u3 u4, u2} C _inst_1 D _inst_2) (CategoryTheory.Functor.category.{u3, max u1 u3 u4, max u3 u4, u2} C _inst_1 D _inst_2) (CategoryTheory.Limits.CategoryTheory.Functor.hasZeroMorphisms.{u3, max u3 u4, max u1 u3 u4, u2} C _inst_1 D _inst_2 (CategoryTheory.Preadditive.preadditiveHasZeroMorphisms.{max u1 u3 u4, u2} D _inst_2 (CategoryTheory.Abelian.toPreadditive.{max u1 u3 u4, u2} D _inst_2 _inst_3))) (CategoryTheory.Abelian.FunctorCategory.coimageObjIso._proof_1.{u4, u3, u2, u1} C _inst_1 D _inst_2 _inst_3) (CategoryTheory.Abelian.FunctorCategory.coimageObjIso._proof_2.{u4, u3, u2, u1} C _inst_1 D _inst_2 _inst_3) F G α) X) (CategoryTheory.Abelian.image.{max u1 u3 u4, u2} D _inst_2 (CategoryTheory.Preadditive.preadditiveHasZeroMorphisms.{max u1 u3 u4, u2} D _inst_2 (CategoryTheory.Abelian.toPreadditive.{max u1 u3 u4, u2} D _inst_2 _inst_3)) (CategoryTheory.Abelian.hasKernels.{max u1 u3 u4, u2} D _inst_2 _inst_3) (CategoryTheory.Abelian.hasCokernels.{max u1 u3 u4, u2} D _inst_2 _inst_3) (CategoryTheory.Functor.obj.{u3, max u1 u3 u4, max u3 u4, u2} C _inst_1 D _inst_2 F X) (CategoryTheory.Functor.obj.{u3, max u1 u3 u4, max u3 u4, u2} C _inst_1 D _inst_2 G X) (CategoryTheory.NatTrans.app.{u3, max u1 u3 u4, max u3 u4, u2} C _inst_1 D _inst_2 F G α X)) (CategoryTheory.Iso.inv.{max u1 u3 u4, u2} D _inst_2 (CategoryTheory.Functor.obj.{u3, max u1 u3 u4, max u3 u4, u2} C _inst_1 D _inst_2 (CategoryTheory.Abelian.coimage.{max u1 u3 u4, max u3 (max u1 u3 u4) (max u3 u4) u2} (CategoryTheory.Functor.{u3, max u1 u3 u4, max u3 u4, u2} C _inst_1 D _inst_2) (CategoryTheory.Functor.category.{u3, max u1 u3 u4, max u3 u4, u2} C _inst_1 D _inst_2) (CategoryTheory.Limits.CategoryTheory.Functor.hasZeroMorphisms.{u3, max u3 u4, max u1 u3 u4, u2} C _inst_1 D _inst_2 (CategoryTheory.Preadditive.preadditiveHasZeroMorphisms.{max u1 u3 u4, u2} D _inst_2 (CategoryTheory.Abelian.toPreadditive.{max u1 u3 u4, u2} D _inst_2 _inst_3))) (CategoryTheory.Abelian.FunctorCategory.coimageObjIso._proof_1.{u4, u3, u2, u1} C _inst_1 D _inst_2 _inst_3) (CategoryTheory.Abelian.FunctorCategory.coimageObjIso._proof_2.{u4, u3, u2, u1} C _inst_1 D _inst_2 _inst_3) F G α) X) (CategoryTheory.Abelian.coimage.{max u1 u3 u4, u2} D _inst_2 (CategoryTheory.Preadditive.preadditiveHasZeroMorphisms.{max u1 u3 u4, u2} D _inst_2 (CategoryTheory.Abelian.toPreadditive.{max u1 u3 u4, u2} D _inst_2 _inst_3)) (CategoryTheory.Abelian.hasKernels.{max u1 u3 u4, u2} D _inst_2 _inst_3) (CategoryTheory.Abelian.hasCokernels.{max u1 u3 u4, u2} D _inst_2 _inst_3) (CategoryTheory.Functor.obj.{u3, max u1 u3 u4, max u3 u4, u2} C _inst_1 D _inst_2 F X) (CategoryTheory.Functor.obj.{u3, max u1 u3 u4, max u3 u4, u2} C _inst_1 D _inst_2 G X) (CategoryTheory.NatTrans.app.{u3, max u1 u3 u4, max u3 u4, u2} C _inst_1 D _inst_2 F G α X)) (CategoryTheory.Abelian.FunctorCategory.coimageObjIso.{u1, u2, u3, u4} C _inst_1 D _inst_2 _inst_3 F G α X)) (CategoryTheory.CategoryStruct.comp.{max u1 u3 u4, u2} D (CategoryTheory.Category.toCategoryStruct.{max u1 u3 u4, u2} D _inst_2) (CategoryTheory.Functor.obj.{u3, max u1 u3 u4, max u3 u4, u2} C _inst_1 D _inst_2 (CategoryTheory.Abelian.coimage.{max u1 u3 u4, max u3 (max u1 u3 u4) (max u3 u4) u2} (CategoryTheory.Functor.{u3, max u1 u3 u4, max u3 u4, u2} C _inst_1 D _inst_2) (CategoryTheory.Functor.category.{u3, max u1 u3 u4, max u3 u4, u2} C _inst_1 D _inst_2) (CategoryTheory.Limits.CategoryTheory.Functor.hasZeroMorphisms.{u3, max u3 u4, max u1 u3 u4, u2} C _inst_1 D _inst_2 (CategoryTheory.Preadditive.preadditiveHasZeroMorphisms.{max u1 u3 u4, u2} D _inst_2 (CategoryTheory.Abelian.toPreadditive.{max u1 u3 u4, u2} D _inst_2 _inst_3))) (CategoryTheory.Abelian.FunctorCategory.coimageObjIso._proof_1.{u4, u3, u2, u1} C _inst_1 D _inst_2 _inst_3) (CategoryTheory.Abelian.FunctorCategory.coimageObjIso._proof_2.{u4, u3, u2, u1} C _inst_1 D _inst_2 _inst_3) F G α) X) (CategoryTheory.Functor.obj.{u3, max u1 u3 u4, max u3 u4, u2} C _inst_1 D _inst_2 (CategoryTheory.Abelian.image.{max u1 u3 u4, max u3 (max u1 u3 u4) (max u3 u4) u2} (CategoryTheory.Functor.{u3, max u1 u3 u4, max u3 u4, u2} C _inst_1 D _inst_2) (CategoryTheory.Functor.category.{u3, max u1 u3 u4, max u3 u4, u2} C _inst_1 D _inst_2) (CategoryTheory.Limits.CategoryTheory.Functor.hasZeroMorphisms.{u3, max u3 u4, max u1 u3 u4, u2} C _inst_1 D _inst_2 (CategoryTheory.Preadditive.preadditiveHasZeroMorphisms.{max u1 u3 u4, u2} D _inst_2 (CategoryTheory.Abelian.toPreadditive.{max u1 u3 u4, u2} D _inst_2 _inst_3))) (CategoryTheory.Abelian.FunctorCategory.coimageObjIso._proof_1.{u4, u3, u2, u1} C _inst_1 D _inst_2 _inst_3) (CategoryTheory.Abelian.FunctorCategory.coimageObjIso._proof_2.{u4, u3, u2, u1} C _inst_1 D _inst_2 _inst_3) F G α) X) (CategoryTheory.Abelian.image.{max u1 u3 u4, u2} D _inst_2 (CategoryTheory.Preadditive.preadditiveHasZeroMorphisms.{max u1 u3 u4, u2} D _inst_2 (CategoryTheory.Abelian.toPreadditive.{max u1 u3 u4, u2} D _inst_2 _inst_3)) (CategoryTheory.Abelian.hasKernels.{max u1 u3 u4, u2} D _inst_2 _inst_3) (CategoryTheory.Abelian.hasCokernels.{max u1 u3 u4, u2} D _inst_2 _inst_3) (CategoryTheory.Functor.obj.{u3, max u1 u3 u4, max u3 u4, u2} C _inst_1 D _inst_2 F X) (CategoryTheory.Functor.obj.{u3, max u1 u3 u4, max u3 u4, u2} C _inst_1 D _inst_2 G X) (CategoryTheory.NatTrans.app.{u3, max u1 u3 u4, max u3 u4, u2} C _inst_1 D _inst_2 F G α X)) (CategoryTheory.NatTrans.app.{u3, max u1 u3 u4, max u3 u4, u2} C _inst_1 D _inst_2 (CategoryTheory.Abelian.coimage.{max u1 u3 u4, max u3 (max u1 u3 u4) (max u3 u4) u2} (CategoryTheory.Functor.{u3, max u1 u3 u4, max u3 u4, u2} C _inst_1 D _inst_2) (CategoryTheory.Functor.category.{u3, max u1 u3 u4, max u3 u4, u2} C _inst_1 D _inst_2) (CategoryTheory.Limits.CategoryTheory.Functor.hasZeroMorphisms.{u3, max u3 u4, max u1 u3 u4, u2} C _inst_1 D _inst_2 (CategoryTheory.Preadditive.preadditiveHasZeroMorphisms.{max u1 u3 u4, u2} D _inst_2 (CategoryTheory.Abelian.toPreadditive.{max u1 u3 u4, u2} D _inst_2 _inst_3))) (CategoryTheory.Abelian.FunctorCategory.coimageObjIso._proof_1.{u4, u3, u2, u1} C _inst_1 D _inst_2 _inst_3) (CategoryTheory.Abelian.FunctorCategory.coimageObjIso._proof_2.{u4, u3, u2, u1} C _inst_1 D _inst_2 _inst_3) F G α) (CategoryTheory.Abelian.image.{max u1 u3 u4, max u3 (max u1 u3 u4) (max u3 u4) u2} (CategoryTheory.Functor.{u3, max u1 u3 u4, max u3 u4, u2} C _inst_1 D _inst_2) (CategoryTheory.Functor.category.{u3, max u1 u3 u4, max u3 u4, u2} C _inst_1 D _inst_2) (CategoryTheory.Limits.CategoryTheory.Functor.hasZeroMorphisms.{u3, max u3 u4, max u1 u3 u4, u2} C _inst_1 D _inst_2 (CategoryTheory.Preadditive.preadditiveHasZeroMorphisms.{max u1 u3 u4, u2} D _inst_2 (CategoryTheory.Abelian.toPreadditive.{max u1 u3 u4, u2} D _inst_2 _inst_3))) (CategoryTheory.Abelian.FunctorCategory.coimageObjIso._proof_1.{u4, u3, u2, u1} C _inst_1 D _inst_2 _inst_3) (CategoryTheory.Abelian.FunctorCategory.coimageObjIso._proof_2.{u4, u3, u2, u1} C _inst_1 D _inst_2 _inst_3) F G α) (CategoryTheory.Abelian.coimageImageComparison.{max u1 u3 u4, max u3 (max u1 u3 u4) (max u3 u4) u2} (CategoryTheory.Functor.{u3, max u1 u3 u4, max u3 u4, u2} C _inst_1 D _inst_2) (CategoryTheory.Functor.category.{u3, max u1 u3 u4, max u3 u4, u2} C _inst_1 D _inst_2) (CategoryTheory.Limits.CategoryTheory.Functor.hasZeroMorphisms.{u3, max u3 u4, max u1 u3 u4, u2} C _inst_1 D _inst_2 (CategoryTheory.Preadditive.preadditiveHasZeroMorphisms.{max u1 u3 u4, u2} D _inst_2 (CategoryTheory.Abelian.toPreadditive.{max u1 u3 u4, u2} D _inst_2 _inst_3))) (CategoryTheory.Abelian.FunctorCategory.coimageObjIso._proof_1.{u4, u3, u2, u1} C _inst_1 D _inst_2 _inst_3) (CategoryTheory.Abelian.FunctorCategory.coimageObjIso._proof_2.{u4, u3, u2, u1} C _inst_1 D _inst_2 _inst_3) F G α) X) (CategoryTheory.Iso.hom.{max u1 u3 u4, u2} D _inst_2 (CategoryTheory.Functor.obj.{u3, max u1 u3 u4, max u3 u4, u2} C _inst_1 D _inst_2 (CategoryTheory.Abelian.image.{max u1 u3 u4, max u3 (max u1 u3 u4) (max u3 u4) u2} (CategoryTheory.Functor.{u3, max u1 u3 u4, max u3 u4, u2} C _inst_1 D _inst_2) (CategoryTheory.Functor.category.{u3, max u1 u3 u4, max u3 u4, u2} C _inst_1 D _inst_2) (CategoryTheory.Limits.CategoryTheory.Functor.hasZeroMorphisms.{u3, max u3 u4, max u1 u3 u4, u2} C _inst_1 D _inst_2 (CategoryTheory.Preadditive.preadditiveHasZeroMorphisms.{max u1 u3 u4, u2} D _inst_2 (CategoryTheory.Abelian.toPreadditive.{max u1 u3 u4, u2} D _inst_2 _inst_3))) (CategoryTheory.Abelian.FunctorCategory.imageObjIso._proof_1.{u4, u3, u2, u1} C _inst_1 D _inst_2 _inst_3) (CategoryTheory.Abelian.FunctorCategory.imageObjIso._proof_2.{u4, u3, u2, u1} C _inst_1 D _inst_2 _inst_3) F G α) X) (CategoryTheory.Abelian.image.{max u1 u3 u4, u2} D _inst_2 (CategoryTheory.Preadditive.preadditiveHasZeroMorphisms.{max u1 u3 u4, u2} D _inst_2 (CategoryTheory.Abelian.toPreadditive.{max u1 u3 u4, u2} D _inst_2 _inst_3)) (CategoryTheory.Abelian.hasKernels.{max u1 u3 u4, u2} D _inst_2 _inst_3) (CategoryTheory.Abelian.hasCokernels.{max u1 u3 u4, u2} D _inst_2 _inst_3) (CategoryTheory.Functor.obj.{u3, max u1 u3 u4, max u3 u4, u2} C _inst_1 D _inst_2 F X) (CategoryTheory.Functor.obj.{u3, max u1 u3 u4, max u3 u4, u2} C _inst_1 D _inst_2 G X) (CategoryTheory.NatTrans.app.{u3, max u1 u3 u4, max u3 u4, u2} C _inst_1 D _inst_2 F G α X)) (CategoryTheory.Abelian.FunctorCategory.imageObjIso.{u1, u2, u3, u4} C _inst_1 D _inst_2 _inst_3 F G α X))))
but is expected to have type
- forall {C : Type.{u4}} [_inst_1 : CategoryTheory.Category.{u3, u4} C] {D : Type.{u2}} [_inst_2 : CategoryTheory.Category.{u1, u2} D] [_inst_3 : CategoryTheory.Abelian.{u1, u2} D _inst_2] {F : CategoryTheory.Functor.{u3, u1, u4, u2} C _inst_1 D _inst_2} {G : CategoryTheory.Functor.{u3, u1, u4, u2} C _inst_1 D _inst_2} (α : Quiver.Hom.{max (succ u4) (succ u1), max (max (max u4 u3) u2) u1} (CategoryTheory.Functor.{u3, u1, u4, u2} C _inst_1 D _inst_2) (CategoryTheory.CategoryStruct.toQuiver.{max u4 u1, max (max (max u4 u3) u2) u1} (CategoryTheory.Functor.{u3, u1, u4, u2} C _inst_1 D _inst_2) (CategoryTheory.Category.toCategoryStruct.{max u4 u1, max (max (max u4 u3) u2) u1} (CategoryTheory.Functor.{u3, u1, u4, u2} C _inst_1 D _inst_2) (CategoryTheory.Functor.category.{u3, u1, u4, u2} C _inst_1 D _inst_2))) F G) (X : C), Eq.{succ u1} (Quiver.Hom.{succ u1, u2} D (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} D (CategoryTheory.Category.toCategoryStruct.{u1, u2} D _inst_2)) (CategoryTheory.Abelian.coimage.{u1, u2} D _inst_2 (CategoryTheory.Preadditive.preadditiveHasZeroMorphisms.{u1, u2} D _inst_2 (CategoryTheory.Abelian.toPreadditive.{u1, u2} D _inst_2 _inst_3)) (CategoryTheory.Abelian.has_kernels.{u1, u2} D _inst_2 _inst_3) (CategoryTheory.Abelian.has_cokernels.{u1, u2} D _inst_2 _inst_3) (Prefunctor.obj.{succ u3, succ u1, u4, u2} C (CategoryTheory.CategoryStruct.toQuiver.{u3, u4} C (CategoryTheory.Category.toCategoryStruct.{u3, u4} C _inst_1)) D (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} D (CategoryTheory.Category.toCategoryStruct.{u1, u2} D _inst_2)) (CategoryTheory.Functor.toPrefunctor.{u3, u1, u4, u2} C _inst_1 D _inst_2 F) X) (Prefunctor.obj.{succ u3, succ u1, u4, u2} C (CategoryTheory.CategoryStruct.toQuiver.{u3, u4} C (CategoryTheory.Category.toCategoryStruct.{u3, u4} C _inst_1)) D (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} D (CategoryTheory.Category.toCategoryStruct.{u1, u2} D _inst_2)) (CategoryTheory.Functor.toPrefunctor.{u3, u1, u4, u2} C _inst_1 D _inst_2 G) X) (CategoryTheory.NatTrans.app.{u3, u1, u4, u2} C _inst_1 D _inst_2 F G α X)) (CategoryTheory.Abelian.image.{u1, u2} D _inst_2 (CategoryTheory.Preadditive.preadditiveHasZeroMorphisms.{u1, u2} D _inst_2 (CategoryTheory.Abelian.toPreadditive.{u1, u2} D _inst_2 _inst_3)) (CategoryTheory.Abelian.has_kernels.{u1, u2} D _inst_2 _inst_3) (CategoryTheory.Abelian.has_cokernels.{u1, u2} D _inst_2 _inst_3) (Prefunctor.obj.{succ u3, succ u1, u4, u2} C (CategoryTheory.CategoryStruct.toQuiver.{u3, u4} C (CategoryTheory.Category.toCategoryStruct.{u3, u4} C _inst_1)) D (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} D (CategoryTheory.Category.toCategoryStruct.{u1, u2} D _inst_2)) (CategoryTheory.Functor.toPrefunctor.{u3, u1, u4, u2} C _inst_1 D _inst_2 F) X) (Prefunctor.obj.{succ u3, succ u1, u4, u2} C (CategoryTheory.CategoryStruct.toQuiver.{u3, u4} C (CategoryTheory.Category.toCategoryStruct.{u3, u4} C _inst_1)) D (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} D (CategoryTheory.Category.toCategoryStruct.{u1, u2} D _inst_2)) (CategoryTheory.Functor.toPrefunctor.{u3, u1, u4, u2} C _inst_1 D _inst_2 G) X) (CategoryTheory.NatTrans.app.{u3, u1, u4, u2} C _inst_1 D _inst_2 F G α X))) (CategoryTheory.Abelian.coimageImageComparison.{u1, u2} D _inst_2 (CategoryTheory.Preadditive.preadditiveHasZeroMorphisms.{u1, u2} D _inst_2 (CategoryTheory.Abelian.toPreadditive.{u1, u2} D _inst_2 _inst_3)) (CategoryTheory.Abelian.has_kernels.{u1, u2} D _inst_2 _inst_3) (CategoryTheory.Abelian.has_cokernels.{u1, u2} D _inst_2 _inst_3) (Prefunctor.obj.{succ u3, succ u1, u4, u2} C (CategoryTheory.CategoryStruct.toQuiver.{u3, u4} C (CategoryTheory.Category.toCategoryStruct.{u3, u4} C _inst_1)) D (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} D (CategoryTheory.Category.toCategoryStruct.{u1, u2} D _inst_2)) (CategoryTheory.Functor.toPrefunctor.{u3, u1, u4, u2} C _inst_1 D _inst_2 F) X) (Prefunctor.obj.{succ u3, succ u1, u4, u2} C (CategoryTheory.CategoryStruct.toQuiver.{u3, u4} C (CategoryTheory.Category.toCategoryStruct.{u3, u4} C _inst_1)) D (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} D (CategoryTheory.Category.toCategoryStruct.{u1, u2} D _inst_2)) (CategoryTheory.Functor.toPrefunctor.{u3, u1, u4, u2} C _inst_1 D _inst_2 G) X) (CategoryTheory.NatTrans.app.{u3, u1, u4, u2} C _inst_1 D _inst_2 F G α X)) (CategoryTheory.CategoryStruct.comp.{u1, u2} D (CategoryTheory.Category.toCategoryStruct.{u1, u2} D _inst_2) (CategoryTheory.Abelian.coimage.{u1, u2} D _inst_2 (CategoryTheory.Preadditive.preadditiveHasZeroMorphisms.{u1, u2} D _inst_2 (CategoryTheory.Abelian.toPreadditive.{u1, u2} D _inst_2 _inst_3)) (CategoryTheory.Abelian.has_kernels.{u1, u2} D _inst_2 _inst_3) (CategoryTheory.Abelian.has_cokernels.{u1, u2} D _inst_2 _inst_3) (Prefunctor.obj.{succ u3, succ u1, u4, u2} C (CategoryTheory.CategoryStruct.toQuiver.{u3, u4} C (CategoryTheory.Category.toCategoryStruct.{u3, u4} C _inst_1)) D (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} D (CategoryTheory.Category.toCategoryStruct.{u1, u2} D _inst_2)) (CategoryTheory.Functor.toPrefunctor.{u3, u1, u4, u2} C _inst_1 D _inst_2 F) X) (Prefunctor.obj.{succ u3, succ u1, u4, u2} C (CategoryTheory.CategoryStruct.toQuiver.{u3, u4} C (CategoryTheory.Category.toCategoryStruct.{u3, u4} C _inst_1)) D (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} D (CategoryTheory.Category.toCategoryStruct.{u1, u2} D _inst_2)) (CategoryTheory.Functor.toPrefunctor.{u3, u1, u4, u2} C _inst_1 D _inst_2 G) X) (CategoryTheory.NatTrans.app.{u3, u1, u4, u2} C _inst_1 D _inst_2 F G α X)) (Prefunctor.obj.{succ u3, succ u1, u4, u2} C (CategoryTheory.CategoryStruct.toQuiver.{u3, u4} C (CategoryTheory.Category.toCategoryStruct.{u3, u4} C _inst_1)) D (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} D (CategoryTheory.Category.toCategoryStruct.{u1, u2} D _inst_2)) (CategoryTheory.Functor.toPrefunctor.{u3, u1, u4, u2} C _inst_1 D _inst_2 (CategoryTheory.Abelian.coimage.{max u4 u1, max (max (max u4 u3) u2) u1} (CategoryTheory.Functor.{u3, u1, u4, u2} C _inst_1 D _inst_2) (CategoryTheory.Functor.category.{u3, u1, u4, u2} C _inst_1 D _inst_2) (CategoryTheory.Limits.instHasZeroMorphismsFunctorCategory.{u3, u4, u1, u2} C _inst_1 D _inst_2 (CategoryTheory.Preadditive.preadditiveHasZeroMorphisms.{u1, u2} D _inst_2 (CategoryTheory.Abelian.toPreadditive.{u1, u2} D _inst_2 _inst_3))) (CategoryTheory.Limits.hasKernels_of_hasEqualizers.{max u4 u1, max (max (max u4 u3) u2) u1} (CategoryTheory.Functor.{u3, u1, u4, u2} C _inst_1 D _inst_2) (CategoryTheory.Functor.category.{u3, u1, u4, u2} C _inst_1 D _inst_2) (CategoryTheory.Limits.instHasZeroMorphismsFunctorCategory.{u3, u4, u1, u2} C _inst_1 D _inst_2 (CategoryTheory.Preadditive.preadditiveHasZeroMorphisms.{u1, u2} D _inst_2 (CategoryTheory.Abelian.toPreadditive.{u1, u2} D _inst_2 _inst_3))) (CategoryTheory.Limits.functorCategoryHasLimitsOfShape.{0, u3, 0, u4, u1, u2} D _inst_2 CategoryTheory.Limits.WalkingParallelPair CategoryTheory.Limits.walkingParallelPairHomCategory C _inst_1 (CategoryTheory.Abelian.hasEqualizers.{u1, u2} D _inst_2 _inst_3))) (CategoryTheory.Limits.hasCokernels_of_hasCoequalizers.{max u4 u1, max (max (max u4 u3) u2) u1} (CategoryTheory.Functor.{u3, u1, u4, u2} C _inst_1 D _inst_2) (CategoryTheory.Functor.category.{u3, u1, u4, u2} C _inst_1 D _inst_2) (CategoryTheory.Limits.instHasZeroMorphismsFunctorCategory.{u3, u4, u1, u2} C _inst_1 D _inst_2 (CategoryTheory.Preadditive.preadditiveHasZeroMorphisms.{u1, u2} D _inst_2 (CategoryTheory.Abelian.toPreadditive.{u1, u2} D _inst_2 _inst_3))) (CategoryTheory.Limits.functorCategoryHasColimitsOfShape.{0, u3, 0, u4, u1, u2} D _inst_2 CategoryTheory.Limits.WalkingParallelPair CategoryTheory.Limits.walkingParallelPairHomCategory C _inst_1 (CategoryTheory.Abelian.hasCoequalizers.{u1, u2} D _inst_2 _inst_3))) F G α)) X) (CategoryTheory.Abelian.image.{u1, u2} D _inst_2 (CategoryTheory.Preadditive.preadditiveHasZeroMorphisms.{u1, u2} D _inst_2 (CategoryTheory.Abelian.toPreadditive.{u1, u2} D _inst_2 _inst_3)) (CategoryTheory.Abelian.has_kernels.{u1, u2} D _inst_2 _inst_3) (CategoryTheory.Abelian.has_cokernels.{u1, u2} D _inst_2 _inst_3) (Prefunctor.obj.{succ u3, succ u1, u4, u2} C (CategoryTheory.CategoryStruct.toQuiver.{u3, u4} C (CategoryTheory.Category.toCategoryStruct.{u3, u4} C _inst_1)) D (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} D (CategoryTheory.Category.toCategoryStruct.{u1, u2} D _inst_2)) (CategoryTheory.Functor.toPrefunctor.{u3, u1, u4, u2} C _inst_1 D _inst_2 F) X) (Prefunctor.obj.{succ u3, succ u1, u4, u2} C (CategoryTheory.CategoryStruct.toQuiver.{u3, u4} C (CategoryTheory.Category.toCategoryStruct.{u3, u4} C _inst_1)) D (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} D (CategoryTheory.Category.toCategoryStruct.{u1, u2} D _inst_2)) (CategoryTheory.Functor.toPrefunctor.{u3, u1, u4, u2} C _inst_1 D _inst_2 G) X) (CategoryTheory.NatTrans.app.{u3, u1, u4, u2} C _inst_1 D _inst_2 F G α X)) (CategoryTheory.Iso.inv.{u1, u2} D _inst_2 (Prefunctor.obj.{succ u3, succ u1, u4, u2} C (CategoryTheory.CategoryStruct.toQuiver.{u3, u4} C (CategoryTheory.Category.toCategoryStruct.{u3, u4} C _inst_1)) D (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} D (CategoryTheory.Category.toCategoryStruct.{u1, u2} D _inst_2)) (CategoryTheory.Functor.toPrefunctor.{u3, u1, u4, u2} C _inst_1 D _inst_2 (CategoryTheory.Abelian.coimage.{max u4 u1, max (max (max u4 u3) u2) u1} (CategoryTheory.Functor.{u3, u1, u4, u2} C _inst_1 D _inst_2) (CategoryTheory.Functor.category.{u3, u1, u4, u2} C _inst_1 D _inst_2) (CategoryTheory.Limits.instHasZeroMorphismsFunctorCategory.{u3, u4, u1, u2} C _inst_1 D _inst_2 (CategoryTheory.Preadditive.preadditiveHasZeroMorphisms.{u1, u2} D _inst_2 (CategoryTheory.Abelian.toPreadditive.{u1, u2} D _inst_2 _inst_3))) (CategoryTheory.Limits.hasKernels_of_hasEqualizers.{max u4 u1, max (max (max u4 u3) u2) u1} (CategoryTheory.Functor.{u3, u1, u4, u2} C _inst_1 D _inst_2) (CategoryTheory.Functor.category.{u3, u1, u4, u2} C _inst_1 D _inst_2) (CategoryTheory.Limits.instHasZeroMorphismsFunctorCategory.{u3, u4, u1, u2} C _inst_1 D _inst_2 (CategoryTheory.Preadditive.preadditiveHasZeroMorphisms.{u1, u2} D _inst_2 (CategoryTheory.Abelian.toPreadditive.{u1, u2} D _inst_2 _inst_3))) (CategoryTheory.Limits.functorCategoryHasLimitsOfShape.{0, u3, 0, u4, u1, u2} D _inst_2 CategoryTheory.Limits.WalkingParallelPair CategoryTheory.Limits.walkingParallelPairHomCategory C _inst_1 (CategoryTheory.Abelian.hasEqualizers.{u1, u2} D _inst_2 _inst_3))) (CategoryTheory.Limits.hasCokernels_of_hasCoequalizers.{max u4 u1, max (max (max u4 u3) u2) u1} (CategoryTheory.Functor.{u3, u1, u4, u2} C _inst_1 D _inst_2) (CategoryTheory.Functor.category.{u3, u1, u4, u2} C _inst_1 D _inst_2) (CategoryTheory.Limits.instHasZeroMorphismsFunctorCategory.{u3, u4, u1, u2} C _inst_1 D _inst_2 (CategoryTheory.Preadditive.preadditiveHasZeroMorphisms.{u1, u2} D _inst_2 (CategoryTheory.Abelian.toPreadditive.{u1, u2} D _inst_2 _inst_3))) (CategoryTheory.Limits.functorCategoryHasColimitsOfShape.{0, u3, 0, u4, u1, u2} D _inst_2 CategoryTheory.Limits.WalkingParallelPair CategoryTheory.Limits.walkingParallelPairHomCategory C _inst_1 (CategoryTheory.Abelian.hasCoequalizers.{u1, u2} D _inst_2 _inst_3))) F G α)) X) (CategoryTheory.Abelian.coimage.{u1, u2} D _inst_2 (CategoryTheory.Preadditive.preadditiveHasZeroMorphisms.{u1, u2} D _inst_2 (CategoryTheory.Abelian.toPreadditive.{u1, u2} D _inst_2 _inst_3)) (CategoryTheory.Abelian.has_kernels.{u1, u2} D _inst_2 _inst_3) (CategoryTheory.Abelian.has_cokernels.{u1, u2} D _inst_2 _inst_3) (Prefunctor.obj.{succ u3, succ u1, u4, u2} C (CategoryTheory.CategoryStruct.toQuiver.{u3, u4} C (CategoryTheory.Category.toCategoryStruct.{u3, u4} C _inst_1)) D (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} D (CategoryTheory.Category.toCategoryStruct.{u1, u2} D _inst_2)) (CategoryTheory.Functor.toPrefunctor.{u3, u1, u4, u2} C _inst_1 D _inst_2 F) X) (Prefunctor.obj.{succ u3, succ u1, u4, u2} C (CategoryTheory.CategoryStruct.toQuiver.{u3, u4} C (CategoryTheory.Category.toCategoryStruct.{u3, u4} C _inst_1)) D (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} D (CategoryTheory.Category.toCategoryStruct.{u1, u2} D _inst_2)) (CategoryTheory.Functor.toPrefunctor.{u3, u1, u4, u2} C _inst_1 D _inst_2 G) X) (CategoryTheory.NatTrans.app.{u3, u1, u4, u2} C _inst_1 D _inst_2 F G α X)) (CategoryTheory.Abelian.FunctorCategory.coimageObjIso.{u1, u2, u3, u4} C _inst_1 D _inst_2 _inst_3 F G α X)) (CategoryTheory.CategoryStruct.comp.{u1, u2} D (CategoryTheory.Category.toCategoryStruct.{u1, u2} D _inst_2) (Prefunctor.obj.{succ u3, succ u1, u4, u2} C (CategoryTheory.CategoryStruct.toQuiver.{u3, u4} C (CategoryTheory.Category.toCategoryStruct.{u3, u4} C _inst_1)) D (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} D (CategoryTheory.Category.toCategoryStruct.{u1, u2} D _inst_2)) (CategoryTheory.Functor.toPrefunctor.{u3, u1, u4, u2} C _inst_1 D _inst_2 (CategoryTheory.Abelian.coimage.{max u4 u1, max (max (max u4 u3) u2) u1} (CategoryTheory.Functor.{u3, u1, u4, u2} C _inst_1 D _inst_2) (CategoryTheory.Functor.category.{u3, u1, u4, u2} C _inst_1 D _inst_2) (CategoryTheory.Limits.instHasZeroMorphismsFunctorCategory.{u3, u4, u1, u2} C _inst_1 D _inst_2 (CategoryTheory.Preadditive.preadditiveHasZeroMorphisms.{u1, u2} D _inst_2 (CategoryTheory.Abelian.toPreadditive.{u1, u2} D _inst_2 _inst_3))) (CategoryTheory.Limits.hasKernels_of_hasEqualizers.{max u4 u1, max (max (max u4 u3) u2) u1} (CategoryTheory.Functor.{u3, u1, u4, u2} C _inst_1 D _inst_2) (CategoryTheory.Functor.category.{u3, u1, u4, u2} C _inst_1 D _inst_2) (CategoryTheory.Limits.instHasZeroMorphismsFunctorCategory.{u3, u4, u1, u2} C _inst_1 D _inst_2 (CategoryTheory.Preadditive.preadditiveHasZeroMorphisms.{u1, u2} D _inst_2 (CategoryTheory.Abelian.toPreadditive.{u1, u2} D _inst_2 _inst_3))) (CategoryTheory.Limits.functorCategoryHasLimitsOfShape.{0, u3, 0, u4, u1, u2} D _inst_2 CategoryTheory.Limits.WalkingParallelPair CategoryTheory.Limits.walkingParallelPairHomCategory C _inst_1 (CategoryTheory.Abelian.hasEqualizers.{u1, u2} D _inst_2 _inst_3))) (CategoryTheory.Limits.hasCokernels_of_hasCoequalizers.{max u4 u1, max (max (max u4 u3) u2) u1} (CategoryTheory.Functor.{u3, u1, u4, u2} C _inst_1 D _inst_2) (CategoryTheory.Functor.category.{u3, u1, u4, u2} C _inst_1 D _inst_2) (CategoryTheory.Limits.instHasZeroMorphismsFunctorCategory.{u3, u4, u1, u2} C _inst_1 D _inst_2 (CategoryTheory.Preadditive.preadditiveHasZeroMorphisms.{u1, u2} D _inst_2 (CategoryTheory.Abelian.toPreadditive.{u1, u2} D _inst_2 _inst_3))) (CategoryTheory.Limits.functorCategoryHasColimitsOfShape.{0, u3, 0, u4, u1, u2} D _inst_2 CategoryTheory.Limits.WalkingParallelPair CategoryTheory.Limits.walkingParallelPairHomCategory C _inst_1 (CategoryTheory.Abelian.hasCoequalizers.{u1, u2} D _inst_2 _inst_3))) F G α)) X) (Prefunctor.obj.{succ u3, succ u1, u4, u2} C (CategoryTheory.CategoryStruct.toQuiver.{u3, u4} C (CategoryTheory.Category.toCategoryStruct.{u3, u4} C _inst_1)) D (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} D (CategoryTheory.Category.toCategoryStruct.{u1, u2} D _inst_2)) (CategoryTheory.Functor.toPrefunctor.{u3, u1, u4, u2} C _inst_1 D _inst_2 (CategoryTheory.Abelian.image.{max u4 u1, max (max (max u4 u3) u2) u1} (CategoryTheory.Functor.{u3, u1, u4, u2} C _inst_1 D _inst_2) (CategoryTheory.Functor.category.{u3, u1, u4, u2} C _inst_1 D _inst_2) (CategoryTheory.Limits.instHasZeroMorphismsFunctorCategory.{u3, u4, u1, u2} C _inst_1 D _inst_2 (CategoryTheory.Preadditive.preadditiveHasZeroMorphisms.{u1, u2} D _inst_2 (CategoryTheory.Abelian.toPreadditive.{u1, u2} D _inst_2 _inst_3))) (CategoryTheory.Limits.hasKernels_of_hasEqualizers.{max u4 u1, max (max (max u4 u3) u2) u1} (CategoryTheory.Functor.{u3, u1, u4, u2} C _inst_1 D _inst_2) (CategoryTheory.Functor.category.{u3, u1, u4, u2} C _inst_1 D _inst_2) (CategoryTheory.Limits.instHasZeroMorphismsFunctorCategory.{u3, u4, u1, u2} C _inst_1 D _inst_2 (CategoryTheory.Preadditive.preadditiveHasZeroMorphisms.{u1, u2} D _inst_2 (CategoryTheory.Abelian.toPreadditive.{u1, u2} D _inst_2 _inst_3))) (CategoryTheory.Limits.functorCategoryHasLimitsOfShape.{0, u3, 0, u4, u1, u2} D _inst_2 CategoryTheory.Limits.WalkingParallelPair CategoryTheory.Limits.walkingParallelPairHomCategory C _inst_1 (CategoryTheory.Abelian.hasEqualizers.{u1, u2} D _inst_2 _inst_3))) (CategoryTheory.Limits.hasCokernels_of_hasCoequalizers.{max u4 u1, max (max (max u4 u3) u2) u1} (CategoryTheory.Functor.{u3, u1, u4, u2} C _inst_1 D _inst_2) (CategoryTheory.Functor.category.{u3, u1, u4, u2} C _inst_1 D _inst_2) (CategoryTheory.Limits.instHasZeroMorphismsFunctorCategory.{u3, u4, u1, u2} C _inst_1 D _inst_2 (CategoryTheory.Preadditive.preadditiveHasZeroMorphisms.{u1, u2} D _inst_2 (CategoryTheory.Abelian.toPreadditive.{u1, u2} D _inst_2 _inst_3))) (CategoryTheory.Limits.functorCategoryHasColimitsOfShape.{0, u3, 0, u4, u1, u2} D _inst_2 CategoryTheory.Limits.WalkingParallelPair CategoryTheory.Limits.walkingParallelPairHomCategory C _inst_1 (CategoryTheory.Abelian.hasCoequalizers.{u1, u2} D _inst_2 _inst_3))) F G α)) X) (CategoryTheory.Abelian.image.{u1, u2} D _inst_2 (CategoryTheory.Preadditive.preadditiveHasZeroMorphisms.{u1, u2} D _inst_2 (CategoryTheory.Abelian.toPreadditive.{u1, u2} D _inst_2 _inst_3)) (CategoryTheory.Abelian.has_kernels.{u1, u2} D _inst_2 _inst_3) (CategoryTheory.Abelian.has_cokernels.{u1, u2} D _inst_2 _inst_3) (Prefunctor.obj.{succ u3, succ u1, u4, u2} C (CategoryTheory.CategoryStruct.toQuiver.{u3, u4} C (CategoryTheory.Category.toCategoryStruct.{u3, u4} C _inst_1)) D (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} D (CategoryTheory.Category.toCategoryStruct.{u1, u2} D _inst_2)) (CategoryTheory.Functor.toPrefunctor.{u3, u1, u4, u2} C _inst_1 D _inst_2 F) X) (Prefunctor.obj.{succ u3, succ u1, u4, u2} C (CategoryTheory.CategoryStruct.toQuiver.{u3, u4} C (CategoryTheory.Category.toCategoryStruct.{u3, u4} C _inst_1)) D (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} D (CategoryTheory.Category.toCategoryStruct.{u1, u2} D _inst_2)) (CategoryTheory.Functor.toPrefunctor.{u3, u1, u4, u2} C _inst_1 D _inst_2 G) X) (CategoryTheory.NatTrans.app.{u3, u1, u4, u2} C _inst_1 D _inst_2 F G α X)) (CategoryTheory.NatTrans.app.{u3, u1, u4, u2} C _inst_1 D _inst_2 (CategoryTheory.Abelian.coimage.{max u4 u1, max (max (max u4 u3) u2) u1} (CategoryTheory.Functor.{u3, u1, u4, u2} C _inst_1 D _inst_2) (CategoryTheory.Functor.category.{u3, u1, u4, u2} C _inst_1 D _inst_2) (CategoryTheory.Limits.instHasZeroMorphismsFunctorCategory.{u3, u4, u1, u2} C _inst_1 D _inst_2 (CategoryTheory.Preadditive.preadditiveHasZeroMorphisms.{u1, u2} D _inst_2 (CategoryTheory.Abelian.toPreadditive.{u1, u2} D _inst_2 _inst_3))) (CategoryTheory.Limits.hasKernels_of_hasEqualizers.{max u4 u1, max (max (max u4 u3) u2) u1} (CategoryTheory.Functor.{u3, u1, u4, u2} C _inst_1 D _inst_2) (CategoryTheory.Functor.category.{u3, u1, u4, u2} C _inst_1 D _inst_2) (CategoryTheory.Limits.instHasZeroMorphismsFunctorCategory.{u3, u4, u1, u2} C _inst_1 D _inst_2 (CategoryTheory.Preadditive.preadditiveHasZeroMorphisms.{u1, u2} D _inst_2 (CategoryTheory.Abelian.toPreadditive.{u1, u2} D _inst_2 _inst_3))) (CategoryTheory.Limits.functorCategoryHasLimitsOfShape.{0, u3, 0, u4, u1, u2} D _inst_2 CategoryTheory.Limits.WalkingParallelPair CategoryTheory.Limits.walkingParallelPairHomCategory C _inst_1 (CategoryTheory.Abelian.hasEqualizers.{u1, u2} D _inst_2 _inst_3))) (CategoryTheory.Limits.hasCokernels_of_hasCoequalizers.{max u4 u1, max (max (max u4 u3) u2) u1} (CategoryTheory.Functor.{u3, u1, u4, u2} C _inst_1 D _inst_2) (CategoryTheory.Functor.category.{u3, u1, u4, u2} C _inst_1 D _inst_2) (CategoryTheory.Limits.instHasZeroMorphismsFunctorCategory.{u3, u4, u1, u2} C _inst_1 D _inst_2 (CategoryTheory.Preadditive.preadditiveHasZeroMorphisms.{u1, u2} D _inst_2 (CategoryTheory.Abelian.toPreadditive.{u1, u2} D _inst_2 _inst_3))) (CategoryTheory.Limits.functorCategoryHasColimitsOfShape.{0, u3, 0, u4, u1, u2} D _inst_2 CategoryTheory.Limits.WalkingParallelPair CategoryTheory.Limits.walkingParallelPairHomCategory C _inst_1 (CategoryTheory.Abelian.hasCoequalizers.{u1, u2} D _inst_2 _inst_3))) F G α) (CategoryTheory.Abelian.image.{max u4 u1, max (max (max u4 u3) u2) u1} (CategoryTheory.Functor.{u3, u1, u4, u2} C _inst_1 D _inst_2) (CategoryTheory.Functor.category.{u3, u1, u4, u2} C _inst_1 D _inst_2) (CategoryTheory.Limits.instHasZeroMorphismsFunctorCategory.{u3, u4, u1, u2} C _inst_1 D _inst_2 (CategoryTheory.Preadditive.preadditiveHasZeroMorphisms.{u1, u2} D _inst_2 (CategoryTheory.Abelian.toPreadditive.{u1, u2} D _inst_2 _inst_3))) (CategoryTheory.Limits.hasKernels_of_hasEqualizers.{max u4 u1, max (max (max u4 u3) u2) u1} (CategoryTheory.Functor.{u3, u1, u4, u2} C _inst_1 D _inst_2) (CategoryTheory.Functor.category.{u3, u1, u4, u2} C _inst_1 D _inst_2) (CategoryTheory.Limits.instHasZeroMorphismsFunctorCategory.{u3, u4, u1, u2} C _inst_1 D _inst_2 (CategoryTheory.Preadditive.preadditiveHasZeroMorphisms.{u1, u2} D _inst_2 (CategoryTheory.Abelian.toPreadditive.{u1, u2} D _inst_2 _inst_3))) (CategoryTheory.Limits.functorCategoryHasLimitsOfShape.{0, u3, 0, u4, u1, u2} D _inst_2 CategoryTheory.Limits.WalkingParallelPair CategoryTheory.Limits.walkingParallelPairHomCategory C _inst_1 (CategoryTheory.Abelian.hasEqualizers.{u1, u2} D _inst_2 _inst_3))) (CategoryTheory.Limits.hasCokernels_of_hasCoequalizers.{max u4 u1, max (max (max u4 u3) u2) u1} (CategoryTheory.Functor.{u3, u1, u4, u2} C _inst_1 D _inst_2) (CategoryTheory.Functor.category.{u3, u1, u4, u2} C _inst_1 D _inst_2) (CategoryTheory.Limits.instHasZeroMorphismsFunctorCategory.{u3, u4, u1, u2} C _inst_1 D _inst_2 (CategoryTheory.Preadditive.preadditiveHasZeroMorphisms.{u1, u2} D _inst_2 (CategoryTheory.Abelian.toPreadditive.{u1, u2} D _inst_2 _inst_3))) (CategoryTheory.Limits.functorCategoryHasColimitsOfShape.{0, u3, 0, u4, u1, u2} D _inst_2 CategoryTheory.Limits.WalkingParallelPair CategoryTheory.Limits.walkingParallelPairHomCategory C _inst_1 (CategoryTheory.Abelian.hasCoequalizers.{u1, u2} D _inst_2 _inst_3))) F G α) (CategoryTheory.Abelian.coimageImageComparison.{max u4 u1, max (max (max u4 u3) u2) u1} (CategoryTheory.Functor.{u3, u1, u4, u2} C _inst_1 D _inst_2) (CategoryTheory.Functor.category.{u3, u1, u4, u2} C _inst_1 D _inst_2) (CategoryTheory.Limits.instHasZeroMorphismsFunctorCategory.{u3, u4, u1, u2} C _inst_1 D _inst_2 (CategoryTheory.Preadditive.preadditiveHasZeroMorphisms.{u1, u2} D _inst_2 (CategoryTheory.Abelian.toPreadditive.{u1, u2} D _inst_2 _inst_3))) (CategoryTheory.Limits.hasKernels_of_hasEqualizers.{max u4 u1, max (max (max u4 u3) u2) u1} (CategoryTheory.Functor.{u3, u1, u4, u2} C _inst_1 D _inst_2) (CategoryTheory.Functor.category.{u3, u1, u4, u2} C _inst_1 D _inst_2) (CategoryTheory.Limits.instHasZeroMorphismsFunctorCategory.{u3, u4, u1, u2} C _inst_1 D _inst_2 (CategoryTheory.Preadditive.preadditiveHasZeroMorphisms.{u1, u2} D _inst_2 (CategoryTheory.Abelian.toPreadditive.{u1, u2} D _inst_2 _inst_3))) (CategoryTheory.Limits.functorCategoryHasLimitsOfShape.{0, u3, 0, u4, u1, u2} D _inst_2 CategoryTheory.Limits.WalkingParallelPair CategoryTheory.Limits.walkingParallelPairHomCategory C _inst_1 (CategoryTheory.Abelian.hasEqualizers.{u1, u2} D _inst_2 _inst_3))) (CategoryTheory.Limits.hasCokernels_of_hasCoequalizers.{max u4 u1, max (max (max u4 u3) u2) u1} (CategoryTheory.Functor.{u3, u1, u4, u2} C _inst_1 D _inst_2) (CategoryTheory.Functor.category.{u3, u1, u4, u2} C _inst_1 D _inst_2) (CategoryTheory.Limits.instHasZeroMorphismsFunctorCategory.{u3, u4, u1, u2} C _inst_1 D _inst_2 (CategoryTheory.Preadditive.preadditiveHasZeroMorphisms.{u1, u2} D _inst_2 (CategoryTheory.Abelian.toPreadditive.{u1, u2} D _inst_2 _inst_3))) (CategoryTheory.Limits.functorCategoryHasColimitsOfShape.{0, u3, 0, u4, u1, u2} D _inst_2 CategoryTheory.Limits.WalkingParallelPair CategoryTheory.Limits.walkingParallelPairHomCategory C _inst_1 (CategoryTheory.Abelian.hasCoequalizers.{u1, u2} D _inst_2 _inst_3))) F G α) X) (CategoryTheory.Iso.hom.{u1, u2} D _inst_2 (Prefunctor.obj.{succ u3, succ u1, u4, u2} C (CategoryTheory.CategoryStruct.toQuiver.{u3, u4} C (CategoryTheory.Category.toCategoryStruct.{u3, u4} C _inst_1)) D (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} D (CategoryTheory.Category.toCategoryStruct.{u1, u2} D _inst_2)) (CategoryTheory.Functor.toPrefunctor.{u3, u1, u4, u2} C _inst_1 D _inst_2 (CategoryTheory.Abelian.image.{max u4 u1, max (max (max u4 u3) u2) u1} (CategoryTheory.Functor.{u3, u1, u4, u2} C _inst_1 D _inst_2) (CategoryTheory.Functor.category.{u3, u1, u4, u2} C _inst_1 D _inst_2) (CategoryTheory.Limits.instHasZeroMorphismsFunctorCategory.{u3, u4, u1, u2} C _inst_1 D _inst_2 (CategoryTheory.Preadditive.preadditiveHasZeroMorphisms.{u1, u2} D _inst_2 (CategoryTheory.Abelian.toPreadditive.{u1, u2} D _inst_2 _inst_3))) (CategoryTheory.Limits.hasKernels_of_hasEqualizers.{max u4 u1, max (max (max u4 u3) u2) u1} (CategoryTheory.Functor.{u3, u1, u4, u2} C _inst_1 D _inst_2) (CategoryTheory.Functor.category.{u3, u1, u4, u2} C _inst_1 D _inst_2) (CategoryTheory.Limits.instHasZeroMorphismsFunctorCategory.{u3, u4, u1, u2} C _inst_1 D _inst_2 (CategoryTheory.Preadditive.preadditiveHasZeroMorphisms.{u1, u2} D _inst_2 (CategoryTheory.Abelian.toPreadditive.{u1, u2} D _inst_2 _inst_3))) (CategoryTheory.Limits.functorCategoryHasLimitsOfShape.{0, u3, 0, u4, u1, u2} D _inst_2 CategoryTheory.Limits.WalkingParallelPair CategoryTheory.Limits.walkingParallelPairHomCategory C _inst_1 (CategoryTheory.Abelian.hasEqualizers.{u1, u2} D _inst_2 _inst_3))) (CategoryTheory.Limits.hasCokernels_of_hasCoequalizers.{max u4 u1, max (max (max u4 u3) u2) u1} (CategoryTheory.Functor.{u3, u1, u4, u2} C _inst_1 D _inst_2) (CategoryTheory.Functor.category.{u3, u1, u4, u2} C _inst_1 D _inst_2) (CategoryTheory.Limits.instHasZeroMorphismsFunctorCategory.{u3, u4, u1, u2} C _inst_1 D _inst_2 (CategoryTheory.Preadditive.preadditiveHasZeroMorphisms.{u1, u2} D _inst_2 (CategoryTheory.Abelian.toPreadditive.{u1, u2} D _inst_2 _inst_3))) (CategoryTheory.Limits.functorCategoryHasColimitsOfShape.{0, u3, 0, u4, u1, u2} D _inst_2 CategoryTheory.Limits.WalkingParallelPair CategoryTheory.Limits.walkingParallelPairHomCategory C _inst_1 (CategoryTheory.Abelian.hasCoequalizers.{u1, u2} D _inst_2 _inst_3))) F G α)) X) (CategoryTheory.Abelian.image.{u1, u2} D _inst_2 (CategoryTheory.Preadditive.preadditiveHasZeroMorphisms.{u1, u2} D _inst_2 (CategoryTheory.Abelian.toPreadditive.{u1, u2} D _inst_2 _inst_3)) (CategoryTheory.Abelian.has_kernels.{u1, u2} D _inst_2 _inst_3) (CategoryTheory.Abelian.has_cokernels.{u1, u2} D _inst_2 _inst_3) (Prefunctor.obj.{succ u3, succ u1, u4, u2} C (CategoryTheory.CategoryStruct.toQuiver.{u3, u4} C (CategoryTheory.Category.toCategoryStruct.{u3, u4} C _inst_1)) D (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} D (CategoryTheory.Category.toCategoryStruct.{u1, u2} D _inst_2)) (CategoryTheory.Functor.toPrefunctor.{u3, u1, u4, u2} C _inst_1 D _inst_2 F) X) (Prefunctor.obj.{succ u3, succ u1, u4, u2} C (CategoryTheory.CategoryStruct.toQuiver.{u3, u4} C (CategoryTheory.Category.toCategoryStruct.{u3, u4} C _inst_1)) D (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} D (CategoryTheory.Category.toCategoryStruct.{u1, u2} D _inst_2)) (CategoryTheory.Functor.toPrefunctor.{u3, u1, u4, u2} C _inst_1 D _inst_2 G) X) (CategoryTheory.NatTrans.app.{u3, u1, u4, u2} C _inst_1 D _inst_2 F G α X)) (CategoryTheory.Abelian.FunctorCategory.imageObjIso.{u1, u2, u3, u4} C _inst_1 D _inst_2 _inst_3 F G α X))))
+ forall {C : Type.{u4}} [_inst_1 : CategoryTheory.Category.{u3, u4} C] {D : Type.{u2}} [_inst_2 : CategoryTheory.Category.{u1, u2} D] [_inst_3 : CategoryTheory.Abelian.{u1, u2} D _inst_2] {F : CategoryTheory.Functor.{u3, u1, u4, u2} C _inst_1 D _inst_2} {G : CategoryTheory.Functor.{u3, u1, u4, u2} C _inst_1 D _inst_2} (α : Quiver.Hom.{max (succ u4) (succ u1), max (max (max u4 u3) u2) u1} (CategoryTheory.Functor.{u3, u1, u4, u2} C _inst_1 D _inst_2) (CategoryTheory.CategoryStruct.toQuiver.{max u4 u1, max (max (max u4 u3) u2) u1} (CategoryTheory.Functor.{u3, u1, u4, u2} C _inst_1 D _inst_2) (CategoryTheory.Category.toCategoryStruct.{max u4 u1, max (max (max u4 u3) u2) u1} (CategoryTheory.Functor.{u3, u1, u4, u2} C _inst_1 D _inst_2) (CategoryTheory.Functor.category.{u3, u1, u4, u2} C _inst_1 D _inst_2))) F G) (X : C), Eq.{succ u1} (Quiver.Hom.{succ u1, u2} D (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} D (CategoryTheory.Category.toCategoryStruct.{u1, u2} D _inst_2)) (CategoryTheory.Abelian.coimage.{u1, u2} D _inst_2 (CategoryTheory.Preadditive.preadditiveHasZeroMorphisms.{u1, u2} D _inst_2 (CategoryTheory.Abelian.toPreadditive.{u1, u2} D _inst_2 _inst_3)) (CategoryTheory.Limits.hasKernels_of_hasEqualizers.{u1, u2} D _inst_2 (CategoryTheory.Preadditive.preadditiveHasZeroMorphisms.{u1, u2} D _inst_2 (CategoryTheory.Abelian.toPreadditive.{u1, u2} D _inst_2 _inst_3)) (CategoryTheory.Abelian.hasEqualizers.{u1, u2} D _inst_2 _inst_3)) (CategoryTheory.Limits.hasCokernels_of_hasCoequalizers.{u1, u2} D _inst_2 (CategoryTheory.Preadditive.preadditiveHasZeroMorphisms.{u1, u2} D _inst_2 (CategoryTheory.Abelian.toPreadditive.{u1, u2} D _inst_2 _inst_3)) (CategoryTheory.Abelian.hasCoequalizers.{u1, u2} D _inst_2 _inst_3)) (Prefunctor.obj.{succ u3, succ u1, u4, u2} C (CategoryTheory.CategoryStruct.toQuiver.{u3, u4} C (CategoryTheory.Category.toCategoryStruct.{u3, u4} C _inst_1)) D (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} D (CategoryTheory.Category.toCategoryStruct.{u1, u2} D _inst_2)) (CategoryTheory.Functor.toPrefunctor.{u3, u1, u4, u2} C _inst_1 D _inst_2 F) X) (Prefunctor.obj.{succ u3, succ u1, u4, u2} C (CategoryTheory.CategoryStruct.toQuiver.{u3, u4} C (CategoryTheory.Category.toCategoryStruct.{u3, u4} C _inst_1)) D (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} D (CategoryTheory.Category.toCategoryStruct.{u1, u2} D _inst_2)) (CategoryTheory.Functor.toPrefunctor.{u3, u1, u4, u2} C _inst_1 D _inst_2 G) X) (CategoryTheory.NatTrans.app.{u3, u1, u4, u2} C _inst_1 D _inst_2 F G α X)) (CategoryTheory.Abelian.image.{u1, u2} D _inst_2 (CategoryTheory.Preadditive.preadditiveHasZeroMorphisms.{u1, u2} D _inst_2 (CategoryTheory.Abelian.toPreadditive.{u1, u2} D _inst_2 _inst_3)) (CategoryTheory.Limits.hasKernels_of_hasEqualizers.{u1, u2} D _inst_2 (CategoryTheory.Preadditive.preadditiveHasZeroMorphisms.{u1, u2} D _inst_2 (CategoryTheory.Abelian.toPreadditive.{u1, u2} D _inst_2 _inst_3)) (CategoryTheory.Abelian.hasEqualizers.{u1, u2} D _inst_2 _inst_3)) (CategoryTheory.Limits.hasCokernels_of_hasCoequalizers.{u1, u2} D _inst_2 (CategoryTheory.Preadditive.preadditiveHasZeroMorphisms.{u1, u2} D _inst_2 (CategoryTheory.Abelian.toPreadditive.{u1, u2} D _inst_2 _inst_3)) (CategoryTheory.Abelian.hasCoequalizers.{u1, u2} D _inst_2 _inst_3)) (Prefunctor.obj.{succ u3, succ u1, u4, u2} C (CategoryTheory.CategoryStruct.toQuiver.{u3, u4} C (CategoryTheory.Category.toCategoryStruct.{u3, u4} C _inst_1)) D (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} D (CategoryTheory.Category.toCategoryStruct.{u1, u2} D _inst_2)) (CategoryTheory.Functor.toPrefunctor.{u3, u1, u4, u2} C _inst_1 D _inst_2 F) X) (Prefunctor.obj.{succ u3, succ u1, u4, u2} C (CategoryTheory.CategoryStruct.toQuiver.{u3, u4} C (CategoryTheory.Category.toCategoryStruct.{u3, u4} C _inst_1)) D (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} D (CategoryTheory.Category.toCategoryStruct.{u1, u2} D _inst_2)) (CategoryTheory.Functor.toPrefunctor.{u3, u1, u4, u2} C _inst_1 D _inst_2 G) X) (CategoryTheory.NatTrans.app.{u3, u1, u4, u2} C _inst_1 D _inst_2 F G α X))) (CategoryTheory.Abelian.coimageImageComparison.{u1, u2} D _inst_2 (CategoryTheory.Preadditive.preadditiveHasZeroMorphisms.{u1, u2} D _inst_2 (CategoryTheory.Abelian.toPreadditive.{u1, u2} D _inst_2 _inst_3)) (CategoryTheory.Limits.hasKernels_of_hasEqualizers.{u1, u2} D _inst_2 (CategoryTheory.Preadditive.preadditiveHasZeroMorphisms.{u1, u2} D _inst_2 (CategoryTheory.Abelian.toPreadditive.{u1, u2} D _inst_2 _inst_3)) (CategoryTheory.Abelian.hasEqualizers.{u1, u2} D _inst_2 _inst_3)) (CategoryTheory.Limits.hasCokernels_of_hasCoequalizers.{u1, u2} D _inst_2 (CategoryTheory.Preadditive.preadditiveHasZeroMorphisms.{u1, u2} D _inst_2 (CategoryTheory.Abelian.toPreadditive.{u1, u2} D _inst_2 _inst_3)) (CategoryTheory.Abelian.hasCoequalizers.{u1, u2} D _inst_2 _inst_3)) (Prefunctor.obj.{succ u3, succ u1, u4, u2} C (CategoryTheory.CategoryStruct.toQuiver.{u3, u4} C (CategoryTheory.Category.toCategoryStruct.{u3, u4} C _inst_1)) D (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} D (CategoryTheory.Category.toCategoryStruct.{u1, u2} D _inst_2)) (CategoryTheory.Functor.toPrefunctor.{u3, u1, u4, u2} C _inst_1 D _inst_2 F) X) (Prefunctor.obj.{succ u3, succ u1, u4, u2} C (CategoryTheory.CategoryStruct.toQuiver.{u3, u4} C (CategoryTheory.Category.toCategoryStruct.{u3, u4} C _inst_1)) D (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} D (CategoryTheory.Category.toCategoryStruct.{u1, u2} D _inst_2)) (CategoryTheory.Functor.toPrefunctor.{u3, u1, u4, u2} C _inst_1 D _inst_2 G) X) (CategoryTheory.NatTrans.app.{u3, u1, u4, u2} C _inst_1 D _inst_2 F G α X)) (CategoryTheory.CategoryStruct.comp.{u1, u2} D (CategoryTheory.Category.toCategoryStruct.{u1, u2} D _inst_2) (CategoryTheory.Abelian.coimage.{u1, u2} D _inst_2 (CategoryTheory.Preadditive.preadditiveHasZeroMorphisms.{u1, u2} D _inst_2 (CategoryTheory.Abelian.toPreadditive.{u1, u2} D _inst_2 _inst_3)) (CategoryTheory.Limits.hasKernels_of_hasEqualizers.{u1, u2} D _inst_2 (CategoryTheory.Preadditive.preadditiveHasZeroMorphisms.{u1, u2} D _inst_2 (CategoryTheory.Abelian.toPreadditive.{u1, u2} D _inst_2 _inst_3)) (CategoryTheory.Abelian.hasEqualizers.{u1, u2} D _inst_2 _inst_3)) (CategoryTheory.Limits.hasCokernels_of_hasCoequalizers.{u1, u2} D _inst_2 (CategoryTheory.Preadditive.preadditiveHasZeroMorphisms.{u1, u2} D _inst_2 (CategoryTheory.Abelian.toPreadditive.{u1, u2} D _inst_2 _inst_3)) (CategoryTheory.Abelian.hasCoequalizers.{u1, u2} D _inst_2 _inst_3)) (Prefunctor.obj.{succ u3, succ u1, u4, u2} C (CategoryTheory.CategoryStruct.toQuiver.{u3, u4} C (CategoryTheory.Category.toCategoryStruct.{u3, u4} C _inst_1)) D (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} D (CategoryTheory.Category.toCategoryStruct.{u1, u2} D _inst_2)) (CategoryTheory.Functor.toPrefunctor.{u3, u1, u4, u2} C _inst_1 D _inst_2 F) X) (Prefunctor.obj.{succ u3, succ u1, u4, u2} C (CategoryTheory.CategoryStruct.toQuiver.{u3, u4} C (CategoryTheory.Category.toCategoryStruct.{u3, u4} C _inst_1)) D (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} D (CategoryTheory.Category.toCategoryStruct.{u1, u2} D _inst_2)) (CategoryTheory.Functor.toPrefunctor.{u3, u1, u4, u2} C _inst_1 D _inst_2 G) X) (CategoryTheory.NatTrans.app.{u3, u1, u4, u2} C _inst_1 D _inst_2 F G α X)) (Prefunctor.obj.{succ u3, succ u1, u4, u2} C (CategoryTheory.CategoryStruct.toQuiver.{u3, u4} C (CategoryTheory.Category.toCategoryStruct.{u3, u4} C _inst_1)) D (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} D (CategoryTheory.Category.toCategoryStruct.{u1, u2} D _inst_2)) (CategoryTheory.Functor.toPrefunctor.{u3, u1, u4, u2} C _inst_1 D _inst_2 (CategoryTheory.Abelian.coimage.{max u4 u1, max (max (max u4 u3) u2) u1} (CategoryTheory.Functor.{u3, u1, u4, u2} C _inst_1 D _inst_2) (CategoryTheory.Functor.category.{u3, u1, u4, u2} C _inst_1 D _inst_2) (CategoryTheory.Limits.instHasZeroMorphismsFunctorCategory.{u3, u4, u1, u2} C _inst_1 D _inst_2 (CategoryTheory.Preadditive.preadditiveHasZeroMorphisms.{u1, u2} D _inst_2 (CategoryTheory.Abelian.toPreadditive.{u1, u2} D _inst_2 _inst_3))) (CategoryTheory.Limits.hasKernels_of_hasEqualizers.{max u4 u1, max (max (max u4 u3) u2) u1} (CategoryTheory.Functor.{u3, u1, u4, u2} C _inst_1 D _inst_2) (CategoryTheory.Functor.category.{u3, u1, u4, u2} C _inst_1 D _inst_2) (CategoryTheory.Limits.instHasZeroMorphismsFunctorCategory.{u3, u4, u1, u2} C _inst_1 D _inst_2 (CategoryTheory.Preadditive.preadditiveHasZeroMorphisms.{u1, u2} D _inst_2 (CategoryTheory.Abelian.toPreadditive.{u1, u2} D _inst_2 _inst_3))) (CategoryTheory.Limits.functorCategoryHasLimitsOfShape.{0, u3, 0, u4, u1, u2} D _inst_2 CategoryTheory.Limits.WalkingParallelPair CategoryTheory.Limits.walkingParallelPairHomCategory C _inst_1 (CategoryTheory.Abelian.hasEqualizers.{u1, u2} D _inst_2 _inst_3))) (CategoryTheory.Limits.hasCokernels_of_hasCoequalizers.{max u4 u1, max (max (max u4 u3) u2) u1} (CategoryTheory.Functor.{u3, u1, u4, u2} C _inst_1 D _inst_2) (CategoryTheory.Functor.category.{u3, u1, u4, u2} C _inst_1 D _inst_2) (CategoryTheory.Limits.instHasZeroMorphismsFunctorCategory.{u3, u4, u1, u2} C _inst_1 D _inst_2 (CategoryTheory.Preadditive.preadditiveHasZeroMorphisms.{u1, u2} D _inst_2 (CategoryTheory.Abelian.toPreadditive.{u1, u2} D _inst_2 _inst_3))) (CategoryTheory.Limits.functorCategoryHasColimitsOfShape.{0, u3, 0, u4, u1, u2} D _inst_2 CategoryTheory.Limits.WalkingParallelPair CategoryTheory.Limits.walkingParallelPairHomCategory C _inst_1 (CategoryTheory.Abelian.hasCoequalizers.{u1, u2} D _inst_2 _inst_3))) F G α)) X) (CategoryTheory.Abelian.image.{u1, u2} D _inst_2 (CategoryTheory.Preadditive.preadditiveHasZeroMorphisms.{u1, u2} D _inst_2 (CategoryTheory.Abelian.toPreadditive.{u1, u2} D _inst_2 _inst_3)) (CategoryTheory.Limits.hasKernels_of_hasEqualizers.{u1, u2} D _inst_2 (CategoryTheory.Preadditive.preadditiveHasZeroMorphisms.{u1, u2} D _inst_2 (CategoryTheory.Abelian.toPreadditive.{u1, u2} D _inst_2 _inst_3)) (CategoryTheory.Abelian.hasEqualizers.{u1, u2} D _inst_2 _inst_3)) (CategoryTheory.Limits.hasCokernels_of_hasCoequalizers.{u1, u2} D _inst_2 (CategoryTheory.Preadditive.preadditiveHasZeroMorphisms.{u1, u2} D _inst_2 (CategoryTheory.Abelian.toPreadditive.{u1, u2} D _inst_2 _inst_3)) (CategoryTheory.Abelian.hasCoequalizers.{u1, u2} D _inst_2 _inst_3)) (Prefunctor.obj.{succ u3, succ u1, u4, u2} C (CategoryTheory.CategoryStruct.toQuiver.{u3, u4} C (CategoryTheory.Category.toCategoryStruct.{u3, u4} C _inst_1)) D (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} D (CategoryTheory.Category.toCategoryStruct.{u1, u2} D _inst_2)) (CategoryTheory.Functor.toPrefunctor.{u3, u1, u4, u2} C _inst_1 D _inst_2 F) X) (Prefunctor.obj.{succ u3, succ u1, u4, u2} C (CategoryTheory.CategoryStruct.toQuiver.{u3, u4} C (CategoryTheory.Category.toCategoryStruct.{u3, u4} C _inst_1)) D (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} D (CategoryTheory.Category.toCategoryStruct.{u1, u2} D _inst_2)) (CategoryTheory.Functor.toPrefunctor.{u3, u1, u4, u2} C _inst_1 D _inst_2 G) X) (CategoryTheory.NatTrans.app.{u3, u1, u4, u2} C _inst_1 D _inst_2 F G α X)) (CategoryTheory.Iso.inv.{u1, u2} D _inst_2 (Prefunctor.obj.{succ u3, succ u1, u4, u2} C (CategoryTheory.CategoryStruct.toQuiver.{u3, u4} C (CategoryTheory.Category.toCategoryStruct.{u3, u4} C _inst_1)) D (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} D (CategoryTheory.Category.toCategoryStruct.{u1, u2} D _inst_2)) (CategoryTheory.Functor.toPrefunctor.{u3, u1, u4, u2} C _inst_1 D _inst_2 (CategoryTheory.Abelian.coimage.{max u4 u1, max (max (max u4 u3) u2) u1} (CategoryTheory.Functor.{u3, u1, u4, u2} C _inst_1 D _inst_2) (CategoryTheory.Functor.category.{u3, u1, u4, u2} C _inst_1 D _inst_2) (CategoryTheory.Limits.instHasZeroMorphismsFunctorCategory.{u3, u4, u1, u2} C _inst_1 D _inst_2 (CategoryTheory.Preadditive.preadditiveHasZeroMorphisms.{u1, u2} D _inst_2 (CategoryTheory.Abelian.toPreadditive.{u1, u2} D _inst_2 _inst_3))) (CategoryTheory.Limits.hasKernels_of_hasEqualizers.{max u4 u1, max (max (max u4 u3) u2) u1} (CategoryTheory.Functor.{u3, u1, u4, u2} C _inst_1 D _inst_2) (CategoryTheory.Functor.category.{u3, u1, u4, u2} C _inst_1 D _inst_2) (CategoryTheory.Limits.instHasZeroMorphismsFunctorCategory.{u3, u4, u1, u2} C _inst_1 D _inst_2 (CategoryTheory.Preadditive.preadditiveHasZeroMorphisms.{u1, u2} D _inst_2 (CategoryTheory.Abelian.toPreadditive.{u1, u2} D _inst_2 _inst_3))) (CategoryTheory.Limits.functorCategoryHasLimitsOfShape.{0, u3, 0, u4, u1, u2} D _inst_2 CategoryTheory.Limits.WalkingParallelPair CategoryTheory.Limits.walkingParallelPairHomCategory C _inst_1 (CategoryTheory.Abelian.hasEqualizers.{u1, u2} D _inst_2 _inst_3))) (CategoryTheory.Limits.hasCokernels_of_hasCoequalizers.{max u4 u1, max (max (max u4 u3) u2) u1} (CategoryTheory.Functor.{u3, u1, u4, u2} C _inst_1 D _inst_2) (CategoryTheory.Functor.category.{u3, u1, u4, u2} C _inst_1 D _inst_2) (CategoryTheory.Limits.instHasZeroMorphismsFunctorCategory.{u3, u4, u1, u2} C _inst_1 D _inst_2 (CategoryTheory.Preadditive.preadditiveHasZeroMorphisms.{u1, u2} D _inst_2 (CategoryTheory.Abelian.toPreadditive.{u1, u2} D _inst_2 _inst_3))) (CategoryTheory.Limits.functorCategoryHasColimitsOfShape.{0, u3, 0, u4, u1, u2} D _inst_2 CategoryTheory.Limits.WalkingParallelPair CategoryTheory.Limits.walkingParallelPairHomCategory C _inst_1 (CategoryTheory.Abelian.hasCoequalizers.{u1, u2} D _inst_2 _inst_3))) F G α)) X) (CategoryTheory.Abelian.coimage.{u1, u2} D _inst_2 (CategoryTheory.Preadditive.preadditiveHasZeroMorphisms.{u1, u2} D _inst_2 (CategoryTheory.Abelian.toPreadditive.{u1, u2} D _inst_2 _inst_3)) (CategoryTheory.Limits.hasKernels_of_hasEqualizers.{u1, u2} D _inst_2 (CategoryTheory.Preadditive.preadditiveHasZeroMorphisms.{u1, u2} D _inst_2 (CategoryTheory.Abelian.toPreadditive.{u1, u2} D _inst_2 _inst_3)) (CategoryTheory.Abelian.hasEqualizers.{u1, u2} D _inst_2 _inst_3)) (CategoryTheory.Limits.hasCokernels_of_hasCoequalizers.{u1, u2} D _inst_2 (CategoryTheory.Preadditive.preadditiveHasZeroMorphisms.{u1, u2} D _inst_2 (CategoryTheory.Abelian.toPreadditive.{u1, u2} D _inst_2 _inst_3)) (CategoryTheory.Abelian.hasCoequalizers.{u1, u2} D _inst_2 _inst_3)) (Prefunctor.obj.{succ u3, succ u1, u4, u2} C (CategoryTheory.CategoryStruct.toQuiver.{u3, u4} C (CategoryTheory.Category.toCategoryStruct.{u3, u4} C _inst_1)) D (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} D (CategoryTheory.Category.toCategoryStruct.{u1, u2} D _inst_2)) (CategoryTheory.Functor.toPrefunctor.{u3, u1, u4, u2} C _inst_1 D _inst_2 F) X) (Prefunctor.obj.{succ u3, succ u1, u4, u2} C (CategoryTheory.CategoryStruct.toQuiver.{u3, u4} C (CategoryTheory.Category.toCategoryStruct.{u3, u4} C _inst_1)) D (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} D (CategoryTheory.Category.toCategoryStruct.{u1, u2} D _inst_2)) (CategoryTheory.Functor.toPrefunctor.{u3, u1, u4, u2} C _inst_1 D _inst_2 G) X) (CategoryTheory.NatTrans.app.{u3, u1, u4, u2} C _inst_1 D _inst_2 F G α X)) (CategoryTheory.Abelian.FunctorCategory.coimageObjIso.{u1, u2, u3, u4} C _inst_1 D _inst_2 _inst_3 F G α X)) (CategoryTheory.CategoryStruct.comp.{u1, u2} D (CategoryTheory.Category.toCategoryStruct.{u1, u2} D _inst_2) (Prefunctor.obj.{succ u3, succ u1, u4, u2} C (CategoryTheory.CategoryStruct.toQuiver.{u3, u4} C (CategoryTheory.Category.toCategoryStruct.{u3, u4} C _inst_1)) D (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} D (CategoryTheory.Category.toCategoryStruct.{u1, u2} D _inst_2)) (CategoryTheory.Functor.toPrefunctor.{u3, u1, u4, u2} C _inst_1 D _inst_2 (CategoryTheory.Abelian.coimage.{max u4 u1, max (max (max u4 u3) u2) u1} (CategoryTheory.Functor.{u3, u1, u4, u2} C _inst_1 D _inst_2) (CategoryTheory.Functor.category.{u3, u1, u4, u2} C _inst_1 D _inst_2) (CategoryTheory.Limits.instHasZeroMorphismsFunctorCategory.{u3, u4, u1, u2} C _inst_1 D _inst_2 (CategoryTheory.Preadditive.preadditiveHasZeroMorphisms.{u1, u2} D _inst_2 (CategoryTheory.Abelian.toPreadditive.{u1, u2} D _inst_2 _inst_3))) (CategoryTheory.Limits.hasKernels_of_hasEqualizers.{max u4 u1, max (max (max u4 u3) u2) u1} (CategoryTheory.Functor.{u3, u1, u4, u2} C _inst_1 D _inst_2) (CategoryTheory.Functor.category.{u3, u1, u4, u2} C _inst_1 D _inst_2) (CategoryTheory.Limits.instHasZeroMorphismsFunctorCategory.{u3, u4, u1, u2} C _inst_1 D _inst_2 (CategoryTheory.Preadditive.preadditiveHasZeroMorphisms.{u1, u2} D _inst_2 (CategoryTheory.Abelian.toPreadditive.{u1, u2} D _inst_2 _inst_3))) (CategoryTheory.Limits.functorCategoryHasLimitsOfShape.{0, u3, 0, u4, u1, u2} D _inst_2 CategoryTheory.Limits.WalkingParallelPair CategoryTheory.Limits.walkingParallelPairHomCategory C _inst_1 (CategoryTheory.Abelian.hasEqualizers.{u1, u2} D _inst_2 _inst_3))) (CategoryTheory.Limits.hasCokernels_of_hasCoequalizers.{max u4 u1, max (max (max u4 u3) u2) u1} (CategoryTheory.Functor.{u3, u1, u4, u2} C _inst_1 D _inst_2) (CategoryTheory.Functor.category.{u3, u1, u4, u2} C _inst_1 D _inst_2) (CategoryTheory.Limits.instHasZeroMorphismsFunctorCategory.{u3, u4, u1, u2} C _inst_1 D _inst_2 (CategoryTheory.Preadditive.preadditiveHasZeroMorphisms.{u1, u2} D _inst_2 (CategoryTheory.Abelian.toPreadditive.{u1, u2} D _inst_2 _inst_3))) (CategoryTheory.Limits.functorCategoryHasColimitsOfShape.{0, u3, 0, u4, u1, u2} D _inst_2 CategoryTheory.Limits.WalkingParallelPair CategoryTheory.Limits.walkingParallelPairHomCategory C _inst_1 (CategoryTheory.Abelian.hasCoequalizers.{u1, u2} D _inst_2 _inst_3))) F G α)) X) (Prefunctor.obj.{succ u3, succ u1, u4, u2} C (CategoryTheory.CategoryStruct.toQuiver.{u3, u4} C (CategoryTheory.Category.toCategoryStruct.{u3, u4} C _inst_1)) D (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} D (CategoryTheory.Category.toCategoryStruct.{u1, u2} D _inst_2)) (CategoryTheory.Functor.toPrefunctor.{u3, u1, u4, u2} C _inst_1 D _inst_2 (CategoryTheory.Abelian.image.{max u4 u1, max (max (max u4 u3) u2) u1} (CategoryTheory.Functor.{u3, u1, u4, u2} C _inst_1 D _inst_2) (CategoryTheory.Functor.category.{u3, u1, u4, u2} C _inst_1 D _inst_2) (CategoryTheory.Limits.instHasZeroMorphismsFunctorCategory.{u3, u4, u1, u2} C _inst_1 D _inst_2 (CategoryTheory.Preadditive.preadditiveHasZeroMorphisms.{u1, u2} D _inst_2 (CategoryTheory.Abelian.toPreadditive.{u1, u2} D _inst_2 _inst_3))) (CategoryTheory.Limits.hasKernels_of_hasEqualizers.{max u4 u1, max (max (max u4 u3) u2) u1} (CategoryTheory.Functor.{u3, u1, u4, u2} C _inst_1 D _inst_2) (CategoryTheory.Functor.category.{u3, u1, u4, u2} C _inst_1 D _inst_2) (CategoryTheory.Limits.instHasZeroMorphismsFunctorCategory.{u3, u4, u1, u2} C _inst_1 D _inst_2 (CategoryTheory.Preadditive.preadditiveHasZeroMorphisms.{u1, u2} D _inst_2 (CategoryTheory.Abelian.toPreadditive.{u1, u2} D _inst_2 _inst_3))) (CategoryTheory.Limits.functorCategoryHasLimitsOfShape.{0, u3, 0, u4, u1, u2} D _inst_2 CategoryTheory.Limits.WalkingParallelPair CategoryTheory.Limits.walkingParallelPairHomCategory C _inst_1 (CategoryTheory.Abelian.hasEqualizers.{u1, u2} D _inst_2 _inst_3))) (CategoryTheory.Limits.hasCokernels_of_hasCoequalizers.{max u4 u1, max (max (max u4 u3) u2) u1} (CategoryTheory.Functor.{u3, u1, u4, u2} C _inst_1 D _inst_2) (CategoryTheory.Functor.category.{u3, u1, u4, u2} C _inst_1 D _inst_2) (CategoryTheory.Limits.instHasZeroMorphismsFunctorCategory.{u3, u4, u1, u2} C _inst_1 D _inst_2 (CategoryTheory.Preadditive.preadditiveHasZeroMorphisms.{u1, u2} D _inst_2 (CategoryTheory.Abelian.toPreadditive.{u1, u2} D _inst_2 _inst_3))) (CategoryTheory.Limits.functorCategoryHasColimitsOfShape.{0, u3, 0, u4, u1, u2} D _inst_2 CategoryTheory.Limits.WalkingParallelPair CategoryTheory.Limits.walkingParallelPairHomCategory C _inst_1 (CategoryTheory.Abelian.hasCoequalizers.{u1, u2} D _inst_2 _inst_3))) F G α)) X) (CategoryTheory.Abelian.image.{u1, u2} D _inst_2 (CategoryTheory.Preadditive.preadditiveHasZeroMorphisms.{u1, u2} D _inst_2 (CategoryTheory.Abelian.toPreadditive.{u1, u2} D _inst_2 _inst_3)) (CategoryTheory.Limits.hasKernels_of_hasEqualizers.{u1, u2} D _inst_2 (CategoryTheory.Preadditive.preadditiveHasZeroMorphisms.{u1, u2} D _inst_2 (CategoryTheory.Abelian.toPreadditive.{u1, u2} D _inst_2 _inst_3)) (CategoryTheory.Abelian.hasEqualizers.{u1, u2} D _inst_2 _inst_3)) (CategoryTheory.Limits.hasCokernels_of_hasCoequalizers.{u1, u2} D _inst_2 (CategoryTheory.Preadditive.preadditiveHasZeroMorphisms.{u1, u2} D _inst_2 (CategoryTheory.Abelian.toPreadditive.{u1, u2} D _inst_2 _inst_3)) (CategoryTheory.Abelian.hasCoequalizers.{u1, u2} D _inst_2 _inst_3)) (Prefunctor.obj.{succ u3, succ u1, u4, u2} C (CategoryTheory.CategoryStruct.toQuiver.{u3, u4} C (CategoryTheory.Category.toCategoryStruct.{u3, u4} C _inst_1)) D (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} D (CategoryTheory.Category.toCategoryStruct.{u1, u2} D _inst_2)) (CategoryTheory.Functor.toPrefunctor.{u3, u1, u4, u2} C _inst_1 D _inst_2 F) X) (Prefunctor.obj.{succ u3, succ u1, u4, u2} C (CategoryTheory.CategoryStruct.toQuiver.{u3, u4} C (CategoryTheory.Category.toCategoryStruct.{u3, u4} C _inst_1)) D (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} D (CategoryTheory.Category.toCategoryStruct.{u1, u2} D _inst_2)) (CategoryTheory.Functor.toPrefunctor.{u3, u1, u4, u2} C _inst_1 D _inst_2 G) X) (CategoryTheory.NatTrans.app.{u3, u1, u4, u2} C _inst_1 D _inst_2 F G α X)) (CategoryTheory.NatTrans.app.{u3, u1, u4, u2} C _inst_1 D _inst_2 (CategoryTheory.Abelian.coimage.{max u4 u1, max (max (max u4 u3) u2) u1} (CategoryTheory.Functor.{u3, u1, u4, u2} C _inst_1 D _inst_2) (CategoryTheory.Functor.category.{u3, u1, u4, u2} C _inst_1 D _inst_2) (CategoryTheory.Limits.instHasZeroMorphismsFunctorCategory.{u3, u4, u1, u2} C _inst_1 D _inst_2 (CategoryTheory.Preadditive.preadditiveHasZeroMorphisms.{u1, u2} D _inst_2 (CategoryTheory.Abelian.toPreadditive.{u1, u2} D _inst_2 _inst_3))) (CategoryTheory.Limits.hasKernels_of_hasEqualizers.{max u4 u1, max (max (max u4 u3) u2) u1} (CategoryTheory.Functor.{u3, u1, u4, u2} C _inst_1 D _inst_2) (CategoryTheory.Functor.category.{u3, u1, u4, u2} C _inst_1 D _inst_2) (CategoryTheory.Limits.instHasZeroMorphismsFunctorCategory.{u3, u4, u1, u2} C _inst_1 D _inst_2 (CategoryTheory.Preadditive.preadditiveHasZeroMorphisms.{u1, u2} D _inst_2 (CategoryTheory.Abelian.toPreadditive.{u1, u2} D _inst_2 _inst_3))) (CategoryTheory.Limits.functorCategoryHasLimitsOfShape.{0, u3, 0, u4, u1, u2} D _inst_2 CategoryTheory.Limits.WalkingParallelPair CategoryTheory.Limits.walkingParallelPairHomCategory C _inst_1 (CategoryTheory.Abelian.hasEqualizers.{u1, u2} D _inst_2 _inst_3))) (CategoryTheory.Limits.hasCokernels_of_hasCoequalizers.{max u4 u1, max (max (max u4 u3) u2) u1} (CategoryTheory.Functor.{u3, u1, u4, u2} C _inst_1 D _inst_2) (CategoryTheory.Functor.category.{u3, u1, u4, u2} C _inst_1 D _inst_2) (CategoryTheory.Limits.instHasZeroMorphismsFunctorCategory.{u3, u4, u1, u2} C _inst_1 D _inst_2 (CategoryTheory.Preadditive.preadditiveHasZeroMorphisms.{u1, u2} D _inst_2 (CategoryTheory.Abelian.toPreadditive.{u1, u2} D _inst_2 _inst_3))) (CategoryTheory.Limits.functorCategoryHasColimitsOfShape.{0, u3, 0, u4, u1, u2} D _inst_2 CategoryTheory.Limits.WalkingParallelPair CategoryTheory.Limits.walkingParallelPairHomCategory C _inst_1 (CategoryTheory.Abelian.hasCoequalizers.{u1, u2} D _inst_2 _inst_3))) F G α) (CategoryTheory.Abelian.image.{max u4 u1, max (max (max u4 u3) u2) u1} (CategoryTheory.Functor.{u3, u1, u4, u2} C _inst_1 D _inst_2) (CategoryTheory.Functor.category.{u3, u1, u4, u2} C _inst_1 D _inst_2) (CategoryTheory.Limits.instHasZeroMorphismsFunctorCategory.{u3, u4, u1, u2} C _inst_1 D _inst_2 (CategoryTheory.Preadditive.preadditiveHasZeroMorphisms.{u1, u2} D _inst_2 (CategoryTheory.Abelian.toPreadditive.{u1, u2} D _inst_2 _inst_3))) (CategoryTheory.Limits.hasKernels_of_hasEqualizers.{max u4 u1, max (max (max u4 u3) u2) u1} (CategoryTheory.Functor.{u3, u1, u4, u2} C _inst_1 D _inst_2) (CategoryTheory.Functor.category.{u3, u1, u4, u2} C _inst_1 D _inst_2) (CategoryTheory.Limits.instHasZeroMorphismsFunctorCategory.{u3, u4, u1, u2} C _inst_1 D _inst_2 (CategoryTheory.Preadditive.preadditiveHasZeroMorphisms.{u1, u2} D _inst_2 (CategoryTheory.Abelian.toPreadditive.{u1, u2} D _inst_2 _inst_3))) (CategoryTheory.Limits.functorCategoryHasLimitsOfShape.{0, u3, 0, u4, u1, u2} D _inst_2 CategoryTheory.Limits.WalkingParallelPair CategoryTheory.Limits.walkingParallelPairHomCategory C _inst_1 (CategoryTheory.Abelian.hasEqualizers.{u1, u2} D _inst_2 _inst_3))) (CategoryTheory.Limits.hasCokernels_of_hasCoequalizers.{max u4 u1, max (max (max u4 u3) u2) u1} (CategoryTheory.Functor.{u3, u1, u4, u2} C _inst_1 D _inst_2) (CategoryTheory.Functor.category.{u3, u1, u4, u2} C _inst_1 D _inst_2) (CategoryTheory.Limits.instHasZeroMorphismsFunctorCategory.{u3, u4, u1, u2} C _inst_1 D _inst_2 (CategoryTheory.Preadditive.preadditiveHasZeroMorphisms.{u1, u2} D _inst_2 (CategoryTheory.Abelian.toPreadditive.{u1, u2} D _inst_2 _inst_3))) (CategoryTheory.Limits.functorCategoryHasColimitsOfShape.{0, u3, 0, u4, u1, u2} D _inst_2 CategoryTheory.Limits.WalkingParallelPair CategoryTheory.Limits.walkingParallelPairHomCategory C _inst_1 (CategoryTheory.Abelian.hasCoequalizers.{u1, u2} D _inst_2 _inst_3))) F G α) (CategoryTheory.Abelian.coimageImageComparison.{max u4 u1, max (max (max u4 u3) u2) u1} (CategoryTheory.Functor.{u3, u1, u4, u2} C _inst_1 D _inst_2) (CategoryTheory.Functor.category.{u3, u1, u4, u2} C _inst_1 D _inst_2) (CategoryTheory.Limits.instHasZeroMorphismsFunctorCategory.{u3, u4, u1, u2} C _inst_1 D _inst_2 (CategoryTheory.Preadditive.preadditiveHasZeroMorphisms.{u1, u2} D _inst_2 (CategoryTheory.Abelian.toPreadditive.{u1, u2} D _inst_2 _inst_3))) (CategoryTheory.Limits.hasKernels_of_hasEqualizers.{max u4 u1, max (max (max u4 u3) u2) u1} (CategoryTheory.Functor.{u3, u1, u4, u2} C _inst_1 D _inst_2) (CategoryTheory.Functor.category.{u3, u1, u4, u2} C _inst_1 D _inst_2) (CategoryTheory.Limits.instHasZeroMorphismsFunctorCategory.{u3, u4, u1, u2} C _inst_1 D _inst_2 (CategoryTheory.Preadditive.preadditiveHasZeroMorphisms.{u1, u2} D _inst_2 (CategoryTheory.Abelian.toPreadditive.{u1, u2} D _inst_2 _inst_3))) (CategoryTheory.Limits.functorCategoryHasLimitsOfShape.{0, u3, 0, u4, u1, u2} D _inst_2 CategoryTheory.Limits.WalkingParallelPair CategoryTheory.Limits.walkingParallelPairHomCategory C _inst_1 (CategoryTheory.Abelian.hasEqualizers.{u1, u2} D _inst_2 _inst_3))) (CategoryTheory.Limits.hasCokernels_of_hasCoequalizers.{max u4 u1, max (max (max u4 u3) u2) u1} (CategoryTheory.Functor.{u3, u1, u4, u2} C _inst_1 D _inst_2) (CategoryTheory.Functor.category.{u3, u1, u4, u2} C _inst_1 D _inst_2) (CategoryTheory.Limits.instHasZeroMorphismsFunctorCategory.{u3, u4, u1, u2} C _inst_1 D _inst_2 (CategoryTheory.Preadditive.preadditiveHasZeroMorphisms.{u1, u2} D _inst_2 (CategoryTheory.Abelian.toPreadditive.{u1, u2} D _inst_2 _inst_3))) (CategoryTheory.Limits.functorCategoryHasColimitsOfShape.{0, u3, 0, u4, u1, u2} D _inst_2 CategoryTheory.Limits.WalkingParallelPair CategoryTheory.Limits.walkingParallelPairHomCategory C _inst_1 (CategoryTheory.Abelian.hasCoequalizers.{u1, u2} D _inst_2 _inst_3))) F G α) X) (CategoryTheory.Iso.hom.{u1, u2} D _inst_2 (Prefunctor.obj.{succ u3, succ u1, u4, u2} C (CategoryTheory.CategoryStruct.toQuiver.{u3, u4} C (CategoryTheory.Category.toCategoryStruct.{u3, u4} C _inst_1)) D (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} D (CategoryTheory.Category.toCategoryStruct.{u1, u2} D _inst_2)) (CategoryTheory.Functor.toPrefunctor.{u3, u1, u4, u2} C _inst_1 D _inst_2 (CategoryTheory.Abelian.image.{max u4 u1, max (max (max u4 u3) u2) u1} (CategoryTheory.Functor.{u3, u1, u4, u2} C _inst_1 D _inst_2) (CategoryTheory.Functor.category.{u3, u1, u4, u2} C _inst_1 D _inst_2) (CategoryTheory.Limits.instHasZeroMorphismsFunctorCategory.{u3, u4, u1, u2} C _inst_1 D _inst_2 (CategoryTheory.Preadditive.preadditiveHasZeroMorphisms.{u1, u2} D _inst_2 (CategoryTheory.Abelian.toPreadditive.{u1, u2} D _inst_2 _inst_3))) (CategoryTheory.Limits.hasKernels_of_hasEqualizers.{max u4 u1, max (max (max u4 u3) u2) u1} (CategoryTheory.Functor.{u3, u1, u4, u2} C _inst_1 D _inst_2) (CategoryTheory.Functor.category.{u3, u1, u4, u2} C _inst_1 D _inst_2) (CategoryTheory.Limits.instHasZeroMorphismsFunctorCategory.{u3, u4, u1, u2} C _inst_1 D _inst_2 (CategoryTheory.Preadditive.preadditiveHasZeroMorphisms.{u1, u2} D _inst_2 (CategoryTheory.Abelian.toPreadditive.{u1, u2} D _inst_2 _inst_3))) (CategoryTheory.Limits.functorCategoryHasLimitsOfShape.{0, u3, 0, u4, u1, u2} D _inst_2 CategoryTheory.Limits.WalkingParallelPair CategoryTheory.Limits.walkingParallelPairHomCategory C _inst_1 (CategoryTheory.Abelian.hasEqualizers.{u1, u2} D _inst_2 _inst_3))) (CategoryTheory.Limits.hasCokernels_of_hasCoequalizers.{max u4 u1, max (max (max u4 u3) u2) u1} (CategoryTheory.Functor.{u3, u1, u4, u2} C _inst_1 D _inst_2) (CategoryTheory.Functor.category.{u3, u1, u4, u2} C _inst_1 D _inst_2) (CategoryTheory.Limits.instHasZeroMorphismsFunctorCategory.{u3, u4, u1, u2} C _inst_1 D _inst_2 (CategoryTheory.Preadditive.preadditiveHasZeroMorphisms.{u1, u2} D _inst_2 (CategoryTheory.Abelian.toPreadditive.{u1, u2} D _inst_2 _inst_3))) (CategoryTheory.Limits.functorCategoryHasColimitsOfShape.{0, u3, 0, u4, u1, u2} D _inst_2 CategoryTheory.Limits.WalkingParallelPair CategoryTheory.Limits.walkingParallelPairHomCategory C _inst_1 (CategoryTheory.Abelian.hasCoequalizers.{u1, u2} D _inst_2 _inst_3))) F G α)) X) (CategoryTheory.Abelian.image.{u1, u2} D _inst_2 (CategoryTheory.Preadditive.preadditiveHasZeroMorphisms.{u1, u2} D _inst_2 (CategoryTheory.Abelian.toPreadditive.{u1, u2} D _inst_2 _inst_3)) (CategoryTheory.Limits.hasKernels_of_hasEqualizers.{u1, u2} D _inst_2 (CategoryTheory.Preadditive.preadditiveHasZeroMorphisms.{u1, u2} D _inst_2 (CategoryTheory.Abelian.toPreadditive.{u1, u2} D _inst_2 _inst_3)) (CategoryTheory.Abelian.hasEqualizers.{u1, u2} D _inst_2 _inst_3)) (CategoryTheory.Limits.hasCokernels_of_hasCoequalizers.{u1, u2} D _inst_2 (CategoryTheory.Preadditive.preadditiveHasZeroMorphisms.{u1, u2} D _inst_2 (CategoryTheory.Abelian.toPreadditive.{u1, u2} D _inst_2 _inst_3)) (CategoryTheory.Abelian.hasCoequalizers.{u1, u2} D _inst_2 _inst_3)) (Prefunctor.obj.{succ u3, succ u1, u4, u2} C (CategoryTheory.CategoryStruct.toQuiver.{u3, u4} C (CategoryTheory.Category.toCategoryStruct.{u3, u4} C _inst_1)) D (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} D (CategoryTheory.Category.toCategoryStruct.{u1, u2} D _inst_2)) (CategoryTheory.Functor.toPrefunctor.{u3, u1, u4, u2} C _inst_1 D _inst_2 F) X) (Prefunctor.obj.{succ u3, succ u1, u4, u2} C (CategoryTheory.CategoryStruct.toQuiver.{u3, u4} C (CategoryTheory.Category.toCategoryStruct.{u3, u4} C _inst_1)) D (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} D (CategoryTheory.Category.toCategoryStruct.{u1, u2} D _inst_2)) (CategoryTheory.Functor.toPrefunctor.{u3, u1, u4, u2} C _inst_1 D _inst_2 G) X) (CategoryTheory.NatTrans.app.{u3, u1, u4, u2} C _inst_1 D _inst_2 F G α X)) (CategoryTheory.Abelian.FunctorCategory.imageObjIso.{u1, u2, u3, u4} C _inst_1 D _inst_2 _inst_3 F G α X))))
Case conversion may be inaccurate. Consider using '#align category_theory.abelian.functor_category.coimage_image_comparison_app CategoryTheory.Abelian.FunctorCategory.coimageImageComparison_appₓ'. -/
theorem coimageImageComparison_app :
coimageImageComparison (α.app X) =
@@ -103,7 +103,7 @@ theorem coimageImageComparison_app :
lean 3 declaration is
forall {C : Type.{max u3 u4}} [_inst_1 : CategoryTheory.Category.{u3, max u3 u4} C] {D : Type.{u2}} [_inst_2 : CategoryTheory.Category.{max u1 u3 u4, u2} D] [_inst_3 : CategoryTheory.Abelian.{max u1 u3 u4, u2} D _inst_2] {F : CategoryTheory.Functor.{u3, max u1 u3 u4, max u3 u4, u2} C _inst_1 D _inst_2} {G : CategoryTheory.Functor.{u3, max u1 u3 u4, max u3 u4, u2} C _inst_1 D _inst_2} (α : Quiver.Hom.{succ (max u1 u3 u4), max u3 (max u1 u3 u4) (max u3 u4) u2} (CategoryTheory.Functor.{u3, max u1 u3 u4, max u3 u4, u2} C _inst_1 D _inst_2) (CategoryTheory.CategoryStruct.toQuiver.{max u1 u3 u4, max u3 (max u1 u3 u4) (max u3 u4) u2} (CategoryTheory.Functor.{u3, max u1 u3 u4, max u3 u4, u2} C _inst_1 D _inst_2) (CategoryTheory.Category.toCategoryStruct.{max u1 u3 u4, max u3 (max u1 u3 u4) (max u3 u4) u2} (CategoryTheory.Functor.{u3, max u1 u3 u4, max u3 u4, u2} C _inst_1 D _inst_2) (CategoryTheory.Functor.category.{u3, max u1 u3 u4, max u3 u4, u2} C _inst_1 D _inst_2))) F G) (X : C), Eq.{succ (max u1 u3 u4)} (Quiver.Hom.{succ (max u1 u3 u4), u2} D (CategoryTheory.CategoryStruct.toQuiver.{max u1 u3 u4, u2} D (CategoryTheory.Category.toCategoryStruct.{max u1 u3 u4, u2} D _inst_2)) (CategoryTheory.Functor.obj.{u3, max u1 u3 u4, max u3 u4, u2} C _inst_1 D _inst_2 (CategoryTheory.Abelian.coimage.{max u1 u3 u4, max u3 (max u1 u3 u4) (max u3 u4) u2} (CategoryTheory.Functor.{u3, max u1 u3 u4, max u3 u4, u2} C _inst_1 D _inst_2) (CategoryTheory.Functor.category.{u3, max u1 u3 u4, max u3 u4, u2} C _inst_1 D _inst_2) (CategoryTheory.Limits.CategoryTheory.Functor.hasZeroMorphisms.{u3, max u3 u4, max u1 u3 u4, u2} C _inst_1 D _inst_2 (CategoryTheory.Preadditive.preadditiveHasZeroMorphisms.{max u1 u3 u4, u2} D _inst_2 (CategoryTheory.Abelian.toPreadditive.{max u1 u3 u4, u2} D _inst_2 _inst_3))) (CategoryTheory.Abelian.FunctorCategory.coimageObjIso._proof_1.{u4, u3, u2, u1} C _inst_1 D _inst_2 _inst_3) (CategoryTheory.Abelian.FunctorCategory.coimageObjIso._proof_2.{u4, u3, u2, u1} C _inst_1 D _inst_2 _inst_3) F G α) X) (CategoryTheory.Functor.obj.{u3, max u1 u3 u4, max u3 u4, u2} C _inst_1 D _inst_2 (CategoryTheory.Abelian.image.{max u1 u3 u4, max u3 (max u1 u3 u4) (max u3 u4) u2} (CategoryTheory.Functor.{u3, max u1 u3 u4, max u3 u4, u2} C _inst_1 D _inst_2) (CategoryTheory.Functor.category.{u3, max u1 u3 u4, max u3 u4, u2} C _inst_1 D _inst_2) (CategoryTheory.Limits.CategoryTheory.Functor.hasZeroMorphisms.{u3, max u3 u4, max u1 u3 u4, u2} C _inst_1 D _inst_2 (CategoryTheory.Preadditive.preadditiveHasZeroMorphisms.{max u1 u3 u4, u2} D _inst_2 (CategoryTheory.Abelian.toPreadditive.{max u1 u3 u4, u2} D _inst_2 _inst_3))) (CategoryTheory.Abelian.FunctorCategory.coimageObjIso._proof_1.{u4, u3, u2, u1} C _inst_1 D _inst_2 _inst_3) (CategoryTheory.Abelian.FunctorCategory.coimageObjIso._proof_2.{u4, u3, u2, u1} C _inst_1 D _inst_2 _inst_3) F G α) X)) (CategoryTheory.NatTrans.app.{u3, max u1 u3 u4, max u3 u4, u2} C _inst_1 D _inst_2 (CategoryTheory.Abelian.coimage.{max u1 u3 u4, max u3 (max u1 u3 u4) (max u3 u4) u2} (CategoryTheory.Functor.{u3, max u1 u3 u4, max u3 u4, u2} C _inst_1 D _inst_2) (CategoryTheory.Functor.category.{u3, max u1 u3 u4, max u3 u4, u2} C _inst_1 D _inst_2) (CategoryTheory.Limits.CategoryTheory.Functor.hasZeroMorphisms.{u3, max u3 u4, max u1 u3 u4, u2} C _inst_1 D _inst_2 (CategoryTheory.Preadditive.preadditiveHasZeroMorphisms.{max u1 u3 u4, u2} D _inst_2 (CategoryTheory.Abelian.toPreadditive.{max u1 u3 u4, u2} D _inst_2 _inst_3))) (CategoryTheory.Abelian.FunctorCategory.coimageObjIso._proof_1.{u4, u3, u2, u1} C _inst_1 D _inst_2 _inst_3) (CategoryTheory.Abelian.FunctorCategory.coimageObjIso._proof_2.{u4, u3, u2, u1} C _inst_1 D _inst_2 _inst_3) F G α) (CategoryTheory.Abelian.image.{max u1 u3 u4, max u3 (max u1 u3 u4) (max u3 u4) u2} (CategoryTheory.Functor.{u3, max u1 u3 u4, max u3 u4, u2} C _inst_1 D _inst_2) (CategoryTheory.Functor.category.{u3, max u1 u3 u4, max u3 u4, u2} C _inst_1 D _inst_2) (CategoryTheory.Limits.CategoryTheory.Functor.hasZeroMorphisms.{u3, max u3 u4, max u1 u3 u4, u2} C _inst_1 D _inst_2 (CategoryTheory.Preadditive.preadditiveHasZeroMorphisms.{max u1 u3 u4, u2} D _inst_2 (CategoryTheory.Abelian.toPreadditive.{max u1 u3 u4, u2} D _inst_2 _inst_3))) (CategoryTheory.Abelian.FunctorCategory.coimageObjIso._proof_1.{u4, u3, u2, u1} C _inst_1 D _inst_2 _inst_3) (CategoryTheory.Abelian.FunctorCategory.coimageObjIso._proof_2.{u4, u3, u2, u1} C _inst_1 D _inst_2 _inst_3) F G α) (CategoryTheory.Abelian.coimageImageComparison.{max u1 u3 u4, max u3 (max u1 u3 u4) (max u3 u4) u2} (CategoryTheory.Functor.{u3, max u1 u3 u4, max u3 u4, u2} C _inst_1 D _inst_2) (CategoryTheory.Functor.category.{u3, max u1 u3 u4, max u3 u4, u2} C _inst_1 D _inst_2) (CategoryTheory.Limits.CategoryTheory.Functor.hasZeroMorphisms.{u3, max u3 u4, max u1 u3 u4, u2} C _inst_1 D _inst_2 (CategoryTheory.Preadditive.preadditiveHasZeroMorphisms.{max u1 u3 u4, u2} D _inst_2 (CategoryTheory.Abelian.toPreadditive.{max u1 u3 u4, u2} D _inst_2 _inst_3))) (CategoryTheory.Abelian.FunctorCategory.coimageObjIso._proof_1.{u4, u3, u2, u1} C _inst_1 D _inst_2 _inst_3) (CategoryTheory.Abelian.FunctorCategory.coimageObjIso._proof_2.{u4, u3, u2, u1} C _inst_1 D _inst_2 _inst_3) F G α) X) (CategoryTheory.CategoryStruct.comp.{max u1 u3 u4, u2} D (CategoryTheory.Category.toCategoryStruct.{max u1 u3 u4, u2} D _inst_2) (CategoryTheory.Functor.obj.{u3, max u1 u3 u4, max u3 u4, u2} C _inst_1 D _inst_2 (CategoryTheory.Abelian.coimage.{max u1 u3 u4, max u3 (max u1 u3 u4) (max u3 u4) u2} (CategoryTheory.Functor.{u3, max u1 u3 u4, max u3 u4, u2} C _inst_1 D _inst_2) (CategoryTheory.Functor.category.{u3, max u1 u3 u4, max u3 u4, u2} C _inst_1 D _inst_2) (CategoryTheory.Limits.CategoryTheory.Functor.hasZeroMorphisms.{u3, max u3 u4, max u1 u3 u4, u2} C _inst_1 D _inst_2 (CategoryTheory.Preadditive.preadditiveHasZeroMorphisms.{max u1 u3 u4, u2} D _inst_2 (CategoryTheory.Abelian.toPreadditive.{max u1 u3 u4, u2} D _inst_2 _inst_3))) (CategoryTheory.Abelian.FunctorCategory.coimageObjIso._proof_1.{u4, u3, u2, u1} C _inst_1 D _inst_2 _inst_3) (CategoryTheory.Abelian.FunctorCategory.coimageObjIso._proof_2.{u4, u3, u2, u1} C _inst_1 D _inst_2 _inst_3) F G α) X) (CategoryTheory.Abelian.coimage.{max u1 u3 u4, u2} D _inst_2 (CategoryTheory.Preadditive.preadditiveHasZeroMorphisms.{max u1 u3 u4, u2} D _inst_2 (CategoryTheory.Abelian.toPreadditive.{max u1 u3 u4, u2} D _inst_2 _inst_3)) (CategoryTheory.Abelian.hasKernels.{max u1 u3 u4, u2} D _inst_2 _inst_3) (CategoryTheory.Abelian.hasCokernels.{max u1 u3 u4, u2} D _inst_2 _inst_3) (CategoryTheory.Functor.obj.{u3, max u1 u3 u4, max u3 u4, u2} C _inst_1 D _inst_2 F X) (CategoryTheory.Functor.obj.{u3, max u1 u3 u4, max u3 u4, u2} C _inst_1 D _inst_2 G X) (CategoryTheory.NatTrans.app.{u3, max u1 u3 u4, max u3 u4, u2} C _inst_1 D _inst_2 F G α X)) (CategoryTheory.Functor.obj.{u3, max u1 u3 u4, max u3 u4, u2} C _inst_1 D _inst_2 (CategoryTheory.Abelian.image.{max u1 u3 u4, max u3 (max u1 u3 u4) (max u3 u4) u2} (CategoryTheory.Functor.{u3, max u1 u3 u4, max u3 u4, u2} C _inst_1 D _inst_2) (CategoryTheory.Functor.category.{u3, max u1 u3 u4, max u3 u4, u2} C _inst_1 D _inst_2) (CategoryTheory.Limits.CategoryTheory.Functor.hasZeroMorphisms.{u3, max u3 u4, max u1 u3 u4, u2} C _inst_1 D _inst_2 (CategoryTheory.Preadditive.preadditiveHasZeroMorphisms.{max u1 u3 u4, u2} D _inst_2 (CategoryTheory.Abelian.toPreadditive.{max u1 u3 u4, u2} D _inst_2 _inst_3))) (CategoryTheory.Abelian.FunctorCategory.coimageObjIso._proof_1.{u4, u3, u2, u1} C _inst_1 D _inst_2 _inst_3) (CategoryTheory.Abelian.FunctorCategory.coimageObjIso._proof_2.{u4, u3, u2, u1} C _inst_1 D _inst_2 _inst_3) F G α) X) (CategoryTheory.Iso.hom.{max u1 u3 u4, u2} D _inst_2 (CategoryTheory.Functor.obj.{u3, max u1 u3 u4, max u3 u4, u2} C _inst_1 D _inst_2 (CategoryTheory.Abelian.coimage.{max u1 u3 u4, max u3 (max u1 u3 u4) (max u3 u4) u2} (CategoryTheory.Functor.{u3, max u1 u3 u4, max u3 u4, u2} C _inst_1 D _inst_2) (CategoryTheory.Functor.category.{u3, max u1 u3 u4, max u3 u4, u2} C _inst_1 D _inst_2) (CategoryTheory.Limits.CategoryTheory.Functor.hasZeroMorphisms.{u3, max u3 u4, max u1 u3 u4, u2} C _inst_1 D _inst_2 (CategoryTheory.Preadditive.preadditiveHasZeroMorphisms.{max u1 u3 u4, u2} D _inst_2 (CategoryTheory.Abelian.toPreadditive.{max u1 u3 u4, u2} D _inst_2 _inst_3))) (CategoryTheory.Abelian.FunctorCategory.coimageObjIso._proof_1.{u4, u3, u2, u1} C _inst_1 D _inst_2 _inst_3) (CategoryTheory.Abelian.FunctorCategory.coimageObjIso._proof_2.{u4, u3, u2, u1} C _inst_1 D _inst_2 _inst_3) F G α) X) (CategoryTheory.Abelian.coimage.{max u1 u3 u4, u2} D _inst_2 (CategoryTheory.Preadditive.preadditiveHasZeroMorphisms.{max u1 u3 u4, u2} D _inst_2 (CategoryTheory.Abelian.toPreadditive.{max u1 u3 u4, u2} D _inst_2 _inst_3)) (CategoryTheory.Abelian.hasKernels.{max u1 u3 u4, u2} D _inst_2 _inst_3) (CategoryTheory.Abelian.hasCokernels.{max u1 u3 u4, u2} D _inst_2 _inst_3) (CategoryTheory.Functor.obj.{u3, max u1 u3 u4, max u3 u4, u2} C _inst_1 D _inst_2 F X) (CategoryTheory.Functor.obj.{u3, max u1 u3 u4, max u3 u4, u2} C _inst_1 D _inst_2 G X) (CategoryTheory.NatTrans.app.{u3, max u1 u3 u4, max u3 u4, u2} C _inst_1 D _inst_2 F G α X)) (CategoryTheory.Abelian.FunctorCategory.coimageObjIso.{u1, u2, u3, u4} C _inst_1 D _inst_2 _inst_3 F G α X)) (CategoryTheory.CategoryStruct.comp.{max u1 u3 u4, u2} D (CategoryTheory.Category.toCategoryStruct.{max u1 u3 u4, u2} D _inst_2) (CategoryTheory.Abelian.coimage.{max u1 u3 u4, u2} D _inst_2 (CategoryTheory.Preadditive.preadditiveHasZeroMorphisms.{max u1 u3 u4, u2} D _inst_2 (CategoryTheory.Abelian.toPreadditive.{max u1 u3 u4, u2} D _inst_2 _inst_3)) (CategoryTheory.Abelian.hasKernels.{max u1 u3 u4, u2} D _inst_2 _inst_3) (CategoryTheory.Abelian.hasCokernels.{max u1 u3 u4, u2} D _inst_2 _inst_3) (CategoryTheory.Functor.obj.{u3, max u1 u3 u4, max u3 u4, u2} C _inst_1 D _inst_2 F X) (CategoryTheory.Functor.obj.{u3, max u1 u3 u4, max u3 u4, u2} C _inst_1 D _inst_2 G X) (CategoryTheory.NatTrans.app.{u3, max u1 u3 u4, max u3 u4, u2} C _inst_1 D _inst_2 F G α X)) (CategoryTheory.Abelian.image.{max u1 u3 u4, u2} D _inst_2 (CategoryTheory.Preadditive.preadditiveHasZeroMorphisms.{max u1 u3 u4, u2} D _inst_2 (CategoryTheory.Abelian.toPreadditive.{max u1 u3 u4, u2} D _inst_2 _inst_3)) (CategoryTheory.Abelian.hasKernels.{max u1 u3 u4, u2} D _inst_2 _inst_3) (CategoryTheory.Abelian.hasCokernels.{max u1 u3 u4, u2} D _inst_2 _inst_3) (CategoryTheory.Functor.obj.{u3, max u1 u3 u4, max u3 u4, u2} C _inst_1 D _inst_2 F X) (CategoryTheory.Functor.obj.{u3, max u1 u3 u4, max u3 u4, u2} C _inst_1 D _inst_2 G X) (CategoryTheory.NatTrans.app.{u3, max u1 u3 u4, max u3 u4, u2} C _inst_1 D _inst_2 F G α X)) (CategoryTheory.Functor.obj.{u3, max u1 u3 u4, max u3 u4, u2} C _inst_1 D _inst_2 (CategoryTheory.Abelian.image.{max u1 u3 u4, max u3 (max u1 u3 u4) (max u3 u4) u2} (CategoryTheory.Functor.{u3, max u1 u3 u4, max u3 u4, u2} C _inst_1 D _inst_2) (CategoryTheory.Functor.category.{u3, max u1 u3 u4, max u3 u4, u2} C _inst_1 D _inst_2) (CategoryTheory.Limits.CategoryTheory.Functor.hasZeroMorphisms.{u3, max u3 u4, max u1 u3 u4, u2} C _inst_1 D _inst_2 (CategoryTheory.Preadditive.preadditiveHasZeroMorphisms.{max u1 u3 u4, u2} D _inst_2 (CategoryTheory.Abelian.toPreadditive.{max u1 u3 u4, u2} D _inst_2 _inst_3))) (CategoryTheory.Abelian.FunctorCategory.coimageObjIso._proof_1.{u4, u3, u2, u1} C _inst_1 D _inst_2 _inst_3) (CategoryTheory.Abelian.FunctorCategory.coimageObjIso._proof_2.{u4, u3, u2, u1} C _inst_1 D _inst_2 _inst_3) F G α) X) (CategoryTheory.Abelian.coimageImageComparison.{max u1 u3 u4, u2} D _inst_2 (CategoryTheory.Preadditive.preadditiveHasZeroMorphisms.{max u1 u3 u4, u2} D _inst_2 (CategoryTheory.Abelian.toPreadditive.{max u1 u3 u4, u2} D _inst_2 _inst_3)) (CategoryTheory.Abelian.hasKernels.{max u1 u3 u4, u2} D _inst_2 _inst_3) (CategoryTheory.Abelian.hasCokernels.{max u1 u3 u4, u2} D _inst_2 _inst_3) (CategoryTheory.Functor.obj.{u3, max u1 u3 u4, max u3 u4, u2} C _inst_1 D _inst_2 F X) (CategoryTheory.Functor.obj.{u3, max u1 u3 u4, max u3 u4, u2} C _inst_1 D _inst_2 G X) (CategoryTheory.NatTrans.app.{u3, max u1 u3 u4, max u3 u4, u2} C _inst_1 D _inst_2 F G α X)) (CategoryTheory.Iso.inv.{max u1 u3 u4, u2} D _inst_2 (CategoryTheory.Functor.obj.{u3, max u1 u3 u4, max u3 u4, u2} C _inst_1 D _inst_2 (CategoryTheory.Abelian.image.{max u1 u3 u4, max u3 (max u1 u3 u4) (max u3 u4) u2} (CategoryTheory.Functor.{u3, max u1 u3 u4, max u3 u4, u2} C _inst_1 D _inst_2) (CategoryTheory.Functor.category.{u3, max u1 u3 u4, max u3 u4, u2} C _inst_1 D _inst_2) (CategoryTheory.Limits.CategoryTheory.Functor.hasZeroMorphisms.{u3, max u3 u4, max u1 u3 u4, u2} C _inst_1 D _inst_2 (CategoryTheory.Preadditive.preadditiveHasZeroMorphisms.{max u1 u3 u4, u2} D _inst_2 (CategoryTheory.Abelian.toPreadditive.{max u1 u3 u4, u2} D _inst_2 _inst_3))) (CategoryTheory.Abelian.FunctorCategory.imageObjIso._proof_1.{u4, u3, u2, u1} C _inst_1 D _inst_2 _inst_3) (CategoryTheory.Abelian.FunctorCategory.imageObjIso._proof_2.{u4, u3, u2, u1} C _inst_1 D _inst_2 _inst_3) F G α) X) (CategoryTheory.Abelian.image.{max u1 u3 u4, u2} D _inst_2 (CategoryTheory.Preadditive.preadditiveHasZeroMorphisms.{max u1 u3 u4, u2} D _inst_2 (CategoryTheory.Abelian.toPreadditive.{max u1 u3 u4, u2} D _inst_2 _inst_3)) (CategoryTheory.Abelian.hasKernels.{max u1 u3 u4, u2} D _inst_2 _inst_3) (CategoryTheory.Abelian.hasCokernels.{max u1 u3 u4, u2} D _inst_2 _inst_3) (CategoryTheory.Functor.obj.{u3, max u1 u3 u4, max u3 u4, u2} C _inst_1 D _inst_2 F X) (CategoryTheory.Functor.obj.{u3, max u1 u3 u4, max u3 u4, u2} C _inst_1 D _inst_2 G X) (CategoryTheory.NatTrans.app.{u3, max u1 u3 u4, max u3 u4, u2} C _inst_1 D _inst_2 F G α X)) (CategoryTheory.Abelian.FunctorCategory.imageObjIso.{u1, u2, u3, u4} C _inst_1 D _inst_2 _inst_3 F G α X))))
but is expected to have type
- forall {C : Type.{u4}} [_inst_1 : CategoryTheory.Category.{u3, u4} C] {D : Type.{u2}} [_inst_2 : CategoryTheory.Category.{u1, u2} D] [_inst_3 : CategoryTheory.Abelian.{u1, u2} D _inst_2] {F : CategoryTheory.Functor.{u3, u1, u4, u2} C _inst_1 D _inst_2} {G : CategoryTheory.Functor.{u3, u1, u4, u2} C _inst_1 D _inst_2} (α : Quiver.Hom.{max (succ u4) (succ u1), max (max (max u4 u3) u2) u1} (CategoryTheory.Functor.{u3, u1, u4, u2} C _inst_1 D _inst_2) (CategoryTheory.CategoryStruct.toQuiver.{max u4 u1, max (max (max u4 u3) u2) u1} (CategoryTheory.Functor.{u3, u1, u4, u2} C _inst_1 D _inst_2) (CategoryTheory.Category.toCategoryStruct.{max u4 u1, max (max (max u4 u3) u2) u1} (CategoryTheory.Functor.{u3, u1, u4, u2} C _inst_1 D _inst_2) (CategoryTheory.Functor.category.{u3, u1, u4, u2} C _inst_1 D _inst_2))) F G) (X : C), Eq.{succ u1} (Quiver.Hom.{succ u1, u2} D (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} D (CategoryTheory.Category.toCategoryStruct.{u1, u2} D _inst_2)) (Prefunctor.obj.{succ u3, succ u1, u4, u2} C (CategoryTheory.CategoryStruct.toQuiver.{u3, u4} C (CategoryTheory.Category.toCategoryStruct.{u3, u4} C _inst_1)) D (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} D (CategoryTheory.Category.toCategoryStruct.{u1, u2} D _inst_2)) (CategoryTheory.Functor.toPrefunctor.{u3, u1, u4, u2} C _inst_1 D _inst_2 (CategoryTheory.Abelian.coimage.{max u4 u1, max (max (max u4 u3) u2) u1} (CategoryTheory.Functor.{u3, u1, u4, u2} C _inst_1 D _inst_2) (CategoryTheory.Functor.category.{u3, u1, u4, u2} C _inst_1 D _inst_2) (CategoryTheory.Limits.instHasZeroMorphismsFunctorCategory.{u3, u4, u1, u2} C _inst_1 D _inst_2 (CategoryTheory.Preadditive.preadditiveHasZeroMorphisms.{u1, u2} D _inst_2 (CategoryTheory.Abelian.toPreadditive.{u1, u2} D _inst_2 _inst_3))) (CategoryTheory.Limits.hasKernels_of_hasEqualizers.{max u4 u1, max (max (max u4 u3) u2) u1} (CategoryTheory.Functor.{u3, u1, u4, u2} C _inst_1 D _inst_2) (CategoryTheory.Functor.category.{u3, u1, u4, u2} C _inst_1 D _inst_2) (CategoryTheory.Limits.instHasZeroMorphismsFunctorCategory.{u3, u4, u1, u2} C _inst_1 D _inst_2 (CategoryTheory.Preadditive.preadditiveHasZeroMorphisms.{u1, u2} D _inst_2 (CategoryTheory.Abelian.toPreadditive.{u1, u2} D _inst_2 _inst_3))) (CategoryTheory.Limits.functorCategoryHasLimitsOfShape.{0, u3, 0, u4, u1, u2} D _inst_2 CategoryTheory.Limits.WalkingParallelPair CategoryTheory.Limits.walkingParallelPairHomCategory C _inst_1 (CategoryTheory.Abelian.hasEqualizers.{u1, u2} D _inst_2 _inst_3))) (CategoryTheory.Limits.hasCokernels_of_hasCoequalizers.{max u4 u1, max (max (max u4 u3) u2) u1} (CategoryTheory.Functor.{u3, u1, u4, u2} C _inst_1 D _inst_2) (CategoryTheory.Functor.category.{u3, u1, u4, u2} C _inst_1 D _inst_2) (CategoryTheory.Limits.instHasZeroMorphismsFunctorCategory.{u3, u4, u1, u2} C _inst_1 D _inst_2 (CategoryTheory.Preadditive.preadditiveHasZeroMorphisms.{u1, u2} D _inst_2 (CategoryTheory.Abelian.toPreadditive.{u1, u2} D _inst_2 _inst_3))) (CategoryTheory.Limits.functorCategoryHasColimitsOfShape.{0, u3, 0, u4, u1, u2} D _inst_2 CategoryTheory.Limits.WalkingParallelPair CategoryTheory.Limits.walkingParallelPairHomCategory C _inst_1 (CategoryTheory.Abelian.hasCoequalizers.{u1, u2} D _inst_2 _inst_3))) F G α)) X) (Prefunctor.obj.{succ u3, succ u1, u4, u2} C (CategoryTheory.CategoryStruct.toQuiver.{u3, u4} C (CategoryTheory.Category.toCategoryStruct.{u3, u4} C _inst_1)) D (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} D (CategoryTheory.Category.toCategoryStruct.{u1, u2} D _inst_2)) (CategoryTheory.Functor.toPrefunctor.{u3, u1, u4, u2} C _inst_1 D _inst_2 (CategoryTheory.Abelian.image.{max u4 u1, max (max (max u4 u3) u2) u1} (CategoryTheory.Functor.{u3, u1, u4, u2} C _inst_1 D _inst_2) (CategoryTheory.Functor.category.{u3, u1, u4, u2} C _inst_1 D _inst_2) (CategoryTheory.Limits.instHasZeroMorphismsFunctorCategory.{u3, u4, u1, u2} C _inst_1 D _inst_2 (CategoryTheory.Preadditive.preadditiveHasZeroMorphisms.{u1, u2} D _inst_2 (CategoryTheory.Abelian.toPreadditive.{u1, u2} D _inst_2 _inst_3))) (CategoryTheory.Limits.hasKernels_of_hasEqualizers.{max u4 u1, max (max (max u4 u3) u2) u1} (CategoryTheory.Functor.{u3, u1, u4, u2} C _inst_1 D _inst_2) (CategoryTheory.Functor.category.{u3, u1, u4, u2} C _inst_1 D _inst_2) (CategoryTheory.Limits.instHasZeroMorphismsFunctorCategory.{u3, u4, u1, u2} C _inst_1 D _inst_2 (CategoryTheory.Preadditive.preadditiveHasZeroMorphisms.{u1, u2} D _inst_2 (CategoryTheory.Abelian.toPreadditive.{u1, u2} D _inst_2 _inst_3))) (CategoryTheory.Limits.functorCategoryHasLimitsOfShape.{0, u3, 0, u4, u1, u2} D _inst_2 CategoryTheory.Limits.WalkingParallelPair CategoryTheory.Limits.walkingParallelPairHomCategory C _inst_1 (CategoryTheory.Abelian.hasEqualizers.{u1, u2} D _inst_2 _inst_3))) (CategoryTheory.Limits.hasCokernels_of_hasCoequalizers.{max u4 u1, max (max (max u4 u3) u2) u1} (CategoryTheory.Functor.{u3, u1, u4, u2} C _inst_1 D _inst_2) (CategoryTheory.Functor.category.{u3, u1, u4, u2} C _inst_1 D _inst_2) (CategoryTheory.Limits.instHasZeroMorphismsFunctorCategory.{u3, u4, u1, u2} C _inst_1 D _inst_2 (CategoryTheory.Preadditive.preadditiveHasZeroMorphisms.{u1, u2} D _inst_2 (CategoryTheory.Abelian.toPreadditive.{u1, u2} D _inst_2 _inst_3))) (CategoryTheory.Limits.functorCategoryHasColimitsOfShape.{0, u3, 0, u4, u1, u2} D _inst_2 CategoryTheory.Limits.WalkingParallelPair CategoryTheory.Limits.walkingParallelPairHomCategory C _inst_1 (CategoryTheory.Abelian.hasCoequalizers.{u1, u2} D _inst_2 _inst_3))) F G α)) X)) (CategoryTheory.NatTrans.app.{u3, u1, u4, u2} C _inst_1 D _inst_2 (CategoryTheory.Abelian.coimage.{max u4 u1, max (max (max u4 u3) u2) u1} (CategoryTheory.Functor.{u3, u1, u4, u2} C _inst_1 D _inst_2) (CategoryTheory.Functor.category.{u3, u1, u4, u2} C _inst_1 D _inst_2) (CategoryTheory.Limits.instHasZeroMorphismsFunctorCategory.{u3, u4, u1, u2} C _inst_1 D _inst_2 (CategoryTheory.Preadditive.preadditiveHasZeroMorphisms.{u1, u2} D _inst_2 (CategoryTheory.Abelian.toPreadditive.{u1, u2} D _inst_2 _inst_3))) (CategoryTheory.Limits.hasKernels_of_hasEqualizers.{max u4 u1, max (max (max u4 u3) u2) u1} (CategoryTheory.Functor.{u3, u1, u4, u2} C _inst_1 D _inst_2) (CategoryTheory.Functor.category.{u3, u1, u4, u2} C _inst_1 D _inst_2) (CategoryTheory.Limits.instHasZeroMorphismsFunctorCategory.{u3, u4, u1, u2} C _inst_1 D _inst_2 (CategoryTheory.Preadditive.preadditiveHasZeroMorphisms.{u1, u2} D _inst_2 (CategoryTheory.Abelian.toPreadditive.{u1, u2} D _inst_2 _inst_3))) (CategoryTheory.Limits.functorCategoryHasLimitsOfShape.{0, u3, 0, u4, u1, u2} D _inst_2 CategoryTheory.Limits.WalkingParallelPair CategoryTheory.Limits.walkingParallelPairHomCategory C _inst_1 (CategoryTheory.Abelian.hasEqualizers.{u1, u2} D _inst_2 _inst_3))) (CategoryTheory.Limits.hasCokernels_of_hasCoequalizers.{max u4 u1, max (max (max u4 u3) u2) u1} (CategoryTheory.Functor.{u3, u1, u4, u2} C _inst_1 D _inst_2) (CategoryTheory.Functor.category.{u3, u1, u4, u2} C _inst_1 D _inst_2) (CategoryTheory.Limits.instHasZeroMorphismsFunctorCategory.{u3, u4, u1, u2} C _inst_1 D _inst_2 (CategoryTheory.Preadditive.preadditiveHasZeroMorphisms.{u1, u2} D _inst_2 (CategoryTheory.Abelian.toPreadditive.{u1, u2} D _inst_2 _inst_3))) (CategoryTheory.Limits.functorCategoryHasColimitsOfShape.{0, u3, 0, u4, u1, u2} D _inst_2 CategoryTheory.Limits.WalkingParallelPair CategoryTheory.Limits.walkingParallelPairHomCategory C _inst_1 (CategoryTheory.Abelian.hasCoequalizers.{u1, u2} D _inst_2 _inst_3))) F G α) (CategoryTheory.Abelian.image.{max u4 u1, max (max (max u4 u3) u2) u1} (CategoryTheory.Functor.{u3, u1, u4, u2} C _inst_1 D _inst_2) (CategoryTheory.Functor.category.{u3, u1, u4, u2} C _inst_1 D _inst_2) (CategoryTheory.Limits.instHasZeroMorphismsFunctorCategory.{u3, u4, u1, u2} C _inst_1 D _inst_2 (CategoryTheory.Preadditive.preadditiveHasZeroMorphisms.{u1, u2} D _inst_2 (CategoryTheory.Abelian.toPreadditive.{u1, u2} D _inst_2 _inst_3))) (CategoryTheory.Limits.hasKernels_of_hasEqualizers.{max u4 u1, max (max (max u4 u3) u2) u1} (CategoryTheory.Functor.{u3, u1, u4, u2} C _inst_1 D _inst_2) (CategoryTheory.Functor.category.{u3, u1, u4, u2} C _inst_1 D _inst_2) (CategoryTheory.Limits.instHasZeroMorphismsFunctorCategory.{u3, u4, u1, u2} C _inst_1 D _inst_2 (CategoryTheory.Preadditive.preadditiveHasZeroMorphisms.{u1, u2} D _inst_2 (CategoryTheory.Abelian.toPreadditive.{u1, u2} D _inst_2 _inst_3))) (CategoryTheory.Limits.functorCategoryHasLimitsOfShape.{0, u3, 0, u4, u1, u2} D _inst_2 CategoryTheory.Limits.WalkingParallelPair CategoryTheory.Limits.walkingParallelPairHomCategory C _inst_1 (CategoryTheory.Abelian.hasEqualizers.{u1, u2} D _inst_2 _inst_3))) (CategoryTheory.Limits.hasCokernels_of_hasCoequalizers.{max u4 u1, max (max (max u4 u3) u2) u1} (CategoryTheory.Functor.{u3, u1, u4, u2} C _inst_1 D _inst_2) (CategoryTheory.Functor.category.{u3, u1, u4, u2} C _inst_1 D _inst_2) (CategoryTheory.Limits.instHasZeroMorphismsFunctorCategory.{u3, u4, u1, u2} C _inst_1 D _inst_2 (CategoryTheory.Preadditive.preadditiveHasZeroMorphisms.{u1, u2} D _inst_2 (CategoryTheory.Abelian.toPreadditive.{u1, u2} D _inst_2 _inst_3))) (CategoryTheory.Limits.functorCategoryHasColimitsOfShape.{0, u3, 0, u4, u1, u2} D _inst_2 CategoryTheory.Limits.WalkingParallelPair CategoryTheory.Limits.walkingParallelPairHomCategory C _inst_1 (CategoryTheory.Abelian.hasCoequalizers.{u1, u2} D _inst_2 _inst_3))) F G α) (CategoryTheory.Abelian.coimageImageComparison.{max u4 u1, max (max (max u4 u3) u2) u1} (CategoryTheory.Functor.{u3, u1, u4, u2} C _inst_1 D _inst_2) (CategoryTheory.Functor.category.{u3, u1, u4, u2} C _inst_1 D _inst_2) (CategoryTheory.Limits.instHasZeroMorphismsFunctorCategory.{u3, u4, u1, u2} C _inst_1 D _inst_2 (CategoryTheory.Preadditive.preadditiveHasZeroMorphisms.{u1, u2} D _inst_2 (CategoryTheory.Abelian.toPreadditive.{u1, u2} D _inst_2 _inst_3))) (CategoryTheory.Limits.hasKernels_of_hasEqualizers.{max u4 u1, max (max (max u4 u3) u2) u1} (CategoryTheory.Functor.{u3, u1, u4, u2} C _inst_1 D _inst_2) (CategoryTheory.Functor.category.{u3, u1, u4, u2} C _inst_1 D _inst_2) (CategoryTheory.Limits.instHasZeroMorphismsFunctorCategory.{u3, u4, u1, u2} C _inst_1 D _inst_2 (CategoryTheory.Preadditive.preadditiveHasZeroMorphisms.{u1, u2} D _inst_2 (CategoryTheory.Abelian.toPreadditive.{u1, u2} D _inst_2 _inst_3))) (CategoryTheory.Limits.functorCategoryHasLimitsOfShape.{0, u3, 0, u4, u1, u2} D _inst_2 CategoryTheory.Limits.WalkingParallelPair CategoryTheory.Limits.walkingParallelPairHomCategory C _inst_1 (CategoryTheory.Abelian.hasEqualizers.{u1, u2} D _inst_2 _inst_3))) (CategoryTheory.Limits.hasCokernels_of_hasCoequalizers.{max u4 u1, max (max (max u4 u3) u2) u1} (CategoryTheory.Functor.{u3, u1, u4, u2} C _inst_1 D _inst_2) (CategoryTheory.Functor.category.{u3, u1, u4, u2} C _inst_1 D _inst_2) (CategoryTheory.Limits.instHasZeroMorphismsFunctorCategory.{u3, u4, u1, u2} C _inst_1 D _inst_2 (CategoryTheory.Preadditive.preadditiveHasZeroMorphisms.{u1, u2} D _inst_2 (CategoryTheory.Abelian.toPreadditive.{u1, u2} D _inst_2 _inst_3))) (CategoryTheory.Limits.functorCategoryHasColimitsOfShape.{0, u3, 0, u4, u1, u2} D _inst_2 CategoryTheory.Limits.WalkingParallelPair CategoryTheory.Limits.walkingParallelPairHomCategory C _inst_1 (CategoryTheory.Abelian.hasCoequalizers.{u1, u2} D _inst_2 _inst_3))) F G α) X) (CategoryTheory.CategoryStruct.comp.{u1, u2} D (CategoryTheory.Category.toCategoryStruct.{u1, u2} D _inst_2) (Prefunctor.obj.{succ u3, succ u1, u4, u2} C (CategoryTheory.CategoryStruct.toQuiver.{u3, u4} C (CategoryTheory.Category.toCategoryStruct.{u3, u4} C _inst_1)) D (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} D (CategoryTheory.Category.toCategoryStruct.{u1, u2} D _inst_2)) (CategoryTheory.Functor.toPrefunctor.{u3, u1, u4, u2} C _inst_1 D _inst_2 (CategoryTheory.Abelian.coimage.{max u4 u1, max (max (max u4 u3) u2) u1} (CategoryTheory.Functor.{u3, u1, u4, u2} C _inst_1 D _inst_2) (CategoryTheory.Functor.category.{u3, u1, u4, u2} C _inst_1 D _inst_2) (CategoryTheory.Limits.instHasZeroMorphismsFunctorCategory.{u3, u4, u1, u2} C _inst_1 D _inst_2 (CategoryTheory.Preadditive.preadditiveHasZeroMorphisms.{u1, u2} D _inst_2 (CategoryTheory.Abelian.toPreadditive.{u1, u2} D _inst_2 _inst_3))) (CategoryTheory.Limits.hasKernels_of_hasEqualizers.{max u4 u1, max (max (max u4 u3) u2) u1} (CategoryTheory.Functor.{u3, u1, u4, u2} C _inst_1 D _inst_2) (CategoryTheory.Functor.category.{u3, u1, u4, u2} C _inst_1 D _inst_2) (CategoryTheory.Limits.instHasZeroMorphismsFunctorCategory.{u3, u4, u1, u2} C _inst_1 D _inst_2 (CategoryTheory.Preadditive.preadditiveHasZeroMorphisms.{u1, u2} D _inst_2 (CategoryTheory.Abelian.toPreadditive.{u1, u2} D _inst_2 _inst_3))) (CategoryTheory.Limits.functorCategoryHasLimitsOfShape.{0, u3, 0, u4, u1, u2} D _inst_2 CategoryTheory.Limits.WalkingParallelPair CategoryTheory.Limits.walkingParallelPairHomCategory C _inst_1 (CategoryTheory.Abelian.hasEqualizers.{u1, u2} D _inst_2 _inst_3))) (CategoryTheory.Limits.hasCokernels_of_hasCoequalizers.{max u4 u1, max (max (max u4 u3) u2) u1} (CategoryTheory.Functor.{u3, u1, u4, u2} C _inst_1 D _inst_2) (CategoryTheory.Functor.category.{u3, u1, u4, u2} C _inst_1 D _inst_2) (CategoryTheory.Limits.instHasZeroMorphismsFunctorCategory.{u3, u4, u1, u2} C _inst_1 D _inst_2 (CategoryTheory.Preadditive.preadditiveHasZeroMorphisms.{u1, u2} D _inst_2 (CategoryTheory.Abelian.toPreadditive.{u1, u2} D _inst_2 _inst_3))) (CategoryTheory.Limits.functorCategoryHasColimitsOfShape.{0, u3, 0, u4, u1, u2} D _inst_2 CategoryTheory.Limits.WalkingParallelPair CategoryTheory.Limits.walkingParallelPairHomCategory C _inst_1 (CategoryTheory.Abelian.hasCoequalizers.{u1, u2} D _inst_2 _inst_3))) F G α)) X) (CategoryTheory.Abelian.coimage.{u1, u2} D _inst_2 (CategoryTheory.Preadditive.preadditiveHasZeroMorphisms.{u1, u2} D _inst_2 (CategoryTheory.Abelian.toPreadditive.{u1, u2} D _inst_2 _inst_3)) (CategoryTheory.Abelian.has_kernels.{u1, u2} D _inst_2 _inst_3) (CategoryTheory.Abelian.has_cokernels.{u1, u2} D _inst_2 _inst_3) (Prefunctor.obj.{succ u3, succ u1, u4, u2} C (CategoryTheory.CategoryStruct.toQuiver.{u3, u4} C (CategoryTheory.Category.toCategoryStruct.{u3, u4} C _inst_1)) D (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} D (CategoryTheory.Category.toCategoryStruct.{u1, u2} D _inst_2)) (CategoryTheory.Functor.toPrefunctor.{u3, u1, u4, u2} C _inst_1 D _inst_2 F) X) (Prefunctor.obj.{succ u3, succ u1, u4, u2} C (CategoryTheory.CategoryStruct.toQuiver.{u3, u4} C (CategoryTheory.Category.toCategoryStruct.{u3, u4} C _inst_1)) D (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} D (CategoryTheory.Category.toCategoryStruct.{u1, u2} D _inst_2)) (CategoryTheory.Functor.toPrefunctor.{u3, u1, u4, u2} C _inst_1 D _inst_2 G) X) (CategoryTheory.NatTrans.app.{u3, u1, u4, u2} C _inst_1 D _inst_2 F G α X)) (Prefunctor.obj.{succ u3, succ u1, u4, u2} C (CategoryTheory.CategoryStruct.toQuiver.{u3, u4} C (CategoryTheory.Category.toCategoryStruct.{u3, u4} C _inst_1)) D (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} D (CategoryTheory.Category.toCategoryStruct.{u1, u2} D _inst_2)) (CategoryTheory.Functor.toPrefunctor.{u3, u1, u4, u2} C _inst_1 D _inst_2 (CategoryTheory.Abelian.image.{max u4 u1, max (max (max u4 u3) u2) u1} (CategoryTheory.Functor.{u3, u1, u4, u2} C _inst_1 D _inst_2) (CategoryTheory.Functor.category.{u3, u1, u4, u2} C _inst_1 D _inst_2) (CategoryTheory.Limits.instHasZeroMorphismsFunctorCategory.{u3, u4, u1, u2} C _inst_1 D _inst_2 (CategoryTheory.Preadditive.preadditiveHasZeroMorphisms.{u1, u2} D _inst_2 (CategoryTheory.Abelian.toPreadditive.{u1, u2} D _inst_2 _inst_3))) (CategoryTheory.Limits.hasKernels_of_hasEqualizers.{max u4 u1, max (max (max u4 u3) u2) u1} (CategoryTheory.Functor.{u3, u1, u4, u2} C _inst_1 D _inst_2) (CategoryTheory.Functor.category.{u3, u1, u4, u2} C _inst_1 D _inst_2) (CategoryTheory.Limits.instHasZeroMorphismsFunctorCategory.{u3, u4, u1, u2} C _inst_1 D _inst_2 (CategoryTheory.Preadditive.preadditiveHasZeroMorphisms.{u1, u2} D _inst_2 (CategoryTheory.Abelian.toPreadditive.{u1, u2} D _inst_2 _inst_3))) (CategoryTheory.Limits.functorCategoryHasLimitsOfShape.{0, u3, 0, u4, u1, u2} D _inst_2 CategoryTheory.Limits.WalkingParallelPair CategoryTheory.Limits.walkingParallelPairHomCategory C _inst_1 (CategoryTheory.Abelian.hasEqualizers.{u1, u2} D _inst_2 _inst_3))) (CategoryTheory.Limits.hasCokernels_of_hasCoequalizers.{max u4 u1, max (max (max u4 u3) u2) u1} (CategoryTheory.Functor.{u3, u1, u4, u2} C _inst_1 D _inst_2) (CategoryTheory.Functor.category.{u3, u1, u4, u2} C _inst_1 D _inst_2) (CategoryTheory.Limits.instHasZeroMorphismsFunctorCategory.{u3, u4, u1, u2} C _inst_1 D _inst_2 (CategoryTheory.Preadditive.preadditiveHasZeroMorphisms.{u1, u2} D _inst_2 (CategoryTheory.Abelian.toPreadditive.{u1, u2} D _inst_2 _inst_3))) (CategoryTheory.Limits.functorCategoryHasColimitsOfShape.{0, u3, 0, u4, u1, u2} D _inst_2 CategoryTheory.Limits.WalkingParallelPair CategoryTheory.Limits.walkingParallelPairHomCategory C _inst_1 (CategoryTheory.Abelian.hasCoequalizers.{u1, u2} D _inst_2 _inst_3))) F G α)) X) (CategoryTheory.Iso.hom.{u1, u2} D _inst_2 (Prefunctor.obj.{succ u3, succ u1, u4, u2} C (CategoryTheory.CategoryStruct.toQuiver.{u3, u4} C (CategoryTheory.Category.toCategoryStruct.{u3, u4} C _inst_1)) D (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} D (CategoryTheory.Category.toCategoryStruct.{u1, u2} D _inst_2)) (CategoryTheory.Functor.toPrefunctor.{u3, u1, u4, u2} C _inst_1 D _inst_2 (CategoryTheory.Abelian.coimage.{max u4 u1, max (max (max u4 u3) u2) u1} (CategoryTheory.Functor.{u3, u1, u4, u2} C _inst_1 D _inst_2) (CategoryTheory.Functor.category.{u3, u1, u4, u2} C _inst_1 D _inst_2) (CategoryTheory.Limits.instHasZeroMorphismsFunctorCategory.{u3, u4, u1, u2} C _inst_1 D _inst_2 (CategoryTheory.Preadditive.preadditiveHasZeroMorphisms.{u1, u2} D _inst_2 (CategoryTheory.Abelian.toPreadditive.{u1, u2} D _inst_2 _inst_3))) (CategoryTheory.Limits.hasKernels_of_hasEqualizers.{max u4 u1, max (max (max u4 u3) u2) u1} (CategoryTheory.Functor.{u3, u1, u4, u2} C _inst_1 D _inst_2) (CategoryTheory.Functor.category.{u3, u1, u4, u2} C _inst_1 D _inst_2) (CategoryTheory.Limits.instHasZeroMorphismsFunctorCategory.{u3, u4, u1, u2} C _inst_1 D _inst_2 (CategoryTheory.Preadditive.preadditiveHasZeroMorphisms.{u1, u2} D _inst_2 (CategoryTheory.Abelian.toPreadditive.{u1, u2} D _inst_2 _inst_3))) (CategoryTheory.Limits.functorCategoryHasLimitsOfShape.{0, u3, 0, u4, u1, u2} D _inst_2 CategoryTheory.Limits.WalkingParallelPair CategoryTheory.Limits.walkingParallelPairHomCategory C _inst_1 (CategoryTheory.Abelian.hasEqualizers.{u1, u2} D _inst_2 _inst_3))) (CategoryTheory.Limits.hasCokernels_of_hasCoequalizers.{max u4 u1, max (max (max u4 u3) u2) u1} (CategoryTheory.Functor.{u3, u1, u4, u2} C _inst_1 D _inst_2) (CategoryTheory.Functor.category.{u3, u1, u4, u2} C _inst_1 D _inst_2) (CategoryTheory.Limits.instHasZeroMorphismsFunctorCategory.{u3, u4, u1, u2} C _inst_1 D _inst_2 (CategoryTheory.Preadditive.preadditiveHasZeroMorphisms.{u1, u2} D _inst_2 (CategoryTheory.Abelian.toPreadditive.{u1, u2} D _inst_2 _inst_3))) (CategoryTheory.Limits.functorCategoryHasColimitsOfShape.{0, u3, 0, u4, u1, u2} D _inst_2 CategoryTheory.Limits.WalkingParallelPair CategoryTheory.Limits.walkingParallelPairHomCategory C _inst_1 (CategoryTheory.Abelian.hasCoequalizers.{u1, u2} D _inst_2 _inst_3))) F G α)) X) (CategoryTheory.Abelian.coimage.{u1, u2} D _inst_2 (CategoryTheory.Preadditive.preadditiveHasZeroMorphisms.{u1, u2} D _inst_2 (CategoryTheory.Abelian.toPreadditive.{u1, u2} D _inst_2 _inst_3)) (CategoryTheory.Abelian.has_kernels.{u1, u2} D _inst_2 _inst_3) (CategoryTheory.Abelian.has_cokernels.{u1, u2} D _inst_2 _inst_3) (Prefunctor.obj.{succ u3, succ u1, u4, u2} C (CategoryTheory.CategoryStruct.toQuiver.{u3, u4} C (CategoryTheory.Category.toCategoryStruct.{u3, u4} C _inst_1)) D (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} D (CategoryTheory.Category.toCategoryStruct.{u1, u2} D _inst_2)) (CategoryTheory.Functor.toPrefunctor.{u3, u1, u4, u2} C _inst_1 D _inst_2 F) X) (Prefunctor.obj.{succ u3, succ u1, u4, u2} C (CategoryTheory.CategoryStruct.toQuiver.{u3, u4} C (CategoryTheory.Category.toCategoryStruct.{u3, u4} C _inst_1)) D (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} D (CategoryTheory.Category.toCategoryStruct.{u1, u2} D _inst_2)) (CategoryTheory.Functor.toPrefunctor.{u3, u1, u4, u2} C _inst_1 D _inst_2 G) X) (CategoryTheory.NatTrans.app.{u3, u1, u4, u2} C _inst_1 D _inst_2 F G α X)) (CategoryTheory.Abelian.FunctorCategory.coimageObjIso.{u1, u2, u3, u4} C _inst_1 D _inst_2 _inst_3 F G α X)) (CategoryTheory.CategoryStruct.comp.{u1, u2} D (CategoryTheory.Category.toCategoryStruct.{u1, u2} D _inst_2) (CategoryTheory.Abelian.coimage.{u1, u2} D _inst_2 (CategoryTheory.Preadditive.preadditiveHasZeroMorphisms.{u1, u2} D _inst_2 (CategoryTheory.Abelian.toPreadditive.{u1, u2} D _inst_2 _inst_3)) (CategoryTheory.Abelian.has_kernels.{u1, u2} D _inst_2 _inst_3) (CategoryTheory.Abelian.has_cokernels.{u1, u2} D _inst_2 _inst_3) (Prefunctor.obj.{succ u3, succ u1, u4, u2} C (CategoryTheory.CategoryStruct.toQuiver.{u3, u4} C (CategoryTheory.Category.toCategoryStruct.{u3, u4} C _inst_1)) D (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} D (CategoryTheory.Category.toCategoryStruct.{u1, u2} D _inst_2)) (CategoryTheory.Functor.toPrefunctor.{u3, u1, u4, u2} C _inst_1 D _inst_2 F) X) (Prefunctor.obj.{succ u3, succ u1, u4, u2} C (CategoryTheory.CategoryStruct.toQuiver.{u3, u4} C (CategoryTheory.Category.toCategoryStruct.{u3, u4} C _inst_1)) D (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} D (CategoryTheory.Category.toCategoryStruct.{u1, u2} D _inst_2)) (CategoryTheory.Functor.toPrefunctor.{u3, u1, u4, u2} C _inst_1 D _inst_2 G) X) (CategoryTheory.NatTrans.app.{u3, u1, u4, u2} C _inst_1 D _inst_2 F G α X)) (CategoryTheory.Abelian.image.{u1, u2} D _inst_2 (CategoryTheory.Preadditive.preadditiveHasZeroMorphisms.{u1, u2} D _inst_2 (CategoryTheory.Abelian.toPreadditive.{u1, u2} D _inst_2 _inst_3)) (CategoryTheory.Abelian.has_kernels.{u1, u2} D _inst_2 _inst_3) (CategoryTheory.Abelian.has_cokernels.{u1, u2} D _inst_2 _inst_3) (Prefunctor.obj.{succ u3, succ u1, u4, u2} C (CategoryTheory.CategoryStruct.toQuiver.{u3, u4} C (CategoryTheory.Category.toCategoryStruct.{u3, u4} C _inst_1)) D (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} D (CategoryTheory.Category.toCategoryStruct.{u1, u2} D _inst_2)) (CategoryTheory.Functor.toPrefunctor.{u3, u1, u4, u2} C _inst_1 D _inst_2 F) X) (Prefunctor.obj.{succ u3, succ u1, u4, u2} C (CategoryTheory.CategoryStruct.toQuiver.{u3, u4} C (CategoryTheory.Category.toCategoryStruct.{u3, u4} C _inst_1)) D (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} D (CategoryTheory.Category.toCategoryStruct.{u1, u2} D _inst_2)) (CategoryTheory.Functor.toPrefunctor.{u3, u1, u4, u2} C _inst_1 D _inst_2 G) X) (CategoryTheory.NatTrans.app.{u3, u1, u4, u2} C _inst_1 D _inst_2 F G α X)) (Prefunctor.obj.{succ u3, succ u1, u4, u2} C (CategoryTheory.CategoryStruct.toQuiver.{u3, u4} C (CategoryTheory.Category.toCategoryStruct.{u3, u4} C _inst_1)) D (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} D (CategoryTheory.Category.toCategoryStruct.{u1, u2} D _inst_2)) (CategoryTheory.Functor.toPrefunctor.{u3, u1, u4, u2} C _inst_1 D _inst_2 (CategoryTheory.Abelian.image.{max u4 u1, max (max (max u4 u3) u2) u1} (CategoryTheory.Functor.{u3, u1, u4, u2} C _inst_1 D _inst_2) (CategoryTheory.Functor.category.{u3, u1, u4, u2} C _inst_1 D _inst_2) (CategoryTheory.Limits.instHasZeroMorphismsFunctorCategory.{u3, u4, u1, u2} C _inst_1 D _inst_2 (CategoryTheory.Preadditive.preadditiveHasZeroMorphisms.{u1, u2} D _inst_2 (CategoryTheory.Abelian.toPreadditive.{u1, u2} D _inst_2 _inst_3))) (CategoryTheory.Limits.hasKernels_of_hasEqualizers.{max u4 u1, max (max (max u4 u3) u2) u1} (CategoryTheory.Functor.{u3, u1, u4, u2} C _inst_1 D _inst_2) (CategoryTheory.Functor.category.{u3, u1, u4, u2} C _inst_1 D _inst_2) (CategoryTheory.Limits.instHasZeroMorphismsFunctorCategory.{u3, u4, u1, u2} C _inst_1 D _inst_2 (CategoryTheory.Preadditive.preadditiveHasZeroMorphisms.{u1, u2} D _inst_2 (CategoryTheory.Abelian.toPreadditive.{u1, u2} D _inst_2 _inst_3))) (CategoryTheory.Limits.functorCategoryHasLimitsOfShape.{0, u3, 0, u4, u1, u2} D _inst_2 CategoryTheory.Limits.WalkingParallelPair CategoryTheory.Limits.walkingParallelPairHomCategory C _inst_1 (CategoryTheory.Abelian.hasEqualizers.{u1, u2} D _inst_2 _inst_3))) (CategoryTheory.Limits.hasCokernels_of_hasCoequalizers.{max u4 u1, max (max (max u4 u3) u2) u1} (CategoryTheory.Functor.{u3, u1, u4, u2} C _inst_1 D _inst_2) (CategoryTheory.Functor.category.{u3, u1, u4, u2} C _inst_1 D _inst_2) (CategoryTheory.Limits.instHasZeroMorphismsFunctorCategory.{u3, u4, u1, u2} C _inst_1 D _inst_2 (CategoryTheory.Preadditive.preadditiveHasZeroMorphisms.{u1, u2} D _inst_2 (CategoryTheory.Abelian.toPreadditive.{u1, u2} D _inst_2 _inst_3))) (CategoryTheory.Limits.functorCategoryHasColimitsOfShape.{0, u3, 0, u4, u1, u2} D _inst_2 CategoryTheory.Limits.WalkingParallelPair CategoryTheory.Limits.walkingParallelPairHomCategory C _inst_1 (CategoryTheory.Abelian.hasCoequalizers.{u1, u2} D _inst_2 _inst_3))) F G α)) X) (CategoryTheory.Abelian.coimageImageComparison.{u1, u2} D _inst_2 (CategoryTheory.Preadditive.preadditiveHasZeroMorphisms.{u1, u2} D _inst_2 (CategoryTheory.Abelian.toPreadditive.{u1, u2} D _inst_2 _inst_3)) (CategoryTheory.Abelian.has_kernels.{u1, u2} D _inst_2 _inst_3) (CategoryTheory.Abelian.has_cokernels.{u1, u2} D _inst_2 _inst_3) (Prefunctor.obj.{succ u3, succ u1, u4, u2} C (CategoryTheory.CategoryStruct.toQuiver.{u3, u4} C (CategoryTheory.Category.toCategoryStruct.{u3, u4} C _inst_1)) D (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} D (CategoryTheory.Category.toCategoryStruct.{u1, u2} D _inst_2)) (CategoryTheory.Functor.toPrefunctor.{u3, u1, u4, u2} C _inst_1 D _inst_2 F) X) (Prefunctor.obj.{succ u3, succ u1, u4, u2} C (CategoryTheory.CategoryStruct.toQuiver.{u3, u4} C (CategoryTheory.Category.toCategoryStruct.{u3, u4} C _inst_1)) D (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} D (CategoryTheory.Category.toCategoryStruct.{u1, u2} D _inst_2)) (CategoryTheory.Functor.toPrefunctor.{u3, u1, u4, u2} C _inst_1 D _inst_2 G) X) (CategoryTheory.NatTrans.app.{u3, u1, u4, u2} C _inst_1 D _inst_2 F G α X)) (CategoryTheory.Iso.inv.{u1, u2} D _inst_2 (Prefunctor.obj.{succ u3, succ u1, u4, u2} C (CategoryTheory.CategoryStruct.toQuiver.{u3, u4} C (CategoryTheory.Category.toCategoryStruct.{u3, u4} C _inst_1)) D (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} D (CategoryTheory.Category.toCategoryStruct.{u1, u2} D _inst_2)) (CategoryTheory.Functor.toPrefunctor.{u3, u1, u4, u2} C _inst_1 D _inst_2 (CategoryTheory.Abelian.image.{max u4 u1, max (max (max u4 u3) u2) u1} (CategoryTheory.Functor.{u3, u1, u4, u2} C _inst_1 D _inst_2) (CategoryTheory.Functor.category.{u3, u1, u4, u2} C _inst_1 D _inst_2) (CategoryTheory.Limits.instHasZeroMorphismsFunctorCategory.{u3, u4, u1, u2} C _inst_1 D _inst_2 (CategoryTheory.Preadditive.preadditiveHasZeroMorphisms.{u1, u2} D _inst_2 (CategoryTheory.Abelian.toPreadditive.{u1, u2} D _inst_2 _inst_3))) (CategoryTheory.Limits.hasKernels_of_hasEqualizers.{max u4 u1, max (max (max u4 u3) u2) u1} (CategoryTheory.Functor.{u3, u1, u4, u2} C _inst_1 D _inst_2) (CategoryTheory.Functor.category.{u3, u1, u4, u2} C _inst_1 D _inst_2) (CategoryTheory.Limits.instHasZeroMorphismsFunctorCategory.{u3, u4, u1, u2} C _inst_1 D _inst_2 (CategoryTheory.Preadditive.preadditiveHasZeroMorphisms.{u1, u2} D _inst_2 (CategoryTheory.Abelian.toPreadditive.{u1, u2} D _inst_2 _inst_3))) (CategoryTheory.Limits.functorCategoryHasLimitsOfShape.{0, u3, 0, u4, u1, u2} D _inst_2 CategoryTheory.Limits.WalkingParallelPair CategoryTheory.Limits.walkingParallelPairHomCategory C _inst_1 (CategoryTheory.Abelian.hasEqualizers.{u1, u2} D _inst_2 _inst_3))) (CategoryTheory.Limits.hasCokernels_of_hasCoequalizers.{max u4 u1, max (max (max u4 u3) u2) u1} (CategoryTheory.Functor.{u3, u1, u4, u2} C _inst_1 D _inst_2) (CategoryTheory.Functor.category.{u3, u1, u4, u2} C _inst_1 D _inst_2) (CategoryTheory.Limits.instHasZeroMorphismsFunctorCategory.{u3, u4, u1, u2} C _inst_1 D _inst_2 (CategoryTheory.Preadditive.preadditiveHasZeroMorphisms.{u1, u2} D _inst_2 (CategoryTheory.Abelian.toPreadditive.{u1, u2} D _inst_2 _inst_3))) (CategoryTheory.Limits.functorCategoryHasColimitsOfShape.{0, u3, 0, u4, u1, u2} D _inst_2 CategoryTheory.Limits.WalkingParallelPair CategoryTheory.Limits.walkingParallelPairHomCategory C _inst_1 (CategoryTheory.Abelian.hasCoequalizers.{u1, u2} D _inst_2 _inst_3))) F G α)) X) (CategoryTheory.Abelian.image.{u1, u2} D _inst_2 (CategoryTheory.Preadditive.preadditiveHasZeroMorphisms.{u1, u2} D _inst_2 (CategoryTheory.Abelian.toPreadditive.{u1, u2} D _inst_2 _inst_3)) (CategoryTheory.Abelian.has_kernels.{u1, u2} D _inst_2 _inst_3) (CategoryTheory.Abelian.has_cokernels.{u1, u2} D _inst_2 _inst_3) (Prefunctor.obj.{succ u3, succ u1, u4, u2} C (CategoryTheory.CategoryStruct.toQuiver.{u3, u4} C (CategoryTheory.Category.toCategoryStruct.{u3, u4} C _inst_1)) D (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} D (CategoryTheory.Category.toCategoryStruct.{u1, u2} D _inst_2)) (CategoryTheory.Functor.toPrefunctor.{u3, u1, u4, u2} C _inst_1 D _inst_2 F) X) (Prefunctor.obj.{succ u3, succ u1, u4, u2} C (CategoryTheory.CategoryStruct.toQuiver.{u3, u4} C (CategoryTheory.Category.toCategoryStruct.{u3, u4} C _inst_1)) D (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} D (CategoryTheory.Category.toCategoryStruct.{u1, u2} D _inst_2)) (CategoryTheory.Functor.toPrefunctor.{u3, u1, u4, u2} C _inst_1 D _inst_2 G) X) (CategoryTheory.NatTrans.app.{u3, u1, u4, u2} C _inst_1 D _inst_2 F G α X)) (CategoryTheory.Abelian.FunctorCategory.imageObjIso.{u1, u2, u3, u4} C _inst_1 D _inst_2 _inst_3 F G α X))))
+ forall {C : Type.{u4}} [_inst_1 : CategoryTheory.Category.{u3, u4} C] {D : Type.{u2}} [_inst_2 : CategoryTheory.Category.{u1, u2} D] [_inst_3 : CategoryTheory.Abelian.{u1, u2} D _inst_2] {F : CategoryTheory.Functor.{u3, u1, u4, u2} C _inst_1 D _inst_2} {G : CategoryTheory.Functor.{u3, u1, u4, u2} C _inst_1 D _inst_2} (α : Quiver.Hom.{max (succ u4) (succ u1), max (max (max u4 u3) u2) u1} (CategoryTheory.Functor.{u3, u1, u4, u2} C _inst_1 D _inst_2) (CategoryTheory.CategoryStruct.toQuiver.{max u4 u1, max (max (max u4 u3) u2) u1} (CategoryTheory.Functor.{u3, u1, u4, u2} C _inst_1 D _inst_2) (CategoryTheory.Category.toCategoryStruct.{max u4 u1, max (max (max u4 u3) u2) u1} (CategoryTheory.Functor.{u3, u1, u4, u2} C _inst_1 D _inst_2) (CategoryTheory.Functor.category.{u3, u1, u4, u2} C _inst_1 D _inst_2))) F G) (X : C), Eq.{succ u1} (Quiver.Hom.{succ u1, u2} D (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} D (CategoryTheory.Category.toCategoryStruct.{u1, u2} D _inst_2)) (Prefunctor.obj.{succ u3, succ u1, u4, u2} C (CategoryTheory.CategoryStruct.toQuiver.{u3, u4} C (CategoryTheory.Category.toCategoryStruct.{u3, u4} C _inst_1)) D (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} D (CategoryTheory.Category.toCategoryStruct.{u1, u2} D _inst_2)) (CategoryTheory.Functor.toPrefunctor.{u3, u1, u4, u2} C _inst_1 D _inst_2 (CategoryTheory.Abelian.coimage.{max u4 u1, max (max (max u4 u3) u2) u1} (CategoryTheory.Functor.{u3, u1, u4, u2} C _inst_1 D _inst_2) (CategoryTheory.Functor.category.{u3, u1, u4, u2} C _inst_1 D _inst_2) (CategoryTheory.Limits.instHasZeroMorphismsFunctorCategory.{u3, u4, u1, u2} C _inst_1 D _inst_2 (CategoryTheory.Preadditive.preadditiveHasZeroMorphisms.{u1, u2} D _inst_2 (CategoryTheory.Abelian.toPreadditive.{u1, u2} D _inst_2 _inst_3))) (CategoryTheory.Limits.hasKernels_of_hasEqualizers.{max u4 u1, max (max (max u4 u3) u2) u1} (CategoryTheory.Functor.{u3, u1, u4, u2} C _inst_1 D _inst_2) (CategoryTheory.Functor.category.{u3, u1, u4, u2} C _inst_1 D _inst_2) (CategoryTheory.Limits.instHasZeroMorphismsFunctorCategory.{u3, u4, u1, u2} C _inst_1 D _inst_2 (CategoryTheory.Preadditive.preadditiveHasZeroMorphisms.{u1, u2} D _inst_2 (CategoryTheory.Abelian.toPreadditive.{u1, u2} D _inst_2 _inst_3))) (CategoryTheory.Limits.functorCategoryHasLimitsOfShape.{0, u3, 0, u4, u1, u2} D _inst_2 CategoryTheory.Limits.WalkingParallelPair CategoryTheory.Limits.walkingParallelPairHomCategory C _inst_1 (CategoryTheory.Abelian.hasEqualizers.{u1, u2} D _inst_2 _inst_3))) (CategoryTheory.Limits.hasCokernels_of_hasCoequalizers.{max u4 u1, max (max (max u4 u3) u2) u1} (CategoryTheory.Functor.{u3, u1, u4, u2} C _inst_1 D _inst_2) (CategoryTheory.Functor.category.{u3, u1, u4, u2} C _inst_1 D _inst_2) (CategoryTheory.Limits.instHasZeroMorphismsFunctorCategory.{u3, u4, u1, u2} C _inst_1 D _inst_2 (CategoryTheory.Preadditive.preadditiveHasZeroMorphisms.{u1, u2} D _inst_2 (CategoryTheory.Abelian.toPreadditive.{u1, u2} D _inst_2 _inst_3))) (CategoryTheory.Limits.functorCategoryHasColimitsOfShape.{0, u3, 0, u4, u1, u2} D _inst_2 CategoryTheory.Limits.WalkingParallelPair CategoryTheory.Limits.walkingParallelPairHomCategory C _inst_1 (CategoryTheory.Abelian.hasCoequalizers.{u1, u2} D _inst_2 _inst_3))) F G α)) X) (Prefunctor.obj.{succ u3, succ u1, u4, u2} C (CategoryTheory.CategoryStruct.toQuiver.{u3, u4} C (CategoryTheory.Category.toCategoryStruct.{u3, u4} C _inst_1)) D (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} D (CategoryTheory.Category.toCategoryStruct.{u1, u2} D _inst_2)) (CategoryTheory.Functor.toPrefunctor.{u3, u1, u4, u2} C _inst_1 D _inst_2 (CategoryTheory.Abelian.image.{max u4 u1, max (max (max u4 u3) u2) u1} (CategoryTheory.Functor.{u3, u1, u4, u2} C _inst_1 D _inst_2) (CategoryTheory.Functor.category.{u3, u1, u4, u2} C _inst_1 D _inst_2) (CategoryTheory.Limits.instHasZeroMorphismsFunctorCategory.{u3, u4, u1, u2} C _inst_1 D _inst_2 (CategoryTheory.Preadditive.preadditiveHasZeroMorphisms.{u1, u2} D _inst_2 (CategoryTheory.Abelian.toPreadditive.{u1, u2} D _inst_2 _inst_3))) (CategoryTheory.Limits.hasKernels_of_hasEqualizers.{max u4 u1, max (max (max u4 u3) u2) u1} (CategoryTheory.Functor.{u3, u1, u4, u2} C _inst_1 D _inst_2) (CategoryTheory.Functor.category.{u3, u1, u4, u2} C _inst_1 D _inst_2) (CategoryTheory.Limits.instHasZeroMorphismsFunctorCategory.{u3, u4, u1, u2} C _inst_1 D _inst_2 (CategoryTheory.Preadditive.preadditiveHasZeroMorphisms.{u1, u2} D _inst_2 (CategoryTheory.Abelian.toPreadditive.{u1, u2} D _inst_2 _inst_3))) (CategoryTheory.Limits.functorCategoryHasLimitsOfShape.{0, u3, 0, u4, u1, u2} D _inst_2 CategoryTheory.Limits.WalkingParallelPair CategoryTheory.Limits.walkingParallelPairHomCategory C _inst_1 (CategoryTheory.Abelian.hasEqualizers.{u1, u2} D _inst_2 _inst_3))) (CategoryTheory.Limits.hasCokernels_of_hasCoequalizers.{max u4 u1, max (max (max u4 u3) u2) u1} (CategoryTheory.Functor.{u3, u1, u4, u2} C _inst_1 D _inst_2) (CategoryTheory.Functor.category.{u3, u1, u4, u2} C _inst_1 D _inst_2) (CategoryTheory.Limits.instHasZeroMorphismsFunctorCategory.{u3, u4, u1, u2} C _inst_1 D _inst_2 (CategoryTheory.Preadditive.preadditiveHasZeroMorphisms.{u1, u2} D _inst_2 (CategoryTheory.Abelian.toPreadditive.{u1, u2} D _inst_2 _inst_3))) (CategoryTheory.Limits.functorCategoryHasColimitsOfShape.{0, u3, 0, u4, u1, u2} D _inst_2 CategoryTheory.Limits.WalkingParallelPair CategoryTheory.Limits.walkingParallelPairHomCategory C _inst_1 (CategoryTheory.Abelian.hasCoequalizers.{u1, u2} D _inst_2 _inst_3))) F G α)) X)) (CategoryTheory.NatTrans.app.{u3, u1, u4, u2} C _inst_1 D _inst_2 (CategoryTheory.Abelian.coimage.{max u4 u1, max (max (max u4 u3) u2) u1} (CategoryTheory.Functor.{u3, u1, u4, u2} C _inst_1 D _inst_2) (CategoryTheory.Functor.category.{u3, u1, u4, u2} C _inst_1 D _inst_2) (CategoryTheory.Limits.instHasZeroMorphismsFunctorCategory.{u3, u4, u1, u2} C _inst_1 D _inst_2 (CategoryTheory.Preadditive.preadditiveHasZeroMorphisms.{u1, u2} D _inst_2 (CategoryTheory.Abelian.toPreadditive.{u1, u2} D _inst_2 _inst_3))) (CategoryTheory.Limits.hasKernels_of_hasEqualizers.{max u4 u1, max (max (max u4 u3) u2) u1} (CategoryTheory.Functor.{u3, u1, u4, u2} C _inst_1 D _inst_2) (CategoryTheory.Functor.category.{u3, u1, u4, u2} C _inst_1 D _inst_2) (CategoryTheory.Limits.instHasZeroMorphismsFunctorCategory.{u3, u4, u1, u2} C _inst_1 D _inst_2 (CategoryTheory.Preadditive.preadditiveHasZeroMorphisms.{u1, u2} D _inst_2 (CategoryTheory.Abelian.toPreadditive.{u1, u2} D _inst_2 _inst_3))) (CategoryTheory.Limits.functorCategoryHasLimitsOfShape.{0, u3, 0, u4, u1, u2} D _inst_2 CategoryTheory.Limits.WalkingParallelPair CategoryTheory.Limits.walkingParallelPairHomCategory C _inst_1 (CategoryTheory.Abelian.hasEqualizers.{u1, u2} D _inst_2 _inst_3))) (CategoryTheory.Limits.hasCokernels_of_hasCoequalizers.{max u4 u1, max (max (max u4 u3) u2) u1} (CategoryTheory.Functor.{u3, u1, u4, u2} C _inst_1 D _inst_2) (CategoryTheory.Functor.category.{u3, u1, u4, u2} C _inst_1 D _inst_2) (CategoryTheory.Limits.instHasZeroMorphismsFunctorCategory.{u3, u4, u1, u2} C _inst_1 D _inst_2 (CategoryTheory.Preadditive.preadditiveHasZeroMorphisms.{u1, u2} D _inst_2 (CategoryTheory.Abelian.toPreadditive.{u1, u2} D _inst_2 _inst_3))) (CategoryTheory.Limits.functorCategoryHasColimitsOfShape.{0, u3, 0, u4, u1, u2} D _inst_2 CategoryTheory.Limits.WalkingParallelPair CategoryTheory.Limits.walkingParallelPairHomCategory C _inst_1 (CategoryTheory.Abelian.hasCoequalizers.{u1, u2} D _inst_2 _inst_3))) F G α) (CategoryTheory.Abelian.image.{max u4 u1, max (max (max u4 u3) u2) u1} (CategoryTheory.Functor.{u3, u1, u4, u2} C _inst_1 D _inst_2) (CategoryTheory.Functor.category.{u3, u1, u4, u2} C _inst_1 D _inst_2) (CategoryTheory.Limits.instHasZeroMorphismsFunctorCategory.{u3, u4, u1, u2} C _inst_1 D _inst_2 (CategoryTheory.Preadditive.preadditiveHasZeroMorphisms.{u1, u2} D _inst_2 (CategoryTheory.Abelian.toPreadditive.{u1, u2} D _inst_2 _inst_3))) (CategoryTheory.Limits.hasKernels_of_hasEqualizers.{max u4 u1, max (max (max u4 u3) u2) u1} (CategoryTheory.Functor.{u3, u1, u4, u2} C _inst_1 D _inst_2) (CategoryTheory.Functor.category.{u3, u1, u4, u2} C _inst_1 D _inst_2) (CategoryTheory.Limits.instHasZeroMorphismsFunctorCategory.{u3, u4, u1, u2} C _inst_1 D _inst_2 (CategoryTheory.Preadditive.preadditiveHasZeroMorphisms.{u1, u2} D _inst_2 (CategoryTheory.Abelian.toPreadditive.{u1, u2} D _inst_2 _inst_3))) (CategoryTheory.Limits.functorCategoryHasLimitsOfShape.{0, u3, 0, u4, u1, u2} D _inst_2 CategoryTheory.Limits.WalkingParallelPair CategoryTheory.Limits.walkingParallelPairHomCategory C _inst_1 (CategoryTheory.Abelian.hasEqualizers.{u1, u2} D _inst_2 _inst_3))) (CategoryTheory.Limits.hasCokernels_of_hasCoequalizers.{max u4 u1, max (max (max u4 u3) u2) u1} (CategoryTheory.Functor.{u3, u1, u4, u2} C _inst_1 D _inst_2) (CategoryTheory.Functor.category.{u3, u1, u4, u2} C _inst_1 D _inst_2) (CategoryTheory.Limits.instHasZeroMorphismsFunctorCategory.{u3, u4, u1, u2} C _inst_1 D _inst_2 (CategoryTheory.Preadditive.preadditiveHasZeroMorphisms.{u1, u2} D _inst_2 (CategoryTheory.Abelian.toPreadditive.{u1, u2} D _inst_2 _inst_3))) (CategoryTheory.Limits.functorCategoryHasColimitsOfShape.{0, u3, 0, u4, u1, u2} D _inst_2 CategoryTheory.Limits.WalkingParallelPair CategoryTheory.Limits.walkingParallelPairHomCategory C _inst_1 (CategoryTheory.Abelian.hasCoequalizers.{u1, u2} D _inst_2 _inst_3))) F G α) (CategoryTheory.Abelian.coimageImageComparison.{max u4 u1, max (max (max u4 u3) u2) u1} (CategoryTheory.Functor.{u3, u1, u4, u2} C _inst_1 D _inst_2) (CategoryTheory.Functor.category.{u3, u1, u4, u2} C _inst_1 D _inst_2) (CategoryTheory.Limits.instHasZeroMorphismsFunctorCategory.{u3, u4, u1, u2} C _inst_1 D _inst_2 (CategoryTheory.Preadditive.preadditiveHasZeroMorphisms.{u1, u2} D _inst_2 (CategoryTheory.Abelian.toPreadditive.{u1, u2} D _inst_2 _inst_3))) (CategoryTheory.Limits.hasKernels_of_hasEqualizers.{max u4 u1, max (max (max u4 u3) u2) u1} (CategoryTheory.Functor.{u3, u1, u4, u2} C _inst_1 D _inst_2) (CategoryTheory.Functor.category.{u3, u1, u4, u2} C _inst_1 D _inst_2) (CategoryTheory.Limits.instHasZeroMorphismsFunctorCategory.{u3, u4, u1, u2} C _inst_1 D _inst_2 (CategoryTheory.Preadditive.preadditiveHasZeroMorphisms.{u1, u2} D _inst_2 (CategoryTheory.Abelian.toPreadditive.{u1, u2} D _inst_2 _inst_3))) (CategoryTheory.Limits.functorCategoryHasLimitsOfShape.{0, u3, 0, u4, u1, u2} D _inst_2 CategoryTheory.Limits.WalkingParallelPair CategoryTheory.Limits.walkingParallelPairHomCategory C _inst_1 (CategoryTheory.Abelian.hasEqualizers.{u1, u2} D _inst_2 _inst_3))) (CategoryTheory.Limits.hasCokernels_of_hasCoequalizers.{max u4 u1, max (max (max u4 u3) u2) u1} (CategoryTheory.Functor.{u3, u1, u4, u2} C _inst_1 D _inst_2) (CategoryTheory.Functor.category.{u3, u1, u4, u2} C _inst_1 D _inst_2) (CategoryTheory.Limits.instHasZeroMorphismsFunctorCategory.{u3, u4, u1, u2} C _inst_1 D _inst_2 (CategoryTheory.Preadditive.preadditiveHasZeroMorphisms.{u1, u2} D _inst_2 (CategoryTheory.Abelian.toPreadditive.{u1, u2} D _inst_2 _inst_3))) (CategoryTheory.Limits.functorCategoryHasColimitsOfShape.{0, u3, 0, u4, u1, u2} D _inst_2 CategoryTheory.Limits.WalkingParallelPair CategoryTheory.Limits.walkingParallelPairHomCategory C _inst_1 (CategoryTheory.Abelian.hasCoequalizers.{u1, u2} D _inst_2 _inst_3))) F G α) X) (CategoryTheory.CategoryStruct.comp.{u1, u2} D (CategoryTheory.Category.toCategoryStruct.{u1, u2} D _inst_2) (Prefunctor.obj.{succ u3, succ u1, u4, u2} C (CategoryTheory.CategoryStruct.toQuiver.{u3, u4} C (CategoryTheory.Category.toCategoryStruct.{u3, u4} C _inst_1)) D (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} D (CategoryTheory.Category.toCategoryStruct.{u1, u2} D _inst_2)) (CategoryTheory.Functor.toPrefunctor.{u3, u1, u4, u2} C _inst_1 D _inst_2 (CategoryTheory.Abelian.coimage.{max u4 u1, max (max (max u4 u3) u2) u1} (CategoryTheory.Functor.{u3, u1, u4, u2} C _inst_1 D _inst_2) (CategoryTheory.Functor.category.{u3, u1, u4, u2} C _inst_1 D _inst_2) (CategoryTheory.Limits.instHasZeroMorphismsFunctorCategory.{u3, u4, u1, u2} C _inst_1 D _inst_2 (CategoryTheory.Preadditive.preadditiveHasZeroMorphisms.{u1, u2} D _inst_2 (CategoryTheory.Abelian.toPreadditive.{u1, u2} D _inst_2 _inst_3))) (CategoryTheory.Limits.hasKernels_of_hasEqualizers.{max u4 u1, max (max (max u4 u3) u2) u1} (CategoryTheory.Functor.{u3, u1, u4, u2} C _inst_1 D _inst_2) (CategoryTheory.Functor.category.{u3, u1, u4, u2} C _inst_1 D _inst_2) (CategoryTheory.Limits.instHasZeroMorphismsFunctorCategory.{u3, u4, u1, u2} C _inst_1 D _inst_2 (CategoryTheory.Preadditive.preadditiveHasZeroMorphisms.{u1, u2} D _inst_2 (CategoryTheory.Abelian.toPreadditive.{u1, u2} D _inst_2 _inst_3))) (CategoryTheory.Limits.functorCategoryHasLimitsOfShape.{0, u3, 0, u4, u1, u2} D _inst_2 CategoryTheory.Limits.WalkingParallelPair CategoryTheory.Limits.walkingParallelPairHomCategory C _inst_1 (CategoryTheory.Abelian.hasEqualizers.{u1, u2} D _inst_2 _inst_3))) (CategoryTheory.Limits.hasCokernels_of_hasCoequalizers.{max u4 u1, max (max (max u4 u3) u2) u1} (CategoryTheory.Functor.{u3, u1, u4, u2} C _inst_1 D _inst_2) (CategoryTheory.Functor.category.{u3, u1, u4, u2} C _inst_1 D _inst_2) (CategoryTheory.Limits.instHasZeroMorphismsFunctorCategory.{u3, u4, u1, u2} C _inst_1 D _inst_2 (CategoryTheory.Preadditive.preadditiveHasZeroMorphisms.{u1, u2} D _inst_2 (CategoryTheory.Abelian.toPreadditive.{u1, u2} D _inst_2 _inst_3))) (CategoryTheory.Limits.functorCategoryHasColimitsOfShape.{0, u3, 0, u4, u1, u2} D _inst_2 CategoryTheory.Limits.WalkingParallelPair CategoryTheory.Limits.walkingParallelPairHomCategory C _inst_1 (CategoryTheory.Abelian.hasCoequalizers.{u1, u2} D _inst_2 _inst_3))) F G α)) X) (CategoryTheory.Abelian.coimage.{u1, u2} D _inst_2 (CategoryTheory.Preadditive.preadditiveHasZeroMorphisms.{u1, u2} D _inst_2 (CategoryTheory.Abelian.toPreadditive.{u1, u2} D _inst_2 _inst_3)) (CategoryTheory.Limits.hasKernels_of_hasEqualizers.{u1, u2} D _inst_2 (CategoryTheory.Preadditive.preadditiveHasZeroMorphisms.{u1, u2} D _inst_2 (CategoryTheory.Abelian.toPreadditive.{u1, u2} D _inst_2 _inst_3)) (CategoryTheory.Abelian.hasEqualizers.{u1, u2} D _inst_2 _inst_3)) (CategoryTheory.Limits.hasCokernels_of_hasCoequalizers.{u1, u2} D _inst_2 (CategoryTheory.Preadditive.preadditiveHasZeroMorphisms.{u1, u2} D _inst_2 (CategoryTheory.Abelian.toPreadditive.{u1, u2} D _inst_2 _inst_3)) (CategoryTheory.Abelian.hasCoequalizers.{u1, u2} D _inst_2 _inst_3)) (Prefunctor.obj.{succ u3, succ u1, u4, u2} C (CategoryTheory.CategoryStruct.toQuiver.{u3, u4} C (CategoryTheory.Category.toCategoryStruct.{u3, u4} C _inst_1)) D (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} D (CategoryTheory.Category.toCategoryStruct.{u1, u2} D _inst_2)) (CategoryTheory.Functor.toPrefunctor.{u3, u1, u4, u2} C _inst_1 D _inst_2 F) X) (Prefunctor.obj.{succ u3, succ u1, u4, u2} C (CategoryTheory.CategoryStruct.toQuiver.{u3, u4} C (CategoryTheory.Category.toCategoryStruct.{u3, u4} C _inst_1)) D (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} D (CategoryTheory.Category.toCategoryStruct.{u1, u2} D _inst_2)) (CategoryTheory.Functor.toPrefunctor.{u3, u1, u4, u2} C _inst_1 D _inst_2 G) X) (CategoryTheory.NatTrans.app.{u3, u1, u4, u2} C _inst_1 D _inst_2 F G α X)) (Prefunctor.obj.{succ u3, succ u1, u4, u2} C (CategoryTheory.CategoryStruct.toQuiver.{u3, u4} C (CategoryTheory.Category.toCategoryStruct.{u3, u4} C _inst_1)) D (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} D (CategoryTheory.Category.toCategoryStruct.{u1, u2} D _inst_2)) (CategoryTheory.Functor.toPrefunctor.{u3, u1, u4, u2} C _inst_1 D _inst_2 (CategoryTheory.Abelian.image.{max u4 u1, max (max (max u4 u3) u2) u1} (CategoryTheory.Functor.{u3, u1, u4, u2} C _inst_1 D _inst_2) (CategoryTheory.Functor.category.{u3, u1, u4, u2} C _inst_1 D _inst_2) (CategoryTheory.Limits.instHasZeroMorphismsFunctorCategory.{u3, u4, u1, u2} C _inst_1 D _inst_2 (CategoryTheory.Preadditive.preadditiveHasZeroMorphisms.{u1, u2} D _inst_2 (CategoryTheory.Abelian.toPreadditive.{u1, u2} D _inst_2 _inst_3))) (CategoryTheory.Limits.hasKernels_of_hasEqualizers.{max u4 u1, max (max (max u4 u3) u2) u1} (CategoryTheory.Functor.{u3, u1, u4, u2} C _inst_1 D _inst_2) (CategoryTheory.Functor.category.{u3, u1, u4, u2} C _inst_1 D _inst_2) (CategoryTheory.Limits.instHasZeroMorphismsFunctorCategory.{u3, u4, u1, u2} C _inst_1 D _inst_2 (CategoryTheory.Preadditive.preadditiveHasZeroMorphisms.{u1, u2} D _inst_2 (CategoryTheory.Abelian.toPreadditive.{u1, u2} D _inst_2 _inst_3))) (CategoryTheory.Limits.functorCategoryHasLimitsOfShape.{0, u3, 0, u4, u1, u2} D _inst_2 CategoryTheory.Limits.WalkingParallelPair CategoryTheory.Limits.walkingParallelPairHomCategory C _inst_1 (CategoryTheory.Abelian.hasEqualizers.{u1, u2} D _inst_2 _inst_3))) (CategoryTheory.Limits.hasCokernels_of_hasCoequalizers.{max u4 u1, max (max (max u4 u3) u2) u1} (CategoryTheory.Functor.{u3, u1, u4, u2} C _inst_1 D _inst_2) (CategoryTheory.Functor.category.{u3, u1, u4, u2} C _inst_1 D _inst_2) (CategoryTheory.Limits.instHasZeroMorphismsFunctorCategory.{u3, u4, u1, u2} C _inst_1 D _inst_2 (CategoryTheory.Preadditive.preadditiveHasZeroMorphisms.{u1, u2} D _inst_2 (CategoryTheory.Abelian.toPreadditive.{u1, u2} D _inst_2 _inst_3))) (CategoryTheory.Limits.functorCategoryHasColimitsOfShape.{0, u3, 0, u4, u1, u2} D _inst_2 CategoryTheory.Limits.WalkingParallelPair CategoryTheory.Limits.walkingParallelPairHomCategory C _inst_1 (CategoryTheory.Abelian.hasCoequalizers.{u1, u2} D _inst_2 _inst_3))) F G α)) X) (CategoryTheory.Iso.hom.{u1, u2} D _inst_2 (Prefunctor.obj.{succ u3, succ u1, u4, u2} C (CategoryTheory.CategoryStruct.toQuiver.{u3, u4} C (CategoryTheory.Category.toCategoryStruct.{u3, u4} C _inst_1)) D (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} D (CategoryTheory.Category.toCategoryStruct.{u1, u2} D _inst_2)) (CategoryTheory.Functor.toPrefunctor.{u3, u1, u4, u2} C _inst_1 D _inst_2 (CategoryTheory.Abelian.coimage.{max u4 u1, max (max (max u4 u3) u2) u1} (CategoryTheory.Functor.{u3, u1, u4, u2} C _inst_1 D _inst_2) (CategoryTheory.Functor.category.{u3, u1, u4, u2} C _inst_1 D _inst_2) (CategoryTheory.Limits.instHasZeroMorphismsFunctorCategory.{u3, u4, u1, u2} C _inst_1 D _inst_2 (CategoryTheory.Preadditive.preadditiveHasZeroMorphisms.{u1, u2} D _inst_2 (CategoryTheory.Abelian.toPreadditive.{u1, u2} D _inst_2 _inst_3))) (CategoryTheory.Limits.hasKernels_of_hasEqualizers.{max u4 u1, max (max (max u4 u3) u2) u1} (CategoryTheory.Functor.{u3, u1, u4, u2} C _inst_1 D _inst_2) (CategoryTheory.Functor.category.{u3, u1, u4, u2} C _inst_1 D _inst_2) (CategoryTheory.Limits.instHasZeroMorphismsFunctorCategory.{u3, u4, u1, u2} C _inst_1 D _inst_2 (CategoryTheory.Preadditive.preadditiveHasZeroMorphisms.{u1, u2} D _inst_2 (CategoryTheory.Abelian.toPreadditive.{u1, u2} D _inst_2 _inst_3))) (CategoryTheory.Limits.functorCategoryHasLimitsOfShape.{0, u3, 0, u4, u1, u2} D _inst_2 CategoryTheory.Limits.WalkingParallelPair CategoryTheory.Limits.walkingParallelPairHomCategory C _inst_1 (CategoryTheory.Abelian.hasEqualizers.{u1, u2} D _inst_2 _inst_3))) (CategoryTheory.Limits.hasCokernels_of_hasCoequalizers.{max u4 u1, max (max (max u4 u3) u2) u1} (CategoryTheory.Functor.{u3, u1, u4, u2} C _inst_1 D _inst_2) (CategoryTheory.Functor.category.{u3, u1, u4, u2} C _inst_1 D _inst_2) (CategoryTheory.Limits.instHasZeroMorphismsFunctorCategory.{u3, u4, u1, u2} C _inst_1 D _inst_2 (CategoryTheory.Preadditive.preadditiveHasZeroMorphisms.{u1, u2} D _inst_2 (CategoryTheory.Abelian.toPreadditive.{u1, u2} D _inst_2 _inst_3))) (CategoryTheory.Limits.functorCategoryHasColimitsOfShape.{0, u3, 0, u4, u1, u2} D _inst_2 CategoryTheory.Limits.WalkingParallelPair CategoryTheory.Limits.walkingParallelPairHomCategory C _inst_1 (CategoryTheory.Abelian.hasCoequalizers.{u1, u2} D _inst_2 _inst_3))) F G α)) X) (CategoryTheory.Abelian.coimage.{u1, u2} D _inst_2 (CategoryTheory.Preadditive.preadditiveHasZeroMorphisms.{u1, u2} D _inst_2 (CategoryTheory.Abelian.toPreadditive.{u1, u2} D _inst_2 _inst_3)) (CategoryTheory.Limits.hasKernels_of_hasEqualizers.{u1, u2} D _inst_2 (CategoryTheory.Preadditive.preadditiveHasZeroMorphisms.{u1, u2} D _inst_2 (CategoryTheory.Abelian.toPreadditive.{u1, u2} D _inst_2 _inst_3)) (CategoryTheory.Abelian.hasEqualizers.{u1, u2} D _inst_2 _inst_3)) (CategoryTheory.Limits.hasCokernels_of_hasCoequalizers.{u1, u2} D _inst_2 (CategoryTheory.Preadditive.preadditiveHasZeroMorphisms.{u1, u2} D _inst_2 (CategoryTheory.Abelian.toPreadditive.{u1, u2} D _inst_2 _inst_3)) (CategoryTheory.Abelian.hasCoequalizers.{u1, u2} D _inst_2 _inst_3)) (Prefunctor.obj.{succ u3, succ u1, u4, u2} C (CategoryTheory.CategoryStruct.toQuiver.{u3, u4} C (CategoryTheory.Category.toCategoryStruct.{u3, u4} C _inst_1)) D (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} D (CategoryTheory.Category.toCategoryStruct.{u1, u2} D _inst_2)) (CategoryTheory.Functor.toPrefunctor.{u3, u1, u4, u2} C _inst_1 D _inst_2 F) X) (Prefunctor.obj.{succ u3, succ u1, u4, u2} C (CategoryTheory.CategoryStruct.toQuiver.{u3, u4} C (CategoryTheory.Category.toCategoryStruct.{u3, u4} C _inst_1)) D (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} D (CategoryTheory.Category.toCategoryStruct.{u1, u2} D _inst_2)) (CategoryTheory.Functor.toPrefunctor.{u3, u1, u4, u2} C _inst_1 D _inst_2 G) X) (CategoryTheory.NatTrans.app.{u3, u1, u4, u2} C _inst_1 D _inst_2 F G α X)) (CategoryTheory.Abelian.FunctorCategory.coimageObjIso.{u1, u2, u3, u4} C _inst_1 D _inst_2 _inst_3 F G α X)) (CategoryTheory.CategoryStruct.comp.{u1, u2} D (CategoryTheory.Category.toCategoryStruct.{u1, u2} D _inst_2) (CategoryTheory.Abelian.coimage.{u1, u2} D _inst_2 (CategoryTheory.Preadditive.preadditiveHasZeroMorphisms.{u1, u2} D _inst_2 (CategoryTheory.Abelian.toPreadditive.{u1, u2} D _inst_2 _inst_3)) (CategoryTheory.Limits.hasKernels_of_hasEqualizers.{u1, u2} D _inst_2 (CategoryTheory.Preadditive.preadditiveHasZeroMorphisms.{u1, u2} D _inst_2 (CategoryTheory.Abelian.toPreadditive.{u1, u2} D _inst_2 _inst_3)) (CategoryTheory.Abelian.hasEqualizers.{u1, u2} D _inst_2 _inst_3)) (CategoryTheory.Limits.hasCokernels_of_hasCoequalizers.{u1, u2} D _inst_2 (CategoryTheory.Preadditive.preadditiveHasZeroMorphisms.{u1, u2} D _inst_2 (CategoryTheory.Abelian.toPreadditive.{u1, u2} D _inst_2 _inst_3)) (CategoryTheory.Abelian.hasCoequalizers.{u1, u2} D _inst_2 _inst_3)) (Prefunctor.obj.{succ u3, succ u1, u4, u2} C (CategoryTheory.CategoryStruct.toQuiver.{u3, u4} C (CategoryTheory.Category.toCategoryStruct.{u3, u4} C _inst_1)) D (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} D (CategoryTheory.Category.toCategoryStruct.{u1, u2} D _inst_2)) (CategoryTheory.Functor.toPrefunctor.{u3, u1, u4, u2} C _inst_1 D _inst_2 F) X) (Prefunctor.obj.{succ u3, succ u1, u4, u2} C (CategoryTheory.CategoryStruct.toQuiver.{u3, u4} C (CategoryTheory.Category.toCategoryStruct.{u3, u4} C _inst_1)) D (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} D (CategoryTheory.Category.toCategoryStruct.{u1, u2} D _inst_2)) (CategoryTheory.Functor.toPrefunctor.{u3, u1, u4, u2} C _inst_1 D _inst_2 G) X) (CategoryTheory.NatTrans.app.{u3, u1, u4, u2} C _inst_1 D _inst_2 F G α X)) (CategoryTheory.Abelian.image.{u1, u2} D _inst_2 (CategoryTheory.Preadditive.preadditiveHasZeroMorphisms.{u1, u2} D _inst_2 (CategoryTheory.Abelian.toPreadditive.{u1, u2} D _inst_2 _inst_3)) (CategoryTheory.Limits.hasKernels_of_hasEqualizers.{u1, u2} D _inst_2 (CategoryTheory.Preadditive.preadditiveHasZeroMorphisms.{u1, u2} D _inst_2 (CategoryTheory.Abelian.toPreadditive.{u1, u2} D _inst_2 _inst_3)) (CategoryTheory.Abelian.hasEqualizers.{u1, u2} D _inst_2 _inst_3)) (CategoryTheory.Limits.hasCokernels_of_hasCoequalizers.{u1, u2} D _inst_2 (CategoryTheory.Preadditive.preadditiveHasZeroMorphisms.{u1, u2} D _inst_2 (CategoryTheory.Abelian.toPreadditive.{u1, u2} D _inst_2 _inst_3)) (CategoryTheory.Abelian.hasCoequalizers.{u1, u2} D _inst_2 _inst_3)) (Prefunctor.obj.{succ u3, succ u1, u4, u2} C (CategoryTheory.CategoryStruct.toQuiver.{u3, u4} C (CategoryTheory.Category.toCategoryStruct.{u3, u4} C _inst_1)) D (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} D (CategoryTheory.Category.toCategoryStruct.{u1, u2} D _inst_2)) (CategoryTheory.Functor.toPrefunctor.{u3, u1, u4, u2} C _inst_1 D _inst_2 F) X) (Prefunctor.obj.{succ u3, succ u1, u4, u2} C (CategoryTheory.CategoryStruct.toQuiver.{u3, u4} C (CategoryTheory.Category.toCategoryStruct.{u3, u4} C _inst_1)) D (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} D (CategoryTheory.Category.toCategoryStruct.{u1, u2} D _inst_2)) (CategoryTheory.Functor.toPrefunctor.{u3, u1, u4, u2} C _inst_1 D _inst_2 G) X) (CategoryTheory.NatTrans.app.{u3, u1, u4, u2} C _inst_1 D _inst_2 F G α X)) (Prefunctor.obj.{succ u3, succ u1, u4, u2} C (CategoryTheory.CategoryStruct.toQuiver.{u3, u4} C (CategoryTheory.Category.toCategoryStruct.{u3, u4} C _inst_1)) D (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} D (CategoryTheory.Category.toCategoryStruct.{u1, u2} D _inst_2)) (CategoryTheory.Functor.toPrefunctor.{u3, u1, u4, u2} C _inst_1 D _inst_2 (CategoryTheory.Abelian.image.{max u4 u1, max (max (max u4 u3) u2) u1} (CategoryTheory.Functor.{u3, u1, u4, u2} C _inst_1 D _inst_2) (CategoryTheory.Functor.category.{u3, u1, u4, u2} C _inst_1 D _inst_2) (CategoryTheory.Limits.instHasZeroMorphismsFunctorCategory.{u3, u4, u1, u2} C _inst_1 D _inst_2 (CategoryTheory.Preadditive.preadditiveHasZeroMorphisms.{u1, u2} D _inst_2 (CategoryTheory.Abelian.toPreadditive.{u1, u2} D _inst_2 _inst_3))) (CategoryTheory.Limits.hasKernels_of_hasEqualizers.{max u4 u1, max (max (max u4 u3) u2) u1} (CategoryTheory.Functor.{u3, u1, u4, u2} C _inst_1 D _inst_2) (CategoryTheory.Functor.category.{u3, u1, u4, u2} C _inst_1 D _inst_2) (CategoryTheory.Limits.instHasZeroMorphismsFunctorCategory.{u3, u4, u1, u2} C _inst_1 D _inst_2 (CategoryTheory.Preadditive.preadditiveHasZeroMorphisms.{u1, u2} D _inst_2 (CategoryTheory.Abelian.toPreadditive.{u1, u2} D _inst_2 _inst_3))) (CategoryTheory.Limits.functorCategoryHasLimitsOfShape.{0, u3, 0, u4, u1, u2} D _inst_2 CategoryTheory.Limits.WalkingParallelPair CategoryTheory.Limits.walkingParallelPairHomCategory C _inst_1 (CategoryTheory.Abelian.hasEqualizers.{u1, u2} D _inst_2 _inst_3))) (CategoryTheory.Limits.hasCokernels_of_hasCoequalizers.{max u4 u1, max (max (max u4 u3) u2) u1} (CategoryTheory.Functor.{u3, u1, u4, u2} C _inst_1 D _inst_2) (CategoryTheory.Functor.category.{u3, u1, u4, u2} C _inst_1 D _inst_2) (CategoryTheory.Limits.instHasZeroMorphismsFunctorCategory.{u3, u4, u1, u2} C _inst_1 D _inst_2 (CategoryTheory.Preadditive.preadditiveHasZeroMorphisms.{u1, u2} D _inst_2 (CategoryTheory.Abelian.toPreadditive.{u1, u2} D _inst_2 _inst_3))) (CategoryTheory.Limits.functorCategoryHasColimitsOfShape.{0, u3, 0, u4, u1, u2} D _inst_2 CategoryTheory.Limits.WalkingParallelPair CategoryTheory.Limits.walkingParallelPairHomCategory C _inst_1 (CategoryTheory.Abelian.hasCoequalizers.{u1, u2} D _inst_2 _inst_3))) F G α)) X) (CategoryTheory.Abelian.coimageImageComparison.{u1, u2} D _inst_2 (CategoryTheory.Preadditive.preadditiveHasZeroMorphisms.{u1, u2} D _inst_2 (CategoryTheory.Abelian.toPreadditive.{u1, u2} D _inst_2 _inst_3)) (CategoryTheory.Limits.hasKernels_of_hasEqualizers.{u1, u2} D _inst_2 (CategoryTheory.Preadditive.preadditiveHasZeroMorphisms.{u1, u2} D _inst_2 (CategoryTheory.Abelian.toPreadditive.{u1, u2} D _inst_2 _inst_3)) (CategoryTheory.Abelian.hasEqualizers.{u1, u2} D _inst_2 _inst_3)) (CategoryTheory.Limits.hasCokernels_of_hasCoequalizers.{u1, u2} D _inst_2 (CategoryTheory.Preadditive.preadditiveHasZeroMorphisms.{u1, u2} D _inst_2 (CategoryTheory.Abelian.toPreadditive.{u1, u2} D _inst_2 _inst_3)) (CategoryTheory.Abelian.hasCoequalizers.{u1, u2} D _inst_2 _inst_3)) (Prefunctor.obj.{succ u3, succ u1, u4, u2} C (CategoryTheory.CategoryStruct.toQuiver.{u3, u4} C (CategoryTheory.Category.toCategoryStruct.{u3, u4} C _inst_1)) D (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} D (CategoryTheory.Category.toCategoryStruct.{u1, u2} D _inst_2)) (CategoryTheory.Functor.toPrefunctor.{u3, u1, u4, u2} C _inst_1 D _inst_2 F) X) (Prefunctor.obj.{succ u3, succ u1, u4, u2} C (CategoryTheory.CategoryStruct.toQuiver.{u3, u4} C (CategoryTheory.Category.toCategoryStruct.{u3, u4} C _inst_1)) D (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} D (CategoryTheory.Category.toCategoryStruct.{u1, u2} D _inst_2)) (CategoryTheory.Functor.toPrefunctor.{u3, u1, u4, u2} C _inst_1 D _inst_2 G) X) (CategoryTheory.NatTrans.app.{u3, u1, u4, u2} C _inst_1 D _inst_2 F G α X)) (CategoryTheory.Iso.inv.{u1, u2} D _inst_2 (Prefunctor.obj.{succ u3, succ u1, u4, u2} C (CategoryTheory.CategoryStruct.toQuiver.{u3, u4} C (CategoryTheory.Category.toCategoryStruct.{u3, u4} C _inst_1)) D (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} D (CategoryTheory.Category.toCategoryStruct.{u1, u2} D _inst_2)) (CategoryTheory.Functor.toPrefunctor.{u3, u1, u4, u2} C _inst_1 D _inst_2 (CategoryTheory.Abelian.image.{max u4 u1, max (max (max u4 u3) u2) u1} (CategoryTheory.Functor.{u3, u1, u4, u2} C _inst_1 D _inst_2) (CategoryTheory.Functor.category.{u3, u1, u4, u2} C _inst_1 D _inst_2) (CategoryTheory.Limits.instHasZeroMorphismsFunctorCategory.{u3, u4, u1, u2} C _inst_1 D _inst_2 (CategoryTheory.Preadditive.preadditiveHasZeroMorphisms.{u1, u2} D _inst_2 (CategoryTheory.Abelian.toPreadditive.{u1, u2} D _inst_2 _inst_3))) (CategoryTheory.Limits.hasKernels_of_hasEqualizers.{max u4 u1, max (max (max u4 u3) u2) u1} (CategoryTheory.Functor.{u3, u1, u4, u2} C _inst_1 D _inst_2) (CategoryTheory.Functor.category.{u3, u1, u4, u2} C _inst_1 D _inst_2) (CategoryTheory.Limits.instHasZeroMorphismsFunctorCategory.{u3, u4, u1, u2} C _inst_1 D _inst_2 (CategoryTheory.Preadditive.preadditiveHasZeroMorphisms.{u1, u2} D _inst_2 (CategoryTheory.Abelian.toPreadditive.{u1, u2} D _inst_2 _inst_3))) (CategoryTheory.Limits.functorCategoryHasLimitsOfShape.{0, u3, 0, u4, u1, u2} D _inst_2 CategoryTheory.Limits.WalkingParallelPair CategoryTheory.Limits.walkingParallelPairHomCategory C _inst_1 (CategoryTheory.Abelian.hasEqualizers.{u1, u2} D _inst_2 _inst_3))) (CategoryTheory.Limits.hasCokernels_of_hasCoequalizers.{max u4 u1, max (max (max u4 u3) u2) u1} (CategoryTheory.Functor.{u3, u1, u4, u2} C _inst_1 D _inst_2) (CategoryTheory.Functor.category.{u3, u1, u4, u2} C _inst_1 D _inst_2) (CategoryTheory.Limits.instHasZeroMorphismsFunctorCategory.{u3, u4, u1, u2} C _inst_1 D _inst_2 (CategoryTheory.Preadditive.preadditiveHasZeroMorphisms.{u1, u2} D _inst_2 (CategoryTheory.Abelian.toPreadditive.{u1, u2} D _inst_2 _inst_3))) (CategoryTheory.Limits.functorCategoryHasColimitsOfShape.{0, u3, 0, u4, u1, u2} D _inst_2 CategoryTheory.Limits.WalkingParallelPair CategoryTheory.Limits.walkingParallelPairHomCategory C _inst_1 (CategoryTheory.Abelian.hasCoequalizers.{u1, u2} D _inst_2 _inst_3))) F G α)) X) (CategoryTheory.Abelian.image.{u1, u2} D _inst_2 (CategoryTheory.Preadditive.preadditiveHasZeroMorphisms.{u1, u2} D _inst_2 (CategoryTheory.Abelian.toPreadditive.{u1, u2} D _inst_2 _inst_3)) (CategoryTheory.Limits.hasKernels_of_hasEqualizers.{u1, u2} D _inst_2 (CategoryTheory.Preadditive.preadditiveHasZeroMorphisms.{u1, u2} D _inst_2 (CategoryTheory.Abelian.toPreadditive.{u1, u2} D _inst_2 _inst_3)) (CategoryTheory.Abelian.hasEqualizers.{u1, u2} D _inst_2 _inst_3)) (CategoryTheory.Limits.hasCokernels_of_hasCoequalizers.{u1, u2} D _inst_2 (CategoryTheory.Preadditive.preadditiveHasZeroMorphisms.{u1, u2} D _inst_2 (CategoryTheory.Abelian.toPreadditive.{u1, u2} D _inst_2 _inst_3)) (CategoryTheory.Abelian.hasCoequalizers.{u1, u2} D _inst_2 _inst_3)) (Prefunctor.obj.{succ u3, succ u1, u4, u2} C (CategoryTheory.CategoryStruct.toQuiver.{u3, u4} C (CategoryTheory.Category.toCategoryStruct.{u3, u4} C _inst_1)) D (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} D (CategoryTheory.Category.toCategoryStruct.{u1, u2} D _inst_2)) (CategoryTheory.Functor.toPrefunctor.{u3, u1, u4, u2} C _inst_1 D _inst_2 F) X) (Prefunctor.obj.{succ u3, succ u1, u4, u2} C (CategoryTheory.CategoryStruct.toQuiver.{u3, u4} C (CategoryTheory.Category.toCategoryStruct.{u3, u4} C _inst_1)) D (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} D (CategoryTheory.Category.toCategoryStruct.{u1, u2} D _inst_2)) (CategoryTheory.Functor.toPrefunctor.{u3, u1, u4, u2} C _inst_1 D _inst_2 G) X) (CategoryTheory.NatTrans.app.{u3, u1, u4, u2} C _inst_1 D _inst_2 F G α X)) (CategoryTheory.Abelian.FunctorCategory.imageObjIso.{u1, u2, u3, u4} C _inst_1 D _inst_2 _inst_3 F G α X))))
Case conversion may be inaccurate. Consider using '#align category_theory.abelian.functor_category.coimage_image_comparison_app' CategoryTheory.Abelian.FunctorCategory.coimageImageComparison_app'ₓ'. -/
theorem coimageImageComparison_app' :
(coimageImageComparison α).app X =
mathlib commit https://github.com/leanprover-community/mathlib/commit/039ef89bef6e58b32b62898dd48e9d1a4312bb65
@@ -4,7 +4,7 @@ Released under Apache 2.0 license as described in the file LICENSE.
Authors: Scott Morrison
! This file was ported from Lean 3 source module category_theory.abelian.functor_category
-! leanprover-community/mathlib commit 8abfb3ba5e211d8376b855dab5d67f9eba9e0774
+! leanprover-community/mathlib commit 25a9423c6b2c8626e91c688bfd6c1d0a986a3e6e
! Please do not edit these lines, except to modify the commit id
! if you have ported upstream changes.
-/
@@ -16,6 +16,9 @@ import Mathbin.CategoryTheory.Limits.Preserves.Shapes.Kernels
/-!
# If `D` is abelian, then the functor category `C ⥤ D` is also abelian.
+> THIS FILE IS SYNCHRONIZED WITH MATHLIB4.
+> Any changes to this file require a corresponding PR to mathlib4.
+
-/
mathlib commit https://github.com/leanprover-community/mathlib/commit/dc65937e7a0fff4677f0f5a7086f42da70a69575
@@ -39,6 +39,12 @@ namespace FunctorCategory
variable {F G : C ⥤ D} (α : F ⟶ G) (X : C)
+/- warning: category_theory.abelian.functor_category.coimage_obj_iso -> CategoryTheory.Abelian.FunctorCategory.coimageObjIso is a dubious translation:
+lean 3 declaration is
+ forall {C : Type.{max u3 u4}} [_inst_1 : CategoryTheory.Category.{u3, max u3 u4} C] {D : Type.{u2}} [_inst_2 : CategoryTheory.Category.{max u1 u3 u4, u2} D] [_inst_3 : CategoryTheory.Abelian.{max u1 u3 u4, u2} D _inst_2] {F : CategoryTheory.Functor.{u3, max u1 u3 u4, max u3 u4, u2} C _inst_1 D _inst_2} {G : CategoryTheory.Functor.{u3, max u1 u3 u4, max u3 u4, u2} C _inst_1 D _inst_2} (α : Quiver.Hom.{succ (max u1 u3 u4), max u3 (max u1 u3 u4) (max u3 u4) u2} (CategoryTheory.Functor.{u3, max u1 u3 u4, max u3 u4, u2} C _inst_1 D _inst_2) (CategoryTheory.CategoryStruct.toQuiver.{max u1 u3 u4, max u3 (max u1 u3 u4) (max u3 u4) u2} (CategoryTheory.Functor.{u3, max u1 u3 u4, max u3 u4, u2} C _inst_1 D _inst_2) (CategoryTheory.Category.toCategoryStruct.{max u1 u3 u4, max u3 (max u1 u3 u4) (max u3 u4) u2} (CategoryTheory.Functor.{u3, max u1 u3 u4, max u3 u4, u2} C _inst_1 D _inst_2) (CategoryTheory.Functor.category.{u3, max u1 u3 u4, max u3 u4, u2} C _inst_1 D _inst_2))) F G) (X : C), CategoryTheory.Iso.{max u1 u3 u4, u2} D _inst_2 (CategoryTheory.Functor.obj.{u3, max u1 u3 u4, max u3 u4, u2} C _inst_1 D _inst_2 (CategoryTheory.Abelian.coimage.{max u1 u3 u4, max u3 (max u1 u3 u4) (max u3 u4) u2} (CategoryTheory.Functor.{u3, max u1 u3 u4, max u3 u4, u2} C _inst_1 D _inst_2) (CategoryTheory.Functor.category.{u3, max u1 u3 u4, max u3 u4, u2} C _inst_1 D _inst_2) (CategoryTheory.Limits.CategoryTheory.Functor.hasZeroMorphisms.{u3, max u3 u4, max u1 u3 u4, u2} C _inst_1 D _inst_2 (CategoryTheory.Preadditive.preadditiveHasZeroMorphisms.{max u1 u3 u4, u2} D _inst_2 (CategoryTheory.Abelian.toPreadditive.{max u1 u3 u4, u2} D _inst_2 _inst_3))) (CategoryTheory.Abelian.FunctorCategory.coimageObjIso._proof_1.{u4, u3, u2, u1} C _inst_1 D _inst_2 _inst_3) (CategoryTheory.Abelian.FunctorCategory.coimageObjIso._proof_2.{u4, u3, u2, u1} C _inst_1 D _inst_2 _inst_3) F G α) X) (CategoryTheory.Abelian.coimage.{max u1 u3 u4, u2} D _inst_2 (CategoryTheory.Preadditive.preadditiveHasZeroMorphisms.{max u1 u3 u4, u2} D _inst_2 (CategoryTheory.Abelian.toPreadditive.{max u1 u3 u4, u2} D _inst_2 _inst_3)) (CategoryTheory.Abelian.hasKernels.{max u1 u3 u4, u2} D _inst_2 _inst_3) (CategoryTheory.Abelian.hasCokernels.{max u1 u3 u4, u2} D _inst_2 _inst_3) (CategoryTheory.Functor.obj.{u3, max u1 u3 u4, max u3 u4, u2} C _inst_1 D _inst_2 F X) (CategoryTheory.Functor.obj.{u3, max u1 u3 u4, max u3 u4, u2} C _inst_1 D _inst_2 G X) (CategoryTheory.NatTrans.app.{u3, max u1 u3 u4, max u3 u4, u2} C _inst_1 D _inst_2 F G α X))
+but is expected to have type
+ forall {C : Type.{u4}} [_inst_1 : CategoryTheory.Category.{u3, u4} C] {D : Type.{u2}} [_inst_2 : CategoryTheory.Category.{u1, u2} D] [_inst_3 : CategoryTheory.Abelian.{u1, u2} D _inst_2] {F : CategoryTheory.Functor.{u3, u1, u4, u2} C _inst_1 D _inst_2} {G : CategoryTheory.Functor.{u3, u1, u4, u2} C _inst_1 D _inst_2} (α : Quiver.Hom.{max (succ u4) (succ u1), max (max (max u4 u3) u2) u1} (CategoryTheory.Functor.{u3, u1, u4, u2} C _inst_1 D _inst_2) (CategoryTheory.CategoryStruct.toQuiver.{max u4 u1, max (max (max u4 u3) u2) u1} (CategoryTheory.Functor.{u3, u1, u4, u2} C _inst_1 D _inst_2) (CategoryTheory.Category.toCategoryStruct.{max u4 u1, max (max (max u4 u3) u2) u1} (CategoryTheory.Functor.{u3, u1, u4, u2} C _inst_1 D _inst_2) (CategoryTheory.Functor.category.{u3, u1, u4, u2} C _inst_1 D _inst_2))) F G) (X : C), CategoryTheory.Iso.{u1, u2} D _inst_2 (Prefunctor.obj.{succ u3, succ u1, u4, u2} C (CategoryTheory.CategoryStruct.toQuiver.{u3, u4} C (CategoryTheory.Category.toCategoryStruct.{u3, u4} C _inst_1)) D (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} D (CategoryTheory.Category.toCategoryStruct.{u1, u2} D _inst_2)) (CategoryTheory.Functor.toPrefunctor.{u3, u1, u4, u2} C _inst_1 D _inst_2 (CategoryTheory.Abelian.coimage.{max u4 u1, max (max (max u4 u3) u2) u1} (CategoryTheory.Functor.{u3, u1, u4, u2} C _inst_1 D _inst_2) (CategoryTheory.Functor.category.{u3, u1, u4, u2} C _inst_1 D _inst_2) (CategoryTheory.Limits.instHasZeroMorphismsFunctorCategory.{u3, u4, u1, u2} C _inst_1 D _inst_2 (CategoryTheory.Preadditive.preadditiveHasZeroMorphisms.{u1, u2} D _inst_2 (CategoryTheory.Abelian.toPreadditive.{u1, u2} D _inst_2 _inst_3))) (CategoryTheory.Limits.hasKernels_of_hasEqualizers.{max u4 u1, max (max (max u4 u3) u2) u1} (CategoryTheory.Functor.{u3, u1, u4, u2} C _inst_1 D _inst_2) (CategoryTheory.Functor.category.{u3, u1, u4, u2} C _inst_1 D _inst_2) (CategoryTheory.Limits.instHasZeroMorphismsFunctorCategory.{u3, u4, u1, u2} C _inst_1 D _inst_2 (CategoryTheory.Preadditive.preadditiveHasZeroMorphisms.{u1, u2} D _inst_2 (CategoryTheory.Abelian.toPreadditive.{u1, u2} D _inst_2 _inst_3))) (CategoryTheory.Limits.functorCategoryHasLimitsOfShape.{0, u3, 0, u4, u1, u2} D _inst_2 CategoryTheory.Limits.WalkingParallelPair CategoryTheory.Limits.walkingParallelPairHomCategory C _inst_1 (CategoryTheory.Abelian.hasEqualizers.{u1, u2} D _inst_2 _inst_3))) (CategoryTheory.Limits.hasCokernels_of_hasCoequalizers.{max u4 u1, max (max (max u4 u3) u2) u1} (CategoryTheory.Functor.{u3, u1, u4, u2} C _inst_1 D _inst_2) (CategoryTheory.Functor.category.{u3, u1, u4, u2} C _inst_1 D _inst_2) (CategoryTheory.Limits.instHasZeroMorphismsFunctorCategory.{u3, u4, u1, u2} C _inst_1 D _inst_2 (CategoryTheory.Preadditive.preadditiveHasZeroMorphisms.{u1, u2} D _inst_2 (CategoryTheory.Abelian.toPreadditive.{u1, u2} D _inst_2 _inst_3))) (CategoryTheory.Limits.functorCategoryHasColimitsOfShape.{0, u3, 0, u4, u1, u2} D _inst_2 CategoryTheory.Limits.WalkingParallelPair CategoryTheory.Limits.walkingParallelPairHomCategory C _inst_1 (CategoryTheory.Abelian.hasCoequalizers.{u1, u2} D _inst_2 _inst_3))) F G α)) X) (CategoryTheory.Abelian.coimage.{u1, u2} D _inst_2 (CategoryTheory.Preadditive.preadditiveHasZeroMorphisms.{u1, u2} D _inst_2 (CategoryTheory.Abelian.toPreadditive.{u1, u2} D _inst_2 _inst_3)) (CategoryTheory.Abelian.has_kernels.{u1, u2} D _inst_2 _inst_3) (CategoryTheory.Abelian.has_cokernels.{u1, u2} D _inst_2 _inst_3) (Prefunctor.obj.{succ u3, succ u1, u4, u2} C (CategoryTheory.CategoryStruct.toQuiver.{u3, u4} C (CategoryTheory.Category.toCategoryStruct.{u3, u4} C _inst_1)) D (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} D (CategoryTheory.Category.toCategoryStruct.{u1, u2} D _inst_2)) (CategoryTheory.Functor.toPrefunctor.{u3, u1, u4, u2} C _inst_1 D _inst_2 F) X) (Prefunctor.obj.{succ u3, succ u1, u4, u2} C (CategoryTheory.CategoryStruct.toQuiver.{u3, u4} C (CategoryTheory.Category.toCategoryStruct.{u3, u4} C _inst_1)) D (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} D (CategoryTheory.Category.toCategoryStruct.{u1, u2} D _inst_2)) (CategoryTheory.Functor.toPrefunctor.{u3, u1, u4, u2} C _inst_1 D _inst_2 G) X) (CategoryTheory.NatTrans.app.{u3, u1, u4, u2} C _inst_1 D _inst_2 F G α X))
+Case conversion may be inaccurate. Consider using '#align category_theory.abelian.functor_category.coimage_obj_iso CategoryTheory.Abelian.FunctorCategory.coimageObjIsoₓ'. -/
/-- The abelian coimage in a functor category can be calculated componentwise. -/
@[simps]
def coimageObjIso : (Abelian.coimage α).obj X ≅ Abelian.coimage (α.app X) :=
@@ -50,6 +56,12 @@ def coimageObjIso : (Abelian.coimage α).obj X ≅ Abelian.coimage (α.app X) :=
exact (kernel_comparison_comp_ι _ ((evaluation C D).obj X)).symm)
#align category_theory.abelian.functor_category.coimage_obj_iso CategoryTheory.Abelian.FunctorCategory.coimageObjIso
+/- warning: category_theory.abelian.functor_category.image_obj_iso -> CategoryTheory.Abelian.FunctorCategory.imageObjIso is a dubious translation:
+lean 3 declaration is
+ forall {C : Type.{max u3 u4}} [_inst_1 : CategoryTheory.Category.{u3, max u3 u4} C] {D : Type.{u2}} [_inst_2 : CategoryTheory.Category.{max u1 u3 u4, u2} D] [_inst_3 : CategoryTheory.Abelian.{max u1 u3 u4, u2} D _inst_2] {F : CategoryTheory.Functor.{u3, max u1 u3 u4, max u3 u4, u2} C _inst_1 D _inst_2} {G : CategoryTheory.Functor.{u3, max u1 u3 u4, max u3 u4, u2} C _inst_1 D _inst_2} (α : Quiver.Hom.{succ (max u1 u3 u4), max u3 (max u1 u3 u4) (max u3 u4) u2} (CategoryTheory.Functor.{u3, max u1 u3 u4, max u3 u4, u2} C _inst_1 D _inst_2) (CategoryTheory.CategoryStruct.toQuiver.{max u1 u3 u4, max u3 (max u1 u3 u4) (max u3 u4) u2} (CategoryTheory.Functor.{u3, max u1 u3 u4, max u3 u4, u2} C _inst_1 D _inst_2) (CategoryTheory.Category.toCategoryStruct.{max u1 u3 u4, max u3 (max u1 u3 u4) (max u3 u4) u2} (CategoryTheory.Functor.{u3, max u1 u3 u4, max u3 u4, u2} C _inst_1 D _inst_2) (CategoryTheory.Functor.category.{u3, max u1 u3 u4, max u3 u4, u2} C _inst_1 D _inst_2))) F G) (X : C), CategoryTheory.Iso.{max u1 u3 u4, u2} D _inst_2 (CategoryTheory.Functor.obj.{u3, max u1 u3 u4, max u3 u4, u2} C _inst_1 D _inst_2 (CategoryTheory.Abelian.image.{max u1 u3 u4, max u3 (max u1 u3 u4) (max u3 u4) u2} (CategoryTheory.Functor.{u3, max u1 u3 u4, max u3 u4, u2} C _inst_1 D _inst_2) (CategoryTheory.Functor.category.{u3, max u1 u3 u4, max u3 u4, u2} C _inst_1 D _inst_2) (CategoryTheory.Limits.CategoryTheory.Functor.hasZeroMorphisms.{u3, max u3 u4, max u1 u3 u4, u2} C _inst_1 D _inst_2 (CategoryTheory.Preadditive.preadditiveHasZeroMorphisms.{max u1 u3 u4, u2} D _inst_2 (CategoryTheory.Abelian.toPreadditive.{max u1 u3 u4, u2} D _inst_2 _inst_3))) (CategoryTheory.Abelian.FunctorCategory.imageObjIso._proof_1.{u4, u3, u2, u1} C _inst_1 D _inst_2 _inst_3) (CategoryTheory.Abelian.FunctorCategory.imageObjIso._proof_2.{u4, u3, u2, u1} C _inst_1 D _inst_2 _inst_3) F G α) X) (CategoryTheory.Abelian.image.{max u1 u3 u4, u2} D _inst_2 (CategoryTheory.Preadditive.preadditiveHasZeroMorphisms.{max u1 u3 u4, u2} D _inst_2 (CategoryTheory.Abelian.toPreadditive.{max u1 u3 u4, u2} D _inst_2 _inst_3)) (CategoryTheory.Abelian.hasKernels.{max u1 u3 u4, u2} D _inst_2 _inst_3) (CategoryTheory.Abelian.hasCokernels.{max u1 u3 u4, u2} D _inst_2 _inst_3) (CategoryTheory.Functor.obj.{u3, max u1 u3 u4, max u3 u4, u2} C _inst_1 D _inst_2 F X) (CategoryTheory.Functor.obj.{u3, max u1 u3 u4, max u3 u4, u2} C _inst_1 D _inst_2 G X) (CategoryTheory.NatTrans.app.{u3, max u1 u3 u4, max u3 u4, u2} C _inst_1 D _inst_2 F G α X))
+but is expected to have type
+ forall {C : Type.{u4}} [_inst_1 : CategoryTheory.Category.{u3, u4} C] {D : Type.{u2}} [_inst_2 : CategoryTheory.Category.{u1, u2} D] [_inst_3 : CategoryTheory.Abelian.{u1, u2} D _inst_2] {F : CategoryTheory.Functor.{u3, u1, u4, u2} C _inst_1 D _inst_2} {G : CategoryTheory.Functor.{u3, u1, u4, u2} C _inst_1 D _inst_2} (α : Quiver.Hom.{max (succ u4) (succ u1), max (max (max u4 u3) u2) u1} (CategoryTheory.Functor.{u3, u1, u4, u2} C _inst_1 D _inst_2) (CategoryTheory.CategoryStruct.toQuiver.{max u4 u1, max (max (max u4 u3) u2) u1} (CategoryTheory.Functor.{u3, u1, u4, u2} C _inst_1 D _inst_2) (CategoryTheory.Category.toCategoryStruct.{max u4 u1, max (max (max u4 u3) u2) u1} (CategoryTheory.Functor.{u3, u1, u4, u2} C _inst_1 D _inst_2) (CategoryTheory.Functor.category.{u3, u1, u4, u2} C _inst_1 D _inst_2))) F G) (X : C), CategoryTheory.Iso.{u1, u2} D _inst_2 (Prefunctor.obj.{succ u3, succ u1, u4, u2} C (CategoryTheory.CategoryStruct.toQuiver.{u3, u4} C (CategoryTheory.Category.toCategoryStruct.{u3, u4} C _inst_1)) D (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} D (CategoryTheory.Category.toCategoryStruct.{u1, u2} D _inst_2)) (CategoryTheory.Functor.toPrefunctor.{u3, u1, u4, u2} C _inst_1 D _inst_2 (CategoryTheory.Abelian.image.{max u4 u1, max (max (max u4 u3) u2) u1} (CategoryTheory.Functor.{u3, u1, u4, u2} C _inst_1 D _inst_2) (CategoryTheory.Functor.category.{u3, u1, u4, u2} C _inst_1 D _inst_2) (CategoryTheory.Limits.instHasZeroMorphismsFunctorCategory.{u3, u4, u1, u2} C _inst_1 D _inst_2 (CategoryTheory.Preadditive.preadditiveHasZeroMorphisms.{u1, u2} D _inst_2 (CategoryTheory.Abelian.toPreadditive.{u1, u2} D _inst_2 _inst_3))) (CategoryTheory.Limits.hasKernels_of_hasEqualizers.{max u4 u1, max (max (max u4 u3) u2) u1} (CategoryTheory.Functor.{u3, u1, u4, u2} C _inst_1 D _inst_2) (CategoryTheory.Functor.category.{u3, u1, u4, u2} C _inst_1 D _inst_2) (CategoryTheory.Limits.instHasZeroMorphismsFunctorCategory.{u3, u4, u1, u2} C _inst_1 D _inst_2 (CategoryTheory.Preadditive.preadditiveHasZeroMorphisms.{u1, u2} D _inst_2 (CategoryTheory.Abelian.toPreadditive.{u1, u2} D _inst_2 _inst_3))) (CategoryTheory.Limits.functorCategoryHasLimitsOfShape.{0, u3, 0, u4, u1, u2} D _inst_2 CategoryTheory.Limits.WalkingParallelPair CategoryTheory.Limits.walkingParallelPairHomCategory C _inst_1 (CategoryTheory.Abelian.hasEqualizers.{u1, u2} D _inst_2 _inst_3))) (CategoryTheory.Limits.hasCokernels_of_hasCoequalizers.{max u4 u1, max (max (max u4 u3) u2) u1} (CategoryTheory.Functor.{u3, u1, u4, u2} C _inst_1 D _inst_2) (CategoryTheory.Functor.category.{u3, u1, u4, u2} C _inst_1 D _inst_2) (CategoryTheory.Limits.instHasZeroMorphismsFunctorCategory.{u3, u4, u1, u2} C _inst_1 D _inst_2 (CategoryTheory.Preadditive.preadditiveHasZeroMorphisms.{u1, u2} D _inst_2 (CategoryTheory.Abelian.toPreadditive.{u1, u2} D _inst_2 _inst_3))) (CategoryTheory.Limits.functorCategoryHasColimitsOfShape.{0, u3, 0, u4, u1, u2} D _inst_2 CategoryTheory.Limits.WalkingParallelPair CategoryTheory.Limits.walkingParallelPairHomCategory C _inst_1 (CategoryTheory.Abelian.hasCoequalizers.{u1, u2} D _inst_2 _inst_3))) F G α)) X) (CategoryTheory.Abelian.image.{u1, u2} D _inst_2 (CategoryTheory.Preadditive.preadditiveHasZeroMorphisms.{u1, u2} D _inst_2 (CategoryTheory.Abelian.toPreadditive.{u1, u2} D _inst_2 _inst_3)) (CategoryTheory.Abelian.has_kernels.{u1, u2} D _inst_2 _inst_3) (CategoryTheory.Abelian.has_cokernels.{u1, u2} D _inst_2 _inst_3) (Prefunctor.obj.{succ u3, succ u1, u4, u2} C (CategoryTheory.CategoryStruct.toQuiver.{u3, u4} C (CategoryTheory.Category.toCategoryStruct.{u3, u4} C _inst_1)) D (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} D (CategoryTheory.Category.toCategoryStruct.{u1, u2} D _inst_2)) (CategoryTheory.Functor.toPrefunctor.{u3, u1, u4, u2} C _inst_1 D _inst_2 F) X) (Prefunctor.obj.{succ u3, succ u1, u4, u2} C (CategoryTheory.CategoryStruct.toQuiver.{u3, u4} C (CategoryTheory.Category.toCategoryStruct.{u3, u4} C _inst_1)) D (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} D (CategoryTheory.Category.toCategoryStruct.{u1, u2} D _inst_2)) (CategoryTheory.Functor.toPrefunctor.{u3, u1, u4, u2} C _inst_1 D _inst_2 G) X) (CategoryTheory.NatTrans.app.{u3, u1, u4, u2} C _inst_1 D _inst_2 F G α X))
+Case conversion may be inaccurate. Consider using '#align category_theory.abelian.functor_category.image_obj_iso CategoryTheory.Abelian.FunctorCategory.imageObjIsoₓ'. -/
/-- The abelian image in a functor category can be calculated componentwise. -/
@[simps]
def imageObjIso : (Abelian.image α).obj X ≅ Abelian.image (α.app X) :=
@@ -63,6 +75,12 @@ def imageObjIso : (Abelian.image α).obj X ≅ Abelian.image (α.app X) :=
exact (π_comp_cokernel_comparison _ ((evaluation C D).obj X)).symm)
#align category_theory.abelian.functor_category.image_obj_iso CategoryTheory.Abelian.FunctorCategory.imageObjIso
+/- warning: category_theory.abelian.functor_category.coimage_image_comparison_app -> CategoryTheory.Abelian.FunctorCategory.coimageImageComparison_app is a dubious translation:
+lean 3 declaration is
+ forall {C : Type.{max u3 u4}} [_inst_1 : CategoryTheory.Category.{u3, max u3 u4} C] {D : Type.{u2}} [_inst_2 : CategoryTheory.Category.{max u1 u3 u4, u2} D] [_inst_3 : CategoryTheory.Abelian.{max u1 u3 u4, u2} D _inst_2] {F : CategoryTheory.Functor.{u3, max u1 u3 u4, max u3 u4, u2} C _inst_1 D _inst_2} {G : CategoryTheory.Functor.{u3, max u1 u3 u4, max u3 u4, u2} C _inst_1 D _inst_2} (α : Quiver.Hom.{succ (max u1 u3 u4), max u3 (max u1 u3 u4) (max u3 u4) u2} (CategoryTheory.Functor.{u3, max u1 u3 u4, max u3 u4, u2} C _inst_1 D _inst_2) (CategoryTheory.CategoryStruct.toQuiver.{max u1 u3 u4, max u3 (max u1 u3 u4) (max u3 u4) u2} (CategoryTheory.Functor.{u3, max u1 u3 u4, max u3 u4, u2} C _inst_1 D _inst_2) (CategoryTheory.Category.toCategoryStruct.{max u1 u3 u4, max u3 (max u1 u3 u4) (max u3 u4) u2} (CategoryTheory.Functor.{u3, max u1 u3 u4, max u3 u4, u2} C _inst_1 D _inst_2) (CategoryTheory.Functor.category.{u3, max u1 u3 u4, max u3 u4, u2} C _inst_1 D _inst_2))) F G) (X : C), Eq.{succ (max u1 u3 u4)} (Quiver.Hom.{succ (max u1 u3 u4), u2} D (CategoryTheory.CategoryStruct.toQuiver.{max u1 u3 u4, u2} D (CategoryTheory.Category.toCategoryStruct.{max u1 u3 u4, u2} D _inst_2)) (CategoryTheory.Abelian.coimage.{max u1 u3 u4, u2} D _inst_2 (CategoryTheory.Preadditive.preadditiveHasZeroMorphisms.{max u1 u3 u4, u2} D _inst_2 (CategoryTheory.Abelian.toPreadditive.{max u1 u3 u4, u2} D _inst_2 _inst_3)) (CategoryTheory.Abelian.hasKernels.{max u1 u3 u4, u2} D _inst_2 _inst_3) (CategoryTheory.Abelian.hasCokernels.{max u1 u3 u4, u2} D _inst_2 _inst_3) (CategoryTheory.Functor.obj.{u3, max u1 u3 u4, max u3 u4, u2} C _inst_1 D _inst_2 F X) (CategoryTheory.Functor.obj.{u3, max u1 u3 u4, max u3 u4, u2} C _inst_1 D _inst_2 G X) (CategoryTheory.NatTrans.app.{u3, max u1 u3 u4, max u3 u4, u2} C _inst_1 D _inst_2 F G α X)) (CategoryTheory.Abelian.image.{max u1 u3 u4, u2} D _inst_2 (CategoryTheory.Preadditive.preadditiveHasZeroMorphisms.{max u1 u3 u4, u2} D _inst_2 (CategoryTheory.Abelian.toPreadditive.{max u1 u3 u4, u2} D _inst_2 _inst_3)) (CategoryTheory.Abelian.hasKernels.{max u1 u3 u4, u2} D _inst_2 _inst_3) (CategoryTheory.Abelian.hasCokernels.{max u1 u3 u4, u2} D _inst_2 _inst_3) (CategoryTheory.Functor.obj.{u3, max u1 u3 u4, max u3 u4, u2} C _inst_1 D _inst_2 F X) (CategoryTheory.Functor.obj.{u3, max u1 u3 u4, max u3 u4, u2} C _inst_1 D _inst_2 G X) (CategoryTheory.NatTrans.app.{u3, max u1 u3 u4, max u3 u4, u2} C _inst_1 D _inst_2 F G α X))) (CategoryTheory.Abelian.coimageImageComparison.{max u1 u3 u4, u2} D _inst_2 (CategoryTheory.Preadditive.preadditiveHasZeroMorphisms.{max u1 u3 u4, u2} D _inst_2 (CategoryTheory.Abelian.toPreadditive.{max u1 u3 u4, u2} D _inst_2 _inst_3)) (CategoryTheory.Abelian.hasKernels.{max u1 u3 u4, u2} D _inst_2 _inst_3) (CategoryTheory.Abelian.hasCokernels.{max u1 u3 u4, u2} D _inst_2 _inst_3) (CategoryTheory.Functor.obj.{u3, max u1 u3 u4, max u3 u4, u2} C _inst_1 D _inst_2 F X) (CategoryTheory.Functor.obj.{u3, max u1 u3 u4, max u3 u4, u2} C _inst_1 D _inst_2 G X) (CategoryTheory.NatTrans.app.{u3, max u1 u3 u4, max u3 u4, u2} C _inst_1 D _inst_2 F G α X)) (CategoryTheory.CategoryStruct.comp.{max u1 u3 u4, u2} D (CategoryTheory.Category.toCategoryStruct.{max u1 u3 u4, u2} D _inst_2) (CategoryTheory.Abelian.coimage.{max u1 u3 u4, u2} D _inst_2 (CategoryTheory.Preadditive.preadditiveHasZeroMorphisms.{max u1 u3 u4, u2} D _inst_2 (CategoryTheory.Abelian.toPreadditive.{max u1 u3 u4, u2} D _inst_2 _inst_3)) (CategoryTheory.Abelian.hasKernels.{max u1 u3 u4, u2} D _inst_2 _inst_3) (CategoryTheory.Abelian.hasCokernels.{max u1 u3 u4, u2} D _inst_2 _inst_3) (CategoryTheory.Functor.obj.{u3, max u1 u3 u4, max u3 u4, u2} C _inst_1 D _inst_2 F X) (CategoryTheory.Functor.obj.{u3, max u1 u3 u4, max u3 u4, u2} C _inst_1 D _inst_2 G X) (CategoryTheory.NatTrans.app.{u3, max u1 u3 u4, max u3 u4, u2} C _inst_1 D _inst_2 F G α X)) (CategoryTheory.Functor.obj.{u3, max u1 u3 u4, max u3 u4, u2} C _inst_1 D _inst_2 (CategoryTheory.Abelian.coimage.{max u1 u3 u4, max u3 (max u1 u3 u4) (max u3 u4) u2} (CategoryTheory.Functor.{u3, max u1 u3 u4, max u3 u4, u2} C _inst_1 D _inst_2) (CategoryTheory.Functor.category.{u3, max u1 u3 u4, max u3 u4, u2} C _inst_1 D _inst_2) (CategoryTheory.Limits.CategoryTheory.Functor.hasZeroMorphisms.{u3, max u3 u4, max u1 u3 u4, u2} C _inst_1 D _inst_2 (CategoryTheory.Preadditive.preadditiveHasZeroMorphisms.{max u1 u3 u4, u2} D _inst_2 (CategoryTheory.Abelian.toPreadditive.{max u1 u3 u4, u2} D _inst_2 _inst_3))) (CategoryTheory.Abelian.FunctorCategory.coimageObjIso._proof_1.{u4, u3, u2, u1} C _inst_1 D _inst_2 _inst_3) (CategoryTheory.Abelian.FunctorCategory.coimageObjIso._proof_2.{u4, u3, u2, u1} C _inst_1 D _inst_2 _inst_3) F G α) X) (CategoryTheory.Abelian.image.{max u1 u3 u4, u2} D _inst_2 (CategoryTheory.Preadditive.preadditiveHasZeroMorphisms.{max u1 u3 u4, u2} D _inst_2 (CategoryTheory.Abelian.toPreadditive.{max u1 u3 u4, u2} D _inst_2 _inst_3)) (CategoryTheory.Abelian.hasKernels.{max u1 u3 u4, u2} D _inst_2 _inst_3) (CategoryTheory.Abelian.hasCokernels.{max u1 u3 u4, u2} D _inst_2 _inst_3) (CategoryTheory.Functor.obj.{u3, max u1 u3 u4, max u3 u4, u2} C _inst_1 D _inst_2 F X) (CategoryTheory.Functor.obj.{u3, max u1 u3 u4, max u3 u4, u2} C _inst_1 D _inst_2 G X) (CategoryTheory.NatTrans.app.{u3, max u1 u3 u4, max u3 u4, u2} C _inst_1 D _inst_2 F G α X)) (CategoryTheory.Iso.inv.{max u1 u3 u4, u2} D _inst_2 (CategoryTheory.Functor.obj.{u3, max u1 u3 u4, max u3 u4, u2} C _inst_1 D _inst_2 (CategoryTheory.Abelian.coimage.{max u1 u3 u4, max u3 (max u1 u3 u4) (max u3 u4) u2} (CategoryTheory.Functor.{u3, max u1 u3 u4, max u3 u4, u2} C _inst_1 D _inst_2) (CategoryTheory.Functor.category.{u3, max u1 u3 u4, max u3 u4, u2} C _inst_1 D _inst_2) (CategoryTheory.Limits.CategoryTheory.Functor.hasZeroMorphisms.{u3, max u3 u4, max u1 u3 u4, u2} C _inst_1 D _inst_2 (CategoryTheory.Preadditive.preadditiveHasZeroMorphisms.{max u1 u3 u4, u2} D _inst_2 (CategoryTheory.Abelian.toPreadditive.{max u1 u3 u4, u2} D _inst_2 _inst_3))) (CategoryTheory.Abelian.FunctorCategory.coimageObjIso._proof_1.{u4, u3, u2, u1} C _inst_1 D _inst_2 _inst_3) (CategoryTheory.Abelian.FunctorCategory.coimageObjIso._proof_2.{u4, u3, u2, u1} C _inst_1 D _inst_2 _inst_3) F G α) X) (CategoryTheory.Abelian.coimage.{max u1 u3 u4, u2} D _inst_2 (CategoryTheory.Preadditive.preadditiveHasZeroMorphisms.{max u1 u3 u4, u2} D _inst_2 (CategoryTheory.Abelian.toPreadditive.{max u1 u3 u4, u2} D _inst_2 _inst_3)) (CategoryTheory.Abelian.hasKernels.{max u1 u3 u4, u2} D _inst_2 _inst_3) (CategoryTheory.Abelian.hasCokernels.{max u1 u3 u4, u2} D _inst_2 _inst_3) (CategoryTheory.Functor.obj.{u3, max u1 u3 u4, max u3 u4, u2} C _inst_1 D _inst_2 F X) (CategoryTheory.Functor.obj.{u3, max u1 u3 u4, max u3 u4, u2} C _inst_1 D _inst_2 G X) (CategoryTheory.NatTrans.app.{u3, max u1 u3 u4, max u3 u4, u2} C _inst_1 D _inst_2 F G α X)) (CategoryTheory.Abelian.FunctorCategory.coimageObjIso.{u1, u2, u3, u4} C _inst_1 D _inst_2 _inst_3 F G α X)) (CategoryTheory.CategoryStruct.comp.{max u1 u3 u4, u2} D (CategoryTheory.Category.toCategoryStruct.{max u1 u3 u4, u2} D _inst_2) (CategoryTheory.Functor.obj.{u3, max u1 u3 u4, max u3 u4, u2} C _inst_1 D _inst_2 (CategoryTheory.Abelian.coimage.{max u1 u3 u4, max u3 (max u1 u3 u4) (max u3 u4) u2} (CategoryTheory.Functor.{u3, max u1 u3 u4, max u3 u4, u2} C _inst_1 D _inst_2) (CategoryTheory.Functor.category.{u3, max u1 u3 u4, max u3 u4, u2} C _inst_1 D _inst_2) (CategoryTheory.Limits.CategoryTheory.Functor.hasZeroMorphisms.{u3, max u3 u4, max u1 u3 u4, u2} C _inst_1 D _inst_2 (CategoryTheory.Preadditive.preadditiveHasZeroMorphisms.{max u1 u3 u4, u2} D _inst_2 (CategoryTheory.Abelian.toPreadditive.{max u1 u3 u4, u2} D _inst_2 _inst_3))) (CategoryTheory.Abelian.FunctorCategory.coimageObjIso._proof_1.{u4, u3, u2, u1} C _inst_1 D _inst_2 _inst_3) (CategoryTheory.Abelian.FunctorCategory.coimageObjIso._proof_2.{u4, u3, u2, u1} C _inst_1 D _inst_2 _inst_3) F G α) X) (CategoryTheory.Functor.obj.{u3, max u1 u3 u4, max u3 u4, u2} C _inst_1 D _inst_2 (CategoryTheory.Abelian.image.{max u1 u3 u4, max u3 (max u1 u3 u4) (max u3 u4) u2} (CategoryTheory.Functor.{u3, max u1 u3 u4, max u3 u4, u2} C _inst_1 D _inst_2) (CategoryTheory.Functor.category.{u3, max u1 u3 u4, max u3 u4, u2} C _inst_1 D _inst_2) (CategoryTheory.Limits.CategoryTheory.Functor.hasZeroMorphisms.{u3, max u3 u4, max u1 u3 u4, u2} C _inst_1 D _inst_2 (CategoryTheory.Preadditive.preadditiveHasZeroMorphisms.{max u1 u3 u4, u2} D _inst_2 (CategoryTheory.Abelian.toPreadditive.{max u1 u3 u4, u2} D _inst_2 _inst_3))) (CategoryTheory.Abelian.FunctorCategory.coimageObjIso._proof_1.{u4, u3, u2, u1} C _inst_1 D _inst_2 _inst_3) (CategoryTheory.Abelian.FunctorCategory.coimageObjIso._proof_2.{u4, u3, u2, u1} C _inst_1 D _inst_2 _inst_3) F G α) X) (CategoryTheory.Abelian.image.{max u1 u3 u4, u2} D _inst_2 (CategoryTheory.Preadditive.preadditiveHasZeroMorphisms.{max u1 u3 u4, u2} D _inst_2 (CategoryTheory.Abelian.toPreadditive.{max u1 u3 u4, u2} D _inst_2 _inst_3)) (CategoryTheory.Abelian.hasKernels.{max u1 u3 u4, u2} D _inst_2 _inst_3) (CategoryTheory.Abelian.hasCokernels.{max u1 u3 u4, u2} D _inst_2 _inst_3) (CategoryTheory.Functor.obj.{u3, max u1 u3 u4, max u3 u4, u2} C _inst_1 D _inst_2 F X) (CategoryTheory.Functor.obj.{u3, max u1 u3 u4, max u3 u4, u2} C _inst_1 D _inst_2 G X) (CategoryTheory.NatTrans.app.{u3, max u1 u3 u4, max u3 u4, u2} C _inst_1 D _inst_2 F G α X)) (CategoryTheory.NatTrans.app.{u3, max u1 u3 u4, max u3 u4, u2} C _inst_1 D _inst_2 (CategoryTheory.Abelian.coimage.{max u1 u3 u4, max u3 (max u1 u3 u4) (max u3 u4) u2} (CategoryTheory.Functor.{u3, max u1 u3 u4, max u3 u4, u2} C _inst_1 D _inst_2) (CategoryTheory.Functor.category.{u3, max u1 u3 u4, max u3 u4, u2} C _inst_1 D _inst_2) (CategoryTheory.Limits.CategoryTheory.Functor.hasZeroMorphisms.{u3, max u3 u4, max u1 u3 u4, u2} C _inst_1 D _inst_2 (CategoryTheory.Preadditive.preadditiveHasZeroMorphisms.{max u1 u3 u4, u2} D _inst_2 (CategoryTheory.Abelian.toPreadditive.{max u1 u3 u4, u2} D _inst_2 _inst_3))) (CategoryTheory.Abelian.FunctorCategory.coimageObjIso._proof_1.{u4, u3, u2, u1} C _inst_1 D _inst_2 _inst_3) (CategoryTheory.Abelian.FunctorCategory.coimageObjIso._proof_2.{u4, u3, u2, u1} C _inst_1 D _inst_2 _inst_3) F G α) (CategoryTheory.Abelian.image.{max u1 u3 u4, max u3 (max u1 u3 u4) (max u3 u4) u2} (CategoryTheory.Functor.{u3, max u1 u3 u4, max u3 u4, u2} C _inst_1 D _inst_2) (CategoryTheory.Functor.category.{u3, max u1 u3 u4, max u3 u4, u2} C _inst_1 D _inst_2) (CategoryTheory.Limits.CategoryTheory.Functor.hasZeroMorphisms.{u3, max u3 u4, max u1 u3 u4, u2} C _inst_1 D _inst_2 (CategoryTheory.Preadditive.preadditiveHasZeroMorphisms.{max u1 u3 u4, u2} D _inst_2 (CategoryTheory.Abelian.toPreadditive.{max u1 u3 u4, u2} D _inst_2 _inst_3))) (CategoryTheory.Abelian.FunctorCategory.coimageObjIso._proof_1.{u4, u3, u2, u1} C _inst_1 D _inst_2 _inst_3) (CategoryTheory.Abelian.FunctorCategory.coimageObjIso._proof_2.{u4, u3, u2, u1} C _inst_1 D _inst_2 _inst_3) F G α) (CategoryTheory.Abelian.coimageImageComparison.{max u1 u3 u4, max u3 (max u1 u3 u4) (max u3 u4) u2} (CategoryTheory.Functor.{u3, max u1 u3 u4, max u3 u4, u2} C _inst_1 D _inst_2) (CategoryTheory.Functor.category.{u3, max u1 u3 u4, max u3 u4, u2} C _inst_1 D _inst_2) (CategoryTheory.Limits.CategoryTheory.Functor.hasZeroMorphisms.{u3, max u3 u4, max u1 u3 u4, u2} C _inst_1 D _inst_2 (CategoryTheory.Preadditive.preadditiveHasZeroMorphisms.{max u1 u3 u4, u2} D _inst_2 (CategoryTheory.Abelian.toPreadditive.{max u1 u3 u4, u2} D _inst_2 _inst_3))) (CategoryTheory.Abelian.FunctorCategory.coimageObjIso._proof_1.{u4, u3, u2, u1} C _inst_1 D _inst_2 _inst_3) (CategoryTheory.Abelian.FunctorCategory.coimageObjIso._proof_2.{u4, u3, u2, u1} C _inst_1 D _inst_2 _inst_3) F G α) X) (CategoryTheory.Iso.hom.{max u1 u3 u4, u2} D _inst_2 (CategoryTheory.Functor.obj.{u3, max u1 u3 u4, max u3 u4, u2} C _inst_1 D _inst_2 (CategoryTheory.Abelian.image.{max u1 u3 u4, max u3 (max u1 u3 u4) (max u3 u4) u2} (CategoryTheory.Functor.{u3, max u1 u3 u4, max u3 u4, u2} C _inst_1 D _inst_2) (CategoryTheory.Functor.category.{u3, max u1 u3 u4, max u3 u4, u2} C _inst_1 D _inst_2) (CategoryTheory.Limits.CategoryTheory.Functor.hasZeroMorphisms.{u3, max u3 u4, max u1 u3 u4, u2} C _inst_1 D _inst_2 (CategoryTheory.Preadditive.preadditiveHasZeroMorphisms.{max u1 u3 u4, u2} D _inst_2 (CategoryTheory.Abelian.toPreadditive.{max u1 u3 u4, u2} D _inst_2 _inst_3))) (CategoryTheory.Abelian.FunctorCategory.imageObjIso._proof_1.{u4, u3, u2, u1} C _inst_1 D _inst_2 _inst_3) (CategoryTheory.Abelian.FunctorCategory.imageObjIso._proof_2.{u4, u3, u2, u1} C _inst_1 D _inst_2 _inst_3) F G α) X) (CategoryTheory.Abelian.image.{max u1 u3 u4, u2} D _inst_2 (CategoryTheory.Preadditive.preadditiveHasZeroMorphisms.{max u1 u3 u4, u2} D _inst_2 (CategoryTheory.Abelian.toPreadditive.{max u1 u3 u4, u2} D _inst_2 _inst_3)) (CategoryTheory.Abelian.hasKernels.{max u1 u3 u4, u2} D _inst_2 _inst_3) (CategoryTheory.Abelian.hasCokernels.{max u1 u3 u4, u2} D _inst_2 _inst_3) (CategoryTheory.Functor.obj.{u3, max u1 u3 u4, max u3 u4, u2} C _inst_1 D _inst_2 F X) (CategoryTheory.Functor.obj.{u3, max u1 u3 u4, max u3 u4, u2} C _inst_1 D _inst_2 G X) (CategoryTheory.NatTrans.app.{u3, max u1 u3 u4, max u3 u4, u2} C _inst_1 D _inst_2 F G α X)) (CategoryTheory.Abelian.FunctorCategory.imageObjIso.{u1, u2, u3, u4} C _inst_1 D _inst_2 _inst_3 F G α X))))
+but is expected to have type
+ forall {C : Type.{u4}} [_inst_1 : CategoryTheory.Category.{u3, u4} C] {D : Type.{u2}} [_inst_2 : CategoryTheory.Category.{u1, u2} D] [_inst_3 : CategoryTheory.Abelian.{u1, u2} D _inst_2] {F : CategoryTheory.Functor.{u3, u1, u4, u2} C _inst_1 D _inst_2} {G : CategoryTheory.Functor.{u3, u1, u4, u2} C _inst_1 D _inst_2} (α : Quiver.Hom.{max (succ u4) (succ u1), max (max (max u4 u3) u2) u1} (CategoryTheory.Functor.{u3, u1, u4, u2} C _inst_1 D _inst_2) (CategoryTheory.CategoryStruct.toQuiver.{max u4 u1, max (max (max u4 u3) u2) u1} (CategoryTheory.Functor.{u3, u1, u4, u2} C _inst_1 D _inst_2) (CategoryTheory.Category.toCategoryStruct.{max u4 u1, max (max (max u4 u3) u2) u1} (CategoryTheory.Functor.{u3, u1, u4, u2} C _inst_1 D _inst_2) (CategoryTheory.Functor.category.{u3, u1, u4, u2} C _inst_1 D _inst_2))) F G) (X : C), Eq.{succ u1} (Quiver.Hom.{succ u1, u2} D (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} D (CategoryTheory.Category.toCategoryStruct.{u1, u2} D _inst_2)) (CategoryTheory.Abelian.coimage.{u1, u2} D _inst_2 (CategoryTheory.Preadditive.preadditiveHasZeroMorphisms.{u1, u2} D _inst_2 (CategoryTheory.Abelian.toPreadditive.{u1, u2} D _inst_2 _inst_3)) (CategoryTheory.Abelian.has_kernels.{u1, u2} D _inst_2 _inst_3) (CategoryTheory.Abelian.has_cokernels.{u1, u2} D _inst_2 _inst_3) (Prefunctor.obj.{succ u3, succ u1, u4, u2} C (CategoryTheory.CategoryStruct.toQuiver.{u3, u4} C (CategoryTheory.Category.toCategoryStruct.{u3, u4} C _inst_1)) D (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} D (CategoryTheory.Category.toCategoryStruct.{u1, u2} D _inst_2)) (CategoryTheory.Functor.toPrefunctor.{u3, u1, u4, u2} C _inst_1 D _inst_2 F) X) (Prefunctor.obj.{succ u3, succ u1, u4, u2} C (CategoryTheory.CategoryStruct.toQuiver.{u3, u4} C (CategoryTheory.Category.toCategoryStruct.{u3, u4} C _inst_1)) D (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} D (CategoryTheory.Category.toCategoryStruct.{u1, u2} D _inst_2)) (CategoryTheory.Functor.toPrefunctor.{u3, u1, u4, u2} C _inst_1 D _inst_2 G) X) (CategoryTheory.NatTrans.app.{u3, u1, u4, u2} C _inst_1 D _inst_2 F G α X)) (CategoryTheory.Abelian.image.{u1, u2} D _inst_2 (CategoryTheory.Preadditive.preadditiveHasZeroMorphisms.{u1, u2} D _inst_2 (CategoryTheory.Abelian.toPreadditive.{u1, u2} D _inst_2 _inst_3)) (CategoryTheory.Abelian.has_kernels.{u1, u2} D _inst_2 _inst_3) (CategoryTheory.Abelian.has_cokernels.{u1, u2} D _inst_2 _inst_3) (Prefunctor.obj.{succ u3, succ u1, u4, u2} C (CategoryTheory.CategoryStruct.toQuiver.{u3, u4} C (CategoryTheory.Category.toCategoryStruct.{u3, u4} C _inst_1)) D (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} D (CategoryTheory.Category.toCategoryStruct.{u1, u2} D _inst_2)) (CategoryTheory.Functor.toPrefunctor.{u3, u1, u4, u2} C _inst_1 D _inst_2 F) X) (Prefunctor.obj.{succ u3, succ u1, u4, u2} C (CategoryTheory.CategoryStruct.toQuiver.{u3, u4} C (CategoryTheory.Category.toCategoryStruct.{u3, u4} C _inst_1)) D (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} D (CategoryTheory.Category.toCategoryStruct.{u1, u2} D _inst_2)) (CategoryTheory.Functor.toPrefunctor.{u3, u1, u4, u2} C _inst_1 D _inst_2 G) X) (CategoryTheory.NatTrans.app.{u3, u1, u4, u2} C _inst_1 D _inst_2 F G α X))) (CategoryTheory.Abelian.coimageImageComparison.{u1, u2} D _inst_2 (CategoryTheory.Preadditive.preadditiveHasZeroMorphisms.{u1, u2} D _inst_2 (CategoryTheory.Abelian.toPreadditive.{u1, u2} D _inst_2 _inst_3)) (CategoryTheory.Abelian.has_kernels.{u1, u2} D _inst_2 _inst_3) (CategoryTheory.Abelian.has_cokernels.{u1, u2} D _inst_2 _inst_3) (Prefunctor.obj.{succ u3, succ u1, u4, u2} C (CategoryTheory.CategoryStruct.toQuiver.{u3, u4} C (CategoryTheory.Category.toCategoryStruct.{u3, u4} C _inst_1)) D (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} D (CategoryTheory.Category.toCategoryStruct.{u1, u2} D _inst_2)) (CategoryTheory.Functor.toPrefunctor.{u3, u1, u4, u2} C _inst_1 D _inst_2 F) X) (Prefunctor.obj.{succ u3, succ u1, u4, u2} C (CategoryTheory.CategoryStruct.toQuiver.{u3, u4} C (CategoryTheory.Category.toCategoryStruct.{u3, u4} C _inst_1)) D (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} D (CategoryTheory.Category.toCategoryStruct.{u1, u2} D _inst_2)) (CategoryTheory.Functor.toPrefunctor.{u3, u1, u4, u2} C _inst_1 D _inst_2 G) X) (CategoryTheory.NatTrans.app.{u3, u1, u4, u2} C _inst_1 D _inst_2 F G α X)) (CategoryTheory.CategoryStruct.comp.{u1, u2} D (CategoryTheory.Category.toCategoryStruct.{u1, u2} D _inst_2) (CategoryTheory.Abelian.coimage.{u1, u2} D _inst_2 (CategoryTheory.Preadditive.preadditiveHasZeroMorphisms.{u1, u2} D _inst_2 (CategoryTheory.Abelian.toPreadditive.{u1, u2} D _inst_2 _inst_3)) (CategoryTheory.Abelian.has_kernels.{u1, u2} D _inst_2 _inst_3) (CategoryTheory.Abelian.has_cokernels.{u1, u2} D _inst_2 _inst_3) (Prefunctor.obj.{succ u3, succ u1, u4, u2} C (CategoryTheory.CategoryStruct.toQuiver.{u3, u4} C (CategoryTheory.Category.toCategoryStruct.{u3, u4} C _inst_1)) D (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} D (CategoryTheory.Category.toCategoryStruct.{u1, u2} D _inst_2)) (CategoryTheory.Functor.toPrefunctor.{u3, u1, u4, u2} C _inst_1 D _inst_2 F) X) (Prefunctor.obj.{succ u3, succ u1, u4, u2} C (CategoryTheory.CategoryStruct.toQuiver.{u3, u4} C (CategoryTheory.Category.toCategoryStruct.{u3, u4} C _inst_1)) D (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} D (CategoryTheory.Category.toCategoryStruct.{u1, u2} D _inst_2)) (CategoryTheory.Functor.toPrefunctor.{u3, u1, u4, u2} C _inst_1 D _inst_2 G) X) (CategoryTheory.NatTrans.app.{u3, u1, u4, u2} C _inst_1 D _inst_2 F G α X)) (Prefunctor.obj.{succ u3, succ u1, u4, u2} C (CategoryTheory.CategoryStruct.toQuiver.{u3, u4} C (CategoryTheory.Category.toCategoryStruct.{u3, u4} C _inst_1)) D (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} D (CategoryTheory.Category.toCategoryStruct.{u1, u2} D _inst_2)) (CategoryTheory.Functor.toPrefunctor.{u3, u1, u4, u2} C _inst_1 D _inst_2 (CategoryTheory.Abelian.coimage.{max u4 u1, max (max (max u4 u3) u2) u1} (CategoryTheory.Functor.{u3, u1, u4, u2} C _inst_1 D _inst_2) (CategoryTheory.Functor.category.{u3, u1, u4, u2} C _inst_1 D _inst_2) (CategoryTheory.Limits.instHasZeroMorphismsFunctorCategory.{u3, u4, u1, u2} C _inst_1 D _inst_2 (CategoryTheory.Preadditive.preadditiveHasZeroMorphisms.{u1, u2} D _inst_2 (CategoryTheory.Abelian.toPreadditive.{u1, u2} D _inst_2 _inst_3))) (CategoryTheory.Limits.hasKernels_of_hasEqualizers.{max u4 u1, max (max (max u4 u3) u2) u1} (CategoryTheory.Functor.{u3, u1, u4, u2} C _inst_1 D _inst_2) (CategoryTheory.Functor.category.{u3, u1, u4, u2} C _inst_1 D _inst_2) (CategoryTheory.Limits.instHasZeroMorphismsFunctorCategory.{u3, u4, u1, u2} C _inst_1 D _inst_2 (CategoryTheory.Preadditive.preadditiveHasZeroMorphisms.{u1, u2} D _inst_2 (CategoryTheory.Abelian.toPreadditive.{u1, u2} D _inst_2 _inst_3))) (CategoryTheory.Limits.functorCategoryHasLimitsOfShape.{0, u3, 0, u4, u1, u2} D _inst_2 CategoryTheory.Limits.WalkingParallelPair CategoryTheory.Limits.walkingParallelPairHomCategory C _inst_1 (CategoryTheory.Abelian.hasEqualizers.{u1, u2} D _inst_2 _inst_3))) (CategoryTheory.Limits.hasCokernels_of_hasCoequalizers.{max u4 u1, max (max (max u4 u3) u2) u1} (CategoryTheory.Functor.{u3, u1, u4, u2} C _inst_1 D _inst_2) (CategoryTheory.Functor.category.{u3, u1, u4, u2} C _inst_1 D _inst_2) (CategoryTheory.Limits.instHasZeroMorphismsFunctorCategory.{u3, u4, u1, u2} C _inst_1 D _inst_2 (CategoryTheory.Preadditive.preadditiveHasZeroMorphisms.{u1, u2} D _inst_2 (CategoryTheory.Abelian.toPreadditive.{u1, u2} D _inst_2 _inst_3))) (CategoryTheory.Limits.functorCategoryHasColimitsOfShape.{0, u3, 0, u4, u1, u2} D _inst_2 CategoryTheory.Limits.WalkingParallelPair CategoryTheory.Limits.walkingParallelPairHomCategory C _inst_1 (CategoryTheory.Abelian.hasCoequalizers.{u1, u2} D _inst_2 _inst_3))) F G α)) X) (CategoryTheory.Abelian.image.{u1, u2} D _inst_2 (CategoryTheory.Preadditive.preadditiveHasZeroMorphisms.{u1, u2} D _inst_2 (CategoryTheory.Abelian.toPreadditive.{u1, u2} D _inst_2 _inst_3)) (CategoryTheory.Abelian.has_kernels.{u1, u2} D _inst_2 _inst_3) (CategoryTheory.Abelian.has_cokernels.{u1, u2} D _inst_2 _inst_3) (Prefunctor.obj.{succ u3, succ u1, u4, u2} C (CategoryTheory.CategoryStruct.toQuiver.{u3, u4} C (CategoryTheory.Category.toCategoryStruct.{u3, u4} C _inst_1)) D (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} D (CategoryTheory.Category.toCategoryStruct.{u1, u2} D _inst_2)) (CategoryTheory.Functor.toPrefunctor.{u3, u1, u4, u2} C _inst_1 D _inst_2 F) X) (Prefunctor.obj.{succ u3, succ u1, u4, u2} C (CategoryTheory.CategoryStruct.toQuiver.{u3, u4} C (CategoryTheory.Category.toCategoryStruct.{u3, u4} C _inst_1)) D (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} D (CategoryTheory.Category.toCategoryStruct.{u1, u2} D _inst_2)) (CategoryTheory.Functor.toPrefunctor.{u3, u1, u4, u2} C _inst_1 D _inst_2 G) X) (CategoryTheory.NatTrans.app.{u3, u1, u4, u2} C _inst_1 D _inst_2 F G α X)) (CategoryTheory.Iso.inv.{u1, u2} D _inst_2 (Prefunctor.obj.{succ u3, succ u1, u4, u2} C (CategoryTheory.CategoryStruct.toQuiver.{u3, u4} C (CategoryTheory.Category.toCategoryStruct.{u3, u4} C _inst_1)) D (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} D (CategoryTheory.Category.toCategoryStruct.{u1, u2} D _inst_2)) (CategoryTheory.Functor.toPrefunctor.{u3, u1, u4, u2} C _inst_1 D _inst_2 (CategoryTheory.Abelian.coimage.{max u4 u1, max (max (max u4 u3) u2) u1} (CategoryTheory.Functor.{u3, u1, u4, u2} C _inst_1 D _inst_2) (CategoryTheory.Functor.category.{u3, u1, u4, u2} C _inst_1 D _inst_2) (CategoryTheory.Limits.instHasZeroMorphismsFunctorCategory.{u3, u4, u1, u2} C _inst_1 D _inst_2 (CategoryTheory.Preadditive.preadditiveHasZeroMorphisms.{u1, u2} D _inst_2 (CategoryTheory.Abelian.toPreadditive.{u1, u2} D _inst_2 _inst_3))) (CategoryTheory.Limits.hasKernels_of_hasEqualizers.{max u4 u1, max (max (max u4 u3) u2) u1} (CategoryTheory.Functor.{u3, u1, u4, u2} C _inst_1 D _inst_2) (CategoryTheory.Functor.category.{u3, u1, u4, u2} C _inst_1 D _inst_2) (CategoryTheory.Limits.instHasZeroMorphismsFunctorCategory.{u3, u4, u1, u2} C _inst_1 D _inst_2 (CategoryTheory.Preadditive.preadditiveHasZeroMorphisms.{u1, u2} D _inst_2 (CategoryTheory.Abelian.toPreadditive.{u1, u2} D _inst_2 _inst_3))) (CategoryTheory.Limits.functorCategoryHasLimitsOfShape.{0, u3, 0, u4, u1, u2} D _inst_2 CategoryTheory.Limits.WalkingParallelPair CategoryTheory.Limits.walkingParallelPairHomCategory C _inst_1 (CategoryTheory.Abelian.hasEqualizers.{u1, u2} D _inst_2 _inst_3))) (CategoryTheory.Limits.hasCokernels_of_hasCoequalizers.{max u4 u1, max (max (max u4 u3) u2) u1} (CategoryTheory.Functor.{u3, u1, u4, u2} C _inst_1 D _inst_2) (CategoryTheory.Functor.category.{u3, u1, u4, u2} C _inst_1 D _inst_2) (CategoryTheory.Limits.instHasZeroMorphismsFunctorCategory.{u3, u4, u1, u2} C _inst_1 D _inst_2 (CategoryTheory.Preadditive.preadditiveHasZeroMorphisms.{u1, u2} D _inst_2 (CategoryTheory.Abelian.toPreadditive.{u1, u2} D _inst_2 _inst_3))) (CategoryTheory.Limits.functorCategoryHasColimitsOfShape.{0, u3, 0, u4, u1, u2} D _inst_2 CategoryTheory.Limits.WalkingParallelPair CategoryTheory.Limits.walkingParallelPairHomCategory C _inst_1 (CategoryTheory.Abelian.hasCoequalizers.{u1, u2} D _inst_2 _inst_3))) F G α)) X) (CategoryTheory.Abelian.coimage.{u1, u2} D _inst_2 (CategoryTheory.Preadditive.preadditiveHasZeroMorphisms.{u1, u2} D _inst_2 (CategoryTheory.Abelian.toPreadditive.{u1, u2} D _inst_2 _inst_3)) (CategoryTheory.Abelian.has_kernels.{u1, u2} D _inst_2 _inst_3) (CategoryTheory.Abelian.has_cokernels.{u1, u2} D _inst_2 _inst_3) (Prefunctor.obj.{succ u3, succ u1, u4, u2} C (CategoryTheory.CategoryStruct.toQuiver.{u3, u4} C (CategoryTheory.Category.toCategoryStruct.{u3, u4} C _inst_1)) D (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} D (CategoryTheory.Category.toCategoryStruct.{u1, u2} D _inst_2)) (CategoryTheory.Functor.toPrefunctor.{u3, u1, u4, u2} C _inst_1 D _inst_2 F) X) (Prefunctor.obj.{succ u3, succ u1, u4, u2} C (CategoryTheory.CategoryStruct.toQuiver.{u3, u4} C (CategoryTheory.Category.toCategoryStruct.{u3, u4} C _inst_1)) D (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} D (CategoryTheory.Category.toCategoryStruct.{u1, u2} D _inst_2)) (CategoryTheory.Functor.toPrefunctor.{u3, u1, u4, u2} C _inst_1 D _inst_2 G) X) (CategoryTheory.NatTrans.app.{u3, u1, u4, u2} C _inst_1 D _inst_2 F G α X)) (CategoryTheory.Abelian.FunctorCategory.coimageObjIso.{u1, u2, u3, u4} C _inst_1 D _inst_2 _inst_3 F G α X)) (CategoryTheory.CategoryStruct.comp.{u1, u2} D (CategoryTheory.Category.toCategoryStruct.{u1, u2} D _inst_2) (Prefunctor.obj.{succ u3, succ u1, u4, u2} C (CategoryTheory.CategoryStruct.toQuiver.{u3, u4} C (CategoryTheory.Category.toCategoryStruct.{u3, u4} C _inst_1)) D (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} D (CategoryTheory.Category.toCategoryStruct.{u1, u2} D _inst_2)) (CategoryTheory.Functor.toPrefunctor.{u3, u1, u4, u2} C _inst_1 D _inst_2 (CategoryTheory.Abelian.coimage.{max u4 u1, max (max (max u4 u3) u2) u1} (CategoryTheory.Functor.{u3, u1, u4, u2} C _inst_1 D _inst_2) (CategoryTheory.Functor.category.{u3, u1, u4, u2} C _inst_1 D _inst_2) (CategoryTheory.Limits.instHasZeroMorphismsFunctorCategory.{u3, u4, u1, u2} C _inst_1 D _inst_2 (CategoryTheory.Preadditive.preadditiveHasZeroMorphisms.{u1, u2} D _inst_2 (CategoryTheory.Abelian.toPreadditive.{u1, u2} D _inst_2 _inst_3))) (CategoryTheory.Limits.hasKernels_of_hasEqualizers.{max u4 u1, max (max (max u4 u3) u2) u1} (CategoryTheory.Functor.{u3, u1, u4, u2} C _inst_1 D _inst_2) (CategoryTheory.Functor.category.{u3, u1, u4, u2} C _inst_1 D _inst_2) (CategoryTheory.Limits.instHasZeroMorphismsFunctorCategory.{u3, u4, u1, u2} C _inst_1 D _inst_2 (CategoryTheory.Preadditive.preadditiveHasZeroMorphisms.{u1, u2} D _inst_2 (CategoryTheory.Abelian.toPreadditive.{u1, u2} D _inst_2 _inst_3))) (CategoryTheory.Limits.functorCategoryHasLimitsOfShape.{0, u3, 0, u4, u1, u2} D _inst_2 CategoryTheory.Limits.WalkingParallelPair CategoryTheory.Limits.walkingParallelPairHomCategory C _inst_1 (CategoryTheory.Abelian.hasEqualizers.{u1, u2} D _inst_2 _inst_3))) (CategoryTheory.Limits.hasCokernels_of_hasCoequalizers.{max u4 u1, max (max (max u4 u3) u2) u1} (CategoryTheory.Functor.{u3, u1, u4, u2} C _inst_1 D _inst_2) (CategoryTheory.Functor.category.{u3, u1, u4, u2} C _inst_1 D _inst_2) (CategoryTheory.Limits.instHasZeroMorphismsFunctorCategory.{u3, u4, u1, u2} C _inst_1 D _inst_2 (CategoryTheory.Preadditive.preadditiveHasZeroMorphisms.{u1, u2} D _inst_2 (CategoryTheory.Abelian.toPreadditive.{u1, u2} D _inst_2 _inst_3))) (CategoryTheory.Limits.functorCategoryHasColimitsOfShape.{0, u3, 0, u4, u1, u2} D _inst_2 CategoryTheory.Limits.WalkingParallelPair CategoryTheory.Limits.walkingParallelPairHomCategory C _inst_1 (CategoryTheory.Abelian.hasCoequalizers.{u1, u2} D _inst_2 _inst_3))) F G α)) X) (Prefunctor.obj.{succ u3, succ u1, u4, u2} C (CategoryTheory.CategoryStruct.toQuiver.{u3, u4} C (CategoryTheory.Category.toCategoryStruct.{u3, u4} C _inst_1)) D (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} D (CategoryTheory.Category.toCategoryStruct.{u1, u2} D _inst_2)) (CategoryTheory.Functor.toPrefunctor.{u3, u1, u4, u2} C _inst_1 D _inst_2 (CategoryTheory.Abelian.image.{max u4 u1, max (max (max u4 u3) u2) u1} (CategoryTheory.Functor.{u3, u1, u4, u2} C _inst_1 D _inst_2) (CategoryTheory.Functor.category.{u3, u1, u4, u2} C _inst_1 D _inst_2) (CategoryTheory.Limits.instHasZeroMorphismsFunctorCategory.{u3, u4, u1, u2} C _inst_1 D _inst_2 (CategoryTheory.Preadditive.preadditiveHasZeroMorphisms.{u1, u2} D _inst_2 (CategoryTheory.Abelian.toPreadditive.{u1, u2} D _inst_2 _inst_3))) (CategoryTheory.Limits.hasKernels_of_hasEqualizers.{max u4 u1, max (max (max u4 u3) u2) u1} (CategoryTheory.Functor.{u3, u1, u4, u2} C _inst_1 D _inst_2) (CategoryTheory.Functor.category.{u3, u1, u4, u2} C _inst_1 D _inst_2) (CategoryTheory.Limits.instHasZeroMorphismsFunctorCategory.{u3, u4, u1, u2} C _inst_1 D _inst_2 (CategoryTheory.Preadditive.preadditiveHasZeroMorphisms.{u1, u2} D _inst_2 (CategoryTheory.Abelian.toPreadditive.{u1, u2} D _inst_2 _inst_3))) (CategoryTheory.Limits.functorCategoryHasLimitsOfShape.{0, u3, 0, u4, u1, u2} D _inst_2 CategoryTheory.Limits.WalkingParallelPair CategoryTheory.Limits.walkingParallelPairHomCategory C _inst_1 (CategoryTheory.Abelian.hasEqualizers.{u1, u2} D _inst_2 _inst_3))) (CategoryTheory.Limits.hasCokernels_of_hasCoequalizers.{max u4 u1, max (max (max u4 u3) u2) u1} (CategoryTheory.Functor.{u3, u1, u4, u2} C _inst_1 D _inst_2) (CategoryTheory.Functor.category.{u3, u1, u4, u2} C _inst_1 D _inst_2) (CategoryTheory.Limits.instHasZeroMorphismsFunctorCategory.{u3, u4, u1, u2} C _inst_1 D _inst_2 (CategoryTheory.Preadditive.preadditiveHasZeroMorphisms.{u1, u2} D _inst_2 (CategoryTheory.Abelian.toPreadditive.{u1, u2} D _inst_2 _inst_3))) (CategoryTheory.Limits.functorCategoryHasColimitsOfShape.{0, u3, 0, u4, u1, u2} D _inst_2 CategoryTheory.Limits.WalkingParallelPair CategoryTheory.Limits.walkingParallelPairHomCategory C _inst_1 (CategoryTheory.Abelian.hasCoequalizers.{u1, u2} D _inst_2 _inst_3))) F G α)) X) (CategoryTheory.Abelian.image.{u1, u2} D _inst_2 (CategoryTheory.Preadditive.preadditiveHasZeroMorphisms.{u1, u2} D _inst_2 (CategoryTheory.Abelian.toPreadditive.{u1, u2} D _inst_2 _inst_3)) (CategoryTheory.Abelian.has_kernels.{u1, u2} D _inst_2 _inst_3) (CategoryTheory.Abelian.has_cokernels.{u1, u2} D _inst_2 _inst_3) (Prefunctor.obj.{succ u3, succ u1, u4, u2} C (CategoryTheory.CategoryStruct.toQuiver.{u3, u4} C (CategoryTheory.Category.toCategoryStruct.{u3, u4} C _inst_1)) D (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} D (CategoryTheory.Category.toCategoryStruct.{u1, u2} D _inst_2)) (CategoryTheory.Functor.toPrefunctor.{u3, u1, u4, u2} C _inst_1 D _inst_2 F) X) (Prefunctor.obj.{succ u3, succ u1, u4, u2} C (CategoryTheory.CategoryStruct.toQuiver.{u3, u4} C (CategoryTheory.Category.toCategoryStruct.{u3, u4} C _inst_1)) D (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} D (CategoryTheory.Category.toCategoryStruct.{u1, u2} D _inst_2)) (CategoryTheory.Functor.toPrefunctor.{u3, u1, u4, u2} C _inst_1 D _inst_2 G) X) (CategoryTheory.NatTrans.app.{u3, u1, u4, u2} C _inst_1 D _inst_2 F G α X)) (CategoryTheory.NatTrans.app.{u3, u1, u4, u2} C _inst_1 D _inst_2 (CategoryTheory.Abelian.coimage.{max u4 u1, max (max (max u4 u3) u2) u1} (CategoryTheory.Functor.{u3, u1, u4, u2} C _inst_1 D _inst_2) (CategoryTheory.Functor.category.{u3, u1, u4, u2} C _inst_1 D _inst_2) (CategoryTheory.Limits.instHasZeroMorphismsFunctorCategory.{u3, u4, u1, u2} C _inst_1 D _inst_2 (CategoryTheory.Preadditive.preadditiveHasZeroMorphisms.{u1, u2} D _inst_2 (CategoryTheory.Abelian.toPreadditive.{u1, u2} D _inst_2 _inst_3))) (CategoryTheory.Limits.hasKernels_of_hasEqualizers.{max u4 u1, max (max (max u4 u3) u2) u1} (CategoryTheory.Functor.{u3, u1, u4, u2} C _inst_1 D _inst_2) (CategoryTheory.Functor.category.{u3, u1, u4, u2} C _inst_1 D _inst_2) (CategoryTheory.Limits.instHasZeroMorphismsFunctorCategory.{u3, u4, u1, u2} C _inst_1 D _inst_2 (CategoryTheory.Preadditive.preadditiveHasZeroMorphisms.{u1, u2} D _inst_2 (CategoryTheory.Abelian.toPreadditive.{u1, u2} D _inst_2 _inst_3))) (CategoryTheory.Limits.functorCategoryHasLimitsOfShape.{0, u3, 0, u4, u1, u2} D _inst_2 CategoryTheory.Limits.WalkingParallelPair CategoryTheory.Limits.walkingParallelPairHomCategory C _inst_1 (CategoryTheory.Abelian.hasEqualizers.{u1, u2} D _inst_2 _inst_3))) (CategoryTheory.Limits.hasCokernels_of_hasCoequalizers.{max u4 u1, max (max (max u4 u3) u2) u1} (CategoryTheory.Functor.{u3, u1, u4, u2} C _inst_1 D _inst_2) (CategoryTheory.Functor.category.{u3, u1, u4, u2} C _inst_1 D _inst_2) (CategoryTheory.Limits.instHasZeroMorphismsFunctorCategory.{u3, u4, u1, u2} C _inst_1 D _inst_2 (CategoryTheory.Preadditive.preadditiveHasZeroMorphisms.{u1, u2} D _inst_2 (CategoryTheory.Abelian.toPreadditive.{u1, u2} D _inst_2 _inst_3))) (CategoryTheory.Limits.functorCategoryHasColimitsOfShape.{0, u3, 0, u4, u1, u2} D _inst_2 CategoryTheory.Limits.WalkingParallelPair CategoryTheory.Limits.walkingParallelPairHomCategory C _inst_1 (CategoryTheory.Abelian.hasCoequalizers.{u1, u2} D _inst_2 _inst_3))) F G α) (CategoryTheory.Abelian.image.{max u4 u1, max (max (max u4 u3) u2) u1} (CategoryTheory.Functor.{u3, u1, u4, u2} C _inst_1 D _inst_2) (CategoryTheory.Functor.category.{u3, u1, u4, u2} C _inst_1 D _inst_2) (CategoryTheory.Limits.instHasZeroMorphismsFunctorCategory.{u3, u4, u1, u2} C _inst_1 D _inst_2 (CategoryTheory.Preadditive.preadditiveHasZeroMorphisms.{u1, u2} D _inst_2 (CategoryTheory.Abelian.toPreadditive.{u1, u2} D _inst_2 _inst_3))) (CategoryTheory.Limits.hasKernels_of_hasEqualizers.{max u4 u1, max (max (max u4 u3) u2) u1} (CategoryTheory.Functor.{u3, u1, u4, u2} C _inst_1 D _inst_2) (CategoryTheory.Functor.category.{u3, u1, u4, u2} C _inst_1 D _inst_2) (CategoryTheory.Limits.instHasZeroMorphismsFunctorCategory.{u3, u4, u1, u2} C _inst_1 D _inst_2 (CategoryTheory.Preadditive.preadditiveHasZeroMorphisms.{u1, u2} D _inst_2 (CategoryTheory.Abelian.toPreadditive.{u1, u2} D _inst_2 _inst_3))) (CategoryTheory.Limits.functorCategoryHasLimitsOfShape.{0, u3, 0, u4, u1, u2} D _inst_2 CategoryTheory.Limits.WalkingParallelPair CategoryTheory.Limits.walkingParallelPairHomCategory C _inst_1 (CategoryTheory.Abelian.hasEqualizers.{u1, u2} D _inst_2 _inst_3))) (CategoryTheory.Limits.hasCokernels_of_hasCoequalizers.{max u4 u1, max (max (max u4 u3) u2) u1} (CategoryTheory.Functor.{u3, u1, u4, u2} C _inst_1 D _inst_2) (CategoryTheory.Functor.category.{u3, u1, u4, u2} C _inst_1 D _inst_2) (CategoryTheory.Limits.instHasZeroMorphismsFunctorCategory.{u3, u4, u1, u2} C _inst_1 D _inst_2 (CategoryTheory.Preadditive.preadditiveHasZeroMorphisms.{u1, u2} D _inst_2 (CategoryTheory.Abelian.toPreadditive.{u1, u2} D _inst_2 _inst_3))) (CategoryTheory.Limits.functorCategoryHasColimitsOfShape.{0, u3, 0, u4, u1, u2} D _inst_2 CategoryTheory.Limits.WalkingParallelPair CategoryTheory.Limits.walkingParallelPairHomCategory C _inst_1 (CategoryTheory.Abelian.hasCoequalizers.{u1, u2} D _inst_2 _inst_3))) F G α) (CategoryTheory.Abelian.coimageImageComparison.{max u4 u1, max (max (max u4 u3) u2) u1} (CategoryTheory.Functor.{u3, u1, u4, u2} C _inst_1 D _inst_2) (CategoryTheory.Functor.category.{u3, u1, u4, u2} C _inst_1 D _inst_2) (CategoryTheory.Limits.instHasZeroMorphismsFunctorCategory.{u3, u4, u1, u2} C _inst_1 D _inst_2 (CategoryTheory.Preadditive.preadditiveHasZeroMorphisms.{u1, u2} D _inst_2 (CategoryTheory.Abelian.toPreadditive.{u1, u2} D _inst_2 _inst_3))) (CategoryTheory.Limits.hasKernels_of_hasEqualizers.{max u4 u1, max (max (max u4 u3) u2) u1} (CategoryTheory.Functor.{u3, u1, u4, u2} C _inst_1 D _inst_2) (CategoryTheory.Functor.category.{u3, u1, u4, u2} C _inst_1 D _inst_2) (CategoryTheory.Limits.instHasZeroMorphismsFunctorCategory.{u3, u4, u1, u2} C _inst_1 D _inst_2 (CategoryTheory.Preadditive.preadditiveHasZeroMorphisms.{u1, u2} D _inst_2 (CategoryTheory.Abelian.toPreadditive.{u1, u2} D _inst_2 _inst_3))) (CategoryTheory.Limits.functorCategoryHasLimitsOfShape.{0, u3, 0, u4, u1, u2} D _inst_2 CategoryTheory.Limits.WalkingParallelPair CategoryTheory.Limits.walkingParallelPairHomCategory C _inst_1 (CategoryTheory.Abelian.hasEqualizers.{u1, u2} D _inst_2 _inst_3))) (CategoryTheory.Limits.hasCokernels_of_hasCoequalizers.{max u4 u1, max (max (max u4 u3) u2) u1} (CategoryTheory.Functor.{u3, u1, u4, u2} C _inst_1 D _inst_2) (CategoryTheory.Functor.category.{u3, u1, u4, u2} C _inst_1 D _inst_2) (CategoryTheory.Limits.instHasZeroMorphismsFunctorCategory.{u3, u4, u1, u2} C _inst_1 D _inst_2 (CategoryTheory.Preadditive.preadditiveHasZeroMorphisms.{u1, u2} D _inst_2 (CategoryTheory.Abelian.toPreadditive.{u1, u2} D _inst_2 _inst_3))) (CategoryTheory.Limits.functorCategoryHasColimitsOfShape.{0, u3, 0, u4, u1, u2} D _inst_2 CategoryTheory.Limits.WalkingParallelPair CategoryTheory.Limits.walkingParallelPairHomCategory C _inst_1 (CategoryTheory.Abelian.hasCoequalizers.{u1, u2} D _inst_2 _inst_3))) F G α) X) (CategoryTheory.Iso.hom.{u1, u2} D _inst_2 (Prefunctor.obj.{succ u3, succ u1, u4, u2} C (CategoryTheory.CategoryStruct.toQuiver.{u3, u4} C (CategoryTheory.Category.toCategoryStruct.{u3, u4} C _inst_1)) D (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} D (CategoryTheory.Category.toCategoryStruct.{u1, u2} D _inst_2)) (CategoryTheory.Functor.toPrefunctor.{u3, u1, u4, u2} C _inst_1 D _inst_2 (CategoryTheory.Abelian.image.{max u4 u1, max (max (max u4 u3) u2) u1} (CategoryTheory.Functor.{u3, u1, u4, u2} C _inst_1 D _inst_2) (CategoryTheory.Functor.category.{u3, u1, u4, u2} C _inst_1 D _inst_2) (CategoryTheory.Limits.instHasZeroMorphismsFunctorCategory.{u3, u4, u1, u2} C _inst_1 D _inst_2 (CategoryTheory.Preadditive.preadditiveHasZeroMorphisms.{u1, u2} D _inst_2 (CategoryTheory.Abelian.toPreadditive.{u1, u2} D _inst_2 _inst_3))) (CategoryTheory.Limits.hasKernels_of_hasEqualizers.{max u4 u1, max (max (max u4 u3) u2) u1} (CategoryTheory.Functor.{u3, u1, u4, u2} C _inst_1 D _inst_2) (CategoryTheory.Functor.category.{u3, u1, u4, u2} C _inst_1 D _inst_2) (CategoryTheory.Limits.instHasZeroMorphismsFunctorCategory.{u3, u4, u1, u2} C _inst_1 D _inst_2 (CategoryTheory.Preadditive.preadditiveHasZeroMorphisms.{u1, u2} D _inst_2 (CategoryTheory.Abelian.toPreadditive.{u1, u2} D _inst_2 _inst_3))) (CategoryTheory.Limits.functorCategoryHasLimitsOfShape.{0, u3, 0, u4, u1, u2} D _inst_2 CategoryTheory.Limits.WalkingParallelPair CategoryTheory.Limits.walkingParallelPairHomCategory C _inst_1 (CategoryTheory.Abelian.hasEqualizers.{u1, u2} D _inst_2 _inst_3))) (CategoryTheory.Limits.hasCokernels_of_hasCoequalizers.{max u4 u1, max (max (max u4 u3) u2) u1} (CategoryTheory.Functor.{u3, u1, u4, u2} C _inst_1 D _inst_2) (CategoryTheory.Functor.category.{u3, u1, u4, u2} C _inst_1 D _inst_2) (CategoryTheory.Limits.instHasZeroMorphismsFunctorCategory.{u3, u4, u1, u2} C _inst_1 D _inst_2 (CategoryTheory.Preadditive.preadditiveHasZeroMorphisms.{u1, u2} D _inst_2 (CategoryTheory.Abelian.toPreadditive.{u1, u2} D _inst_2 _inst_3))) (CategoryTheory.Limits.functorCategoryHasColimitsOfShape.{0, u3, 0, u4, u1, u2} D _inst_2 CategoryTheory.Limits.WalkingParallelPair CategoryTheory.Limits.walkingParallelPairHomCategory C _inst_1 (CategoryTheory.Abelian.hasCoequalizers.{u1, u2} D _inst_2 _inst_3))) F G α)) X) (CategoryTheory.Abelian.image.{u1, u2} D _inst_2 (CategoryTheory.Preadditive.preadditiveHasZeroMorphisms.{u1, u2} D _inst_2 (CategoryTheory.Abelian.toPreadditive.{u1, u2} D _inst_2 _inst_3)) (CategoryTheory.Abelian.has_kernels.{u1, u2} D _inst_2 _inst_3) (CategoryTheory.Abelian.has_cokernels.{u1, u2} D _inst_2 _inst_3) (Prefunctor.obj.{succ u3, succ u1, u4, u2} C (CategoryTheory.CategoryStruct.toQuiver.{u3, u4} C (CategoryTheory.Category.toCategoryStruct.{u3, u4} C _inst_1)) D (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} D (CategoryTheory.Category.toCategoryStruct.{u1, u2} D _inst_2)) (CategoryTheory.Functor.toPrefunctor.{u3, u1, u4, u2} C _inst_1 D _inst_2 F) X) (Prefunctor.obj.{succ u3, succ u1, u4, u2} C (CategoryTheory.CategoryStruct.toQuiver.{u3, u4} C (CategoryTheory.Category.toCategoryStruct.{u3, u4} C _inst_1)) D (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} D (CategoryTheory.Category.toCategoryStruct.{u1, u2} D _inst_2)) (CategoryTheory.Functor.toPrefunctor.{u3, u1, u4, u2} C _inst_1 D _inst_2 G) X) (CategoryTheory.NatTrans.app.{u3, u1, u4, u2} C _inst_1 D _inst_2 F G α X)) (CategoryTheory.Abelian.FunctorCategory.imageObjIso.{u1, u2, u3, u4} C _inst_1 D _inst_2 _inst_3 F G α X))))
+Case conversion may be inaccurate. Consider using '#align category_theory.abelian.functor_category.coimage_image_comparison_app CategoryTheory.Abelian.FunctorCategory.coimageImageComparison_appₓ'. -/
theorem coimageImageComparison_app :
coimageImageComparison (α.app X) =
(coimage_obj_iso α X).inv ≫ (coimageImageComparison α).app X ≫ (image_obj_iso α X).Hom :=
@@ -78,6 +96,12 @@ theorem coimageImageComparison_app :
simp only [coimage_image_factorisation, evaluation_obj_map]
#align category_theory.abelian.functor_category.coimage_image_comparison_app CategoryTheory.Abelian.FunctorCategory.coimageImageComparison_app
+/- warning: category_theory.abelian.functor_category.coimage_image_comparison_app' -> CategoryTheory.Abelian.FunctorCategory.coimageImageComparison_app' is a dubious translation:
+lean 3 declaration is
+ forall {C : Type.{max u3 u4}} [_inst_1 : CategoryTheory.Category.{u3, max u3 u4} C] {D : Type.{u2}} [_inst_2 : CategoryTheory.Category.{max u1 u3 u4, u2} D] [_inst_3 : CategoryTheory.Abelian.{max u1 u3 u4, u2} D _inst_2] {F : CategoryTheory.Functor.{u3, max u1 u3 u4, max u3 u4, u2} C _inst_1 D _inst_2} {G : CategoryTheory.Functor.{u3, max u1 u3 u4, max u3 u4, u2} C _inst_1 D _inst_2} (α : Quiver.Hom.{succ (max u1 u3 u4), max u3 (max u1 u3 u4) (max u3 u4) u2} (CategoryTheory.Functor.{u3, max u1 u3 u4, max u3 u4, u2} C _inst_1 D _inst_2) (CategoryTheory.CategoryStruct.toQuiver.{max u1 u3 u4, max u3 (max u1 u3 u4) (max u3 u4) u2} (CategoryTheory.Functor.{u3, max u1 u3 u4, max u3 u4, u2} C _inst_1 D _inst_2) (CategoryTheory.Category.toCategoryStruct.{max u1 u3 u4, max u3 (max u1 u3 u4) (max u3 u4) u2} (CategoryTheory.Functor.{u3, max u1 u3 u4, max u3 u4, u2} C _inst_1 D _inst_2) (CategoryTheory.Functor.category.{u3, max u1 u3 u4, max u3 u4, u2} C _inst_1 D _inst_2))) F G) (X : C), Eq.{succ (max u1 u3 u4)} (Quiver.Hom.{succ (max u1 u3 u4), u2} D (CategoryTheory.CategoryStruct.toQuiver.{max u1 u3 u4, u2} D (CategoryTheory.Category.toCategoryStruct.{max u1 u3 u4, u2} D _inst_2)) (CategoryTheory.Functor.obj.{u3, max u1 u3 u4, max u3 u4, u2} C _inst_1 D _inst_2 (CategoryTheory.Abelian.coimage.{max u1 u3 u4, max u3 (max u1 u3 u4) (max u3 u4) u2} (CategoryTheory.Functor.{u3, max u1 u3 u4, max u3 u4, u2} C _inst_1 D _inst_2) (CategoryTheory.Functor.category.{u3, max u1 u3 u4, max u3 u4, u2} C _inst_1 D _inst_2) (CategoryTheory.Limits.CategoryTheory.Functor.hasZeroMorphisms.{u3, max u3 u4, max u1 u3 u4, u2} C _inst_1 D _inst_2 (CategoryTheory.Preadditive.preadditiveHasZeroMorphisms.{max u1 u3 u4, u2} D _inst_2 (CategoryTheory.Abelian.toPreadditive.{max u1 u3 u4, u2} D _inst_2 _inst_3))) (CategoryTheory.Abelian.FunctorCategory.coimageObjIso._proof_1.{u4, u3, u2, u1} C _inst_1 D _inst_2 _inst_3) (CategoryTheory.Abelian.FunctorCategory.coimageObjIso._proof_2.{u4, u3, u2, u1} C _inst_1 D _inst_2 _inst_3) F G α) X) (CategoryTheory.Functor.obj.{u3, max u1 u3 u4, max u3 u4, u2} C _inst_1 D _inst_2 (CategoryTheory.Abelian.image.{max u1 u3 u4, max u3 (max u1 u3 u4) (max u3 u4) u2} (CategoryTheory.Functor.{u3, max u1 u3 u4, max u3 u4, u2} C _inst_1 D _inst_2) (CategoryTheory.Functor.category.{u3, max u1 u3 u4, max u3 u4, u2} C _inst_1 D _inst_2) (CategoryTheory.Limits.CategoryTheory.Functor.hasZeroMorphisms.{u3, max u3 u4, max u1 u3 u4, u2} C _inst_1 D _inst_2 (CategoryTheory.Preadditive.preadditiveHasZeroMorphisms.{max u1 u3 u4, u2} D _inst_2 (CategoryTheory.Abelian.toPreadditive.{max u1 u3 u4, u2} D _inst_2 _inst_3))) (CategoryTheory.Abelian.FunctorCategory.coimageObjIso._proof_1.{u4, u3, u2, u1} C _inst_1 D _inst_2 _inst_3) (CategoryTheory.Abelian.FunctorCategory.coimageObjIso._proof_2.{u4, u3, u2, u1} C _inst_1 D _inst_2 _inst_3) F G α) X)) (CategoryTheory.NatTrans.app.{u3, max u1 u3 u4, max u3 u4, u2} C _inst_1 D _inst_2 (CategoryTheory.Abelian.coimage.{max u1 u3 u4, max u3 (max u1 u3 u4) (max u3 u4) u2} (CategoryTheory.Functor.{u3, max u1 u3 u4, max u3 u4, u2} C _inst_1 D _inst_2) (CategoryTheory.Functor.category.{u3, max u1 u3 u4, max u3 u4, u2} C _inst_1 D _inst_2) (CategoryTheory.Limits.CategoryTheory.Functor.hasZeroMorphisms.{u3, max u3 u4, max u1 u3 u4, u2} C _inst_1 D _inst_2 (CategoryTheory.Preadditive.preadditiveHasZeroMorphisms.{max u1 u3 u4, u2} D _inst_2 (CategoryTheory.Abelian.toPreadditive.{max u1 u3 u4, u2} D _inst_2 _inst_3))) (CategoryTheory.Abelian.FunctorCategory.coimageObjIso._proof_1.{u4, u3, u2, u1} C _inst_1 D _inst_2 _inst_3) (CategoryTheory.Abelian.FunctorCategory.coimageObjIso._proof_2.{u4, u3, u2, u1} C _inst_1 D _inst_2 _inst_3) F G α) (CategoryTheory.Abelian.image.{max u1 u3 u4, max u3 (max u1 u3 u4) (max u3 u4) u2} (CategoryTheory.Functor.{u3, max u1 u3 u4, max u3 u4, u2} C _inst_1 D _inst_2) (CategoryTheory.Functor.category.{u3, max u1 u3 u4, max u3 u4, u2} C _inst_1 D _inst_2) (CategoryTheory.Limits.CategoryTheory.Functor.hasZeroMorphisms.{u3, max u3 u4, max u1 u3 u4, u2} C _inst_1 D _inst_2 (CategoryTheory.Preadditive.preadditiveHasZeroMorphisms.{max u1 u3 u4, u2} D _inst_2 (CategoryTheory.Abelian.toPreadditive.{max u1 u3 u4, u2} D _inst_2 _inst_3))) (CategoryTheory.Abelian.FunctorCategory.coimageObjIso._proof_1.{u4, u3, u2, u1} C _inst_1 D _inst_2 _inst_3) (CategoryTheory.Abelian.FunctorCategory.coimageObjIso._proof_2.{u4, u3, u2, u1} C _inst_1 D _inst_2 _inst_3) F G α) (CategoryTheory.Abelian.coimageImageComparison.{max u1 u3 u4, max u3 (max u1 u3 u4) (max u3 u4) u2} (CategoryTheory.Functor.{u3, max u1 u3 u4, max u3 u4, u2} C _inst_1 D _inst_2) (CategoryTheory.Functor.category.{u3, max u1 u3 u4, max u3 u4, u2} C _inst_1 D _inst_2) (CategoryTheory.Limits.CategoryTheory.Functor.hasZeroMorphisms.{u3, max u3 u4, max u1 u3 u4, u2} C _inst_1 D _inst_2 (CategoryTheory.Preadditive.preadditiveHasZeroMorphisms.{max u1 u3 u4, u2} D _inst_2 (CategoryTheory.Abelian.toPreadditive.{max u1 u3 u4, u2} D _inst_2 _inst_3))) (CategoryTheory.Abelian.FunctorCategory.coimageObjIso._proof_1.{u4, u3, u2, u1} C _inst_1 D _inst_2 _inst_3) (CategoryTheory.Abelian.FunctorCategory.coimageObjIso._proof_2.{u4, u3, u2, u1} C _inst_1 D _inst_2 _inst_3) F G α) X) (CategoryTheory.CategoryStruct.comp.{max u1 u3 u4, u2} D (CategoryTheory.Category.toCategoryStruct.{max u1 u3 u4, u2} D _inst_2) (CategoryTheory.Functor.obj.{u3, max u1 u3 u4, max u3 u4, u2} C _inst_1 D _inst_2 (CategoryTheory.Abelian.coimage.{max u1 u3 u4, max u3 (max u1 u3 u4) (max u3 u4) u2} (CategoryTheory.Functor.{u3, max u1 u3 u4, max u3 u4, u2} C _inst_1 D _inst_2) (CategoryTheory.Functor.category.{u3, max u1 u3 u4, max u3 u4, u2} C _inst_1 D _inst_2) (CategoryTheory.Limits.CategoryTheory.Functor.hasZeroMorphisms.{u3, max u3 u4, max u1 u3 u4, u2} C _inst_1 D _inst_2 (CategoryTheory.Preadditive.preadditiveHasZeroMorphisms.{max u1 u3 u4, u2} D _inst_2 (CategoryTheory.Abelian.toPreadditive.{max u1 u3 u4, u2} D _inst_2 _inst_3))) (CategoryTheory.Abelian.FunctorCategory.coimageObjIso._proof_1.{u4, u3, u2, u1} C _inst_1 D _inst_2 _inst_3) (CategoryTheory.Abelian.FunctorCategory.coimageObjIso._proof_2.{u4, u3, u2, u1} C _inst_1 D _inst_2 _inst_3) F G α) X) (CategoryTheory.Abelian.coimage.{max u1 u3 u4, u2} D _inst_2 (CategoryTheory.Preadditive.preadditiveHasZeroMorphisms.{max u1 u3 u4, u2} D _inst_2 (CategoryTheory.Abelian.toPreadditive.{max u1 u3 u4, u2} D _inst_2 _inst_3)) (CategoryTheory.Abelian.hasKernels.{max u1 u3 u4, u2} D _inst_2 _inst_3) (CategoryTheory.Abelian.hasCokernels.{max u1 u3 u4, u2} D _inst_2 _inst_3) (CategoryTheory.Functor.obj.{u3, max u1 u3 u4, max u3 u4, u2} C _inst_1 D _inst_2 F X) (CategoryTheory.Functor.obj.{u3, max u1 u3 u4, max u3 u4, u2} C _inst_1 D _inst_2 G X) (CategoryTheory.NatTrans.app.{u3, max u1 u3 u4, max u3 u4, u2} C _inst_1 D _inst_2 F G α X)) (CategoryTheory.Functor.obj.{u3, max u1 u3 u4, max u3 u4, u2} C _inst_1 D _inst_2 (CategoryTheory.Abelian.image.{max u1 u3 u4, max u3 (max u1 u3 u4) (max u3 u4) u2} (CategoryTheory.Functor.{u3, max u1 u3 u4, max u3 u4, u2} C _inst_1 D _inst_2) (CategoryTheory.Functor.category.{u3, max u1 u3 u4, max u3 u4, u2} C _inst_1 D _inst_2) (CategoryTheory.Limits.CategoryTheory.Functor.hasZeroMorphisms.{u3, max u3 u4, max u1 u3 u4, u2} C _inst_1 D _inst_2 (CategoryTheory.Preadditive.preadditiveHasZeroMorphisms.{max u1 u3 u4, u2} D _inst_2 (CategoryTheory.Abelian.toPreadditive.{max u1 u3 u4, u2} D _inst_2 _inst_3))) (CategoryTheory.Abelian.FunctorCategory.coimageObjIso._proof_1.{u4, u3, u2, u1} C _inst_1 D _inst_2 _inst_3) (CategoryTheory.Abelian.FunctorCategory.coimageObjIso._proof_2.{u4, u3, u2, u1} C _inst_1 D _inst_2 _inst_3) F G α) X) (CategoryTheory.Iso.hom.{max u1 u3 u4, u2} D _inst_2 (CategoryTheory.Functor.obj.{u3, max u1 u3 u4, max u3 u4, u2} C _inst_1 D _inst_2 (CategoryTheory.Abelian.coimage.{max u1 u3 u4, max u3 (max u1 u3 u4) (max u3 u4) u2} (CategoryTheory.Functor.{u3, max u1 u3 u4, max u3 u4, u2} C _inst_1 D _inst_2) (CategoryTheory.Functor.category.{u3, max u1 u3 u4, max u3 u4, u2} C _inst_1 D _inst_2) (CategoryTheory.Limits.CategoryTheory.Functor.hasZeroMorphisms.{u3, max u3 u4, max u1 u3 u4, u2} C _inst_1 D _inst_2 (CategoryTheory.Preadditive.preadditiveHasZeroMorphisms.{max u1 u3 u4, u2} D _inst_2 (CategoryTheory.Abelian.toPreadditive.{max u1 u3 u4, u2} D _inst_2 _inst_3))) (CategoryTheory.Abelian.FunctorCategory.coimageObjIso._proof_1.{u4, u3, u2, u1} C _inst_1 D _inst_2 _inst_3) (CategoryTheory.Abelian.FunctorCategory.coimageObjIso._proof_2.{u4, u3, u2, u1} C _inst_1 D _inst_2 _inst_3) F G α) X) (CategoryTheory.Abelian.coimage.{max u1 u3 u4, u2} D _inst_2 (CategoryTheory.Preadditive.preadditiveHasZeroMorphisms.{max u1 u3 u4, u2} D _inst_2 (CategoryTheory.Abelian.toPreadditive.{max u1 u3 u4, u2} D _inst_2 _inst_3)) (CategoryTheory.Abelian.hasKernels.{max u1 u3 u4, u2} D _inst_2 _inst_3) (CategoryTheory.Abelian.hasCokernels.{max u1 u3 u4, u2} D _inst_2 _inst_3) (CategoryTheory.Functor.obj.{u3, max u1 u3 u4, max u3 u4, u2} C _inst_1 D _inst_2 F X) (CategoryTheory.Functor.obj.{u3, max u1 u3 u4, max u3 u4, u2} C _inst_1 D _inst_2 G X) (CategoryTheory.NatTrans.app.{u3, max u1 u3 u4, max u3 u4, u2} C _inst_1 D _inst_2 F G α X)) (CategoryTheory.Abelian.FunctorCategory.coimageObjIso.{u1, u2, u3, u4} C _inst_1 D _inst_2 _inst_3 F G α X)) (CategoryTheory.CategoryStruct.comp.{max u1 u3 u4, u2} D (CategoryTheory.Category.toCategoryStruct.{max u1 u3 u4, u2} D _inst_2) (CategoryTheory.Abelian.coimage.{max u1 u3 u4, u2} D _inst_2 (CategoryTheory.Preadditive.preadditiveHasZeroMorphisms.{max u1 u3 u4, u2} D _inst_2 (CategoryTheory.Abelian.toPreadditive.{max u1 u3 u4, u2} D _inst_2 _inst_3)) (CategoryTheory.Abelian.hasKernels.{max u1 u3 u4, u2} D _inst_2 _inst_3) (CategoryTheory.Abelian.hasCokernels.{max u1 u3 u4, u2} D _inst_2 _inst_3) (CategoryTheory.Functor.obj.{u3, max u1 u3 u4, max u3 u4, u2} C _inst_1 D _inst_2 F X) (CategoryTheory.Functor.obj.{u3, max u1 u3 u4, max u3 u4, u2} C _inst_1 D _inst_2 G X) (CategoryTheory.NatTrans.app.{u3, max u1 u3 u4, max u3 u4, u2} C _inst_1 D _inst_2 F G α X)) (CategoryTheory.Abelian.image.{max u1 u3 u4, u2} D _inst_2 (CategoryTheory.Preadditive.preadditiveHasZeroMorphisms.{max u1 u3 u4, u2} D _inst_2 (CategoryTheory.Abelian.toPreadditive.{max u1 u3 u4, u2} D _inst_2 _inst_3)) (CategoryTheory.Abelian.hasKernels.{max u1 u3 u4, u2} D _inst_2 _inst_3) (CategoryTheory.Abelian.hasCokernels.{max u1 u3 u4, u2} D _inst_2 _inst_3) (CategoryTheory.Functor.obj.{u3, max u1 u3 u4, max u3 u4, u2} C _inst_1 D _inst_2 F X) (CategoryTheory.Functor.obj.{u3, max u1 u3 u4, max u3 u4, u2} C _inst_1 D _inst_2 G X) (CategoryTheory.NatTrans.app.{u3, max u1 u3 u4, max u3 u4, u2} C _inst_1 D _inst_2 F G α X)) (CategoryTheory.Functor.obj.{u3, max u1 u3 u4, max u3 u4, u2} C _inst_1 D _inst_2 (CategoryTheory.Abelian.image.{max u1 u3 u4, max u3 (max u1 u3 u4) (max u3 u4) u2} (CategoryTheory.Functor.{u3, max u1 u3 u4, max u3 u4, u2} C _inst_1 D _inst_2) (CategoryTheory.Functor.category.{u3, max u1 u3 u4, max u3 u4, u2} C _inst_1 D _inst_2) (CategoryTheory.Limits.CategoryTheory.Functor.hasZeroMorphisms.{u3, max u3 u4, max u1 u3 u4, u2} C _inst_1 D _inst_2 (CategoryTheory.Preadditive.preadditiveHasZeroMorphisms.{max u1 u3 u4, u2} D _inst_2 (CategoryTheory.Abelian.toPreadditive.{max u1 u3 u4, u2} D _inst_2 _inst_3))) (CategoryTheory.Abelian.FunctorCategory.coimageObjIso._proof_1.{u4, u3, u2, u1} C _inst_1 D _inst_2 _inst_3) (CategoryTheory.Abelian.FunctorCategory.coimageObjIso._proof_2.{u4, u3, u2, u1} C _inst_1 D _inst_2 _inst_3) F G α) X) (CategoryTheory.Abelian.coimageImageComparison.{max u1 u3 u4, u2} D _inst_2 (CategoryTheory.Preadditive.preadditiveHasZeroMorphisms.{max u1 u3 u4, u2} D _inst_2 (CategoryTheory.Abelian.toPreadditive.{max u1 u3 u4, u2} D _inst_2 _inst_3)) (CategoryTheory.Abelian.hasKernels.{max u1 u3 u4, u2} D _inst_2 _inst_3) (CategoryTheory.Abelian.hasCokernels.{max u1 u3 u4, u2} D _inst_2 _inst_3) (CategoryTheory.Functor.obj.{u3, max u1 u3 u4, max u3 u4, u2} C _inst_1 D _inst_2 F X) (CategoryTheory.Functor.obj.{u3, max u1 u3 u4, max u3 u4, u2} C _inst_1 D _inst_2 G X) (CategoryTheory.NatTrans.app.{u3, max u1 u3 u4, max u3 u4, u2} C _inst_1 D _inst_2 F G α X)) (CategoryTheory.Iso.inv.{max u1 u3 u4, u2} D _inst_2 (CategoryTheory.Functor.obj.{u3, max u1 u3 u4, max u3 u4, u2} C _inst_1 D _inst_2 (CategoryTheory.Abelian.image.{max u1 u3 u4, max u3 (max u1 u3 u4) (max u3 u4) u2} (CategoryTheory.Functor.{u3, max u1 u3 u4, max u3 u4, u2} C _inst_1 D _inst_2) (CategoryTheory.Functor.category.{u3, max u1 u3 u4, max u3 u4, u2} C _inst_1 D _inst_2) (CategoryTheory.Limits.CategoryTheory.Functor.hasZeroMorphisms.{u3, max u3 u4, max u1 u3 u4, u2} C _inst_1 D _inst_2 (CategoryTheory.Preadditive.preadditiveHasZeroMorphisms.{max u1 u3 u4, u2} D _inst_2 (CategoryTheory.Abelian.toPreadditive.{max u1 u3 u4, u2} D _inst_2 _inst_3))) (CategoryTheory.Abelian.FunctorCategory.imageObjIso._proof_1.{u4, u3, u2, u1} C _inst_1 D _inst_2 _inst_3) (CategoryTheory.Abelian.FunctorCategory.imageObjIso._proof_2.{u4, u3, u2, u1} C _inst_1 D _inst_2 _inst_3) F G α) X) (CategoryTheory.Abelian.image.{max u1 u3 u4, u2} D _inst_2 (CategoryTheory.Preadditive.preadditiveHasZeroMorphisms.{max u1 u3 u4, u2} D _inst_2 (CategoryTheory.Abelian.toPreadditive.{max u1 u3 u4, u2} D _inst_2 _inst_3)) (CategoryTheory.Abelian.hasKernels.{max u1 u3 u4, u2} D _inst_2 _inst_3) (CategoryTheory.Abelian.hasCokernels.{max u1 u3 u4, u2} D _inst_2 _inst_3) (CategoryTheory.Functor.obj.{u3, max u1 u3 u4, max u3 u4, u2} C _inst_1 D _inst_2 F X) (CategoryTheory.Functor.obj.{u3, max u1 u3 u4, max u3 u4, u2} C _inst_1 D _inst_2 G X) (CategoryTheory.NatTrans.app.{u3, max u1 u3 u4, max u3 u4, u2} C _inst_1 D _inst_2 F G α X)) (CategoryTheory.Abelian.FunctorCategory.imageObjIso.{u1, u2, u3, u4} C _inst_1 D _inst_2 _inst_3 F G α X))))
+but is expected to have type
+ forall {C : Type.{u4}} [_inst_1 : CategoryTheory.Category.{u3, u4} C] {D : Type.{u2}} [_inst_2 : CategoryTheory.Category.{u1, u2} D] [_inst_3 : CategoryTheory.Abelian.{u1, u2} D _inst_2] {F : CategoryTheory.Functor.{u3, u1, u4, u2} C _inst_1 D _inst_2} {G : CategoryTheory.Functor.{u3, u1, u4, u2} C _inst_1 D _inst_2} (α : Quiver.Hom.{max (succ u4) (succ u1), max (max (max u4 u3) u2) u1} (CategoryTheory.Functor.{u3, u1, u4, u2} C _inst_1 D _inst_2) (CategoryTheory.CategoryStruct.toQuiver.{max u4 u1, max (max (max u4 u3) u2) u1} (CategoryTheory.Functor.{u3, u1, u4, u2} C _inst_1 D _inst_2) (CategoryTheory.Category.toCategoryStruct.{max u4 u1, max (max (max u4 u3) u2) u1} (CategoryTheory.Functor.{u3, u1, u4, u2} C _inst_1 D _inst_2) (CategoryTheory.Functor.category.{u3, u1, u4, u2} C _inst_1 D _inst_2))) F G) (X : C), Eq.{succ u1} (Quiver.Hom.{succ u1, u2} D (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} D (CategoryTheory.Category.toCategoryStruct.{u1, u2} D _inst_2)) (Prefunctor.obj.{succ u3, succ u1, u4, u2} C (CategoryTheory.CategoryStruct.toQuiver.{u3, u4} C (CategoryTheory.Category.toCategoryStruct.{u3, u4} C _inst_1)) D (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} D (CategoryTheory.Category.toCategoryStruct.{u1, u2} D _inst_2)) (CategoryTheory.Functor.toPrefunctor.{u3, u1, u4, u2} C _inst_1 D _inst_2 (CategoryTheory.Abelian.coimage.{max u4 u1, max (max (max u4 u3) u2) u1} (CategoryTheory.Functor.{u3, u1, u4, u2} C _inst_1 D _inst_2) (CategoryTheory.Functor.category.{u3, u1, u4, u2} C _inst_1 D _inst_2) (CategoryTheory.Limits.instHasZeroMorphismsFunctorCategory.{u3, u4, u1, u2} C _inst_1 D _inst_2 (CategoryTheory.Preadditive.preadditiveHasZeroMorphisms.{u1, u2} D _inst_2 (CategoryTheory.Abelian.toPreadditive.{u1, u2} D _inst_2 _inst_3))) (CategoryTheory.Limits.hasKernels_of_hasEqualizers.{max u4 u1, max (max (max u4 u3) u2) u1} (CategoryTheory.Functor.{u3, u1, u4, u2} C _inst_1 D _inst_2) (CategoryTheory.Functor.category.{u3, u1, u4, u2} C _inst_1 D _inst_2) (CategoryTheory.Limits.instHasZeroMorphismsFunctorCategory.{u3, u4, u1, u2} C _inst_1 D _inst_2 (CategoryTheory.Preadditive.preadditiveHasZeroMorphisms.{u1, u2} D _inst_2 (CategoryTheory.Abelian.toPreadditive.{u1, u2} D _inst_2 _inst_3))) (CategoryTheory.Limits.functorCategoryHasLimitsOfShape.{0, u3, 0, u4, u1, u2} D _inst_2 CategoryTheory.Limits.WalkingParallelPair CategoryTheory.Limits.walkingParallelPairHomCategory C _inst_1 (CategoryTheory.Abelian.hasEqualizers.{u1, u2} D _inst_2 _inst_3))) (CategoryTheory.Limits.hasCokernels_of_hasCoequalizers.{max u4 u1, max (max (max u4 u3) u2) u1} (CategoryTheory.Functor.{u3, u1, u4, u2} C _inst_1 D _inst_2) (CategoryTheory.Functor.category.{u3, u1, u4, u2} C _inst_1 D _inst_2) (CategoryTheory.Limits.instHasZeroMorphismsFunctorCategory.{u3, u4, u1, u2} C _inst_1 D _inst_2 (CategoryTheory.Preadditive.preadditiveHasZeroMorphisms.{u1, u2} D _inst_2 (CategoryTheory.Abelian.toPreadditive.{u1, u2} D _inst_2 _inst_3))) (CategoryTheory.Limits.functorCategoryHasColimitsOfShape.{0, u3, 0, u4, u1, u2} D _inst_2 CategoryTheory.Limits.WalkingParallelPair CategoryTheory.Limits.walkingParallelPairHomCategory C _inst_1 (CategoryTheory.Abelian.hasCoequalizers.{u1, u2} D _inst_2 _inst_3))) F G α)) X) (Prefunctor.obj.{succ u3, succ u1, u4, u2} C (CategoryTheory.CategoryStruct.toQuiver.{u3, u4} C (CategoryTheory.Category.toCategoryStruct.{u3, u4} C _inst_1)) D (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} D (CategoryTheory.Category.toCategoryStruct.{u1, u2} D _inst_2)) (CategoryTheory.Functor.toPrefunctor.{u3, u1, u4, u2} C _inst_1 D _inst_2 (CategoryTheory.Abelian.image.{max u4 u1, max (max (max u4 u3) u2) u1} (CategoryTheory.Functor.{u3, u1, u4, u2} C _inst_1 D _inst_2) (CategoryTheory.Functor.category.{u3, u1, u4, u2} C _inst_1 D _inst_2) (CategoryTheory.Limits.instHasZeroMorphismsFunctorCategory.{u3, u4, u1, u2} C _inst_1 D _inst_2 (CategoryTheory.Preadditive.preadditiveHasZeroMorphisms.{u1, u2} D _inst_2 (CategoryTheory.Abelian.toPreadditive.{u1, u2} D _inst_2 _inst_3))) (CategoryTheory.Limits.hasKernels_of_hasEqualizers.{max u4 u1, max (max (max u4 u3) u2) u1} (CategoryTheory.Functor.{u3, u1, u4, u2} C _inst_1 D _inst_2) (CategoryTheory.Functor.category.{u3, u1, u4, u2} C _inst_1 D _inst_2) (CategoryTheory.Limits.instHasZeroMorphismsFunctorCategory.{u3, u4, u1, u2} C _inst_1 D _inst_2 (CategoryTheory.Preadditive.preadditiveHasZeroMorphisms.{u1, u2} D _inst_2 (CategoryTheory.Abelian.toPreadditive.{u1, u2} D _inst_2 _inst_3))) (CategoryTheory.Limits.functorCategoryHasLimitsOfShape.{0, u3, 0, u4, u1, u2} D _inst_2 CategoryTheory.Limits.WalkingParallelPair CategoryTheory.Limits.walkingParallelPairHomCategory C _inst_1 (CategoryTheory.Abelian.hasEqualizers.{u1, u2} D _inst_2 _inst_3))) (CategoryTheory.Limits.hasCokernels_of_hasCoequalizers.{max u4 u1, max (max (max u4 u3) u2) u1} (CategoryTheory.Functor.{u3, u1, u4, u2} C _inst_1 D _inst_2) (CategoryTheory.Functor.category.{u3, u1, u4, u2} C _inst_1 D _inst_2) (CategoryTheory.Limits.instHasZeroMorphismsFunctorCategory.{u3, u4, u1, u2} C _inst_1 D _inst_2 (CategoryTheory.Preadditive.preadditiveHasZeroMorphisms.{u1, u2} D _inst_2 (CategoryTheory.Abelian.toPreadditive.{u1, u2} D _inst_2 _inst_3))) (CategoryTheory.Limits.functorCategoryHasColimitsOfShape.{0, u3, 0, u4, u1, u2} D _inst_2 CategoryTheory.Limits.WalkingParallelPair CategoryTheory.Limits.walkingParallelPairHomCategory C _inst_1 (CategoryTheory.Abelian.hasCoequalizers.{u1, u2} D _inst_2 _inst_3))) F G α)) X)) (CategoryTheory.NatTrans.app.{u3, u1, u4, u2} C _inst_1 D _inst_2 (CategoryTheory.Abelian.coimage.{max u4 u1, max (max (max u4 u3) u2) u1} (CategoryTheory.Functor.{u3, u1, u4, u2} C _inst_1 D _inst_2) (CategoryTheory.Functor.category.{u3, u1, u4, u2} C _inst_1 D _inst_2) (CategoryTheory.Limits.instHasZeroMorphismsFunctorCategory.{u3, u4, u1, u2} C _inst_1 D _inst_2 (CategoryTheory.Preadditive.preadditiveHasZeroMorphisms.{u1, u2} D _inst_2 (CategoryTheory.Abelian.toPreadditive.{u1, u2} D _inst_2 _inst_3))) (CategoryTheory.Limits.hasKernels_of_hasEqualizers.{max u4 u1, max (max (max u4 u3) u2) u1} (CategoryTheory.Functor.{u3, u1, u4, u2} C _inst_1 D _inst_2) (CategoryTheory.Functor.category.{u3, u1, u4, u2} C _inst_1 D _inst_2) (CategoryTheory.Limits.instHasZeroMorphismsFunctorCategory.{u3, u4, u1, u2} C _inst_1 D _inst_2 (CategoryTheory.Preadditive.preadditiveHasZeroMorphisms.{u1, u2} D _inst_2 (CategoryTheory.Abelian.toPreadditive.{u1, u2} D _inst_2 _inst_3))) (CategoryTheory.Limits.functorCategoryHasLimitsOfShape.{0, u3, 0, u4, u1, u2} D _inst_2 CategoryTheory.Limits.WalkingParallelPair CategoryTheory.Limits.walkingParallelPairHomCategory C _inst_1 (CategoryTheory.Abelian.hasEqualizers.{u1, u2} D _inst_2 _inst_3))) (CategoryTheory.Limits.hasCokernels_of_hasCoequalizers.{max u4 u1, max (max (max u4 u3) u2) u1} (CategoryTheory.Functor.{u3, u1, u4, u2} C _inst_1 D _inst_2) (CategoryTheory.Functor.category.{u3, u1, u4, u2} C _inst_1 D _inst_2) (CategoryTheory.Limits.instHasZeroMorphismsFunctorCategory.{u3, u4, u1, u2} C _inst_1 D _inst_2 (CategoryTheory.Preadditive.preadditiveHasZeroMorphisms.{u1, u2} D _inst_2 (CategoryTheory.Abelian.toPreadditive.{u1, u2} D _inst_2 _inst_3))) (CategoryTheory.Limits.functorCategoryHasColimitsOfShape.{0, u3, 0, u4, u1, u2} D _inst_2 CategoryTheory.Limits.WalkingParallelPair CategoryTheory.Limits.walkingParallelPairHomCategory C _inst_1 (CategoryTheory.Abelian.hasCoequalizers.{u1, u2} D _inst_2 _inst_3))) F G α) (CategoryTheory.Abelian.image.{max u4 u1, max (max (max u4 u3) u2) u1} (CategoryTheory.Functor.{u3, u1, u4, u2} C _inst_1 D _inst_2) (CategoryTheory.Functor.category.{u3, u1, u4, u2} C _inst_1 D _inst_2) (CategoryTheory.Limits.instHasZeroMorphismsFunctorCategory.{u3, u4, u1, u2} C _inst_1 D _inst_2 (CategoryTheory.Preadditive.preadditiveHasZeroMorphisms.{u1, u2} D _inst_2 (CategoryTheory.Abelian.toPreadditive.{u1, u2} D _inst_2 _inst_3))) (CategoryTheory.Limits.hasKernels_of_hasEqualizers.{max u4 u1, max (max (max u4 u3) u2) u1} (CategoryTheory.Functor.{u3, u1, u4, u2} C _inst_1 D _inst_2) (CategoryTheory.Functor.category.{u3, u1, u4, u2} C _inst_1 D _inst_2) (CategoryTheory.Limits.instHasZeroMorphismsFunctorCategory.{u3, u4, u1, u2} C _inst_1 D _inst_2 (CategoryTheory.Preadditive.preadditiveHasZeroMorphisms.{u1, u2} D _inst_2 (CategoryTheory.Abelian.toPreadditive.{u1, u2} D _inst_2 _inst_3))) (CategoryTheory.Limits.functorCategoryHasLimitsOfShape.{0, u3, 0, u4, u1, u2} D _inst_2 CategoryTheory.Limits.WalkingParallelPair CategoryTheory.Limits.walkingParallelPairHomCategory C _inst_1 (CategoryTheory.Abelian.hasEqualizers.{u1, u2} D _inst_2 _inst_3))) (CategoryTheory.Limits.hasCokernels_of_hasCoequalizers.{max u4 u1, max (max (max u4 u3) u2) u1} (CategoryTheory.Functor.{u3, u1, u4, u2} C _inst_1 D _inst_2) (CategoryTheory.Functor.category.{u3, u1, u4, u2} C _inst_1 D _inst_2) (CategoryTheory.Limits.instHasZeroMorphismsFunctorCategory.{u3, u4, u1, u2} C _inst_1 D _inst_2 (CategoryTheory.Preadditive.preadditiveHasZeroMorphisms.{u1, u2} D _inst_2 (CategoryTheory.Abelian.toPreadditive.{u1, u2} D _inst_2 _inst_3))) (CategoryTheory.Limits.functorCategoryHasColimitsOfShape.{0, u3, 0, u4, u1, u2} D _inst_2 CategoryTheory.Limits.WalkingParallelPair CategoryTheory.Limits.walkingParallelPairHomCategory C _inst_1 (CategoryTheory.Abelian.hasCoequalizers.{u1, u2} D _inst_2 _inst_3))) F G α) (CategoryTheory.Abelian.coimageImageComparison.{max u4 u1, max (max (max u4 u3) u2) u1} (CategoryTheory.Functor.{u3, u1, u4, u2} C _inst_1 D _inst_2) (CategoryTheory.Functor.category.{u3, u1, u4, u2} C _inst_1 D _inst_2) (CategoryTheory.Limits.instHasZeroMorphismsFunctorCategory.{u3, u4, u1, u2} C _inst_1 D _inst_2 (CategoryTheory.Preadditive.preadditiveHasZeroMorphisms.{u1, u2} D _inst_2 (CategoryTheory.Abelian.toPreadditive.{u1, u2} D _inst_2 _inst_3))) (CategoryTheory.Limits.hasKernels_of_hasEqualizers.{max u4 u1, max (max (max u4 u3) u2) u1} (CategoryTheory.Functor.{u3, u1, u4, u2} C _inst_1 D _inst_2) (CategoryTheory.Functor.category.{u3, u1, u4, u2} C _inst_1 D _inst_2) (CategoryTheory.Limits.instHasZeroMorphismsFunctorCategory.{u3, u4, u1, u2} C _inst_1 D _inst_2 (CategoryTheory.Preadditive.preadditiveHasZeroMorphisms.{u1, u2} D _inst_2 (CategoryTheory.Abelian.toPreadditive.{u1, u2} D _inst_2 _inst_3))) (CategoryTheory.Limits.functorCategoryHasLimitsOfShape.{0, u3, 0, u4, u1, u2} D _inst_2 CategoryTheory.Limits.WalkingParallelPair CategoryTheory.Limits.walkingParallelPairHomCategory C _inst_1 (CategoryTheory.Abelian.hasEqualizers.{u1, u2} D _inst_2 _inst_3))) (CategoryTheory.Limits.hasCokernels_of_hasCoequalizers.{max u4 u1, max (max (max u4 u3) u2) u1} (CategoryTheory.Functor.{u3, u1, u4, u2} C _inst_1 D _inst_2) (CategoryTheory.Functor.category.{u3, u1, u4, u2} C _inst_1 D _inst_2) (CategoryTheory.Limits.instHasZeroMorphismsFunctorCategory.{u3, u4, u1, u2} C _inst_1 D _inst_2 (CategoryTheory.Preadditive.preadditiveHasZeroMorphisms.{u1, u2} D _inst_2 (CategoryTheory.Abelian.toPreadditive.{u1, u2} D _inst_2 _inst_3))) (CategoryTheory.Limits.functorCategoryHasColimitsOfShape.{0, u3, 0, u4, u1, u2} D _inst_2 CategoryTheory.Limits.WalkingParallelPair CategoryTheory.Limits.walkingParallelPairHomCategory C _inst_1 (CategoryTheory.Abelian.hasCoequalizers.{u1, u2} D _inst_2 _inst_3))) F G α) X) (CategoryTheory.CategoryStruct.comp.{u1, u2} D (CategoryTheory.Category.toCategoryStruct.{u1, u2} D _inst_2) (Prefunctor.obj.{succ u3, succ u1, u4, u2} C (CategoryTheory.CategoryStruct.toQuiver.{u3, u4} C (CategoryTheory.Category.toCategoryStruct.{u3, u4} C _inst_1)) D (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} D (CategoryTheory.Category.toCategoryStruct.{u1, u2} D _inst_2)) (CategoryTheory.Functor.toPrefunctor.{u3, u1, u4, u2} C _inst_1 D _inst_2 (CategoryTheory.Abelian.coimage.{max u4 u1, max (max (max u4 u3) u2) u1} (CategoryTheory.Functor.{u3, u1, u4, u2} C _inst_1 D _inst_2) (CategoryTheory.Functor.category.{u3, u1, u4, u2} C _inst_1 D _inst_2) (CategoryTheory.Limits.instHasZeroMorphismsFunctorCategory.{u3, u4, u1, u2} C _inst_1 D _inst_2 (CategoryTheory.Preadditive.preadditiveHasZeroMorphisms.{u1, u2} D _inst_2 (CategoryTheory.Abelian.toPreadditive.{u1, u2} D _inst_2 _inst_3))) (CategoryTheory.Limits.hasKernels_of_hasEqualizers.{max u4 u1, max (max (max u4 u3) u2) u1} (CategoryTheory.Functor.{u3, u1, u4, u2} C _inst_1 D _inst_2) (CategoryTheory.Functor.category.{u3, u1, u4, u2} C _inst_1 D _inst_2) (CategoryTheory.Limits.instHasZeroMorphismsFunctorCategory.{u3, u4, u1, u2} C _inst_1 D _inst_2 (CategoryTheory.Preadditive.preadditiveHasZeroMorphisms.{u1, u2} D _inst_2 (CategoryTheory.Abelian.toPreadditive.{u1, u2} D _inst_2 _inst_3))) (CategoryTheory.Limits.functorCategoryHasLimitsOfShape.{0, u3, 0, u4, u1, u2} D _inst_2 CategoryTheory.Limits.WalkingParallelPair CategoryTheory.Limits.walkingParallelPairHomCategory C _inst_1 (CategoryTheory.Abelian.hasEqualizers.{u1, u2} D _inst_2 _inst_3))) (CategoryTheory.Limits.hasCokernels_of_hasCoequalizers.{max u4 u1, max (max (max u4 u3) u2) u1} (CategoryTheory.Functor.{u3, u1, u4, u2} C _inst_1 D _inst_2) (CategoryTheory.Functor.category.{u3, u1, u4, u2} C _inst_1 D _inst_2) (CategoryTheory.Limits.instHasZeroMorphismsFunctorCategory.{u3, u4, u1, u2} C _inst_1 D _inst_2 (CategoryTheory.Preadditive.preadditiveHasZeroMorphisms.{u1, u2} D _inst_2 (CategoryTheory.Abelian.toPreadditive.{u1, u2} D _inst_2 _inst_3))) (CategoryTheory.Limits.functorCategoryHasColimitsOfShape.{0, u3, 0, u4, u1, u2} D _inst_2 CategoryTheory.Limits.WalkingParallelPair CategoryTheory.Limits.walkingParallelPairHomCategory C _inst_1 (CategoryTheory.Abelian.hasCoequalizers.{u1, u2} D _inst_2 _inst_3))) F G α)) X) (CategoryTheory.Abelian.coimage.{u1, u2} D _inst_2 (CategoryTheory.Preadditive.preadditiveHasZeroMorphisms.{u1, u2} D _inst_2 (CategoryTheory.Abelian.toPreadditive.{u1, u2} D _inst_2 _inst_3)) (CategoryTheory.Abelian.has_kernels.{u1, u2} D _inst_2 _inst_3) (CategoryTheory.Abelian.has_cokernels.{u1, u2} D _inst_2 _inst_3) (Prefunctor.obj.{succ u3, succ u1, u4, u2} C (CategoryTheory.CategoryStruct.toQuiver.{u3, u4} C (CategoryTheory.Category.toCategoryStruct.{u3, u4} C _inst_1)) D (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} D (CategoryTheory.Category.toCategoryStruct.{u1, u2} D _inst_2)) (CategoryTheory.Functor.toPrefunctor.{u3, u1, u4, u2} C _inst_1 D _inst_2 F) X) (Prefunctor.obj.{succ u3, succ u1, u4, u2} C (CategoryTheory.CategoryStruct.toQuiver.{u3, u4} C (CategoryTheory.Category.toCategoryStruct.{u3, u4} C _inst_1)) D (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} D (CategoryTheory.Category.toCategoryStruct.{u1, u2} D _inst_2)) (CategoryTheory.Functor.toPrefunctor.{u3, u1, u4, u2} C _inst_1 D _inst_2 G) X) (CategoryTheory.NatTrans.app.{u3, u1, u4, u2} C _inst_1 D _inst_2 F G α X)) (Prefunctor.obj.{succ u3, succ u1, u4, u2} C (CategoryTheory.CategoryStruct.toQuiver.{u3, u4} C (CategoryTheory.Category.toCategoryStruct.{u3, u4} C _inst_1)) D (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} D (CategoryTheory.Category.toCategoryStruct.{u1, u2} D _inst_2)) (CategoryTheory.Functor.toPrefunctor.{u3, u1, u4, u2} C _inst_1 D _inst_2 (CategoryTheory.Abelian.image.{max u4 u1, max (max (max u4 u3) u2) u1} (CategoryTheory.Functor.{u3, u1, u4, u2} C _inst_1 D _inst_2) (CategoryTheory.Functor.category.{u3, u1, u4, u2} C _inst_1 D _inst_2) (CategoryTheory.Limits.instHasZeroMorphismsFunctorCategory.{u3, u4, u1, u2} C _inst_1 D _inst_2 (CategoryTheory.Preadditive.preadditiveHasZeroMorphisms.{u1, u2} D _inst_2 (CategoryTheory.Abelian.toPreadditive.{u1, u2} D _inst_2 _inst_3))) (CategoryTheory.Limits.hasKernels_of_hasEqualizers.{max u4 u1, max (max (max u4 u3) u2) u1} (CategoryTheory.Functor.{u3, u1, u4, u2} C _inst_1 D _inst_2) (CategoryTheory.Functor.category.{u3, u1, u4, u2} C _inst_1 D _inst_2) (CategoryTheory.Limits.instHasZeroMorphismsFunctorCategory.{u3, u4, u1, u2} C _inst_1 D _inst_2 (CategoryTheory.Preadditive.preadditiveHasZeroMorphisms.{u1, u2} D _inst_2 (CategoryTheory.Abelian.toPreadditive.{u1, u2} D _inst_2 _inst_3))) (CategoryTheory.Limits.functorCategoryHasLimitsOfShape.{0, u3, 0, u4, u1, u2} D _inst_2 CategoryTheory.Limits.WalkingParallelPair CategoryTheory.Limits.walkingParallelPairHomCategory C _inst_1 (CategoryTheory.Abelian.hasEqualizers.{u1, u2} D _inst_2 _inst_3))) (CategoryTheory.Limits.hasCokernels_of_hasCoequalizers.{max u4 u1, max (max (max u4 u3) u2) u1} (CategoryTheory.Functor.{u3, u1, u4, u2} C _inst_1 D _inst_2) (CategoryTheory.Functor.category.{u3, u1, u4, u2} C _inst_1 D _inst_2) (CategoryTheory.Limits.instHasZeroMorphismsFunctorCategory.{u3, u4, u1, u2} C _inst_1 D _inst_2 (CategoryTheory.Preadditive.preadditiveHasZeroMorphisms.{u1, u2} D _inst_2 (CategoryTheory.Abelian.toPreadditive.{u1, u2} D _inst_2 _inst_3))) (CategoryTheory.Limits.functorCategoryHasColimitsOfShape.{0, u3, 0, u4, u1, u2} D _inst_2 CategoryTheory.Limits.WalkingParallelPair CategoryTheory.Limits.walkingParallelPairHomCategory C _inst_1 (CategoryTheory.Abelian.hasCoequalizers.{u1, u2} D _inst_2 _inst_3))) F G α)) X) (CategoryTheory.Iso.hom.{u1, u2} D _inst_2 (Prefunctor.obj.{succ u3, succ u1, u4, u2} C (CategoryTheory.CategoryStruct.toQuiver.{u3, u4} C (CategoryTheory.Category.toCategoryStruct.{u3, u4} C _inst_1)) D (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} D (CategoryTheory.Category.toCategoryStruct.{u1, u2} D _inst_2)) (CategoryTheory.Functor.toPrefunctor.{u3, u1, u4, u2} C _inst_1 D _inst_2 (CategoryTheory.Abelian.coimage.{max u4 u1, max (max (max u4 u3) u2) u1} (CategoryTheory.Functor.{u3, u1, u4, u2} C _inst_1 D _inst_2) (CategoryTheory.Functor.category.{u3, u1, u4, u2} C _inst_1 D _inst_2) (CategoryTheory.Limits.instHasZeroMorphismsFunctorCategory.{u3, u4, u1, u2} C _inst_1 D _inst_2 (CategoryTheory.Preadditive.preadditiveHasZeroMorphisms.{u1, u2} D _inst_2 (CategoryTheory.Abelian.toPreadditive.{u1, u2} D _inst_2 _inst_3))) (CategoryTheory.Limits.hasKernels_of_hasEqualizers.{max u4 u1, max (max (max u4 u3) u2) u1} (CategoryTheory.Functor.{u3, u1, u4, u2} C _inst_1 D _inst_2) (CategoryTheory.Functor.category.{u3, u1, u4, u2} C _inst_1 D _inst_2) (CategoryTheory.Limits.instHasZeroMorphismsFunctorCategory.{u3, u4, u1, u2} C _inst_1 D _inst_2 (CategoryTheory.Preadditive.preadditiveHasZeroMorphisms.{u1, u2} D _inst_2 (CategoryTheory.Abelian.toPreadditive.{u1, u2} D _inst_2 _inst_3))) (CategoryTheory.Limits.functorCategoryHasLimitsOfShape.{0, u3, 0, u4, u1, u2} D _inst_2 CategoryTheory.Limits.WalkingParallelPair CategoryTheory.Limits.walkingParallelPairHomCategory C _inst_1 (CategoryTheory.Abelian.hasEqualizers.{u1, u2} D _inst_2 _inst_3))) (CategoryTheory.Limits.hasCokernels_of_hasCoequalizers.{max u4 u1, max (max (max u4 u3) u2) u1} (CategoryTheory.Functor.{u3, u1, u4, u2} C _inst_1 D _inst_2) (CategoryTheory.Functor.category.{u3, u1, u4, u2} C _inst_1 D _inst_2) (CategoryTheory.Limits.instHasZeroMorphismsFunctorCategory.{u3, u4, u1, u2} C _inst_1 D _inst_2 (CategoryTheory.Preadditive.preadditiveHasZeroMorphisms.{u1, u2} D _inst_2 (CategoryTheory.Abelian.toPreadditive.{u1, u2} D _inst_2 _inst_3))) (CategoryTheory.Limits.functorCategoryHasColimitsOfShape.{0, u3, 0, u4, u1, u2} D _inst_2 CategoryTheory.Limits.WalkingParallelPair CategoryTheory.Limits.walkingParallelPairHomCategory C _inst_1 (CategoryTheory.Abelian.hasCoequalizers.{u1, u2} D _inst_2 _inst_3))) F G α)) X) (CategoryTheory.Abelian.coimage.{u1, u2} D _inst_2 (CategoryTheory.Preadditive.preadditiveHasZeroMorphisms.{u1, u2} D _inst_2 (CategoryTheory.Abelian.toPreadditive.{u1, u2} D _inst_2 _inst_3)) (CategoryTheory.Abelian.has_kernels.{u1, u2} D _inst_2 _inst_3) (CategoryTheory.Abelian.has_cokernels.{u1, u2} D _inst_2 _inst_3) (Prefunctor.obj.{succ u3, succ u1, u4, u2} C (CategoryTheory.CategoryStruct.toQuiver.{u3, u4} C (CategoryTheory.Category.toCategoryStruct.{u3, u4} C _inst_1)) D (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} D (CategoryTheory.Category.toCategoryStruct.{u1, u2} D _inst_2)) (CategoryTheory.Functor.toPrefunctor.{u3, u1, u4, u2} C _inst_1 D _inst_2 F) X) (Prefunctor.obj.{succ u3, succ u1, u4, u2} C (CategoryTheory.CategoryStruct.toQuiver.{u3, u4} C (CategoryTheory.Category.toCategoryStruct.{u3, u4} C _inst_1)) D (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} D (CategoryTheory.Category.toCategoryStruct.{u1, u2} D _inst_2)) (CategoryTheory.Functor.toPrefunctor.{u3, u1, u4, u2} C _inst_1 D _inst_2 G) X) (CategoryTheory.NatTrans.app.{u3, u1, u4, u2} C _inst_1 D _inst_2 F G α X)) (CategoryTheory.Abelian.FunctorCategory.coimageObjIso.{u1, u2, u3, u4} C _inst_1 D _inst_2 _inst_3 F G α X)) (CategoryTheory.CategoryStruct.comp.{u1, u2} D (CategoryTheory.Category.toCategoryStruct.{u1, u2} D _inst_2) (CategoryTheory.Abelian.coimage.{u1, u2} D _inst_2 (CategoryTheory.Preadditive.preadditiveHasZeroMorphisms.{u1, u2} D _inst_2 (CategoryTheory.Abelian.toPreadditive.{u1, u2} D _inst_2 _inst_3)) (CategoryTheory.Abelian.has_kernels.{u1, u2} D _inst_2 _inst_3) (CategoryTheory.Abelian.has_cokernels.{u1, u2} D _inst_2 _inst_3) (Prefunctor.obj.{succ u3, succ u1, u4, u2} C (CategoryTheory.CategoryStruct.toQuiver.{u3, u4} C (CategoryTheory.Category.toCategoryStruct.{u3, u4} C _inst_1)) D (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} D (CategoryTheory.Category.toCategoryStruct.{u1, u2} D _inst_2)) (CategoryTheory.Functor.toPrefunctor.{u3, u1, u4, u2} C _inst_1 D _inst_2 F) X) (Prefunctor.obj.{succ u3, succ u1, u4, u2} C (CategoryTheory.CategoryStruct.toQuiver.{u3, u4} C (CategoryTheory.Category.toCategoryStruct.{u3, u4} C _inst_1)) D (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} D (CategoryTheory.Category.toCategoryStruct.{u1, u2} D _inst_2)) (CategoryTheory.Functor.toPrefunctor.{u3, u1, u4, u2} C _inst_1 D _inst_2 G) X) (CategoryTheory.NatTrans.app.{u3, u1, u4, u2} C _inst_1 D _inst_2 F G α X)) (CategoryTheory.Abelian.image.{u1, u2} D _inst_2 (CategoryTheory.Preadditive.preadditiveHasZeroMorphisms.{u1, u2} D _inst_2 (CategoryTheory.Abelian.toPreadditive.{u1, u2} D _inst_2 _inst_3)) (CategoryTheory.Abelian.has_kernels.{u1, u2} D _inst_2 _inst_3) (CategoryTheory.Abelian.has_cokernels.{u1, u2} D _inst_2 _inst_3) (Prefunctor.obj.{succ u3, succ u1, u4, u2} C (CategoryTheory.CategoryStruct.toQuiver.{u3, u4} C (CategoryTheory.Category.toCategoryStruct.{u3, u4} C _inst_1)) D (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} D (CategoryTheory.Category.toCategoryStruct.{u1, u2} D _inst_2)) (CategoryTheory.Functor.toPrefunctor.{u3, u1, u4, u2} C _inst_1 D _inst_2 F) X) (Prefunctor.obj.{succ u3, succ u1, u4, u2} C (CategoryTheory.CategoryStruct.toQuiver.{u3, u4} C (CategoryTheory.Category.toCategoryStruct.{u3, u4} C _inst_1)) D (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} D (CategoryTheory.Category.toCategoryStruct.{u1, u2} D _inst_2)) (CategoryTheory.Functor.toPrefunctor.{u3, u1, u4, u2} C _inst_1 D _inst_2 G) X) (CategoryTheory.NatTrans.app.{u3, u1, u4, u2} C _inst_1 D _inst_2 F G α X)) (Prefunctor.obj.{succ u3, succ u1, u4, u2} C (CategoryTheory.CategoryStruct.toQuiver.{u3, u4} C (CategoryTheory.Category.toCategoryStruct.{u3, u4} C _inst_1)) D (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} D (CategoryTheory.Category.toCategoryStruct.{u1, u2} D _inst_2)) (CategoryTheory.Functor.toPrefunctor.{u3, u1, u4, u2} C _inst_1 D _inst_2 (CategoryTheory.Abelian.image.{max u4 u1, max (max (max u4 u3) u2) u1} (CategoryTheory.Functor.{u3, u1, u4, u2} C _inst_1 D _inst_2) (CategoryTheory.Functor.category.{u3, u1, u4, u2} C _inst_1 D _inst_2) (CategoryTheory.Limits.instHasZeroMorphismsFunctorCategory.{u3, u4, u1, u2} C _inst_1 D _inst_2 (CategoryTheory.Preadditive.preadditiveHasZeroMorphisms.{u1, u2} D _inst_2 (CategoryTheory.Abelian.toPreadditive.{u1, u2} D _inst_2 _inst_3))) (CategoryTheory.Limits.hasKernels_of_hasEqualizers.{max u4 u1, max (max (max u4 u3) u2) u1} (CategoryTheory.Functor.{u3, u1, u4, u2} C _inst_1 D _inst_2) (CategoryTheory.Functor.category.{u3, u1, u4, u2} C _inst_1 D _inst_2) (CategoryTheory.Limits.instHasZeroMorphismsFunctorCategory.{u3, u4, u1, u2} C _inst_1 D _inst_2 (CategoryTheory.Preadditive.preadditiveHasZeroMorphisms.{u1, u2} D _inst_2 (CategoryTheory.Abelian.toPreadditive.{u1, u2} D _inst_2 _inst_3))) (CategoryTheory.Limits.functorCategoryHasLimitsOfShape.{0, u3, 0, u4, u1, u2} D _inst_2 CategoryTheory.Limits.WalkingParallelPair CategoryTheory.Limits.walkingParallelPairHomCategory C _inst_1 (CategoryTheory.Abelian.hasEqualizers.{u1, u2} D _inst_2 _inst_3))) (CategoryTheory.Limits.hasCokernels_of_hasCoequalizers.{max u4 u1, max (max (max u4 u3) u2) u1} (CategoryTheory.Functor.{u3, u1, u4, u2} C _inst_1 D _inst_2) (CategoryTheory.Functor.category.{u3, u1, u4, u2} C _inst_1 D _inst_2) (CategoryTheory.Limits.instHasZeroMorphismsFunctorCategory.{u3, u4, u1, u2} C _inst_1 D _inst_2 (CategoryTheory.Preadditive.preadditiveHasZeroMorphisms.{u1, u2} D _inst_2 (CategoryTheory.Abelian.toPreadditive.{u1, u2} D _inst_2 _inst_3))) (CategoryTheory.Limits.functorCategoryHasColimitsOfShape.{0, u3, 0, u4, u1, u2} D _inst_2 CategoryTheory.Limits.WalkingParallelPair CategoryTheory.Limits.walkingParallelPairHomCategory C _inst_1 (CategoryTheory.Abelian.hasCoequalizers.{u1, u2} D _inst_2 _inst_3))) F G α)) X) (CategoryTheory.Abelian.coimageImageComparison.{u1, u2} D _inst_2 (CategoryTheory.Preadditive.preadditiveHasZeroMorphisms.{u1, u2} D _inst_2 (CategoryTheory.Abelian.toPreadditive.{u1, u2} D _inst_2 _inst_3)) (CategoryTheory.Abelian.has_kernels.{u1, u2} D _inst_2 _inst_3) (CategoryTheory.Abelian.has_cokernels.{u1, u2} D _inst_2 _inst_3) (Prefunctor.obj.{succ u3, succ u1, u4, u2} C (CategoryTheory.CategoryStruct.toQuiver.{u3, u4} C (CategoryTheory.Category.toCategoryStruct.{u3, u4} C _inst_1)) D (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} D (CategoryTheory.Category.toCategoryStruct.{u1, u2} D _inst_2)) (CategoryTheory.Functor.toPrefunctor.{u3, u1, u4, u2} C _inst_1 D _inst_2 F) X) (Prefunctor.obj.{succ u3, succ u1, u4, u2} C (CategoryTheory.CategoryStruct.toQuiver.{u3, u4} C (CategoryTheory.Category.toCategoryStruct.{u3, u4} C _inst_1)) D (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} D (CategoryTheory.Category.toCategoryStruct.{u1, u2} D _inst_2)) (CategoryTheory.Functor.toPrefunctor.{u3, u1, u4, u2} C _inst_1 D _inst_2 G) X) (CategoryTheory.NatTrans.app.{u3, u1, u4, u2} C _inst_1 D _inst_2 F G α X)) (CategoryTheory.Iso.inv.{u1, u2} D _inst_2 (Prefunctor.obj.{succ u3, succ u1, u4, u2} C (CategoryTheory.CategoryStruct.toQuiver.{u3, u4} C (CategoryTheory.Category.toCategoryStruct.{u3, u4} C _inst_1)) D (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} D (CategoryTheory.Category.toCategoryStruct.{u1, u2} D _inst_2)) (CategoryTheory.Functor.toPrefunctor.{u3, u1, u4, u2} C _inst_1 D _inst_2 (CategoryTheory.Abelian.image.{max u4 u1, max (max (max u4 u3) u2) u1} (CategoryTheory.Functor.{u3, u1, u4, u2} C _inst_1 D _inst_2) (CategoryTheory.Functor.category.{u3, u1, u4, u2} C _inst_1 D _inst_2) (CategoryTheory.Limits.instHasZeroMorphismsFunctorCategory.{u3, u4, u1, u2} C _inst_1 D _inst_2 (CategoryTheory.Preadditive.preadditiveHasZeroMorphisms.{u1, u2} D _inst_2 (CategoryTheory.Abelian.toPreadditive.{u1, u2} D _inst_2 _inst_3))) (CategoryTheory.Limits.hasKernels_of_hasEqualizers.{max u4 u1, max (max (max u4 u3) u2) u1} (CategoryTheory.Functor.{u3, u1, u4, u2} C _inst_1 D _inst_2) (CategoryTheory.Functor.category.{u3, u1, u4, u2} C _inst_1 D _inst_2) (CategoryTheory.Limits.instHasZeroMorphismsFunctorCategory.{u3, u4, u1, u2} C _inst_1 D _inst_2 (CategoryTheory.Preadditive.preadditiveHasZeroMorphisms.{u1, u2} D _inst_2 (CategoryTheory.Abelian.toPreadditive.{u1, u2} D _inst_2 _inst_3))) (CategoryTheory.Limits.functorCategoryHasLimitsOfShape.{0, u3, 0, u4, u1, u2} D _inst_2 CategoryTheory.Limits.WalkingParallelPair CategoryTheory.Limits.walkingParallelPairHomCategory C _inst_1 (CategoryTheory.Abelian.hasEqualizers.{u1, u2} D _inst_2 _inst_3))) (CategoryTheory.Limits.hasCokernels_of_hasCoequalizers.{max u4 u1, max (max (max u4 u3) u2) u1} (CategoryTheory.Functor.{u3, u1, u4, u2} C _inst_1 D _inst_2) (CategoryTheory.Functor.category.{u3, u1, u4, u2} C _inst_1 D _inst_2) (CategoryTheory.Limits.instHasZeroMorphismsFunctorCategory.{u3, u4, u1, u2} C _inst_1 D _inst_2 (CategoryTheory.Preadditive.preadditiveHasZeroMorphisms.{u1, u2} D _inst_2 (CategoryTheory.Abelian.toPreadditive.{u1, u2} D _inst_2 _inst_3))) (CategoryTheory.Limits.functorCategoryHasColimitsOfShape.{0, u3, 0, u4, u1, u2} D _inst_2 CategoryTheory.Limits.WalkingParallelPair CategoryTheory.Limits.walkingParallelPairHomCategory C _inst_1 (CategoryTheory.Abelian.hasCoequalizers.{u1, u2} D _inst_2 _inst_3))) F G α)) X) (CategoryTheory.Abelian.image.{u1, u2} D _inst_2 (CategoryTheory.Preadditive.preadditiveHasZeroMorphisms.{u1, u2} D _inst_2 (CategoryTheory.Abelian.toPreadditive.{u1, u2} D _inst_2 _inst_3)) (CategoryTheory.Abelian.has_kernels.{u1, u2} D _inst_2 _inst_3) (CategoryTheory.Abelian.has_cokernels.{u1, u2} D _inst_2 _inst_3) (Prefunctor.obj.{succ u3, succ u1, u4, u2} C (CategoryTheory.CategoryStruct.toQuiver.{u3, u4} C (CategoryTheory.Category.toCategoryStruct.{u3, u4} C _inst_1)) D (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} D (CategoryTheory.Category.toCategoryStruct.{u1, u2} D _inst_2)) (CategoryTheory.Functor.toPrefunctor.{u3, u1, u4, u2} C _inst_1 D _inst_2 F) X) (Prefunctor.obj.{succ u3, succ u1, u4, u2} C (CategoryTheory.CategoryStruct.toQuiver.{u3, u4} C (CategoryTheory.Category.toCategoryStruct.{u3, u4} C _inst_1)) D (CategoryTheory.CategoryStruct.toQuiver.{u1, u2} D (CategoryTheory.Category.toCategoryStruct.{u1, u2} D _inst_2)) (CategoryTheory.Functor.toPrefunctor.{u3, u1, u4, u2} C _inst_1 D _inst_2 G) X) (CategoryTheory.NatTrans.app.{u3, u1, u4, u2} C _inst_1 D _inst_2 F G α X)) (CategoryTheory.Abelian.FunctorCategory.imageObjIso.{u1, u2, u3, u4} C _inst_1 D _inst_2 _inst_3 F G α X))))
+Case conversion may be inaccurate. Consider using '#align category_theory.abelian.functor_category.coimage_image_comparison_app' CategoryTheory.Abelian.FunctorCategory.coimageImageComparison_app'ₓ'. -/
theorem coimageImageComparison_app' :
(coimageImageComparison α).app X =
(coimage_obj_iso α X).Hom ≫ coimageImageComparison (α.app X) ≫ (image_obj_iso α X).inv :=
@@ -86,6 +110,12 @@ theorem coimageImageComparison_app' :
category.comp_id]
#align category_theory.abelian.functor_category.coimage_image_comparison_app' CategoryTheory.Abelian.FunctorCategory.coimageImageComparison_app'
+/- warning: category_theory.abelian.functor_category.functor_category_is_iso_coimage_image_comparison -> CategoryTheory.Abelian.FunctorCategory.functor_category_isIso_coimageImageComparison is a dubious translation:
+lean 3 declaration is
+ forall {C : Type.{max u3 u4}} [_inst_1 : CategoryTheory.Category.{u3, max u3 u4} C] {D : Type.{u2}} [_inst_2 : CategoryTheory.Category.{max u1 u3 u4, u2} D] [_inst_3 : CategoryTheory.Abelian.{max u1 u3 u4, u2} D _inst_2] {F : CategoryTheory.Functor.{u3, max u1 u3 u4, max u3 u4, u2} C _inst_1 D _inst_2} {G : CategoryTheory.Functor.{u3, max u1 u3 u4, max u3 u4, u2} C _inst_1 D _inst_2} (α : Quiver.Hom.{succ (max u1 u3 u4), max u3 (max u1 u3 u4) (max u3 u4) u2} (CategoryTheory.Functor.{u3, max u1 u3 u4, max u3 u4, u2} C _inst_1 D _inst_2) (CategoryTheory.CategoryStruct.toQuiver.{max u1 u3 u4, max u3 (max u1 u3 u4) (max u3 u4) u2} (CategoryTheory.Functor.{u3, max u1 u3 u4, max u3 u4, u2} C _inst_1 D _inst_2) (CategoryTheory.Category.toCategoryStruct.{max u1 u3 u4, max u3 (max u1 u3 u4) (max u3 u4) u2} (CategoryTheory.Functor.{u3, max u1 u3 u4, max u3 u4, u2} C _inst_1 D _inst_2) (CategoryTheory.Functor.category.{u3, max u1 u3 u4, max u3 u4, u2} C _inst_1 D _inst_2))) F G), CategoryTheory.IsIso.{max u1 u3 u4, max u3 (max u1 u3 u4) (max u3 u4) u2} (CategoryTheory.Functor.{u3, max u1 u3 u4, max u3 u4, u2} C _inst_1 D _inst_2) (CategoryTheory.Functor.category.{u3, max u1 u3 u4, max u3 u4, u2} C _inst_1 D _inst_2) (CategoryTheory.Abelian.coimage.{max u1 u3 u4, max u3 (max u1 u3 u4) (max u3 u4) u2} (CategoryTheory.Functor.{u3, max u1 u3 u4, max u3 u4, u2} C _inst_1 D _inst_2) (CategoryTheory.Functor.category.{u3, max u1 u3 u4, max u3 u4, u2} C _inst_1 D _inst_2) (CategoryTheory.Limits.CategoryTheory.Functor.hasZeroMorphisms.{u3, max u3 u4, max u1 u3 u4, u2} C _inst_1 D _inst_2 (CategoryTheory.Preadditive.preadditiveHasZeroMorphisms.{max u1 u3 u4, u2} D _inst_2 (CategoryTheory.Abelian.toPreadditive.{max u1 u3 u4, u2} D _inst_2 _inst_3))) (CategoryTheory.Limits.hasKernels_of_hasEqualizers.{max u1 u3 u4, max u3 (max u1 u3 u4) (max u3 u4) u2} (CategoryTheory.Functor.{u3, max u1 u3 u4, max u3 u4, u2} C _inst_1 D _inst_2) (CategoryTheory.Functor.category.{u3, max u1 u3 u4, max u3 u4, u2} C _inst_1 D _inst_2) (CategoryTheory.Limits.CategoryTheory.Functor.hasZeroMorphisms.{u3, max u3 u4, max u1 u3 u4, u2} C _inst_1 D _inst_2 (CategoryTheory.Preadditive.preadditiveHasZeroMorphisms.{max u1 u3 u4, u2} D _inst_2 (CategoryTheory.Abelian.toPreadditive.{max u1 u3 u4, u2} D _inst_2 _inst_3))) (CategoryTheory.Limits.functorCategoryHasLimitsOfShape.{0, u3, 0, max u3 u4, max u1 u3 u4, u2} D _inst_2 CategoryTheory.Limits.WalkingParallelPair CategoryTheory.Limits.walkingParallelPairHomCategory C _inst_1 (CategoryTheory.Abelian.hasEqualizers.{max u1 u3 u4, u2} D _inst_2 _inst_3))) (CategoryTheory.Limits.hasCokernels_of_hasCoequalizers.{max u1 u3 u4, max u3 (max u1 u3 u4) (max u3 u4) u2} (CategoryTheory.Functor.{u3, max u1 u3 u4, max u3 u4, u2} C _inst_1 D _inst_2) (CategoryTheory.Functor.category.{u3, max u1 u3 u4, max u3 u4, u2} C _inst_1 D _inst_2) (CategoryTheory.Limits.CategoryTheory.Functor.hasZeroMorphisms.{u3, max u3 u4, max u1 u3 u4, u2} C _inst_1 D _inst_2 (CategoryTheory.Preadditive.preadditiveHasZeroMorphisms.{max u1 u3 u4, u2} D _inst_2 (CategoryTheory.Abelian.toPreadditive.{max u1 u3 u4, u2} D _inst_2 _inst_3))) (CategoryTheory.Limits.functorCategoryHasColimitsOfShape.{0, u3, 0, max u3 u4, max u1 u3 u4, u2} D _inst_2 CategoryTheory.Limits.WalkingParallelPair CategoryTheory.Limits.walkingParallelPairHomCategory C _inst_1 (CategoryTheory.Abelian.hasCoequalizers.{max u1 u3 u4, u2} D _inst_2 _inst_3))) F G α) (CategoryTheory.Abelian.image.{max u1 u3 u4, max u3 (max u1 u3 u4) (max u3 u4) u2} (CategoryTheory.Functor.{u3, max u1 u3 u4, max u3 u4, u2} C _inst_1 D _inst_2) (CategoryTheory.Functor.category.{u3, max u1 u3 u4, max u3 u4, u2} C _inst_1 D _inst_2) (CategoryTheory.Limits.CategoryTheory.Functor.hasZeroMorphisms.{u3, max u3 u4, max u1 u3 u4, u2} C _inst_1 D _inst_2 (CategoryTheory.Preadditive.preadditiveHasZeroMorphisms.{max u1 u3 u4, u2} D _inst_2 (CategoryTheory.Abelian.toPreadditive.{max u1 u3 u4, u2} D _inst_2 _inst_3))) (CategoryTheory.Limits.hasKernels_of_hasEqualizers.{max u1 u3 u4, max u3 (max u1 u3 u4) (max u3 u4) u2} (CategoryTheory.Functor.{u3, max u1 u3 u4, max u3 u4, u2} C _inst_1 D _inst_2) (CategoryTheory.Functor.category.{u3, max u1 u3 u4, max u3 u4, u2} C _inst_1 D _inst_2) (CategoryTheory.Limits.CategoryTheory.Functor.hasZeroMorphisms.{u3, max u3 u4, max u1 u3 u4, u2} C _inst_1 D _inst_2 (CategoryTheory.Preadditive.preadditiveHasZeroMorphisms.{max u1 u3 u4, u2} D _inst_2 (CategoryTheory.Abelian.toPreadditive.{max u1 u3 u4, u2} D _inst_2 _inst_3))) (CategoryTheory.Limits.functorCategoryHasLimitsOfShape.{0, u3, 0, max u3 u4, max u1 u3 u4, u2} D _inst_2 CategoryTheory.Limits.WalkingParallelPair CategoryTheory.Limits.walkingParallelPairHomCategory C _inst_1 (CategoryTheory.Abelian.hasEqualizers.{max u1 u3 u4, u2} D _inst_2 _inst_3))) (CategoryTheory.Limits.hasCokernels_of_hasCoequalizers.{max u1 u3 u4, max u3 (max u1 u3 u4) (max u3 u4) u2} (CategoryTheory.Functor.{u3, max u1 u3 u4, max u3 u4, u2} C _inst_1 D _inst_2) (CategoryTheory.Functor.category.{u3, max u1 u3 u4, max u3 u4, u2} C _inst_1 D _inst_2) (CategoryTheory.Limits.CategoryTheory.Functor.hasZeroMorphisms.{u3, max u3 u4, max u1 u3 u4, u2} C _inst_1 D _inst_2 (CategoryTheory.Preadditive.preadditiveHasZeroMorphisms.{max u1 u3 u4, u2} D _inst_2 (CategoryTheory.Abelian.toPreadditive.{max u1 u3 u4, u2} D _inst_2 _inst_3))) (CategoryTheory.Limits.functorCategoryHasColimitsOfShape.{0, u3, 0, max u3 u4, max u1 u3 u4, u2} D _inst_2 CategoryTheory.Limits.WalkingParallelPair CategoryTheory.Limits.walkingParallelPairHomCategory C _inst_1 (CategoryTheory.Abelian.hasCoequalizers.{max u1 u3 u4, u2} D _inst_2 _inst_3))) F G α) (CategoryTheory.Abelian.coimageImageComparison.{max u1 u3 u4, max u3 (max u1 u3 u4) (max u3 u4) u2} (CategoryTheory.Functor.{u3, max u1 u3 u4, max u3 u4, u2} C _inst_1 D _inst_2) (CategoryTheory.Functor.category.{u3, max u1 u3 u4, max u3 u4, u2} C _inst_1 D _inst_2) (CategoryTheory.Limits.CategoryTheory.Functor.hasZeroMorphisms.{u3, max u3 u4, max u1 u3 u4, u2} C _inst_1 D _inst_2 (CategoryTheory.Preadditive.preadditiveHasZeroMorphisms.{max u1 u3 u4, u2} D _inst_2 (CategoryTheory.Abelian.toPreadditive.{max u1 u3 u4, u2} D _inst_2 _inst_3))) (CategoryTheory.Limits.hasKernels_of_hasEqualizers.{max u1 u3 u4, max u3 (max u1 u3 u4) (max u3 u4) u2} (CategoryTheory.Functor.{u3, max u1 u3 u4, max u3 u4, u2} C _inst_1 D _inst_2) (CategoryTheory.Functor.category.{u3, max u1 u3 u4, max u3 u4, u2} C _inst_1 D _inst_2) (CategoryTheory.Limits.CategoryTheory.Functor.hasZeroMorphisms.{u3, max u3 u4, max u1 u3 u4, u2} C _inst_1 D _inst_2 (CategoryTheory.Preadditive.preadditiveHasZeroMorphisms.{max u1 u3 u4, u2} D _inst_2 (CategoryTheory.Abelian.toPreadditive.{max u1 u3 u4, u2} D _inst_2 _inst_3))) (CategoryTheory.Limits.functorCategoryHasLimitsOfShape.{0, u3, 0, max u3 u4, max u1 u3 u4, u2} D _inst_2 CategoryTheory.Limits.WalkingParallelPair CategoryTheory.Limits.walkingParallelPairHomCategory C _inst_1 (CategoryTheory.Abelian.hasEqualizers.{max u1 u3 u4, u2} D _inst_2 _inst_3))) (CategoryTheory.Limits.hasCokernels_of_hasCoequalizers.{max u1 u3 u4, max u3 (max u1 u3 u4) (max u3 u4) u2} (CategoryTheory.Functor.{u3, max u1 u3 u4, max u3 u4, u2} C _inst_1 D _inst_2) (CategoryTheory.Functor.category.{u3, max u1 u3 u4, max u3 u4, u2} C _inst_1 D _inst_2) (CategoryTheory.Limits.CategoryTheory.Functor.hasZeroMorphisms.{u3, max u3 u4, max u1 u3 u4, u2} C _inst_1 D _inst_2 (CategoryTheory.Preadditive.preadditiveHasZeroMorphisms.{max u1 u3 u4, u2} D _inst_2 (CategoryTheory.Abelian.toPreadditive.{max u1 u3 u4, u2} D _inst_2 _inst_3))) (CategoryTheory.Limits.functorCategoryHasColimitsOfShape.{0, u3, 0, max u3 u4, max u1 u3 u4, u2} D _inst_2 CategoryTheory.Limits.WalkingParallelPair CategoryTheory.Limits.walkingParallelPairHomCategory C _inst_1 (CategoryTheory.Abelian.hasCoequalizers.{max u1 u3 u4, u2} D _inst_2 _inst_3))) F G α)
+but is expected to have type
+ forall {C : Type.{u4}} [_inst_1 : CategoryTheory.Category.{u3, u4} C] {D : Type.{u2}} [_inst_2 : CategoryTheory.Category.{u1, u2} D] [_inst_3 : CategoryTheory.Abelian.{u1, u2} D _inst_2] {F : CategoryTheory.Functor.{u3, u1, u4, u2} C _inst_1 D _inst_2} {G : CategoryTheory.Functor.{u3, u1, u4, u2} C _inst_1 D _inst_2} (α : Quiver.Hom.{max (succ u4) (succ u1), max (max (max u4 u3) u2) u1} (CategoryTheory.Functor.{u3, u1, u4, u2} C _inst_1 D _inst_2) (CategoryTheory.CategoryStruct.toQuiver.{max u4 u1, max (max (max u4 u3) u2) u1} (CategoryTheory.Functor.{u3, u1, u4, u2} C _inst_1 D _inst_2) (CategoryTheory.Category.toCategoryStruct.{max u4 u1, max (max (max u4 u3) u2) u1} (CategoryTheory.Functor.{u3, u1, u4, u2} C _inst_1 D _inst_2) (CategoryTheory.Functor.category.{u3, u1, u4, u2} C _inst_1 D _inst_2))) F G), CategoryTheory.IsIso.{max u4 u1, max (max (max u4 u3) u2) u1} (CategoryTheory.Functor.{u3, u1, u4, u2} C _inst_1 D _inst_2) (CategoryTheory.Functor.category.{u3, u1, u4, u2} C _inst_1 D _inst_2) (CategoryTheory.Abelian.coimage.{max u4 u1, max (max (max u4 u3) u2) u1} (CategoryTheory.Functor.{u3, u1, u4, u2} C _inst_1 D _inst_2) (CategoryTheory.Functor.category.{u3, u1, u4, u2} C _inst_1 D _inst_2) (CategoryTheory.Limits.instHasZeroMorphismsFunctorCategory.{u3, u4, u1, u2} C _inst_1 D _inst_2 (CategoryTheory.Preadditive.preadditiveHasZeroMorphisms.{u1, u2} D _inst_2 (CategoryTheory.Abelian.toPreadditive.{u1, u2} D _inst_2 _inst_3))) (CategoryTheory.Limits.hasKernels_of_hasEqualizers.{max u4 u1, max (max (max u4 u3) u2) u1} (CategoryTheory.Functor.{u3, u1, u4, u2} C _inst_1 D _inst_2) (CategoryTheory.Functor.category.{u3, u1, u4, u2} C _inst_1 D _inst_2) (CategoryTheory.Limits.instHasZeroMorphismsFunctorCategory.{u3, u4, u1, u2} C _inst_1 D _inst_2 (CategoryTheory.Preadditive.preadditiveHasZeroMorphisms.{u1, u2} D _inst_2 (CategoryTheory.Abelian.toPreadditive.{u1, u2} D _inst_2 _inst_3))) (CategoryTheory.Limits.functorCategoryHasLimitsOfShape.{0, u3, 0, u4, u1, u2} D _inst_2 CategoryTheory.Limits.WalkingParallelPair CategoryTheory.Limits.walkingParallelPairHomCategory C _inst_1 (CategoryTheory.Abelian.hasEqualizers.{u1, u2} D _inst_2 _inst_3))) (CategoryTheory.Limits.hasCokernels_of_hasCoequalizers.{max u4 u1, max (max (max u4 u3) u2) u1} (CategoryTheory.Functor.{u3, u1, u4, u2} C _inst_1 D _inst_2) (CategoryTheory.Functor.category.{u3, u1, u4, u2} C _inst_1 D _inst_2) (CategoryTheory.Limits.instHasZeroMorphismsFunctorCategory.{u3, u4, u1, u2} C _inst_1 D _inst_2 (CategoryTheory.Preadditive.preadditiveHasZeroMorphisms.{u1, u2} D _inst_2 (CategoryTheory.Abelian.toPreadditive.{u1, u2} D _inst_2 _inst_3))) (CategoryTheory.Limits.functorCategoryHasColimitsOfShape.{0, u3, 0, u4, u1, u2} D _inst_2 CategoryTheory.Limits.WalkingParallelPair CategoryTheory.Limits.walkingParallelPairHomCategory C _inst_1 (CategoryTheory.Abelian.hasCoequalizers.{u1, u2} D _inst_2 _inst_3))) F G α) (CategoryTheory.Abelian.image.{max u4 u1, max (max (max u4 u3) u2) u1} (CategoryTheory.Functor.{u3, u1, u4, u2} C _inst_1 D _inst_2) (CategoryTheory.Functor.category.{u3, u1, u4, u2} C _inst_1 D _inst_2) (CategoryTheory.Limits.instHasZeroMorphismsFunctorCategory.{u3, u4, u1, u2} C _inst_1 D _inst_2 (CategoryTheory.Preadditive.preadditiveHasZeroMorphisms.{u1, u2} D _inst_2 (CategoryTheory.Abelian.toPreadditive.{u1, u2} D _inst_2 _inst_3))) (CategoryTheory.Limits.hasKernels_of_hasEqualizers.{max u4 u1, max (max (max u4 u3) u2) u1} (CategoryTheory.Functor.{u3, u1, u4, u2} C _inst_1 D _inst_2) (CategoryTheory.Functor.category.{u3, u1, u4, u2} C _inst_1 D _inst_2) (CategoryTheory.Limits.instHasZeroMorphismsFunctorCategory.{u3, u4, u1, u2} C _inst_1 D _inst_2 (CategoryTheory.Preadditive.preadditiveHasZeroMorphisms.{u1, u2} D _inst_2 (CategoryTheory.Abelian.toPreadditive.{u1, u2} D _inst_2 _inst_3))) (CategoryTheory.Limits.functorCategoryHasLimitsOfShape.{0, u3, 0, u4, u1, u2} D _inst_2 CategoryTheory.Limits.WalkingParallelPair CategoryTheory.Limits.walkingParallelPairHomCategory C _inst_1 (CategoryTheory.Abelian.hasEqualizers.{u1, u2} D _inst_2 _inst_3))) (CategoryTheory.Limits.hasCokernels_of_hasCoequalizers.{max u4 u1, max (max (max u4 u3) u2) u1} (CategoryTheory.Functor.{u3, u1, u4, u2} C _inst_1 D _inst_2) (CategoryTheory.Functor.category.{u3, u1, u4, u2} C _inst_1 D _inst_2) (CategoryTheory.Limits.instHasZeroMorphismsFunctorCategory.{u3, u4, u1, u2} C _inst_1 D _inst_2 (CategoryTheory.Preadditive.preadditiveHasZeroMorphisms.{u1, u2} D _inst_2 (CategoryTheory.Abelian.toPreadditive.{u1, u2} D _inst_2 _inst_3))) (CategoryTheory.Limits.functorCategoryHasColimitsOfShape.{0, u3, 0, u4, u1, u2} D _inst_2 CategoryTheory.Limits.WalkingParallelPair CategoryTheory.Limits.walkingParallelPairHomCategory C _inst_1 (CategoryTheory.Abelian.hasCoequalizers.{u1, u2} D _inst_2 _inst_3))) F G α) (CategoryTheory.Abelian.coimageImageComparison.{max u4 u1, max (max (max u4 u3) u2) u1} (CategoryTheory.Functor.{u3, u1, u4, u2} C _inst_1 D _inst_2) (CategoryTheory.Functor.category.{u3, u1, u4, u2} C _inst_1 D _inst_2) (CategoryTheory.Limits.instHasZeroMorphismsFunctorCategory.{u3, u4, u1, u2} C _inst_1 D _inst_2 (CategoryTheory.Preadditive.preadditiveHasZeroMorphisms.{u1, u2} D _inst_2 (CategoryTheory.Abelian.toPreadditive.{u1, u2} D _inst_2 _inst_3))) (CategoryTheory.Limits.hasKernels_of_hasEqualizers.{max u4 u1, max (max (max u4 u3) u2) u1} (CategoryTheory.Functor.{u3, u1, u4, u2} C _inst_1 D _inst_2) (CategoryTheory.Functor.category.{u3, u1, u4, u2} C _inst_1 D _inst_2) (CategoryTheory.Limits.instHasZeroMorphismsFunctorCategory.{u3, u4, u1, u2} C _inst_1 D _inst_2 (CategoryTheory.Preadditive.preadditiveHasZeroMorphisms.{u1, u2} D _inst_2 (CategoryTheory.Abelian.toPreadditive.{u1, u2} D _inst_2 _inst_3))) (CategoryTheory.Limits.functorCategoryHasLimitsOfShape.{0, u3, 0, u4, u1, u2} D _inst_2 CategoryTheory.Limits.WalkingParallelPair CategoryTheory.Limits.walkingParallelPairHomCategory C _inst_1 (CategoryTheory.Abelian.hasEqualizers.{u1, u2} D _inst_2 _inst_3))) (CategoryTheory.Limits.hasCokernels_of_hasCoequalizers.{max u4 u1, max (max (max u4 u3) u2) u1} (CategoryTheory.Functor.{u3, u1, u4, u2} C _inst_1 D _inst_2) (CategoryTheory.Functor.category.{u3, u1, u4, u2} C _inst_1 D _inst_2) (CategoryTheory.Limits.instHasZeroMorphismsFunctorCategory.{u3, u4, u1, u2} C _inst_1 D _inst_2 (CategoryTheory.Preadditive.preadditiveHasZeroMorphisms.{u1, u2} D _inst_2 (CategoryTheory.Abelian.toPreadditive.{u1, u2} D _inst_2 _inst_3))) (CategoryTheory.Limits.functorCategoryHasColimitsOfShape.{0, u3, 0, u4, u1, u2} D _inst_2 CategoryTheory.Limits.WalkingParallelPair CategoryTheory.Limits.walkingParallelPairHomCategory C _inst_1 (CategoryTheory.Abelian.hasCoequalizers.{u1, u2} D _inst_2 _inst_3))) F G α)
+Case conversion may be inaccurate. Consider using '#align category_theory.abelian.functor_category.functor_category_is_iso_coimage_image_comparison CategoryTheory.Abelian.FunctorCategory.functor_category_isIso_coimageImageComparisonₓ'. -/
instance functor_category_isIso_coimageImageComparison : IsIso (Abelian.coimageImageComparison α) :=
by
have : ∀ X : C, is_iso ((abelian.coimage_image_comparison α).app X) :=
@@ -98,6 +128,12 @@ instance functor_category_isIso_coimageImageComparison : IsIso (Abelian.coimageI
end FunctorCategory
+/- warning: category_theory.abelian.functor_category_abelian -> CategoryTheory.Abelian.functorCategoryAbelian is a dubious translation:
+lean 3 declaration is
+ forall {C : Type.{max u3 u4}} [_inst_1 : CategoryTheory.Category.{u3, max u3 u4} C] {D : Type.{u2}} [_inst_2 : CategoryTheory.Category.{max u1 u3 u4, u2} D] [_inst_3 : CategoryTheory.Abelian.{max u1 u3 u4, u2} D _inst_2], CategoryTheory.Abelian.{max u1 u3 u4, max u3 (max u1 u3 u4) (max u3 u4) u2} (CategoryTheory.Functor.{u3, max u1 u3 u4, max u3 u4, u2} C _inst_1 D _inst_2) (CategoryTheory.Functor.category.{u3, max u1 u3 u4, max u3 u4, u2} C _inst_1 D _inst_2)
+but is expected to have type
+ forall {C : Type.{u4}} [_inst_1 : CategoryTheory.Category.{u3, u4} C] {D : Type.{u2}} [_inst_2 : CategoryTheory.Category.{u1, u2} D] [_inst_3 : CategoryTheory.Abelian.{u1, u2} D _inst_2], CategoryTheory.Abelian.{max u4 u1, max (max (max u2 u4) u1) u3} (CategoryTheory.Functor.{u3, u1, u4, u2} C _inst_1 D _inst_2) (CategoryTheory.Functor.category.{u3, u1, u4, u2} C _inst_1 D _inst_2)
+Case conversion may be inaccurate. Consider using '#align category_theory.abelian.functor_category_abelian CategoryTheory.Abelian.functorCategoryAbelianₓ'. -/
noncomputable instance functorCategoryAbelian : Abelian (C ⥤ D) :=
Abelian.ofCoimageImageComparisonIsIso
#align category_theory.abelian.functor_category_abelian CategoryTheory.Abelian.functorCategoryAbelian
mathlib commit https://github.com/leanprover-community/mathlib/commit/bd9851ca476957ea4549eb19b40e7b5ade9428cc
Empty lines were removed by executing the following Python script twice
import os
import re
# Loop through each file in the repository
for dir_path, dirs, files in os.walk('.'):
for filename in files:
if filename.endswith('.lean'):
file_path = os.path.join(dir_path, filename)
# Open the file and read its contents
with open(file_path, 'r') as file:
content = file.read()
# Use a regular expression to replace sequences of "variable" lines separated by empty lines
# with sequences without empty lines
modified_content = re.sub(r'(variable.*\n)\n(variable(?! .* in))', r'\1\2', content)
# Write the modified content back to the file
with open(file_path, 'w') as file:
file.write(modified_content)
@@ -31,7 +31,6 @@ universe z w v u
-- Porting note: removed restrictions on universes
variable {C : Type u} [Category.{v} C]
-
variable {D : Type w} [Category.{z} D] [Abelian D]
namespace FunctorCategory
Homogenises porting notes via capitalisation and addition of whitespace.
It makes the following changes:
@@ -28,7 +28,7 @@ section
universe z w v u
--- porting note: removed restrictions on universes
+-- Porting note: removed restrictions on universes
variable {C : Type u} [Category.{v} C]
@@ -102,7 +102,7 @@ noncomputable instance functorCategoryAbelian : Abelian (C ⥤ D) :=
end
---porting note: the following section should be unnecessary because there are no longer
+-- Porting note: the following section should be unnecessary because there are no longer
--any universe restrictions for `functorCategoryAbelian`
--
--section
@@ -2,17 +2,14 @@
Copyright (c) 2022 Scott Morrison. All rights reserved.
Released under Apache 2.0 license as described in the file LICENSE.
Authors: Scott Morrison
-
-! This file was ported from Lean 3 source module category_theory.abelian.functor_category
-! leanprover-community/mathlib commit 8abfb3ba5e211d8376b855dab5d67f9eba9e0774
-! Please do not edit these lines, except to modify the commit id
-! if you have ported upstream changes.
-/
import Mathlib.CategoryTheory.Abelian.Basic
import Mathlib.CategoryTheory.Preadditive.FunctorCategory
import Mathlib.CategoryTheory.Limits.Shapes.FunctorCategory
import Mathlib.CategoryTheory.Limits.Preserves.Shapes.Kernels
+#align_import category_theory.abelian.functor_category from "leanprover-community/mathlib"@"8abfb3ba5e211d8376b855dab5d67f9eba9e0774"
+
/-!
# If `D` is abelian, then the functor category `C ⥤ D` is also abelian.
@@ -68,8 +68,7 @@ def imageObjIso : (Abelian.image α).obj X ≅ Abelian.image (α.app X) :=
theorem coimageImageComparison_app :
coimageImageComparison (α.app X) =
(coimageObjIso α X).inv ≫ (coimageImageComparison α).app X ≫ (imageObjIso α X).hom := by
- apply coequalizer.hom_ext
- apply equalizer.hom_ext
+ ext
dsimp
dsimp [imageObjIso, coimageObjIso, cokernel.map]
simp only [coimage_image_factorisation, PreservesKernel.iso_hom, Category.assoc,
The unported dependencies are