Theorem: Real.sin_gt_sub_cube
File: Mathlib/Analysis/SpecialFunctions/Trigonometric/Bounds.lean

Proof steps:
state_before: x✝ x : ℝ
h : 0 < x
h' : x ≤ 1
⊢ x - x ^ 3 / 4 < sin x
state_after: x✝ x : ℝ
h : 0 < x
h' : x ≤ 1
hx : |x| = x
⊢ x - x ^ 3 / 4 < sin x
tactic: have hx : |x| = x := abs_of_nonneg h.le
state_before: x✝ x : ℝ
h : 0 < x
h' : x ≤ 1
hx : |x| = x
⊢ x - x ^ 3 / 4 < sin x
state_after: x✝ x : ℝ
h : 0 < x
h' : x ≤ 1
hx : |x| = x
this : -(|x| ^ 4 * (5 / 96)) ≤ sin x - (x - x ^ 3 / 6)
⊢ x - x ^ 3 / 4 < sin x
tactic: have := neg_le_of_abs_le (sin_bound <| show |x| ≤ 1 by rwa [hx])
state_before: x✝ x : ℝ
h : 0 < x
h' : x ≤ 1
hx : |x| = x
this : -(|x| ^ 4 * (5 / 96)) ≤ sin x - (x - x ^ 3 / 6)
⊢ x - x ^ 3 / 4 < sin x
state_after: x✝ x : ℝ
h : 0 < x
h' : x ≤ 1
hx : |x| = x
this : -(x ^ 4 * (5 / 96)) + (x - x ^ 3 / 6) ≤ sin x
⊢ x - x ^ 3 / 4 < sin x
tactic: rw [le_sub_iff_add_le, hx] at this
state_before: x✝ x : ℝ
h : 0 < x
h' : x ≤ 1
hx : |x| = x
this : -(x ^ 4 * (5 / 96)) + (x - x ^ 3 / 6) ≤ sin x
⊢ x - x ^ 3 / 4 < sin x
state_after: x✝ x : ℝ
h : 0 < x
h' : x ≤ 1
hx : |x| = x
this : -(x ^ 4 * (5 / 96)) + (x - x ^ 3 / 6) ≤ sin x
⊢ x - x ^ 3 / 4 < -(x ^ 4 * (5 / 96)) + (x - x ^ 3 / 6)
tactic: refine lt_of_lt_of_le ?_ this
state_before: x✝ x : ℝ
h : 0 < x
h' : x ≤ 1
hx : |x| = x
this : -(x ^ 4 * (5 / 96)) + (x - x ^ 3 / 6) ≤ sin x
⊢ x - x ^ 3 / 4 < -(x ^ 4 * (5 / 96)) + (x - x ^ 3 / 6)
state_after: x✝ x : ℝ
h : 0 < x
h' : x ≤ 1
hx : |x| = x
this✝ : -(x ^ 4 * (5 / 96)) + (x - x ^ 3 / 6) ≤ sin x
this : x ^ 3 / 4 - x ^ 3 / 6 = x ^ 3 * 12⁻¹
⊢ x - x ^ 3 / 4 < -(x ^ 4 * (5 / 96)) + (x - x ^ 3 / 6)
tactic: have : x ^ 3 / ↑4 - x ^ 3 / ↑6 = x ^ 3 * 12⁻¹ := by norm_num [div_eq_mul_inv, ← mul_sub]
state_before: x✝ x : ℝ
h : 0 < x
h' : x ≤ 1
hx : |x| = x
this✝ : -(x ^ 4 * (5 / 96)) + (x - x ^ 3 / 6) ≤ sin x
this : x ^ 3 / 4 - x ^ 3 / 6 = x ^ 3 * 12⁻¹
⊢ x - x ^ 3 / 4 < -(x ^ 4 * (5 / 96)) + (x - x ^ 3 / 6)
state_after: x✝ x : ℝ
h : 0 < x
h' : x ≤ 1
hx : |x| = x
this✝ : -(x ^ 4 * (5 / 96)) + (x - x ^ 3 / 6) ≤ sin x
this : x ^ 3 / 4 - x ^ 3 / 6 = x ^ 3 * 12⁻¹
⊢ x ^ 4 * (5 / 96) < x ^ 3 * 12⁻¹
tactic: rw [add_comm, sub_add, sub_neg_eq_add, sub_lt_sub_iff_left, ← lt_sub_iff_add_lt', this]
state_before: x✝ x : ℝ
h : 0 < x
h' : x ≤ 1
hx : |x| = x
this✝ : -(x ^ 4 * (5 / 96)) + (x - x ^ 3 / 6) ≤ sin x
this : x ^ 3 / 4 - x ^ 3 / 6 = x ^ 3 * 12⁻¹
⊢ x ^ 4 * (5 / 96) < x ^ 3 * 12⁻¹
state_after: x✝ x : ℝ
h : 0 < x
h' : x ≤ 1
hx : |x| = x
this✝ : -(x ^ 4 * (5 / 96)) + (x - x ^ 3 / 6) ≤ sin x
this : x ^ 3 / 4 - x ^ 3 / 6 = x ^ 3 * 12⁻¹
⊢ x ^ 4 ≤ x ^ 3
tactic: refine mul_lt_mul' ?_ (by norm_num) (by norm_num) (pow_pos h 3)
state_before: x✝ x : ℝ
h : 0 < x
h' : x ≤ 1
hx : |x| = x
this✝ : -(x ^ 4 * (5 / 96)) + (x - x ^ 3 / 6) ≤ sin x
this : x ^ 3 / 4 - x ^ 3 / 6 = x ^ 3 * 12⁻¹
⊢ x ^ 4 ≤ x ^ 3
state_after: x✝ x : ℝ
h : 0 < x
h' : x ≤ 1
hx : |x| = x
this✝ : -(x ^ 4 * (5 / 96)) + (x - x ^ 3 / 6) ≤ sin x
this : x ^ 3 / 4 - x ^ 3 / 6 = x ^ 3 * 12⁻¹
⊢ 3 ≤ 4
tactic: apply pow_le_pow_of_le_one h.le h'
state_before: x✝ x : ℝ
h : 0 < x
h' : x ≤ 1
hx : |x| = x
this✝ : -(x ^ 4 * (5 / 96)) + (x - x ^ 3 / 6) ≤ sin x
this : x ^ 3 / 4 - x ^ 3 / 6 = x ^ 3 * 12⁻¹
⊢ 3 ≤ 4
state_after: no goals
tactic: norm_num