-- Lean 4 proof step from Mathlib.Geometry.Manifold.Sheaf.LocallyRingedSpace (goal)
Goal:
𝕜 : Type u
inst : NontriviallyNormedField 𝕜
EM : Type u_1
inst_1 : NormedAddCommGroup EM
inst_2 : NormedSpace 𝕜 EM
HM : Type u_2
inst_3 : TopologicalSpace HM
IM : ModelWithCorners 𝕜 EM HM
M : Type u
inst_4 : TopologicalSpace M
inst_5 : ChartedSpace HM M
x : M
S : TopCat.Presheaf CommRingCat (TopCat.of M) := TopCat.Sheaf.presheaf (smoothSheafCommRing IM 𝓘(𝕜, 𝕜) M 𝕜)
U : Opens M
hxU : x ∈ U
f : C^∞⟮IM, ↥U; 𝓘(𝕜, 𝕜), 𝕜⟯
hf :
  Ne (α := 𝕜)
    ((eval IM 𝓘(𝕜, 𝕜) M 𝕜 x : (a : (↑((smoothSheafCommRing IM 𝓘(𝕜, 𝕜) M 𝕜).presheaf.stalk x) : Type u)) → 𝕜)
        ((CategoryTheory.ConcreteCategory.hom (FC := fun (R S : CommRingCat.{u}) ↦ (↑R : Type u) →+* (↑S : Type u))
                (CC := CommRingCat.carrier) (Y := S.stalk x) (S.germ U x hxU) :
              (a : (↑(S.obj (Opposite.op U)) : Type u)) → (↑(S.stalk x) : Type u))
            f :
          (↑(S.stalk x) : Type u)) :
      𝕜)
    (0 : 𝕜)
hf' : Ne (α := 𝕜) ((f : (a : ↥U) → 𝕜) (Subtype.mk (p := fun (x : M) ↦ x ∈ U) x hxU) : 𝕜) (0 : 𝕜)
V : Opens M
hUV : V ≤ U
hV₀f :
  ∀ y ∈ Set.range (Set.inclusion (s := (↑V : Set M)) (t := (↑U : Set M)) hUV),
    Ne (α := 𝕜) ((f : (a : ↥U) → 𝕜) y : 𝕜) (0 : 𝕜)
hV₀ : IsOpen[instTopologicalSpaceSubtype] (Set.range (Set.inclusion (s := (↑V : Set M)) (t := (↑U : Set M)) hUV))
hxV₀ :
  Subtype.mk (p := fun (x : M) ↦ x ∈ U) x hxU ∈ Set.range (Set.inclusion (s := (↑V : Set M)) (t := (↑U : Set M)) hUV)
hxV : x ∈ (↑V : Set M)
hVf :
  ∀ (y : ↥V), Ne (α := 𝕜) ((f : (a : ↥U) → 𝕜) (Set.inclusion (s := (↑V : Set M)) (t := (↑U : Set M)) hUV y) : 𝕜) (0 : 𝕜)
g : C^∞⟮IM, ↥V; 𝓘(𝕜, 𝕜), 𝕜⟯ :=
  Subtype.mk (p := fun (f : ↥V → 𝕜) ↦ ContMDiff IM 𝓘(𝕜, 𝕜) ∞ f)
    ((⇑f : (a : ↥U) → 𝕜) ∘ Set.inclusion (s := (↑V : Set M)) (t := (↑U : Set M)) hUV)⁻¹ ⋯
⊢ HMul.hMul (α :=
      (↑(TopCat.Presheaf.stalk (X := TopCat.of M) (TopCat.Sheaf.presheaf (smoothSheafCommRing IM 𝓘(𝕜, 𝕜) M 𝕜)) x) :
        Type u))
      (β :=
      (↑(TopCat.Presheaf.stalk (X := TopCat.of M) (TopCat.Sheaf.presheaf (smoothSheafCommRing IM 𝓘(𝕜, 𝕜) M 𝕜)) x) :
        Type u))
      ((CategoryTheory.ConcreteCategory.hom (FC := fun (R S : CommRingCat.{u}) ↦ (↑R : Type u) →+* (↑S : Type u)) (CC :=
              CommRingCat.carrier) (Y := S.stalk x) (S.germ V x hxV) :
            (a : (↑(S.obj (Opposite.op V)) : Type u)) → (↑(S.stalk x) : Type u))
          g :
        (↑(S.stalk x) : Type u))
      ((CategoryTheory.ConcreteCategory.hom (FC := fun (R S : CommRingCat.{u}) ↦ (↑R : Type u) →+* (↑S : Type u)) (CC :=
              CommRingCat.carrier) (Y := S.stalk x) (S.germ V x hxV) :
            (a : (↑(S.obj (Opposite.op V)) : Type u)) → (↑(S.stalk x) : Type u))
          ((ContMDiffMap.restrictRingHom IM 𝓘(𝕜, 𝕜) 𝕜 hUV : (a : C^∞⟮IM, ↥U; 𝓘(𝕜, 𝕜), 𝕜⟯) → C^∞⟮IM, ↥V; 𝓘(𝕜, 𝕜), 𝕜⟯) f :
            C^∞⟮IM, ↥V; 𝓘(𝕜, 𝕜), 𝕜⟯) :
        (↑(S.stalk x) : Type u)) =
    1
have mpr : Eq (α :=
  (↑(TopCat.Presheaf.stalk (X := TopCat.of M) (TopCat.Sheaf.presheaf (smoothSheafCommRing IM 𝓘(𝕜, 𝕜) M 𝕜)) x) : Type u))
  ((CategoryTheory.ConcreteCategory.hom (FC := fun (R S : CommRingCat.{u}) ↦ (↑R : Type u) →+* (↑S : Type u)) (CC :=
          CommRingCat.carrier) (Y := S.stalk x) (S.germ V x hxV) :
        (a : (↑(S.obj (Opposite.op V)) : Type u)) → (↑((smoothSheafCommRing IM 𝓘(𝕜, 𝕜) M 𝕜).presheaf.stalk x) : Type u))
      (HMul.hMul (β := (↑(S.obj (Opposite.op V)) : Type u)) g
        ((ContMDiffMap.restrictRingHom IM 𝓘(𝕜, 𝕜) 𝕜 hUV : (a : C^∞⟮IM, ↥U; 𝓘(𝕜, 𝕜), 𝕜⟯) → C^∞⟮IM, ↥V; 𝓘(𝕜, 𝕜), 𝕜⟯) f :
          C^∞⟮IM, ↥V; 𝓘(𝕜, 𝕜), 𝕜⟯)) :
    (↑(TopCat.Presheaf.stalk (X := TopCat.of M) (TopCat.Sheaf.presheaf (smoothSheafCommRing IM 𝓘(𝕜, 𝕜) M 𝕜)) x) :
      Type u))
  (1 :
    (↑(TopCat.Presheaf.stalk (X := TopCat.of M) (TopCat.Sheaf.presheaf (smoothSheafCommRing IM 𝓘(𝕜, 𝕜) M 𝕜)) x) :
      Type u))
Tactic: rw [← map_mul]