Theorem: IsExposed.sInter
File: Mathlib/Analysis/Convex/Exposed.lean

tactic: exfalso
state_before: case empty
𝕜 : Type u_1
E : Type u_2
inst✝⁵ : TopologicalSpace 𝕜
inst✝⁴ : OrderedRing 𝕜
inst✝³ : AddCommMonoid E
inst✝² : TopologicalSpace E
inst✝¹ : Module 𝕜 E
l : E →L[𝕜] 𝕜
A B C : Set E
X : Finset E
x : E
inst✝ : ContinuousAdd 𝕜
hF : Finset.Nonempty ∅
hAF : ∀ (B : Set E), B ∈ ∅ → IsExposed 𝕜 A B
⊢ IsExposed 𝕜 A (⋂₀ ↑∅)

tactic: exact Finset.not_nonempty_empty hF
state_before: case empty.h
𝕜 : Type u_1
E : Type u_2
inst✝⁵ : TopologicalSpace 𝕜
inst✝⁴ : OrderedRing 𝕜
inst✝³ : AddCommMonoid E
inst✝² : TopologicalSpace E
inst✝¹ : Module 𝕜 E
l : E →L[𝕜] 𝕜
A B C : Set E
X : Finset E
x : E
inst✝ : ContinuousAdd 𝕜
hF : Finset.Nonempty ∅
hAF : ∀ (B : Set E), B ∈ ∅ → IsExposed 𝕜 A B
⊢ False

tactic: rw [Finset.coe_insert, sInter_insert]
state_before: case insert
𝕜 : Type u_1
E : Type u_2
inst✝⁵ : TopologicalSpace 𝕜
inst✝⁴ : OrderedRing 𝕜
inst✝³ : AddCommMonoid E
inst✝² : TopologicalSpace E
inst✝¹ : Module 𝕜 E
l : E →L[𝕜] 𝕜
A B C✝ : Set E
X : Finset E
x : E
inst✝ : ContinuousAdd 𝕜
C : Set E
F : Finset (Set E)
a✝ : ¬C ∈ F
hF' : Finset.Nonempty F → (∀ (B : Set E), B ∈ F → IsExposed 𝕜 A B) → IsExposed 𝕜 A (⋂₀ ↑F)
hF : Finset.Nonempty (insert C F)
hAF : ∀ (B : Set E), B ∈ insert C F → IsExposed 𝕜 A B
⊢ IsExposed 𝕜 A (⋂₀ ↑(insert C F))

tactic: obtain rfl | hFnemp := F.eq_empty_or_nonempty
state_before: case insert
𝕜 : Type u_1
E : Type u_2
inst✝⁵ : TopologicalSpace 𝕜
inst✝⁴ : OrderedRing 𝕜
inst✝³ : AddCommMonoid E
inst✝² : TopologicalSpace E
inst✝¹ : Module 𝕜 E
l : E →L[𝕜] 𝕜
A B C✝ : Set E
X : Finset E
x : E
inst✝ : ContinuousAdd 𝕜
C : Set E
F : Finset (Set E)
a✝ : ¬C ∈ F
hF' : Finset.Nonempty F → (∀ (B : Set E), B ∈ F → IsExposed 𝕜 A B) → IsExposed 𝕜 A (⋂₀ ↑F)
hF : Finset.Nonempty (insert C F)
hAF : ∀ (B : Set E), B ∈ insert C F → IsExposed 𝕜 A B
⊢ IsExposed 𝕜 A (C ∩ ⋂₀ ↑F)

tactic: rw [Finset.coe_empty, sInter_empty, inter_univ]
state_before: case insert.inl
𝕜 : Type u_1
E : Type u_2
inst✝⁵ : TopologicalSpace 𝕜
inst✝⁴ : OrderedRing 𝕜
inst✝³ : AddCommMonoid E
inst✝² : TopologicalSpace E
inst✝¹ : Module 𝕜 E
l : E →L[𝕜] 𝕜
A B C✝ : Set E
X : Finset E
x : E
inst✝ : ContinuousAdd 𝕜
C : Set E
a✝ : ¬C ∈ ∅
hF' : Finset.Nonempty ∅ → (∀ (B : Set E), B ∈ ∅ → IsExposed 𝕜 A B) → IsExposed 𝕜 A (⋂₀ ↑∅)
hF : Finset.Nonempty (insert C ∅)
hAF : ∀ (B : Set E), B ∈ insert C ∅ → IsExposed 𝕜 A B
⊢ IsExposed 𝕜 A (C ∩ ⋂₀ ↑∅)

tactic: exact hAF C (Finset.mem_singleton_self C)
state_before: case insert.inl
𝕜 : Type u_1
E : Type u_2
inst✝⁵ : TopologicalSpace 𝕜
inst✝⁴ : OrderedRing 𝕜
inst✝³ : AddCommMonoid E
inst✝² : TopologicalSpace E
inst✝¹ : Module 𝕜 E
l : E →L[𝕜] 𝕜
A B C✝ : Set E
X : Finset E
x : E
inst✝ : ContinuousAdd 𝕜
C : Set E
a✝ : ¬C ∈ ∅
hF' : Finset.Nonempty ∅ → (∀ (B : Set E), B ∈ ∅ → IsExposed 𝕜 A B) → IsExposed 𝕜 A (⋂₀ ↑∅)
hF : Finset.Nonempty (insert C ∅)
hAF : ∀ (B : Set E), B ∈ insert C ∅ → IsExposed 𝕜 A B
⊢ IsExposed 𝕜 A C

tactic: exact (hAF C (Finset.mem_insert_self C F)).inter
  (hF' hFnemp fun B hB => hAF B (Finset.mem_insert_of_mem hB))
state_before: case insert.inr
𝕜 : Type u_1
E : Type u_2
inst✝⁵ : TopologicalSpace 𝕜
inst✝⁴ : OrderedRing 𝕜
inst✝³ : AddCommMonoid E
inst✝² : TopologicalSpace E
inst✝¹ : Module 𝕜 E
l : E →L[𝕜] 𝕜
A B C✝ : Set E
X : Finset E
x : E
inst✝ : ContinuousAdd 𝕜
C : Set E
F : Finset (Set E)
a✝ : ¬C ∈ F
hF' : Finset.Nonempty F → (∀ (B : Set E), B ∈ F → IsExposed 𝕜 A B) → IsExposed 𝕜 A (⋂₀ ↑F)
hF : Finset.Nonempty (insert C F)
hAF : ∀ (B : Set E), B ∈ insert C F → IsExposed 𝕜 A B
hFnemp : Finset.Nonempty F
⊢ IsExposed 𝕜 A (C ∩ ⋂₀ ↑F)