-- Lean 4 proof step from Mathlib.NumberTheory.LocalField.Basic (goal)
Goal:
K : Type u_1
inst : Field K
inst_1 : ValuativeRel K
inst_2 : TopologicalSpace K
inst_3 : IsNonarchimedeanLocalField K
γ : K
hγ : ¬γ = 0
this_1 : UniformSpace K := IsTopologicalAddGroup.rightUniformSpace K
this : IsUniformAddGroup K := ⋯
s : Set K
hs : Membership.mem (γ := Filter K) (nhds 0) s
hs' : IsCompact s
r : K
hr : r ≠ 0
hr1 :
  LT.lt (α := ValueGroupWithZero K) ((valuation K : (a : K) → ValueGroupWithZero K) r : ValueGroupWithZero K)
    (1 : ValueGroupWithZero K)
H :
  {x : K |
      LE.le (α :=
        MonoidWithZeroHom.ValueGroup₀ (F := K →*₀ ValueGroupWithZero K) (↑(valuation K) : K →*₀ ValueGroupWithZero K))
        ((Valuation.restrict (valuation K) :
              (a : K) → MonoidWithZeroHom.ValueGroup₀ (↑(valuation K) : K →*₀ ValueGroupWithZero K))
            x :
          MonoidWithZeroHom.ValueGroup₀ (F := K →*₀ ValueGroupWithZero K) (↑(valuation K) : K →*₀ ValueGroupWithZero K))
        ((Valuation.restrict (valuation K) :
              (a : K) → MonoidWithZeroHom.ValueGroup₀ (↑(valuation K) : K →*₀ ValueGroupWithZero K))
            r :
          MonoidWithZeroHom.ValueGroup₀ (F := K →*₀ ValueGroupWithZero K)
            (↑(valuation K) : K →*₀ ValueGroupWithZero K))} ⊆
    s
⊢ IsCompact.{u_1} (X := K)
    {x : K |
      LE.le (α :=
        MonoidWithZeroHom.ValueGroup₀ (F := K →*₀ ValueGroupWithZero K) (↑(valuation K) : K →*₀ ValueGroupWithZero K))
        ((Valuation.restrict (valuation K) :
              (a : K) → MonoidWithZeroHom.ValueGroup₀ (↑(valuation K) : K →*₀ ValueGroupWithZero K))
            x :
          MonoidWithZeroHom.ValueGroup₀ (F := K →*₀ ValueGroupWithZero K) (↑(valuation K) : K →*₀ ValueGroupWithZero K))
        ((Valuation.restrict (valuation K) :
              (a : K) → MonoidWithZeroHom.ValueGroup₀ (↑(valuation K) : K →*₀ ValueGroupWithZero K))
            γ :
          MonoidWithZeroHom.ValueGroup₀ (F := K →*₀ ValueGroupWithZero K)
            (↑(valuation K) : K →*₀ ValueGroupWithZero K))}
have h : Eq (α := Set K)
  {x : K |
    LE.le (α :=
      MonoidWithZeroHom.ValueGroup₀ (F := K →*₀ ValueGroupWithZero K) (↑(valuation K) : K →*₀ ValueGroupWithZero K))
      ((Valuation.restrict (valuation K) :
            (a : K) → MonoidWithZeroHom.ValueGroup₀ (↑(valuation K) : K →*₀ ValueGroupWithZero K))
          x :
        MonoidWithZeroHom.ValueGroup₀ (F := K →*₀ ValueGroupWithZero K) (↑(valuation K) : K →*₀ ValueGroupWithZero K))
      ((Valuation.restrict (valuation K) :
            (a : K) → MonoidWithZeroHom.ValueGroup₀ (↑(valuation K) : K →*₀ ValueGroupWithZero K))
          γ :
        MonoidWithZeroHom.ValueGroup₀ (F := K →*₀ ValueGroupWithZero K) (↑(valuation K) : K →*₀ ValueGroupWithZero K))}
  (Set.image (α := K) (⇑(Homeomorph.mulLeft₀ (γ / r) sorry) : (a : K) → K)
    {x : K |
      LE.le (α :=
        MonoidWithZeroHom.ValueGroup₀ (F := K →*₀ ValueGroupWithZero K) (↑Valued.v : K →*₀ ValueGroupWithZero K))
        ((Valuation.restrict Valued.v :
              (a : K) → MonoidWithZeroHom.ValueGroup₀ (↑Valued.v : K →*₀ ValueGroupWithZero K))
            x :
          MonoidWithZeroHom.ValueGroup₀ (F := K →*₀ ValueGroupWithZero K) (↑Valued.v : K →*₀ ValueGroupWithZero K))
        ((Valuation.restrict (valuation K) :
              (a : K) → MonoidWithZeroHom.ValueGroup₀ (↑(valuation K) : K →*₀ ValueGroupWithZero K))
            r :
          MonoidWithZeroHom.ValueGroup₀ (F := K →*₀ ValueGroupWithZero K)
            (↑(valuation K) : K →*₀ ValueGroupWithZero K))})
Tactic: convert!
    (hs'.of_isClosed_subset (Valued.isClosed_closedBall K _) H).image
      (Homeomorph.mulLeft₀ (γ / r) (by simp [hr, div_eq_zero_iff, hγ])).continuous using 1