Theorem: AffineSubspace.WOppSide.trans
File: Mathlib/Analysis/Convex/Side.lean

tactic: rcases hxy with ⟨p₁, hp₁, p₂, hp₂, hxy⟩
state_before: R : Type u_1
V : Type u_2
V' : Type ?u.301280
P : Type u_3
P' : Type ?u.301286
inst✝⁶ : LinearOrderedField R
inst✝⁵ : AddCommGroup V
inst✝⁴ : Module R V
inst✝³ : AddTorsor V P
inst✝² : AddCommGroup V'
inst✝¹ : Module R V'
inst✝ : AddTorsor V' P'
s : AffineSubspace R P
x y z : P
hxy : WOppSide s x y
hyz : WOppSide s y z
hy : ¬y ∈ s
⊢ WSameSide s x z

tactic: rw [wOppSide_iff_exists_left hp₂, or_iff_right hy] at hyz
state_before: case intro.intro.intro.intro
R : Type u_1
V : Type u_2
V' : Type ?u.301280
P : Type u_3
P' : Type ?u.301286
inst✝⁶ : LinearOrderedField R
inst✝⁵ : AddCommGroup V
inst✝⁴ : Module R V
inst✝³ : AddTorsor V P
inst✝² : AddCommGroup V'
inst✝¹ : Module R V'
inst✝ : AddTorsor V' P'
s : AffineSubspace R P
x y z : P
hyz : WOppSide s y z
hy : ¬y ∈ s
p₁ : P
hp₁ : p₁ ∈ s
p₂ : P
hp₂ : p₂ ∈ s
hxy : SameRay R (x -ᵥ p₁) (p₂ -ᵥ y)
⊢ WSameSide s x z

tactic: rcases hyz with ⟨p₃, hp₃, hyz⟩
state_before: case intro.intro.intro.intro
R : Type u_1
V : Type u_2
V' : Type ?u.301280
P : Type u_3
P' : Type ?u.301286
inst✝⁶ : LinearOrderedField R
inst✝⁵ : AddCommGroup V
inst✝⁴ : Module R V
inst✝³ : AddTorsor V P
inst✝² : AddCommGroup V'
inst✝¹ : Module R V'
inst✝ : AddTorsor V' P'
s : AffineSubspace R P
x y z : P
hy : ¬y ∈ s
p₁ : P
hp₁ : p₁ ∈ s
p₂ : P
hyz : ∃ p₂_1, p₂_1 ∈ s ∧ SameRay R (y -ᵥ p₂) (p₂_1 -ᵥ z)
hp₂ : p₂ ∈ s
hxy : SameRay R (x -ᵥ p₁) (p₂ -ᵥ y)
⊢ WSameSide s x z

tactic: rw [← sameRay_neg_iff, neg_vsub_eq_vsub_rev, neg_vsub_eq_vsub_rev] at hyz
state_before: case intro.intro.intro.intro.intro.intro
R : Type u_1
V : Type u_2
V' : Type ?u.301280
P : Type u_3
P' : Type ?u.301286
inst✝⁶ : LinearOrderedField R
inst✝⁵ : AddCommGroup V
inst✝⁴ : Module R V
inst✝³ : AddTorsor V P
inst✝² : AddCommGroup V'
inst✝¹ : Module R V'
inst✝ : AddTorsor V' P'
s : AffineSubspace R P
x y z : P
hy : ¬y ∈ s
p₁ : P
hp₁ : p₁ ∈ s
p₂ : P
hp₂ : p₂ ∈ s
hxy : SameRay R (x -ᵥ p₁) (p₂ -ᵥ y)
p₃ : P
hp₃ : p₃ ∈ s
hyz : SameRay R (y -ᵥ p₂) (p₃ -ᵥ z)
⊢ WSameSide s x z

tactic: refine' ⟨p₁, hp₁, p₃, hp₃, hxy.trans hyz _⟩
state_before: case intro.intro.intro.intro.intro.intro
R : Type u_1
V : Type u_2
V' : Type ?u.301280
P : Type u_3
P' : Type ?u.301286
inst✝⁶ : LinearOrderedField R
inst✝⁵ : AddCommGroup V
inst✝⁴ : Module R V
inst✝³ : AddTorsor V P
inst✝² : AddCommGroup V'
inst✝¹ : Module R V'
inst✝ : AddTorsor V' P'
s : AffineSubspace R P
x y z : P
hy : ¬y ∈ s
p₁ : P
hp₁ : p₁ ∈ s
p₂ : P
hp₂ : p₂ ∈ s
hxy : SameRay R (x -ᵥ p₁) (p₂ -ᵥ y)
p₃ : P
hp₃ : p₃ ∈ s
hyz : SameRay R (p₂ -ᵥ y) (z -ᵥ p₃)
⊢ WSameSide s x z

tactic: refine' fun h => False.elim _
state_before: case intro.intro.intro.intro.intro.intro
R : Type u_1
V : Type u_2
V' : Type ?u.301280
P : Type u_3
P' : Type ?u.301286
inst✝⁶ : LinearOrderedField R
inst✝⁵ : AddCommGroup V
inst✝⁴ : Module R V
inst✝³ : AddTorsor V P
inst✝² : AddCommGroup V'
inst✝¹ : Module R V'
inst✝ : AddTorsor V' P'
s : AffineSubspace R P
x y z : P
hy : ¬y ∈ s
p₁ : P
hp₁ : p₁ ∈ s
p₂ : P
hp₂ : p₂ ∈ s
hxy : SameRay R (x -ᵥ p₁) (p₂ -ᵥ y)
p₃ : P
hp₃ : p₃ ∈ s
hyz : SameRay R (p₂ -ᵥ y) (z -ᵥ p₃)
⊢ p₂ -ᵥ y = 0 → x -ᵥ p₁ = 0 ∨ z -ᵥ p₃ = 0

tactic: rw [vsub_eq_zero_iff_eq] at h
state_before: case intro.intro.intro.intro.intro.intro
R : Type u_1
V : Type u_2
V' : Type ?u.301280
P : Type u_3
P' : Type ?u.301286
inst✝⁶ : LinearOrderedField R
inst✝⁵ : AddCommGroup V
inst✝⁴ : Module R V
inst✝³ : AddTorsor V P
inst✝² : AddCommGroup V'
inst✝¹ : Module R V'
inst✝ : AddTorsor V' P'
s : AffineSubspace R P
x y z : P
hy : ¬y ∈ s
p₁ : P
hp₁ : p₁ ∈ s
p₂ : P
hp₂ : p₂ ∈ s
hxy : SameRay R (x -ᵥ p₁) (p₂ -ᵥ y)
p₃ : P
hp₃ : p₃ ∈ s
hyz : SameRay R (p₂ -ᵥ y) (z -ᵥ p₃)
h : p₂ -ᵥ y = 0
⊢ False

tactic: exact hy (h ▸ hp₂)
state_before: case intro.intro.intro.intro.intro.intro
R : Type u_1
V : Type u_2
V' : Type ?u.301280
P : Type u_3
P' : Type ?u.301286
inst✝⁶ : LinearOrderedField R
inst✝⁵ : AddCommGroup V
inst✝⁴ : Module R V
inst✝³ : AddTorsor V P
inst✝² : AddCommGroup V'
inst✝¹ : Module R V'
inst✝ : AddTorsor V' P'
s : AffineSubspace R P
x y z : P
hy : ¬y ∈ s
p₁ : P
hp₁ : p₁ ∈ s
p₂ : P
hp₂ : p₂ ∈ s
hxy : SameRay R (x -ᵥ p₁) (p₂ -ᵥ y)
p₃ : P
hp₃ : p₃ ∈ s
hyz : SameRay R (p₂ -ᵥ y) (z -ᵥ p₃)
h : p₂ = y
⊢ False