English
After converting to normal form at x, the resulting function has normal form at x.
Русский
После приведения к нормальной форме в x полученная функция имеет нормальную форму в x.
LaTeX
$$$MeromorphicNFAt\ (toMeromorphicNFAt\ f\ x)\ x$$$
Lean4
/-- After conversion to normal form at `x`, the function has normal form. -/
theorem meromorphicNFAt_toMeromorphicNFAt : MeromorphicNFAt (toMeromorphicNFAt f x) x :=
by
by_cases hf : MeromorphicAt f x
· by_cases h₂f : meromorphicOrderAt f x = ⊤
· have : toMeromorphicNFAt f x =ᶠ[𝓝 x] 0 :=
by
apply eventuallyEq_nhds_of_eventuallyEq_nhdsNE
· exact hf.eq_nhdsNE_toMeromorphicNFAt.symm.trans (meromorphicOrderAt_eq_top_iff.1 h₂f)
· simp [h₂f, toMeromorphicNFAt, hf]
apply AnalyticAt.meromorphicNFAt
rw [analyticAt_congr this]
exact analyticAt_const
· lift meromorphicOrderAt f x to ℤ using h₂f with n hn
obtain ⟨g, h₁g, h₂g, h₃g⟩ := (meromorphicOrderAt_eq_int_iff hf).1 hn.symm
right
use n, g, h₁g, h₂g
apply eventuallyEq_nhds_of_eventuallyEq_nhdsNE (hf.eq_nhdsNE_toMeromorphicNFAt.symm.trans h₃g)
simp only [toMeromorphicNFAt, hf, ↓reduceDIte, ← hn, WithTop.coe_zero, WithTop.coe_eq_zero, ne_eq,
Function.update_self, sub_self]
split_ifs with h₃f
· obtain ⟨h₁G, _, h₃G⟩ := Classical.choose_spec ((meromorphicOrderAt_eq_int_iff hf).1 (h₃f ▸ hn.symm))
apply Filter.EventuallyEq.eq_of_nhds
apply (h₁G.continuousAt.eventuallyEq_nhds_iff_eventuallyEq_nhdsNE (by fun_prop)).1
filter_upwards [h₃g, h₃G]
simp_all
· simp [h₃f, zero_zpow]
· simp only [toMeromorphicNFAt, hf, ↓reduceDIte]
exact analyticAt_const.meromorphicNFAt