Update stronglyMeromorphicOn.lean
This commit is contained in:
parent
6294e3c4ea
commit
b038a5f47f
@ -1,5 +1,5 @@
|
|||||||
import Nevanlinna.stronglyMeromorphicAt
|
import Nevanlinna.stronglyMeromorphicAt
|
||||||
|
import Mathlib.Algebra.BigOperators.Finprod
|
||||||
|
|
||||||
open Topology
|
open Topology
|
||||||
|
|
||||||
@ -79,12 +79,77 @@ theorem makeStronglyMeromorphicOn_changeDiscrete
|
|||||||
· simp [h₂v]
|
· simp [h₂v]
|
||||||
|
|
||||||
|
|
||||||
theorem StronglyMeromorphicOn_of_makeStronglyMeromorphic
|
theorem stronglyMeromorphicOn_ratlPolynomial
|
||||||
{f : ℂ → ℂ}
|
{U : Set ℂ}
|
||||||
(hf : MeromorphicOn f U) :
|
(d : ℂ → ℤ) :
|
||||||
StronglyMeromorphicOn hf.makeStronglyMeromorphicOn U := by
|
StronglyMeromorphicOn (∏ᶠ u, fun z ↦ (z - u) ^ d u) U := by
|
||||||
|
by_cases hd : (Function.mulSupport fun u z => (z - u) ^ d u).Finite
|
||||||
|
· rw [finprod_eq_prod _ hd]
|
||||||
|
intro z h₁z
|
||||||
|
by_cases h₂z : d z = 0
|
||||||
|
· apply AnalyticAt.stronglyMeromorphicAt
|
||||||
|
rw [Finset.prod_fn]
|
||||||
|
apply Finset.analyticAt_prod
|
||||||
|
intro u hu
|
||||||
|
by_cases huz : u = z
|
||||||
|
· rw [← huz] at h₂z
|
||||||
|
rw [h₂z]
|
||||||
|
simp
|
||||||
|
exact analyticAt_const
|
||||||
|
· apply AnalyticAt.zpow
|
||||||
|
apply AnalyticAt.sub
|
||||||
|
apply analyticAt_id
|
||||||
|
apply analyticAt_const
|
||||||
|
rwa [sub_ne_zero, ne_comm]
|
||||||
|
· have : z ∈ hd.toFinset := by
|
||||||
|
simp
|
||||||
|
by_contra hCon
|
||||||
|
have A : 0 ≠ (1 : ℂ → ℂ) z := by simp
|
||||||
|
rw [← hCon] at A
|
||||||
|
simp only [sub_self] at A
|
||||||
|
rw [ne_comm] at A
|
||||||
|
rw [zpow_ne_zero_iff] at A
|
||||||
|
tauto
|
||||||
|
exact h₂z
|
||||||
|
rw [← Finset.mul_prod_erase hd.toFinset _ this]
|
||||||
|
right
|
||||||
|
use d z
|
||||||
|
use ∏ x ∈ hd.toFinset.erase z, fun z => (z - x) ^ d x
|
||||||
|
constructor
|
||||||
|
· rw [Finset.prod_fn]
|
||||||
|
apply Finset.analyticAt_prod
|
||||||
|
intro u hu
|
||||||
|
apply AnalyticAt.zpow
|
||||||
|
apply AnalyticAt.sub
|
||||||
|
apply analyticAt_id
|
||||||
|
apply analyticAt_const
|
||||||
|
rw [sub_ne_zero, ne_comm]
|
||||||
|
by_contra hCon
|
||||||
|
simp at hu
|
||||||
|
tauto
|
||||||
|
· constructor
|
||||||
|
· simp only [Finset.prod_apply]
|
||||||
|
rw [Finset.prod_ne_zero_iff]
|
||||||
|
intro u hu
|
||||||
|
rw [zpow_ne_zero_iff]
|
||||||
|
rw [sub_ne_zero]
|
||||||
|
by_contra hCon
|
||||||
|
rw [hCon] at hu
|
||||||
|
let A := Finset.not_mem_erase u hd.toFinset
|
||||||
|
tauto
|
||||||
|
--
|
||||||
|
have : u ∈ hd.toFinset := by
|
||||||
|
exact Finset.mem_of_mem_erase hu
|
||||||
|
simp at this
|
||||||
|
by_contra hCon
|
||||||
|
rw [hCon] at this
|
||||||
|
simp at this
|
||||||
|
tauto
|
||||||
|
· exact Filter.Eventually.of_forall (congrFun rfl)
|
||||||
|
|
||||||
sorry
|
· rw [finprod_of_infinite_mulSupport hd]
|
||||||
|
apply AnalyticOn.stronglyMeromorphicOn
|
||||||
|
apply analyticOnNhd_const
|
||||||
|
|
||||||
|
|
||||||
theorem makeStronglyMeromorphicOn_changeDiscrete'
|
theorem makeStronglyMeromorphicOn_changeDiscrete'
|
||||||
|
Loading…
Reference in New Issue
Block a user