Theorem: starConvex_compl_Iic
File: Mathlib/Analysis/Convex/Star.lean

tactic: refine (starConvex_iff_forall_pos <| by simp [h.not_le]).mpr fun z hz a b ha hb hab ↦ ?_
state_before: 𝕜 : Type u_1
E : Type u_2
F : Type u_3
inst✝³ : OrderedRing 𝕜
inst✝² : OrderedAddCommGroup E
inst✝¹ : Module 𝕜 E
inst✝ : OrderedSMul 𝕜 E
x y : E
h : x < y
⊢ StarConvex 𝕜 y (Iic x)ᶜ
state_after: 𝕜 : Type u_1
E : Type u_2
F : Type u_3
inst✝³ : OrderedRing 𝕜
inst✝² : OrderedAddCommGroup E
inst✝¹ : Module 𝕜 E
inst✝ : OrderedSMul 𝕜 E
x y : E
h : x < y
z : E
hz : z ∈ (Iic x)ᶜ
a b : 𝕜
ha : 0 < a
hb : 0 < b
hab : a + b = 1
⊢ a • y + b • z ∈ (Iic x)ᶜ

tactic: rw [mem_compl_iff, mem_Iic] at hz ⊢
state_before: 𝕜 : Type u_1
E : Type u_2
F : Type u_3
inst✝³ : OrderedRing 𝕜
inst✝² : OrderedAddCommGroup E
inst✝¹ : Module 𝕜 E
inst✝ : OrderedSMul 𝕜 E
x y : E
h : x < y
z : E
hz : z ∈ (Iic x)ᶜ
a b : 𝕜
ha : 0 < a
hb : 0 < b
hab : a + b = 1
⊢ a • y + b • z ∈ (Iic x)ᶜ
state_after: 𝕜 : Type u_1
E : Type u_2
F : Type u_3
inst✝³ : OrderedRing 𝕜
inst✝² : OrderedAddCommGroup E
inst✝¹ : Module 𝕜 E
inst✝ : OrderedSMul 𝕜 E
x y : E
h : x < y
z : E
hz : ¬z ≤ x
a b : 𝕜
ha : 0 < a
hb : 0 < b
hab : a + b = 1
⊢ ¬a • y + b • z ≤ x

tactic: contrapose! hz
state_before: 𝕜 : Type u_1
E : Type u_2
F : Type u_3
inst✝³ : OrderedRing 𝕜
inst✝² : OrderedAddCommGroup E
inst✝¹ : Module 𝕜 E
inst✝ : OrderedSMul 𝕜 E
x y : E
h : x < y
z : E
hz : ¬z ≤ x
a b : 𝕜
ha : 0 < a
hb : 0 < b
hab : a + b = 1
⊢ ¬a • y + b • z ≤ x
state_after: 𝕜 : Type u_1
E : Type u_2
F : Type u_3
inst✝³ : OrderedRing 𝕜
inst✝² : OrderedAddCommGroup E
inst✝¹ : Module 𝕜 E
inst✝ : OrderedSMul 𝕜 E
x y : E
h : x < y
z : E
a b : 𝕜
ha : 0 < a
hb : 0 < b
hab : a + b = 1
hz : a • y + b • z ≤ x
⊢ z ≤ x

tactic: refine (lt_of_smul_lt_smul_of_nonneg_left ?_ hb.le).le
state_before: 𝕜 : Type u_1
E : Type u_2
F : Type u_3
inst✝³ : OrderedRing 𝕜
inst✝² : OrderedAddCommGroup E
inst✝¹ : Module 𝕜 E
inst✝ : OrderedSMul 𝕜 E
x y : E
h : x < y
z : E
a b : 𝕜
ha : 0 < a
hb : 0 < b
hab : a + b = 1
hz : a • y + b • z ≤ x
⊢ z ≤ x
state_after: 𝕜 : Type u_1
E : Type u_2
F : Type u_3
inst✝³ : OrderedRing 𝕜
inst✝² : OrderedAddCommGroup E
inst✝¹ : Module 𝕜 E
inst✝ : OrderedSMul 𝕜 E
x y : E
h : x < y
z : E
a b : 𝕜
ha : 0 < a
hb : 0 < b
hab : a + b = 1
hz : a • y + b • z ≤ x
⊢ b • z < b • x

tactic: calc
  b • z ≤ (a + b) • x - a • y := by rwa [le_sub_iff_add_le', hab, one_smul]
  _ < b • x := by
    rw [add_smul, sub_lt_iff_lt_add']
    gcongr
state_before: 𝕜 : Type u_1
E : Type u_2
F : Type u_3
inst✝³ : OrderedRing 𝕜
inst✝² : OrderedAddCommGroup E
inst✝¹ : Module 𝕜 E
inst✝ : OrderedSMul 𝕜 E
x y : E
h : x < y
z : E
a b : 𝕜
ha : 0 < a
hb : 0 < b
hab : a + b = 1
hz : a • y + b • z ≤ x
⊢ b • z < b • x
state_after: no goals

tactic: simp [h.not_le]
state_before: 𝕜 : Type u_1
E : Type u_2
F : Type u_3
inst✝³ : OrderedRing 𝕜
inst✝² : OrderedAddCommGroup E
inst✝¹ : Module 𝕜 E
inst✝ : OrderedSMul 𝕜 E
x y : E
h : x < y
⊢ y ∈ (Iic x)ᶜ
state_after: no goals

tactic: rwa [le_sub_iff_add_le', hab, one_smul]
state_before: 𝕜 : Type u_1
E : Type u_2
F : Type u_3
inst✝³ : OrderedRing 𝕜
inst✝² : OrderedAddCommGroup E
inst✝¹ : Module 𝕜 E
inst✝ : OrderedSMul 𝕜 E
x y : E
h : x < y
z : E
a b : 𝕜
ha : 0 < a
hb : 0 < b
hab : a + b = 1
hz : a • y + b • z ≤ x
⊢ b • z ≤ (a + b) • x - a • y
state_after: no goals

tactic: rw [add_smul, sub_lt_iff_lt_add']
state_before: 𝕜 : Type u_1
E : Type u_2
F : Type u_3
inst✝³ : OrderedRing 𝕜
inst✝² : OrderedAddCommGroup E
inst✝¹ : Module 𝕜 E
inst✝ : OrderedSMul 𝕜 E
x y : E
h : x < y
z : E
a b : 𝕜
ha : 0 < a
hb : 0 < b
hab : a + b = 1
hz : a • y + b • z ≤ x
⊢ (a + b) • x - a • y < b • x
state_after: 𝕜 : Type u_1
E : Type u_2
F : Type u_3
inst✝³ : OrderedRing 𝕜
inst✝² : OrderedAddCommGroup E
inst✝¹ : Module 𝕜 E
inst✝ : OrderedSMul 𝕜 E
x y : E
h : x < y
z : E
a b : 𝕜
ha : 0 < a
hb : 0 < b
hab : a + b = 1
hz : a • y + b • z ≤ x
⊢ a • x + b • x < a • y + b • x

tactic: gcongr
state_before: 𝕜 : Type u_1
E : Type u_2
F : Type u_3
inst✝³ : OrderedRing 𝕜
inst✝² : OrderedAddCommGroup E
inst✝¹ : Module 𝕜 E
inst✝ : OrderedSMul 𝕜 E
x y : E
h : x < y
z : E
a b : 𝕜
ha : 0 < a
hb : 0 < b
hab : a + b = 1
hz : a • y + b • z ≤ x
⊢ a • x + b • x < a • y + b • x
state_after: no goals