Theorem: HasFPowerSeriesOnBall.tendstoLocallyUniformlyOn
File: Mathlib/Analysis/Analytic/Basic.lean

Proof steps:
state_before: 𝕜 : Type u_1
E : Type u_2
F : Type u_3
G : Type u_4
inst✝⁶ : NontriviallyNormedField 𝕜
inst✝⁵ : NormedAddCommGroup E
inst✝⁴ : NormedSpace 𝕜 E
inst✝³ : NormedAddCommGroup F
inst✝² : NormedSpace 𝕜 F
inst✝¹ : NormedAddCommGroup G
inst✝ : NormedSpace 𝕜 G
f g : E → F
p pf pg : FormalMultilinearSeries 𝕜 E F
x : E
r r' : ℝ≥0∞
hf : HasFPowerSeriesOnBall f p x r
⊢ TendstoLocallyUniformlyOn (fun n y => p.partialSum n y) (fun y => f (x + y)) atTop (EMetric.ball 0 r)
state_after: 𝕜 : Type u_1
E : Type u_2
F : Type u_3
G : Type u_4
inst✝⁶ : NontriviallyNormedField 𝕜
inst✝⁵ : NormedAddCommGroup E
inst✝⁴ : NormedSpace 𝕜 E
inst✝³ : NormedAddCommGroup F
inst✝² : NormedSpace 𝕜 F
inst✝¹ : NormedAddCommGroup G
inst✝ : NormedSpace 𝕜 G
f g : E → F
p pf pg : FormalMultilinearSeries 𝕜 E F
x✝ : E
r r' : ℝ≥0∞
hf : HasFPowerSeriesOnBall f p x✝ r
u : Set (F × F)
hu : u ∈ uniformity F
x : E
hx : x ∈ EMetric.ball 0 r
⊢ ∃ t ∈ 𝓝[EMetric.ball 0 r] x,
    ∀ᶠ (n : ℕ) in atTop, ∀ y ∈ t, ((fun y => f (x✝ + y)) y, (fun n y => p.partialSum n y) n y) ∈ u
tactic: intro u hu x hx
state_before: 𝕜 : Type u_1
E : Type u_2
F : Type u_3
G : Type u_4
inst✝⁶ : NontriviallyNormedField 𝕜
inst✝⁵ : NormedAddCommGroup E
inst✝⁴ : NormedSpace 𝕜 E
inst✝³ : NormedAddCommGroup F
inst✝² : NormedSpace 𝕜 F
inst✝¹ : NormedAddCommGroup G
inst✝ : NormedSpace 𝕜 G
f g : E → F
p pf pg : FormalMultilinearSeries 𝕜 E F
x✝ : E
r r' : ℝ≥0∞
hf : HasFPowerSeriesOnBall f p x✝ r
u : Set (F × F)
hu : u ∈ uniformity F
x : E
hx : x ∈ EMetric.ball 0 r
⊢ ∃ t ∈ 𝓝[EMetric.ball 0 r] x,
    ∀ᶠ (n : ℕ) in atTop, ∀ y ∈ t, ((fun y => f (x✝ + y)) y, (fun n y => p.partialSum n y) n y) ∈ u
state_after: case intro.intro
𝕜 : Type u_1
E : Type u_2
F : Type u_3
G : Type u_4
inst✝⁶ : NontriviallyNormedField 𝕜
inst✝⁵ : NormedAddCommGroup E
inst✝⁴ : NormedSpace 𝕜 E
inst✝³ : NormedAddCommGroup F
inst✝² : NormedSpace 𝕜 F
inst✝¹ : NormedAddCommGroup G
inst✝ : NormedSpace 𝕜 G
f g : E → F
p pf pg : FormalMultilinearSeries 𝕜 E F
x✝ : E
r r'✝ : ℝ≥0∞
hf : HasFPowerSeriesOnBall f p x✝ r
u : Set (F × F)
hu : u ∈ uniformity F
x : E
hx : x ∈ EMetric.ball 0 r
r' : ℝ≥0
xr' : edist x 0 < ↑r'
hr' : ↑r' < r
⊢ ∃ t ∈ 𝓝[EMetric.ball 0 r] x,
    ∀ᶠ (n : ℕ) in atTop, ∀ y ∈ t, ((fun y => f (x✝ + y)) y, (fun n y => p.partialSum n y) n y) ∈ u
tactic: rcases ENNReal.lt_iff_exists_nnreal_btwn.1 hx with ⟨r', xr', hr'⟩
state_before: case intro.intro
𝕜 : Type u_1
E : Type u_2
F : Type u_3
G : Type u_4
inst✝⁶ : NontriviallyNormedField 𝕜
inst✝⁵ : NormedAddCommGroup E
inst✝⁴ : NormedSpace 𝕜 E
inst✝³ : NormedAddCommGroup F
inst✝² : NormedSpace 𝕜 F
inst✝¹ : NormedAddCommGroup G
inst✝ : NormedSpace 𝕜 G
f g : E → F
p pf pg : FormalMultilinearSeries 𝕜 E F
x✝ : E
r r'✝ : ℝ≥0∞
hf : HasFPowerSeriesOnBall f p x✝ r
u : Set (F × F)
hu : u ∈ uniformity F
x : E
hx : x ∈ EMetric.ball 0 r
r' : ℝ≥0
xr' : edist x 0 < ↑r'
hr' : ↑r' < r
⊢ ∃ t ∈ 𝓝[EMetric.ball 0 r] x,
    ∀ᶠ (n : ℕ) in atTop, ∀ y ∈ t, ((fun y => f (x✝ + y)) y, (fun n y => p.partialSum n y) n y) ∈ u
state_after: case intro.intro
𝕜 : Type u_1
E : Type u_2
F : Type u_3
G : Type u_4
inst✝⁶ : NontriviallyNormedField 𝕜
inst✝⁵ : NormedAddCommGroup E
inst✝⁴ : NormedSpace 𝕜 E
inst✝³ : NormedAddCommGroup F
inst✝² : NormedSpace 𝕜 F
inst✝¹ : NormedAddCommGroup G
inst✝ : NormedSpace 𝕜 G
f g : E → F
p pf pg : FormalMultilinearSeries 𝕜 E F
x✝ : E
r r'✝ : ℝ≥0∞
hf : HasFPowerSeriesOnBall f p x✝ r
u : Set (F × F)
hu : u ∈ uniformity F
x : E
hx : x ∈ EMetric.ball 0 r
r' : ℝ≥0
xr' : edist x 0 < ↑r'
hr' : ↑r' < r
this : EMetric.ball 0 ↑r' ∈ 𝓝 x
⊢ ∃ t ∈ 𝓝[EMetric.ball 0 r] x,
    ∀ᶠ (n : ℕ) in atTop, ∀ y ∈ t, ((fun y => f (x✝ + y)) y, (fun n y => p.partialSum n y) n y) ∈ u
tactic: have : EMetric.ball (0 : E) r' ∈ 𝓝 x := IsOpen.mem_nhds EMetric.isOpen_ball xr'
state_before: case intro.intro
𝕜 : Type u_1
E : Type u_2
F : Type u_3
G : Type u_4
inst✝⁶ : NontriviallyNormedField 𝕜
inst✝⁵ : NormedAddCommGroup E
inst✝⁴ : NormedSpace 𝕜 E
inst✝³ : NormedAddCommGroup F
inst✝² : NormedSpace 𝕜 F
inst✝¹ : NormedAddCommGroup G
inst✝ : NormedSpace 𝕜 G
f g : E → F
p pf pg : FormalMultilinearSeries 𝕜 E F
x✝ : E
r r'✝ : ℝ≥0∞
hf : HasFPowerSeriesOnBall f p x✝ r
u : Set (F × F)
hu : u ∈ uniformity F
x : E
hx : x ∈ EMetric.ball 0 r
r' : ℝ≥0
xr' : edist x 0 < ↑r'
hr' : ↑r' < r
this : EMetric.ball 0 ↑r' ∈ 𝓝 x
⊢ ∃ t ∈ 𝓝[EMetric.ball 0 r] x,
    ∀ᶠ (n : ℕ) in atTop, ∀ y ∈ t, ((fun y => f (x✝ + y)) y, (fun n y => p.partialSum n y) n y) ∈ u
state_after: case intro.intro
𝕜 : Type u_1
E : Type u_2
F : Type u_3
G : Type u_4
inst✝⁶ : NontriviallyNormedField 𝕜
inst✝⁵ : NormedAddCommGroup E
inst✝⁴ : NormedSpace 𝕜 E
inst✝³ : NormedAddCommGroup F
inst✝² : NormedSpace 𝕜 F
inst✝¹ : NormedAddCommGroup G
inst✝ : NormedSpace 𝕜 G
f g : E → F
p pf pg : FormalMultilinearSeries 𝕜 E F
x✝ : E
r r'✝ : ℝ≥0∞
hf : HasFPowerSeriesOnBall f p x✝ r
u : Set (F × F)
hu : u ∈ uniformity F
x : E
hx : x ∈ EMetric.ball 0 r
r' : ℝ≥0
xr' : edist x 0 < ↑r'
hr' : ↑r' < r
this : EMetric.ball 0 ↑r' ∈ 𝓝 x
⊢ ∀ᶠ (n : ℕ) in atTop, ∀ y ∈ EMetric.ball 0 ↑r', ((fun y => f (x✝ + y)) y, (fun n y => p.partialSum n y) n y) ∈ u
tactic: refine ⟨EMetric.ball (0 : E) r', mem_nhdsWithin_of_mem_nhds this, ?_⟩
state_before: case intro.intro
𝕜 : Type u_1
E : Type u_2
F : Type u_3
G : Type u_4
inst✝⁶ : NontriviallyNormedField 𝕜
inst✝⁵ : NormedAddCommGroup E
inst✝⁴ : NormedSpace 𝕜 E
inst✝³ : NormedAddCommGroup F
inst✝² : NormedSpace 𝕜 F
inst✝¹ : NormedAddCommGroup G
inst✝ : NormedSpace 𝕜 G
f g : E → F
p pf pg : FormalMultilinearSeries 𝕜 E F
x✝ : E
r r'✝ : ℝ≥0∞
hf : HasFPowerSeriesOnBall f p x✝ r
u : Set (F × F)
hu : u ∈ uniformity F
x : E
hx : x ∈ EMetric.ball 0 r
r' : ℝ≥0
xr' : edist x 0 < ↑r'
hr' : ↑r' < r
this : EMetric.ball 0 ↑r' ∈ 𝓝 x
⊢ ∀ᶠ (n : ℕ) in atTop, ∀ y ∈ EMetric.ball 0 ↑r', ((fun y => f (x✝ + y)) y, (fun n y => p.partialSum n y) n y) ∈ u
state_after: no goals
tactic: simpa [Metric.emetric_ball_nnreal] using hf.tendstoUniformlyOn hr' u hu