Theorem: Bornology.isVonNBounded_of_smul_tendsto_zero
File: Mathlib/Analysis/LocallyConvex/Bounded.lean

tactic: rw [(nhds_basis_balanced 𝕝 E).isVonNBounded_basis_iff]
state_before: 𝕜 : Type ?u.173131
𝕜' : Type ?u.173134
E : Type u_3
E' : Type ?u.173140
F : Type ?u.173143
ι : Type u_1
𝕝 : Type u_2
inst✝⁷ : NormedField 𝕜
inst✝⁶ : NontriviallyNormedField 𝕝
inst✝⁵ : AddCommGroup E
inst✝⁴ : Module 𝕜 E
inst✝³ : Module 𝕝 E
inst✝² : TopologicalSpace E
inst✝¹ : ContinuousSMul 𝕝 E
ε : ι → 𝕝
l : Filter ι
inst✝ : NeBot l
hε : ∀ᶠ (n : ι) in l, ε n ≠ 0
S : Set E
H : ∀ (x : ι → E), (∀ (n : ι), x n ∈ S) → Tendsto (ε • x) l (𝓝 0)
⊢ IsVonNBounded 𝕝 S

tactic: by_contra' H'
state_before: 𝕜 : Type ?u.173131
𝕜' : Type ?u.173134
E : Type u_3
E' : Type ?u.173140
F : Type ?u.173143
ι : Type u_1
𝕝 : Type u_2
inst✝⁷ : NormedField 𝕜
inst✝⁶ : NontriviallyNormedField 𝕝
inst✝⁵ : AddCommGroup E
inst✝⁴ : Module 𝕜 E
inst✝³ : Module 𝕝 E
inst✝² : TopologicalSpace E
inst✝¹ : ContinuousSMul 𝕝 E
ε : ι → 𝕝
l : Filter ι
inst✝ : NeBot l
hε : ∀ᶠ (n : ι) in l, ε n ≠ 0
S : Set E
H : ∀ (x : ι → E), (∀ (n : ι), x n ∈ S) → Tendsto (ε • x) l (𝓝 0)
⊢ ∀ (i : Set E), i ∈ 𝓝 0 ∧ Balanced 𝕝 i → Absorbs 𝕝 (id i) S

tactic: rcases H' with ⟨V, ⟨hV, hVb⟩, hVS⟩
state_before: 𝕜 : Type ?u.173131
𝕜' : Type ?u.173134
E : Type u_3
E' : Type ?u.173140
F : Type ?u.173143
ι : Type u_1
𝕝 : Type u_2
inst✝⁷ : NormedField 𝕜
inst✝⁶ : NontriviallyNormedField 𝕝
inst✝⁵ : AddCommGroup E
inst✝⁴ : Module 𝕜 E
inst✝³ : Module 𝕝 E
inst✝² : TopologicalSpace E
inst✝¹ : ContinuousSMul 𝕝 E
ε : ι → 𝕝
l : Filter ι
inst✝ : NeBot l
hε : ∀ᶠ (n : ι) in l, ε n ≠ 0
S : Set E
H : ∀ (x : ι → E), (∀ (n : ι), x n ∈ S) → Tendsto (ε • x) l (𝓝 0)
H' : ∃ i, (i ∈ 𝓝 0 ∧ Balanced 𝕝 i) ∧ ¬Absorbs 𝕝 (id i) S
⊢ False

tactic: have : ∀ᶠ n in l, ∃ x : S, ε n • (x : E) ∉ V := by
  filter_upwards [hε]with n hn
  rw [Absorbs] at hVS
  push_neg  at hVS
  rcases hVS _ (norm_pos_iff.mpr <| inv_ne_zero hn) with ⟨a, haε, haS⟩
  rcases Set.not_subset.mp haS with ⟨x, hxS, hx⟩
  refine' ⟨⟨x, hxS⟩, fun hnx => _⟩
  rw [← Set.mem_inv_smul_set_iff₀ hn] at hnx
  exact hx (hVb.smul_mono haε hnx)
state_before: case intro.intro.intro
𝕜 : Type ?u.173131
𝕜' : Type ?u.173134
E : Type u_3
E' : Type ?u.173140
F : Type ?u.173143
ι : Type u_1
𝕝 : Type u_2
inst✝⁷ : NormedField 𝕜
inst✝⁶ : NontriviallyNormedField 𝕝
inst✝⁵ : AddCommGroup E
inst✝⁴ : Module 𝕜 E
inst✝³ : Module 𝕝 E
inst✝² : TopologicalSpace E
inst✝¹ : ContinuousSMul 𝕝 E
ε : ι → 𝕝
l : Filter ι
inst✝ : NeBot l
hε : ∀ᶠ (n : ι) in l, ε n ≠ 0
S : Set E
H : ∀ (x : ι → E), (∀ (n : ι), x n ∈ S) → Tendsto (ε • x) l (𝓝 0)
V : Set E
hVS : ¬Absorbs 𝕝 (id V) S
hV : V ∈ 𝓝 0
hVb : Balanced 𝕝 V
⊢ False

tactic: rcases this.choice with ⟨x, hx⟩
state_before: case intro.intro.intro
𝕜 : Type ?u.173131
𝕜' : Type ?u.173134
E : Type u_3
E' : Type ?u.173140
F : Type ?u.173143
ι : Type u_1
𝕝 : Type u_2
inst✝⁷ : NormedField 𝕜
inst✝⁶ : NontriviallyNormedField 𝕝
inst✝⁵ : AddCommGroup E
inst✝⁴ : Module 𝕜 E
inst✝³ : Module 𝕝 E
inst✝² : TopologicalSpace E
inst✝¹ : ContinuousSMul 𝕝 E
ε : ι → 𝕝
l : Filter ι
inst✝ : NeBot l
hε : ∀ᶠ (n : ι) in l, ε n ≠ 0
S : Set E
H : ∀ (x : ι → E), (∀ (n : ι), x n ∈ S) → Tendsto (ε • x) l (𝓝 0)
V : Set E
hVS : ¬Absorbs 𝕝 (id V) S
hV : V ∈ 𝓝 0
hVb : Balanced 𝕝 V
this : ∀ᶠ (n : ι) in l, ∃ x, ¬ε n • ↑x ∈ V
⊢ False

tactic: refine' Filter.frequently_false l (Filter.Eventually.frequently _)
state_before: case intro.intro.intro.intro
𝕜 : Type ?u.173131
𝕜' : Type ?u.173134
E : Type u_3
E' : Type ?u.173140
F : Type ?u.173143
ι : Type u_1
𝕝 : Type u_2
inst✝⁷ : NormedField 𝕜
inst✝⁶ : NontriviallyNormedField 𝕝
inst✝⁵ : AddCommGroup E
inst✝⁴ : Module 𝕜 E
inst✝³ : Module 𝕝 E
inst✝² : TopologicalSpace E
inst✝¹ : ContinuousSMul 𝕝 E
ε : ι → 𝕝
l : Filter ι
inst✝ : NeBot l
hε : ∀ᶠ (n : ι) in l, ε n ≠ 0
S : Set E
H : ∀ (x : ι → E), (∀ (n : ι), x n ∈ S) → Tendsto (ε • x) l (𝓝 0)
V : Set E
hVS : ¬Absorbs 𝕝 (id V) S
hV : V ∈ 𝓝 0
hVb : Balanced 𝕝 V
this : ∀ᶠ (n : ι) in l, ∃ x, ¬ε n • ↑x ∈ V
x : ι → ↑S
hx : ∀ᶠ (x_1 : ι) in l, ¬ε x_1 • ↑(x x_1) ∈ V
⊢ False

tactic: filter_upwards [hx,
  (H (_ ∘ x) fun n => (x n).2).eventually (eventually_mem_set.mpr hV)] using fun n => id
state_before: case intro.intro.intro.intro
𝕜 : Type ?u.173131
𝕜' : Type ?u.173134
E : Type u_3
E' : Type ?u.173140
F : Type ?u.173143
ι : Type u_1
𝕝 : Type u_2
inst✝⁷ : NormedField 𝕜
inst✝⁶ : NontriviallyNormedField 𝕝
inst✝⁵ : AddCommGroup E
inst✝⁴ : Module 𝕜 E
inst✝³ : Module 𝕝 E
inst✝² : TopologicalSpace E
inst✝¹ : ContinuousSMul 𝕝 E
ε : ι → 𝕝
l : Filter ι
inst✝ : NeBot l
hε : ∀ᶠ (n : ι) in l, ε n ≠ 0
S : Set E
H : ∀ (x : ι → E), (∀ (n : ι), x n ∈ S) → Tendsto (ε • x) l (𝓝 0)
V : Set E
hVS : ¬Absorbs 𝕝 (id V) S
hV : V ∈ 𝓝 0
hVb : Balanced 𝕝 V
this : ∀ᶠ (n : ι) in l, ∃ x, ¬ε n • ↑x ∈ V
x : ι → ↑S
hx : ∀ᶠ (x_1 : ι) in l, ¬ε x_1 • ↑(x x_1) ∈ V
⊢ ∀ᶠ (x : ι) in l, False

tactic: filter_upwards [hε]with n hn
state_before: 𝕜 : Type ?u.173131
𝕜' : Type ?u.173134
E : Type u_3
E' : Type ?u.173140
F : Type ?u.173143
ι : Type u_1
𝕝 : Type u_2
inst✝⁷ : NormedField 𝕜
inst✝⁶ : NontriviallyNormedField 𝕝
inst✝⁵ : AddCommGroup E
inst✝⁴ : Module 𝕜 E
inst✝³ : Module 𝕝 E
inst✝² : TopologicalSpace E
inst✝¹ : ContinuousSMul 𝕝 E
ε : ι → 𝕝
l : Filter ι
inst✝ : NeBot l
hε : ∀ᶠ (n : ι) in l, ε n ≠ 0
S : Set E
H : ∀ (x : ι → E), (∀ (n : ι), x n ∈ S) → Tendsto (ε • x) l (𝓝 0)
V : Set E
hVS : ¬Absorbs 𝕝 (id V) S
hV : V ∈ 𝓝 0
hVb : Balanced 𝕝 V
⊢ ∀ᶠ (n : ι) in l, ∃ x, ¬ε n • ↑x ∈ V

tactic: rw [Absorbs] at hVS
state_before: case h
𝕜 : Type ?u.173131
𝕜' : Type ?u.173134
E : Type u_3
E' : Type ?u.173140
F : Type ?u.173143
ι : Type u_1
𝕝 : Type u_2
inst✝⁷ : NormedField 𝕜
inst✝⁶ : NontriviallyNormedField 𝕝
inst✝⁵ : AddCommGroup E
inst✝⁴ : Module 𝕜 E
inst✝³ : Module 𝕝 E
inst✝² : TopologicalSpace E
inst✝¹ : ContinuousSMul 𝕝 E
ε : ι → 𝕝
l : Filter ι
inst✝ : NeBot l
hε : ∀ᶠ (n : ι) in l, ε n ≠ 0
S : Set E
H : ∀ (x : ι → E), (∀ (n : ι), x n ∈ S) → Tendsto (ε • x) l (𝓝 0)
V : Set E
hVS : ¬Absorbs 𝕝 (id V) S
hV : V ∈ 𝓝 0
hVb : Balanced 𝕝 V
n : ι
hn : ε n ≠ 0
⊢ ∃ x, ¬ε n • ↑x ∈ V

tactic: push_neg  at hVS
state_before: case h
𝕜 : Type ?u.173131
𝕜' : Type ?u.173134
E : Type u_3
E' : Type ?u.173140
F : Type ?u.173143
ι : Type u_1
𝕝 : Type u_2
inst✝⁷ : NormedField 𝕜
inst✝⁶ : NontriviallyNormedField 𝕝
inst✝⁵ : AddCommGroup E
inst✝⁴ : Module 𝕜 E
inst✝³ : Module 𝕝 E
inst✝² : TopologicalSpace E
inst✝¹ : ContinuousSMul 𝕝 E
ε : ι → 𝕝
l : Filter ι
inst✝ : NeBot l
hε : ∀ᶠ (n : ι) in l, ε n ≠ 0
S : Set E
H : ∀ (x : ι → E), (∀ (n : ι), x n ∈ S) → Tendsto (ε • x) l (𝓝 0)
V : Set E
hVS : ¬∃ r, 0 < r ∧ ∀ (a : 𝕝), r ≤ ‖a‖ → S ⊆ a • id V
hV : V ∈ 𝓝 0
hVb : Balanced 𝕝 V
n : ι
hn : ε n ≠ 0
⊢ ∃ x, ¬ε n • ↑x ∈ V

tactic: rcases hVS _ (norm_pos_iff.mpr <| inv_ne_zero hn) with ⟨a, haε, haS⟩
state_before: case h
𝕜 : Type ?u.173131
𝕜' : Type ?u.173134
E : Type u_3
E' : Type ?u.173140
F : Type ?u.173143
ι : Type u_1
𝕝 : Type u_2
inst✝⁷ : NormedField 𝕜
inst✝⁶ : NontriviallyNormedField 𝕝
inst✝⁵ : AddCommGroup E
inst✝⁴ : Module 𝕜 E
inst✝³ : Module 𝕝 E
inst✝² : TopologicalSpace E
inst✝¹ : ContinuousSMul 𝕝 E
ε : ι → 𝕝
l : Filter ι
inst✝ : NeBot l
hε : ∀ᶠ (n : ι) in l, ε n ≠ 0
S : Set E
H : ∀ (x : ι → E), (∀ (n : ι), x n ∈ S) → Tendsto (ε • x) l (𝓝 0)
V : Set E
hV : V ∈ 𝓝 0
hVb : Balanced 𝕝 V
n : ι
hn : ε n ≠ 0
hVS : ∀ (r : ℝ), 0 < r → ∃ a, r ≤ ‖a‖ ∧ ¬S ⊆ a • id V
⊢ ∃ x, ¬ε n • ↑x ∈ V

tactic: rcases Set.not_subset.mp haS with ⟨x, hxS, hx⟩
state_before: case h.intro.intro
𝕜 : Type ?u.173131
𝕜' : Type ?u.173134
E : Type u_3
E' : Type ?u.173140
F : Type ?u.173143
ι : Type u_1
𝕝 : Type u_2
inst✝⁷ : NormedField 𝕜
inst✝⁶ : NontriviallyNormedField 𝕝
inst✝⁵ : AddCommGroup E
inst✝⁴ : Module 𝕜 E
inst✝³ : Module 𝕝 E
inst✝² : TopologicalSpace E
inst✝¹ : ContinuousSMul 𝕝 E
ε : ι → 𝕝
l : Filter ι
inst✝ : NeBot l
hε : ∀ᶠ (n : ι) in l, ε n ≠ 0
S : Set E
H : ∀ (x : ι → E), (∀ (n : ι), x n ∈ S) → Tendsto (ε • x) l (𝓝 0)
V : Set E
hV : V ∈ 𝓝 0
hVb : Balanced 𝕝 V
n : ι
hn : ε n ≠ 0
hVS : ∀ (r : ℝ), 0 < r → ∃ a, r ≤ ‖a‖ ∧ ¬S ⊆ a • id V
a : 𝕝
haε : ‖(ε n)⁻¹‖ ≤ ‖a‖
haS : ¬S ⊆ a • id V
⊢ ∃ x, ¬ε n • ↑x ∈ V

tactic: refine' ⟨⟨x, hxS⟩, fun hnx => _⟩
state_before: case h.intro.intro.intro.intro
𝕜 : Type ?u.173131
𝕜' : Type ?u.173134
E : Type u_3
E' : Type ?u.173140
F : Type ?u.173143
ι : Type u_1
𝕝 : Type u_2
inst✝⁷ : NormedField 𝕜
inst✝⁶ : NontriviallyNormedField 𝕝
inst✝⁵ : AddCommGroup E
inst✝⁴ : Module 𝕜 E
inst✝³ : Module 𝕝 E
inst✝² : TopologicalSpace E
inst✝¹ : ContinuousSMul 𝕝 E
ε : ι → 𝕝
l : Filter ι
inst✝ : NeBot l
hε : ∀ᶠ (n : ι) in l, ε n ≠ 0
S : Set E
H : ∀ (x : ι → E), (∀ (n : ι), x n ∈ S) → Tendsto (ε • x) l (𝓝 0)
V : Set E
hV : V ∈ 𝓝 0
hVb : Balanced 𝕝 V
n : ι
hn : ε n ≠ 0
hVS : ∀ (r : ℝ), 0 < r → ∃ a, r ≤ ‖a‖ ∧ ¬S ⊆ a • id V
a : 𝕝
haε : ‖(ε n)⁻¹‖ ≤ ‖a‖
haS : ¬S ⊆ a • id V
x : E
hxS : x ∈ S
hx : ¬x ∈ a • id V
⊢ ∃ x, ¬ε n • ↑x ∈ V

tactic: rw [← Set.mem_inv_smul_set_iff₀ hn] at hnx
state_before: case h.intro.intro.intro.intro
𝕜 : Type ?u.173131
𝕜' : Type ?u.173134
E : Type u_3
E' : Type ?u.173140
F : Type ?u.173143
ι : Type u_1
𝕝 : Type u_2
inst✝⁷ : NormedField 𝕜
inst✝⁶ : NontriviallyNormedField 𝕝
inst✝⁵ : AddCommGroup E
inst✝⁴ : Module 𝕜 E
inst✝³ : Module 𝕝 E
inst✝² : TopologicalSpace E
inst✝¹ : ContinuousSMul 𝕝 E
ε : ι → 𝕝
l : Filter ι
inst✝ : NeBot l
hε : ∀ᶠ (n : ι) in l, ε n ≠ 0
S : Set E
H : ∀ (x : ι → E), (∀ (n : ι), x n ∈ S) → Tendsto (ε • x) l (𝓝 0)
V : Set E
hV : V ∈ 𝓝 0
hVb : Balanced 𝕝 V
n : ι
hn : ε n ≠ 0
hVS : ∀ (r : ℝ), 0 < r → ∃ a, r ≤ ‖a‖ ∧ ¬S ⊆ a • id V
a : 𝕝
haε : ‖(ε n)⁻¹‖ ≤ ‖a‖
haS : ¬S ⊆ a • id V
x : E
hxS : x ∈ S
hx : ¬x ∈ a • id V
hnx : ε n • ↑{ val := x, property := hxS } ∈ V
⊢ False

tactic: exact hx (hVb.smul_mono haε hnx)
state_before: case h.intro.intro.intro.intro
𝕜 : Type ?u.173131
𝕜' : Type ?u.173134
E : Type u_3
E' : Type ?u.173140
F : Type ?u.173143
ι : Type u_1
𝕝 : Type u_2
inst✝⁷ : NormedField 𝕜
inst✝⁶ : NontriviallyNormedField 𝕝
inst✝⁵ : AddCommGroup E
inst✝⁴ : Module 𝕜 E
inst✝³ : Module 𝕝 E
inst✝² : TopologicalSpace E
inst✝¹ : ContinuousSMul 𝕝 E
ε : ι → 𝕝
l : Filter ι
inst✝ : NeBot l
hε : ∀ᶠ (n : ι) in l, ε n ≠ 0
S : Set E
H : ∀ (x : ι → E), (∀ (n : ι), x n ∈ S) → Tendsto (ε • x) l (𝓝 0)
V : Set E
hV : V ∈ 𝓝 0
hVb : Balanced 𝕝 V
n : ι
hn : ε n ≠ 0
hVS : ∀ (r : ℝ), 0 < r → ∃ a, r ≤ ‖a‖ ∧ ¬S ⊆ a • id V
a : 𝕝
haε : ‖(ε n)⁻¹‖ ≤ ‖a‖
haS : ¬S ⊆ a • id V
x : E
hxS : x ∈ S
hx : ¬x ∈ a • id V
hnx : ↑{ val := x, property := hxS } ∈ (ε n)⁻¹ • V
⊢ False