/-- The unit isomorphism of the
equivalence `triangleOpEquivalence C : (Triangle C)ᵒᵖ ≌ Triangle Cᵒᵖ` .-/
@[simps!]
noncomputable def unitIso : 𝟭 _ ≅ functor C ⋙ inverse C :=
  NatIso.ofComponents (fun T => Iso.op
    (Triangle.isoMk _ _ (Iso.refl _) (Iso.refl _) (Iso.refl _) (by aesop_cat) (by aesop_cat)
      (Quiver.Hom.op_inj
        (by simp [shift_unop_opShiftFunctorEquivalence_counitIso_inv_app]))))
    (fun {T₁ T₂} f => Quiver.Hom.unop_inj (by 

Proof state:
C : Type u_1
inst✝¹ : Category.{?u.110004, u_1} C
inst✝ : HasShift C ℤ
T₁ T₂ : (Triangle C)ᵒᵖ
f : T₁ ⟶ T₂
⊢ ((𝟭 (Triangle C)ᵒᵖ).map f ≫
        ((fun T =>
              Iso.op
                (Triangle.isoMk
                  (Triangle.mk ((functor C).obj T).mor₂.unop ((functor C).obj T).mor₁.unop
                    (((opShiftFunctorEquivalence C 1).unitIso.inv.app ((functor C).obj T).obj₁).unop ≫
                      (shiftFunctor C 1).map ((functor C).obj T).mor₃.unop))
                  T.unop
                  (Iso.refl
                    (Triangle.mk ((functor C).obj T).mor₂.unop ((functor C).obj T).mor₁.unop
                        (((opShiftFunctorEquivalence C 1).unitIso.inv.app ((functor C).obj T).obj₁).unop ≫
                          (shiftFunctor C 1).map ((functor C).obj T).mor₃.unop)).obj₁)
                  (Iso.refl
                    (Triangle.mk ((functor C).obj T).mor₂.unop ((functor C).obj T).mor₁.unop
                        (((opShiftFunctorEquivalence C 1).unitIso.inv.app ((functor C).obj T).obj₁).unop ≫
                          (shiftFunctor C 1).map ((functor C).obj T).mor₃.unop)).obj₂)
                  (Iso.refl
                    (Triangle.mk ((functor C).obj T).mor₂.unop ((functor C).obj T).mor₁.unop
                        (((opShiftFunctorEquivalence C 1).unitIso.inv.app ((functor C).obj T).obj₁).unop ≫
                          (shiftFunctor C 1).map ((functor C).obj T).mor₃.unop)).obj₃)))
            T₂).hom).unop =
    (((fun T =>
              Iso.op
                (Triangle.isoMk
                  (Triangle.mk ((functor C).obj T).mor₂.unop ((functor C).obj T).mor₁.unop
                    (((opShiftFunctorEquivalence C 1).unitIso.inv.app ((functor C).obj T).obj₁).unop ≫
                      (shiftFunctor C 1).map ((functor C).obj T).mor₃.unop))
                  T.unop
                  (Iso.refl
                    (Triangle.mk ((functor C).obj T).mor₂.unop ((functor C).obj T).mor₁.unop
                        (((opShiftFunctorEquivalence C 1).unitIso.inv.app ((functor C).obj T).obj₁).unop ≫
                          (shiftFunctor C 1).map ((functor C).obj T).mor₃.unop)).obj₁)
                  (Iso.refl
                    (Triangle.mk ((functor C).obj T).mor₂.unop ((functor C).obj T).mor₁.unop
                        (((opShiftFunctorEquivalence C 1).unitIso.inv.app ((functor C).obj T).obj₁).unop ≫
                          (shiftFunctor C 1).map ((functor C).obj T).mor₃.unop)).obj₂)
                  (Iso.refl
                    (Triangle.mk ((functor C).obj T).mor₂.unop ((functor C).obj T).mor₁.unop
                        (((opShiftFunctorEquivalence C 1).unitIso.inv.app ((functor C).obj T).obj₁).unop ≫
                          (shiftFunctor C 1).map ((functor C).obj T).mor₃.unop)).obj₃)))
            T₁).hom ≫
        (functor C ⋙ inverse C).map f).unop

Next tactic:
aesop_cat