From c699823ad8cf6c41a16ea8e5cfb75529f90431bc Mon Sep 17 00:00:00 2001 From: Stefan Kebekus Date: Wed, 26 Nov 2025 16:54:46 +0100 Subject: [PATCH] Update Basic.lean --- Aristotle/Basic.lean | 42 +++++++++++++++++++++++++++++++++--------- 1 file changed, 33 insertions(+), 9 deletions(-) diff --git a/Aristotle/Basic.lean b/Aristotle/Basic.lean index d7e6563..13bd18f 100644 --- a/Aristotle/Basic.lean +++ b/Aristotle/Basic.lean @@ -1,20 +1,44 @@ import Mathlib.Analysis.Meromorphic.Basic -import Mathlib.Analysis.Meromorphic.Order +import Mathlib.Analysis.Calculus.Deriv.Mul +import Mathlib.Analysis.Calculus.Deriv.ZPow +import Mathlib.Analysis.Calculus.Deriv.Shift open MeromorphicOn Metric Real Set Classical variable - {๐•œ : Type*} [NontriviallyNormedField ๐•œ] [CompleteSpace ๐•œ] + {๐•œ : Type*} [NontriviallyNormedField ๐•œ] + {E : Type*} [NormedAddCommGroup E] [NormedSpace ๐•œ E] [CompleteSpace E] + {U : Set ๐•œ} {f g : ๐•œ โ†’ E} {a : WithTop E} {aโ‚€ : E} + /-- Derivatives of meromorphic functions are meromorphic. -/ -theorem meromorphicAt_deriv_of_order_eq_top {f : ๐•œ โ†’ ๐•œ} {x : ๐•œ} - (h : MeromorphicAt f x) (hโ‚ : h.order โ‰  โŠค) : +@[fun_prop] +theorem meromorphicAt_deriv {f : ๐•œ โ†’ E} {x : ๐•œ} (h : MeromorphicAt f x) : MeromorphicAt (deriv f) x := by - have := h.eventually_analyticAt - obtain โŸจn, hnโŸฉ := h + rw [MeromorphicAt.iff_eventuallyEq_zpow_smul_analyticAt] at h + obtain โŸจn, g, hโ‚g, hโ‚‚gโŸฉ := h - let g : ๐•œ โ†’ ๐•œ := sorry - rw [MeromorphicAt.meromorphicAt_congr] + have : deriv (fun z โ†ฆ (z - x) ^ n โ€ข g z) + =แถ [nhdsWithin x {x}แถœ] fun zโ‚€ โ†ฆ (n * (zโ‚€ - x) ^ (n - 1)) โ€ข g zโ‚€ + (zโ‚€ - x) ^ n โ€ข deriv g zโ‚€ := by + have ฯ„โ‚€ : โˆ€แถ  (y : ๐•œ) in nhdsWithin x {x}แถœ, AnalyticAt ๐•œ g y := by + exact eventually_nhdsWithin_of_eventually_nhds hโ‚g.eventually_analyticAt + have ฯ„โ‚ : โˆ€แถ  (y : ๐•œ) in nhdsWithin x {x}แถœ, y โ‰  x := by + exact eventually_nhdsWithin_of_forall fun x_1 a โ†ฆ a + filter_upwards [ฯ„โ‚€, ฯ„โ‚] with zโ‚€ hโ‚ hโ‚‚ + rw [deriv_smul] + rw [add_comm] + congr + rw [deriv_comp_sub_const (f := fun z โ†ฆ z ^ n)] + aesop + refine DifferentiableAt.zpow ?_ ?_ + fun_prop + left + exact sub_ne_zero_of_ne hโ‚‚ + fun_prop - sorry + have : deriv f =แถ [nhdsWithin x {x}แถœ] (fun z โ†ฆ (z - x) ^ n โ€ข g z) := by + sorry + + apply MeromorphicAt.congr _ this.symm + fun_prop