theorem extracted_formal_statement_0.{u_1} {E : Type u_1} [inst : NormedAddCommGroup E] [inst_1 : InnerProductSpace ℝ E]
  [inst_2 : CompleteSpace E] {f : E → ℝ} {G : NNReal} (hf : ConvexOn ℝ Set.univ f) (hc : ContinuousOn f Set.univ)
  (h : ∀ ⦃x g : E⦄, g ∈ SubderivAt f x → ‖g‖ ≤ ↑G) (x y gx : E) (hx₁ : gx ∈ SubderivAt f x) (hx₃ : ‖gx‖ ≤ ↑G)
  (hx₂ : f y ≥ f x + ⟪gx, y - x⟫_ℝ) (hx₄ : f x - f y ≤ ⟪gx, x - y⟫_ℝ) (gy : E) (hy₁ : gy ∈ SubderivAt f y)
  (hy₃ : ‖gy‖ ≤ ↑G) (hy₂ : f x ≥ f y + ⟪gy, x - y⟫_ℝ) (hy₄ : f x - f y ≥ ⟪gy, x - y⟫_ℝ) (hG₁ : ↑G = ENNReal.ofReal ↑G)
  (h_original_goal : edist (f x) (f y) ≤ ↑G * edist x y) :
  ENNReal.ofReal (dist (f x) (f y)) ≤ ENNReal.ofReal (↑G * dist x y) := sorry

State before:
case intro.intro
E : Type u_1
inst✝² : NormedAddCommGroup E
inst✝¹ : InnerProductSpace ℝ E
inst✝ : CompleteSpace E
f : E → ℝ
G : NNReal
hf : ConvexOn ℝ Set.univ f
hc : ContinuousOn f Set.univ
h : ∀ ⦃x g : E⦄, g ∈ SubderivAt f x → ‖g‖ ≤ ↑G
x y gx : E
hx₁ : gx ∈ SubderivAt f x
hx₃ : ‖gx‖ ≤ ↑G
hx₂ : f y ≥ f x + ⟪gx, y - x⟫_ℝ
hx₄ : f x - f y ≤ ⟪gx, x - y⟫_ℝ
gy : E
hy₁ : gy ∈ SubderivAt f y
hy₃ : ‖gy‖ ≤ ↑G
hy₂ : f x ≥ f y + ⟪gy, x - y⟫_ℝ
hy₄ : f x - f y ≥ ⟪gy, x - y⟫_ℝ
hG₁ : ↑G = ENNReal.ofReal ↑G
⊢ edist (f x) (f y) ≤ ↑G * edist x y

Tactic: rw [edist_dist, edist_dist, hG₁]
    have hG₂ : ENNReal.ofReal (↑G * (dist x y)) = ENNReal.ofReal ↑G * ENNReal.ofReal (dist x y) := by
  apply ENNReal.ofReal_mul; simp
    rw [← hG₂]

State after:
[case intro.intro
 E : Type u_1
 inst✝² : NormedAddCommGroup E
 inst✝¹ : InnerProductSpace ℝ E
 inst✝ : CompleteSpace E
 f : E → ℝ
 G : NNReal
 hf : ConvexOn ℝ Set.univ f
 hc : ContinuousOn f Set.univ
 h : ∀ ⦃x g : E⦄, g ∈ SubderivAt f x → ‖g‖ ≤ ↑G
 x y gx : E
 hx₁ : gx ∈ SubderivAt f x
 hx₃ : ‖gx‖ ≤ ↑G
 hx₂ : f y ≥ f x + ⟪gx, y - x⟫_ℝ
 hx₄ : f x - f y ≤ ⟪gx, x - y⟫_ℝ
 gy : E
 hy₁ : gy ∈ SubderivAt f y
 hy₃ : ‖gy‖ ≤ ↑G
 hy₂ : f x ≥ f y + ⟪gy, x - y⟫_ℝ
 hy₄ : f x - f y ≥ ⟪gy, x - y⟫_ℝ
 hG₁ : ↑G = ENNReal.ofReal ↑G
 hG₂ : ENNReal.ofReal (↑G * dist x y) = ENNReal.ofReal ↑G * ENNReal.ofReal (dist x y)
 ⊢ ENNReal.ofReal (dist (f x) (f y)) ≤ ENNReal.ofReal (↑G * dist x y)]

Relevant lemmas:
error