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] rwa [WithTop.untop_eq_iff h₂f]
theorem makeStronglyMeromorphic_id theorem StronglyMeromorphicAt.makeStronglyMeromorphic_id
{f : } {f : }
{z₀ : } {z₀ : }
(hf : StronglyMeromorphicAt f z₀) : (hf : StronglyMeromorphicAt f z₀) :

View File

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

View File

@ -92,90 +92,60 @@ theorem MeromorphicOn.decompose₁
· constructor · constructor
· exact isOpen_compl_singleton · exact isOpen_compl_singleton
· exact h₁z · 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 use g
constructor constructor
· exact h₁g · exact h₁g
· constructor · constructor
· apply h₂g.analytic · exact h₄g
sorry
· constructor · constructor
· sorry · exact (h₂g.order_eq_zero_iff).mp h₃g
· sorry · funext z
by_cases hz : z = z₀
· rw [hz]
simp
theorem MeromorphicOn.decompose by_cases h : h₁f.divisor z₀ = 0
{f : } · simp [h]
{U : Set } have h₂h₁ : h₁ = 1 := by
(h₁U : IsConnected U) funext w
(h₂U : IsCompact U) unfold h₁
(h₁f : MeromorphicOn f U) simp [h]
(h₂f : ∃ z₀ ∈ U, f z₀ ≠ 0) : have h₃g₁ : g₁ = f := by
∃ g : , (AnalyticOnNhd g U) unfold g₁
∧ (∀ z ∈ U, g z ≠ 0) rw [h₂h₁]
∧ (Set.EqOn h₁f.makeStronglyMeromorphicOn ((∏ᶠ p, fun z ↦ (z - p) ^ (h₁f.divisor p)) * g) U) := by simp
have h₄g₁ : StronglyMeromorphicAt g₁ z₀ := by
let g₁ : := f * (fun z ↦ ∏ᶠ p, (z - p) ^ (h₁f.divisor p)) rwa [h₃g₁]
have h₁g₁ : MeromorphicOn g₁ U := by let A := h₄g₁.makeStronglyMeromorphic_id
sorry unfold g
let g := h₁g₁.makeStronglyMeromorphicOn rw [← A, h₃g₁]
have h₁g : MeromorphicOn g U := by · have : (0 : ) ^ h₁f.divisor z₀ = (0 : ) := by
sorry exact zero_zpow (h₁f.divisor z₀) h
have h₂g : ∀ z : U, (h₁g z.1 z.2).order = 0 := by rw [this]
sorry simp
have h₃g : StronglyMeromorphicOn g U := by let A := h₂f.order_eq_zero_iff.not
sorry simp at A
have h₄g : AnalyticOnNhd g U := by rw [← A]
intro z hz unfold MeromorphicOn.divisor at h
apply StronglyMeromorphicAt.analytic (h₃g z hz) simp [hz₀] at h
rw [h₂g ⟨z, hz⟩] exact h.1
use g · simp
constructor let B := m₁ (h₁g₁ z₀ hz₀) z hz
· exact h₄g unfold g
· constructor rw [← B]
· intro z hz unfold g₁ h₁
rw [← (h₄g z hz).order_eq_zero_iff] simp [hz]
have A := (h₄g z hz).meromorphicAt_order rw [mul_assoc]
rw [h₂g ⟨z, hz⟩] at A rw [inv_mul_cancel₀]
have t₀ : (h₄g z hz).order ≠ := by simp
by_contra hC apply zpow_ne_zero
rw [hC] at A rwa [sub_ne_zero]
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