case h.mk
𝕜 : Type u_3
E : Type u_1
F : Type u_2
G : Type ?u.343510
ι : Type ?u.343513
π : ι → Type ?u.343518
inst✝⁴ : OrderedSemiring 𝕜
inst✝³ : AddCommMonoid E
inst✝² : AddCommMonoid F
inst✝¹ : Module 𝕜 E
inst✝ : Module 𝕜 F
x₁ x₂ : E
y : F
x' : E
y' : F
⊢ (x', y') ∈ (fun x => (x, y)) '' openSegment 𝕜 x₁ x₂ ↔ (x', y') ∈ openSegment 𝕜 (x₁, y) (x₂, y)
𝕜 : Type u_3
E : Type u_1
F : Type u_2
G : Type ?u.343510
ι : Type ?u.343513
π : ι → Type ?u.343518
inst✝⁴ : OrderedSemiring 𝕜
inst✝³ : AddCommMonoid E
inst✝² : AddCommMonoid F
inst✝¹ : Module 𝕜 E
inst✝ : Module 𝕜 F
x₁ x₂ : E
y : F
⊢ (fun x => (x, y)) '' openSegment 𝕜 x₁ x₂ = openSegment 𝕜 (x₁, y) (x₂, y)
ext ⟨x', y'⟩
case h.mk
𝕜 : Type u_3
E : Type u_1
F : Type u_2
G : Type ?u.343510
ι : Type ?u.343513
π : ι → Type ?u.343518
inst✝⁴ : OrderedSemiring 𝕜
inst✝³ : AddCommMonoid E
inst✝² : AddCommMonoid F
inst✝¹ : Module 𝕜 E
inst✝ : Module 𝕜 F
x₁ x₂ : E
y : F
x' : E
y' : F
⊢ (∃ b b_1 h h h, b • x₁ + b_1 • x₂ = x' ∧ y = y') ↔ ∃ a b h h h, a • x₁ + b • x₂ = x' ∧ a • y + b • y = y'
case h.mk
𝕜 : Type u_3
E : Type u_1
F : Type u_2
G : Type ?u.343510
ι : Type ?u.343513
π : ι → Type ?u.343518
inst✝⁴ : OrderedSemiring 𝕜
inst✝³ : AddCommMonoid E
inst✝² : AddCommMonoid F
inst✝¹ : Module 𝕜 E
inst✝ : Module 𝕜 F
x₁ x₂ : E
y : F
x' : E
y' : F
⊢ (x', y') ∈ (fun x => (x, y)) '' openSegment 𝕜 x₁ x₂ ↔ (x', y') ∈ openSegment 𝕜 (x₁, y) (x₂, y)
simp_rw [Set.mem_image, openSegment, Set.mem_setOf, Prod.smul_mk, Prod.mk_add_mk, Prod.mk.inj_iff,
  ← exists_and_right, @exists_comm E, exists_eq_left']
case h.mk
𝕜 : Type u_3
E : Type u_1
F : Type u_2
G : Type ?u.343510
ι : Type ?u.343513
π : ι → Type ?u.343518
inst✝⁴ : OrderedSemiring 𝕜
inst✝³ : AddCommMonoid E
inst✝² : AddCommMonoid F
inst✝¹ : Module 𝕜 E
inst✝ : Module 𝕜 F
x₁ x₂ : E
y : F
x' : E
y' : F
a b : 𝕜
ha : 0 < a
hb : 0 < b
hab : a + b = 1
⊢ a • x₁ + b • x₂ = x' ∧ y = y' ↔ a • x₁ + b • x₂ = x' ∧ a • y + b • y = y'
case h.mk
𝕜 : Type u_3
E : Type u_1
F : Type u_2
G : Type ?u.343510
ι : Type ?u.343513
π : ι → Type ?u.343518
inst✝⁴ : OrderedSemiring 𝕜
inst✝³ : AddCommMonoid E
inst✝² : AddCommMonoid F
inst✝¹ : Module 𝕜 E
inst✝ : Module 𝕜 F
x₁ x₂ : E
y : F
x' : E
y' : F
⊢ (∃ b b_1 h h h, b • x₁ + b_1 • x₂ = x' ∧ y = y') ↔ ∃ a b h h h, a • x₁ + b • x₂ = x' ∧ a • y + b • y = y'
refine' exists₅_congr fun a b ha hb hab => _
no goals
case h.mk
𝕜 : Type u_3
E : Type u_1
F : Type u_2
G : Type ?u.343510
ι : Type ?u.343513
π : ι → Type ?u.343518
inst✝⁴ : OrderedSemiring 𝕜
inst✝³ : AddCommMonoid E
inst✝² : AddCommMonoid F
inst✝¹ : Module 𝕜 E
inst✝ : Module 𝕜 F
x₁ x₂ : E
y : F
x' : E
y' : F
a b : 𝕜
ha : 0 < a
hb : 0 < b
hab : a + b = 1
⊢ a • x₁ + b • x₂ = x' ∧ y = y' ↔ a • x₁ + b • x₂ = x' ∧ a • y + b • y = y'
rw [Convex.combo_self hab]