From 688347a837f74fe0076a2cb9e59268057db37d60 Mon Sep 17 00:00:00 2001 From: Stefan Kebekus Date: Tue, 20 Aug 2024 11:06:24 +0200 Subject: [PATCH] Update analyticOn_zeroSet.lean --- Nevanlinna/analyticOn_zeroSet.lean | 45 +++++++++++++++++++++++++++--- 1 file changed, 41 insertions(+), 4 deletions(-) diff --git a/Nevanlinna/analyticOn_zeroSet.lean b/Nevanlinna/analyticOn_zeroSet.lean index ba4af57..602e060 100644 --- a/Nevanlinna/analyticOn_zeroSet.lean +++ b/Nevanlinna/analyticOn_zeroSet.lean @@ -1,3 +1,4 @@ +import Mathlib.Analysis.Analytic.Linear import Init.Classical import Mathlib.Analysis.Analytic.Meromorphic import Mathlib.Topology.ContinuousOn @@ -146,7 +147,7 @@ theorem AnalyticOn.order_of_mul · exact Set.mem_inter h₃t₁ h₃t₂ -theorem AnalyticOn.order_eq_nat_iff' +theorem AnalyticOn.eliminateZeros {f : ℂ → ℂ} {U : Set ℂ} {A : Finset U} @@ -169,9 +170,45 @@ theorem AnalyticOn.order_eq_nat_iff' have : (h₁g₀ b₀ b₀.2).order = n b₀ := by - let A := hBinsert b₀ (Finset.mem_insert_self b₀ B) - exact A - sorry + rw [← hBinsert b₀ (Finset.mem_insert_self b₀ B)] + + let φ := fun z ↦ (∏ a ∈ B, (z - a.1) ^ n a.1) + + have : f = fun z ↦ φ z * g₀ z := by + funext z + rw [h₃g₀ z] + rfl + simp_rw [this] + + have h₁φ : AnalyticAt ℂ φ b₀ := by + dsimp [φ] + apply Finset.analyticAt_prod + intro b hb + apply AnalyticAt.pow + apply AnalyticAt.sub + apply analyticAt_id + + have h₂φ : h₁φ.order = (0 : ℕ) := by + rw [AnalyticAt.order_eq_nat_iff h₁φ 0] + use φ + constructor + · assumption + · constructor + · dsimp [φ] + push_neg + rw [Finset.prod_ne_zero_iff] + intro a ha + have AA : b₀.1 - a ≠ 0 := by + sorry + simp [AA] + + · simp + + rw [AnalyticOn.order_of_mul h₁φ (h₁g₀ b₀ b₀.2)] + + rw [h₂φ] + simp + obtain ⟨g₁, h₁g₁, h₂g₁, h₃g₁⟩ := (AnalyticOn.order_eq_nat_iff h₁g₀ b₀.2 (n b₀)).1 this