-- File: optlib/Optlib/Algorithm/BCD/Convergence.lean
Theorem statement:
theorem extracted_formal_statement_210 {φ : ℝ → ℝ} {η x y : ℝ} (hx : x ∈ Ioo 0 η) (hy : y ∈ Ioo 0 η)
  (h1 : ConcaveOn ℝ (Ico 0 η) φ) (left : φ 0 = 0) (left_1 : ContDiffOn ℝ 1 φ (Ioo 0 η)) (left_2 : ContinuousAt φ 0)
  (h6 : ∀ x ∈ Ioo 0 η, deriv φ x > 0) (hdiff : DifferentiableAt ℝ φ x) :
  let hx' := Ioo_subset_Ico_self hx;
  let hy' := Ioo_subset_Ico_self hy;
  x < y → slope φ x y ≤ deriv φ x → φ x - φ y ≥ deriv φ x * (x - y) → 0 < y - x := sorry

Tactic state before:
case intro.intro.intro.intro.inr.inl
φ : ℝ → ℝ
η x y : ℝ
hx : x ∈ Ioo 0 η
hy : y ∈ Ioo 0 η
h1 : ConcaveOn ℝ (Ico 0 η) φ
left✝² : φ 0 = 0
left✝¹ : ContDiffOn ℝ 1 φ (Ioo 0 η)
left✝ : ContinuousAt φ 0
h6 : ∀ x ∈ Ioo 0 η, deriv φ x > 0
hdiff : DifferentiableAt ℝ φ x
hx' : x ∈ Ico 0 η := Ioo_subset_Ico_self hx
hy' : y ∈ Ico 0 η := Ioo_subset_Ico_self hy
ygt : x < y
h : slope φ x y ≤ deriv φ x
⊢ φ x - φ y ≥ deriv φ x * (x - y)

Tactic: rw [slope_def_field, div_le_iff₀] at h

Tactic state after:
[case intro.intro.intro.intro.inr.inl
 φ : ℝ → ℝ
 η x y : ℝ
 hx : x ∈ Ioo 0 η
 hy : y ∈ Ioo 0 η
 h1 : ConcaveOn ℝ (Ico 0 η) φ
 left✝² : φ 0 = 0
 left✝¹ : ContDiffOn ℝ 1 φ (Ioo 0 η)
 left✝ : ContinuousAt φ 0
 h6 : ∀ x ∈ Ioo 0 η, deriv φ x > 0
 hdiff : DifferentiableAt ℝ φ x
 hx' : x ∈ Ico 0 η := Ioo_subset_Ico_self hx
 hy' : y ∈ Ico 0 η := Ioo_subset_Ico_self hy
 ygt : x < y
 h : φ y - φ x ≤ deriv φ x * (y - x)
 ⊢ φ x - φ y ≥ deriv φ x * (x - y),
 case intro.intro.intro.intro.inr.inl
 φ : ℝ → ℝ
 η x y : ℝ
 hx : x ∈ Ioo 0 η
 hy : y ∈ Ioo 0 η
 h1 : ConcaveOn ℝ (Ico 0 η) φ
 left✝² : φ 0 = 0
 left✝¹ : ContDiffOn ℝ 1 φ (Ioo 0 η)
 left✝ : ContinuousAt φ 0
 h6 : ∀ x ∈ Ioo 0 η, deriv φ x > 0
 hdiff : DifferentiableAt ℝ φ x
 hx' : x ∈ Ico 0 η := Ioo_subset_Ico_self hx
 hy' : y ∈ Ico 0 η := Ioo_subset_Ico_self hy
 ygt : x < y
 h : (φ y - φ x) / (y - x) ≤ deriv φ x
 ⊢ 0 < y - x]

Premises used:
slope_def_field : ∀ {k : Type u_1} [inst : Field k] (f : k → k) (a b : k), slope f a b = (f b - f a) / (b - a)
div_le_iff₀ : ∀ {G₀ : Type u_2} [inst : GroupWithZero G₀] [inst_1 : PartialOrder G₀] [inst_2 : ZeroLEOneClass G₀]
  [inst_3 : PosMulReflectLT G₀] {a b c : G₀} [inst_4 : MulPosMono G₀], 0 < c → (b / c ≤ a ↔ b ≤ a * c)