working…

This commit is contained in:
Stefan Kebekus
2024-11-19 11:31:24 +01:00
parent 69b9ad6d3b
commit 81f1c6ae94
3 changed files with 53 additions and 83 deletions

View File

@@ -289,7 +289,7 @@ theorem StronglyMeromorphicAt_of_makeStronglyMeromorphic
rwa [WithTop.untop_eq_iff h₂f]
theorem makeStronglyMeromorphic_id
theorem StronglyMeromorphicAt.makeStronglyMeromorphic_id
{f : }
{z₀ : }
(hf : StronglyMeromorphicAt f z₀) :

View File

@@ -74,7 +74,7 @@ theorem makeStronglyMeromorphicOn_changeDiscrete
unfold MeromorphicOn.makeStronglyMeromorphicOn
by_cases h₂v : v U
· simp [h₂v]
rw [ makeStronglyMeromorphic_id]
rw [ StronglyMeromorphicAt.makeStronglyMeromorphic_id]
exact AnalyticAt.stronglyMeromorphicAt (h₂V v hv)
· simp [h₂v]

View File

@@ -92,90 +92,60 @@ theorem MeromorphicOn.decompose₁
· constructor
· exact isOpen_compl_singleton
· exact h₁z
have h₃g : (h₁g z₀ hz₀).order = 0 := by
unfold g
let B := m₂ (h₁g₁ z₀ hz₀)
let A := (h₁g₁ z₀ hz₀).order_congr B
rw [ A]
rw [h₂g₁]
have h₄g : AnalyticAt g z₀ := by
apply h₂g.analytic
rw [h₃g]
use g
constructor
· exact h₁g
· constructor
· apply h₂g.analytic
sorry
· exact h₄g
· constructor
· sorry
· sorry
theorem MeromorphicOn.decompose
{f : }
{U : Set }
(h₁U : IsConnected U)
(h₂U : IsCompact U)
(h₁f : MeromorphicOn f U)
(h₂f : z₀ U, f z₀ 0) :
g : , (AnalyticOnNhd g U)
( z U, g z 0)
(Set.EqOn h₁f.makeStronglyMeromorphicOn (( p, fun z (z - p) ^ (h₁f.divisor p)) * g) U) := by
let g₁ : := f * (fun z p, (z - p) ^ (h₁f.divisor p))
have h₁g₁ : MeromorphicOn g₁ U := by
sorry
let g := hg₁.makeStronglyMeromorphicOn
have h₁g : MeromorphicOn g U := by
sorry
have h₂g : z : U, (h₁g z.1 z.2).order = 0 := by
sorry
have h₃g : StronglyMeromorphicOn g U := by
sorry
have h₄g : AnalyticOnNhd g U := by
intro z hz
apply StronglyMeromorphicAt.analytic (h₃g z hz)
rw [h₂g z, hz]
use g
constructor
· exact h₄g
· constructor
· intro z hz
rw [ (h₄g z hz).order_eq_zero_iff]
have A := (h₄g z hz).meromorphicAt_order
rw [h₂g z, hz] at A
have t₀ : (h₄g z hz).order := by
by_contra hC
rw [hC] at A
tauto
have t₁ : n : , (h₄g z hz).order = n := by
exact Option.ne_none_iff_exists'.mp t₀
obtain n, hn := t₁
rw [hn] at A
apply WithTopCoe
rw [eq_comm]
rw [hn]
exact A
· intro z hz
have t₀ : x in 𝓝[] z, AnalyticAt f x := by
sorry
have t₂ : x in 𝓝[] z, h₁f.divisor z = 0 := by
sorry
have t₁ : x in 𝓝[] z, AnalyticAt (fun z => (p : ), (z - p) ^ h₁f.divisor p * g z) x := by
sorry
apply Filter.EventuallyEq.eq_of_nhds
apply StronglyMeromorphicAt.localIdentity
· exact StronglyMeromorphicOn_of_makeStronglyMeromorphic h₁f z hz
· right
use h₁f.divisor z
use ( p : ({z} : Set ), (fun x (x - p.1) ^ h₁f.divisor p.1)) * g
constructor
· apply AnalyticAt.mul₁
· apply analyticAt_finprod
intro w
sorry
· apply (h₃g z hz).analytic
rw [h₂g z, hz]
· constructor
· sorry
· sorry
sorry
· exact (h₂g.order_eq_zero_iff).mp h₃g
· funext z
by_cases hz : z = z₀
· rw [hz]
simp
by_cases h : h₁f.divisor z₀ = 0
· simp [h]
have h₂h₁ : h₁ = 1 := by
funext w
unfold h₁
simp [h]
have h₃g₁ : g₁ = f := by
unfold g₁
rw [h₂h₁]
simp
have h₄g₁ : StronglyMeromorphicAt g₁ z₀ := by
rwa [h₃g₁]
let A := h₄g₁.makeStronglyMeromorphic_id
unfold g
rw [ A, hg₁]
· have : (0 : ) ^ h₁f.divisor z₀ = (0 : ) := by
exact zero_zpow (h₁f.divisor z₀) h
rw [this]
simp
let A := h₂f.order_eq_zero_iff.not
simp at A
rw [ A]
unfold MeromorphicOn.divisor at h
simp [hz₀] at h
exact h.1
· simp
let B := m₁ (h₁g₁ z₀ hz₀) z hz
unfold g
rw [ B]
unfold g₁ h
simp [hz]
rw [mul_assoc]
rw [inv_mul_cancel₀]
simp
apply zpow_ne_zero
rwa [sub_ne_zero]