-- Lean 4 proof step from Mathlib.RingTheory.Etale.StandardEtale (goal)
Goal:
R : Type u_1
S : Type u_2
T : Type u_3
inst : CommRing R
inst_1 : CommRing S
inst_2 : CommRing T
inst_3 : Algebra R S
inst_4 : Algebra R T
P : StandardEtalePair R
⊢ Eq (α :=
    HasQuotient.Quotient (Localization.Away P.g) (B := Ideal (Localization.Away P.g))
        (Ideal.span
          (singleton (α := Localization.Away P.g)
            ((algebraMap R[X] (Localization.Away P.g) : (a : R[X]) → Localization.Away P.g) P.f :
              Localization.Away P.g))) →ₐ[R]
      HasQuotient.Quotient (Localization.Away P.g) (B := Ideal (Localization.Away P.g))
        (Ideal.span
          (singleton (α := Localization.Away P.g)
            ((algebraMap R[X] (Localization.Away P.g) : (a : R[X]) → Localization.Away P.g) P.f :
              Localization.Away P.g))))
    (AlgHom.comp
        (P.lift
          ((algebraMap R[X]
                (HasQuotient.Quotient (Localization.Away P.g) (B := Ideal (Localization.Away P.g))
                  (Ideal.span
                    (singleton (α := Localization.Away P.g)
                      ((algebraMap R[X] (Localization.Away P.g) : (a : R[X]) → Localization.Away P.g) P.f :
                        Localization.Away P.g)))) :
              (a : R[X]) →
                Localization.Away P.g ⧸
                  Ideal.span {(algebraMap R[X] (Localization.Away P.g) : (a : R[X]) → Localization.Away P.g) P.f})
            X)
          ⋯)
        (Ideal.Quotient.liftₐ
          (Ideal.span
            (singleton (α := Localization.Away P.g)
              ((algebraMap R[X] (Localization.Away P.g) : (a : R[X]) → Localization.Away P.g) P.f :
                Localization.Away P.g)))
          (IsLocalization.liftAlgHom (R := R[X]) (M := Submonoid.powers P.g) (f := aeval P.X) ⋯) ⋯) :
      HasQuotient.Quotient (Localization.Away P.g) (B := Ideal (Localization.Away P.g))
          (Ideal.span
            (singleton (α := Localization.Away P.g)
              ((algebraMap R[X] (Localization.Away P.g) : (a : R[X]) → Localization.Away P.g) P.f :
                Localization.Away P.g))) →ₐ[R]
        HasQuotient.Quotient (Localization.Away P.g) (B := Ideal (Localization.Away P.g))
          (Ideal.span
            (singleton (α := Localization.Away P.g)
              ((algebraMap R[X] (Localization.Away P.g) : (a : R[X]) → Localization.Away P.g) P.f :
                Localization.Away P.g))))
    (AlgHom.id R
        (HasQuotient.Quotient (Localization.Away P.g) (B := Ideal (Localization.Away P.g))
          (Ideal.span
            (singleton (α := Localization.Away P.g)
              ((algebraMap R[X] (Localization.Away P.g) : (a : R[X]) → Localization.Away P.g) P.f :
                Localization.Away P.g)))) :
      HasQuotient.Quotient (Localization.Away P.g) (B := Ideal (Localization.Away P.g))
          (Ideal.span
            (singleton (α := Localization.Away P.g)
              ((algebraMap R[X] (Localization.Away P.g) : (a : R[X]) → Localization.Away P.g) P.f :
                Localization.Away P.g))) →ₐ[R]
        HasQuotient.Quotient (Localization.Away P.g) (B := Ideal (Localization.Away P.g))
          (Ideal.span
            (singleton (α := Localization.Away P.g)
              ((algebraMap R[X] (Localization.Away P.g) : (a : R[X]) → Localization.Away P.g) P.f :
                Localization.Away P.g))))
have refine_5 : Eq (α :=
  Localization.Away P.g →ₐ[R]
    HasQuotient.Quotient (Localization.Away P.g) (B := Ideal (Localization.Away P.g))
      (Ideal.span
        (singleton (α := Localization.Away P.g)
          ((algebraMap R[X] (Localization.Away P.g) : (a : R[X]) → Localization.Away P.g) P.f :
            Localization.Away P.g))))
  (AlgHom.comp (B :=
      HasQuotient.Quotient (Localization.Away P.g) (B := Ideal (Localization.Away P.g))
        (Ideal.span
          (singleton (α := Localization.Away P.g)
            ((algebraMap R[X] (Localization.Away P.g) : (a : R[X]) → Localization.Away P.g) P.f :
              Localization.Away P.g))))
      (AlgHom.comp
        (P.lift
          ((algebraMap R[X]
                (HasQuotient.Quotient (Localization.Away P.g) (B := Ideal (Localization.Away P.g))
                  (Ideal.span
                    (singleton (α := Localization.Away P.g)
                      ((algebraMap R[X] (Localization.Away P.g) : (a : R[X]) → Localization.Away P.g) P.f :
                        Localization.Away P.g)))) :
              (a : R[X]) →
                Localization.Away P.g ⧸
                  Ideal.span {(algebraMap R[X] (Localization.Away P.g) : (a : R[X]) → Localization.Away P.g) P.f})
            X)
          sorry)
        (Ideal.Quotient.liftₐ
          (Ideal.span
            (singleton (α := Localization.Away P.g)
              ((algebraMap R[X] (Localization.Away P.g) : (a : R[X]) → Localization.Away P.g) P.f :
                Localization.Away P.g)))
          (IsLocalization.liftAlgHom (R := R[X]) (M := Submonoid.powers P.g) (f := aeval P.X) sorry) sorry))
      (Ideal.Quotient.mkₐ R
        (Ideal.span
          (singleton (α := Localization.Away P.g)
            ((algebraMap R[X] (Localization.Away P.g) : (a : R[X]) → Localization.Away P.g) P.f :
              Localization.Away P.g)))) :
    Localization.Away P.g →ₐ[R]
      HasQuotient.Quotient (Localization.Away P.g) (B := Ideal (Localization.Away P.g))
        (Ideal.span
          (singleton (α := Localization.Away P.g)
            ((algebraMap R[X] (Localization.Away P.g) : (a : R[X]) → Localization.Away P.g) P.f :
              Localization.Away P.g))))
  (AlgHom.comp
      (AlgHom.id R
        (HasQuotient.Quotient (Localization.Away P.g) (B := Ideal (Localization.Away P.g))
          (Ideal.span
            (singleton (α := Localization.Away P.g)
              ((algebraMap R[X] (Localization.Away P.g) : (a : R[X]) → Localization.Away P.g) P.f :
                Localization.Away P.g)))))
      (Ideal.Quotient.mkₐ R
        (Ideal.span
          (singleton (α := Localization.Away P.g)
            ((algebraMap R[X] (Localization.Away P.g) : (a : R[X]) → Localization.Away P.g) P.f :
              Localization.Away P.g)))) :
    Localization.Away P.g →ₐ[R]
      HasQuotient.Quotient (Localization.Away P.g) (B := Ideal (Localization.Away P.g))
        (Ideal.span
          (singleton (α := Localization.Away P.g)
            ((algebraMap R[X] (Localization.Away P.g) : (a : R[X]) → Localization.Away P.g) P.f :
              Localization.Away P.g))))
Tactic: apply Ideal.Quotient.algHom_ext