-- Lean 4 proof step from Mathlib.Algebra.Homology.DerivedCategory.Ext.ExactSequences (hypothesis)
Goal:
C : Type u
inst : Category.{v, u} C
inst_1 : Abelian.{v, u} C
inst_2 : HasExt.{w, v, u} C
S : ShortComplex.{v, u} C
hS : S.ShortExact
Y : C
n₀ : ℕ
x₁ : Ext.{w, v, u} S.X₁ Y n₀
n₁ : ℕ
hn₁ : 1 + n₀ = n₁
hx₁ : comp hS.extClass x₁ hn₁ = 0
this :
  (ShortComplex.mk (X₁ := AddCommGrpCat.of (Ext.{w, v, u} S.X₂ Y n₀)) (AddCommGrpCat.ofHom (precomp (mk₀ S.f) Y ⋯))
      (AddCommGrpCat.ofHom (precomp hS.extClass Y hn₁)) ⋯).Exact
⊢ ∃ (x₂ : Ext.{w, v, u} S.X₂ Y n₀), comp (mk₀ S.f) x₂ ⋯ = x₁
have this₁ : ∀
  (x₂ :
    (↑(ShortComplex.mk (X₁ := AddCommGrpCat.of (Ext.{w, v, u} S.X₂ Y n₀)) (AddCommGrpCat.ofHom (precomp (mk₀ S.f) Y sorry))
            (AddCommGrpCat.ofHom (precomp hS.extClass Y hn₁)) sorry).X₂ :
      Type w)),
  Eq (α :=
      (↑(ShortComplex.mk (X₁ := AddCommGrpCat.of (Ext.{w, v, u} S.X₂ Y n₀))
              (AddCommGrpCat.ofHom (precomp (mk₀ S.f) Y sorry)) (AddCommGrpCat.ofHom (precomp hS.extClass Y hn₁)) sorry).X₃ :
        Type w))
      ((ConcreteCategory.hom (FC := fun (x1 x2 : AddCommGrpCat.{w}) ↦ (↑x1 : Type w) →+ (↑x2 : Type w)) (CC :=
              AddCommGrpCat.carrier)
              (ShortComplex.mk (X₁ := AddCommGrpCat.of (Ext.{w, v, u} S.X₂ Y n₀))
                  (AddCommGrpCat.ofHom (precomp (mk₀ S.f) Y sorry)) (AddCommGrpCat.ofHom (precomp hS.extClass Y hn₁)) sorry).g :
            (a :
                (↑{ X₁ := AddCommGrpCat.of (Ext S.X₂ Y n₀), X₂ := AddCommGrpCat.of (Ext S.X₁ Y n₀),
                        X₃ := AddCommGrpCat.of (Ext S.X₃ Y n₁), f := AddCommGrpCat.ofHom ((mk₀ S.f).precomp Y sorry),
                        g := AddCommGrpCat.ofHom (hS.extClass.precomp Y hn₁), zero := sorry }.X₂ :
                  Type w)) →
              (↑{ X₁ := AddCommGrpCat.of (Ext S.X₂ Y n₀), X₂ := AddCommGrpCat.of (Ext S.X₁ Y n₀),
                      X₃ := AddCommGrpCat.of (Ext S.X₃ Y n₁), f := AddCommGrpCat.ofHom ((mk₀ S.f).precomp Y sorry),
                      g := AddCommGrpCat.ofHom (hS.extClass.precomp Y hn₁), zero := sorry }.X₃ :
                Type w))
          x₂ :
        (↑(ShortComplex.mk (X₁ := AddCommGrpCat.of (Ext.{w, v, u} S.X₂ Y n₀))
                (AddCommGrpCat.ofHom (precomp (mk₀ S.f) Y sorry)) (AddCommGrpCat.ofHom (precomp hS.extClass Y hn₁)) sorry).X₃ :
          Type w))
      (0 :
        (↑(ShortComplex.mk (X₁ := AddCommGrpCat.of (Ext.{w, v, u} S.X₂ Y n₀))
                (AddCommGrpCat.ofHom (precomp (mk₀ S.f) Y sorry)) (AddCommGrpCat.ofHom (precomp hS.extClass Y hn₁)) sorry).X₃ :
          Type w)) →
    ∃ (x₁ :
      (↑(ShortComplex.mk (X₁ := AddCommGrpCat.of (Ext.{w, v, u} S.X₂ Y n₀))
              (AddCommGrpCat.ofHom (precomp (mk₀ S.f) Y sorry)) (AddCommGrpCat.ofHom (precomp hS.extClass Y hn₁)) sorry).X₁ :
        Type w)),
      (ConcreteCategory.hom (FC := fun (x1 x2 : AddCommGrpCat.{w}) ↦ (↑x1 : Type w) →+ (↑x2 : Type w)) (CC :=
              AddCommGrpCat.carrier)
              (ShortComplex.mk (X₁ := AddCommGrpCat.of (Ext.{w, v, u} S.X₂ Y n₀))
                  (AddCommGrpCat.ofHom (precomp (mk₀ S.f) Y sorry)) (AddCommGrpCat.ofHom (precomp hS.extClass Y hn₁)) sorry).f :
            (a :
                (↑{ X₁ := AddCommGrpCat.of (Ext S.X₂ Y n₀), X₂ := AddCommGrpCat.of (Ext S.X₁ Y n₀),
                        X₃ := AddCommGrpCat.of (Ext S.X₃ Y n₁), f := AddCommGrpCat.ofHom ((mk₀ S.f).precomp Y sorry),
                        g := AddCommGrpCat.ofHom (hS.extClass.precomp Y hn₁), zero := sorry }.X₁ :
                  Type w)) →
              (↑{ X₁ := AddCommGrpCat.of (Ext S.X₂ Y n₀), X₂ := AddCommGrpCat.of (Ext S.X₁ Y n₀),
                      X₃ := AddCommGrpCat.of (Ext S.X₃ Y n₁), f := AddCommGrpCat.ofHom ((mk₀ S.f).precomp Y sorry),
                      g := AddCommGrpCat.ofHom (hS.extClass.precomp Y hn₁), zero := sorry }.X₂ :
                Type w))
          x₁ =
        x₂
Tactic: rw [ShortComplex.ab_exact_iff] at this
Cleared hypotheses: this