working…

This commit is contained in:
Stefan Kebekus 2024-08-05 14:53:26 +02:00
parent 4387149e33
commit f4655ef1d3
1 changed files with 45 additions and 16 deletions

View File

@ -291,18 +291,28 @@ theorem primitive_hasDerivAtBasepoint
theorem primitive_additivity theorem primitive_additivity
{E : Type u} [NormedAddCommGroup E] [NormedSpace E] [CompleteSpace E] {E : Type u} [NormedAddCommGroup E] [NormedSpace E] [CompleteSpace E]
(f : → E) {f : → E}
(z₀ : ) {z₀ : }
(rx ry : ) {rx ry : }
(hry : 0 < ry)
(hf : DifferentiableOn f (Metric.ball z₀.re rx × Metric.ball z₀.im ry)) (hf : DifferentiableOn f (Metric.ball z₀.re rx × Metric.ball z₀.im ry))
(z₁ : ) (hry : 0 < ry)
{z₁ : }
(hz₁ : z₁ ∈ (Metric.ball z₀.re rx × Metric.ball z₀.im ry)) (hz₁ : z₁ ∈ (Metric.ball z₀.re rx × Metric.ball z₀.im ry))
: :
∃ εx εy : , ∀ z ∈ (Metric.ball z₁.re εx × Metric.ball z₁.im εy), (primitive z₀ f z) - (primitive z₁ f z) - (primitive z₀ f z₁) = 0 := by ∃ εx > 0, ∃ εy > 0, ∀ z ∈ (Metric.ball z₁.re εx × Metric.ball z₁.im εy), (primitive z₀ f z) - (primitive z₁ f z) - (primitive z₀ f z₁) = 0 := by
let εx := rx - dist z₀.re z₁.re
have hεx : εx > 0 := by
sorry
let εy := ry - dist z₀.im z₁.im
have hεy : εy > 0 := by
sorry
use εx
use hεx
use εy
use hεy
use rx - dist z₀.re z₁.re
use ry - dist z₀.im z₁.im
intro z hz intro z hz
unfold primitive unfold primitive
@ -506,20 +516,41 @@ theorem primitive_additivity'
primitive z₀ f =ᶠ[nhds z₁] fun z ↦ (primitive z₁ f z) + (primitive z₀ f z₁) := by primitive z₀ f =ᶠ[nhds z₁] fun z ↦ (primitive z₁ f z) + (primitive z₀ f z₁) := by
let ε := R - dist z₀ z₁ let ε := R - dist z₀ z₁
have hε : 0 < ε := by
dsimp [ε]
simp
exact Metric.mem_ball'.mp hz₁
let rx := dist z₀.re z₁.re + ε/(2 : ) let rx := dist z₀.re z₁.re + ε/(2 : )
let ry := dist z₀.im z₁.im + ε/(2 : ) let ry := dist z₀.im z₁.im + ε/(2 : )
have h'ry : 0 < ry := by have h'ry : 0 < ry := by
sorry dsimp [ry]
apply add_pos_of_nonneg_of_pos
exact dist_nonneg
simpa
have h'f : DifferentiableOn f (Metric.ball z₀.re rx × Metric.ball z₀.im ry) := by have h'f : DifferentiableOn f (Metric.ball z₀.re rx × Metric.ball z₀.im ry) := by
apply hf.mono
intro x hx
simp
let A := hx.1
simp at A
let B := hx.2
simp at B
calc dist x z₀
_ = √((x.re - z₀.re) ^ 2 + (x.im - z₀.im) ^ 2) := by exact Complex.dist_eq_re_im x z₀
_ =
sorry sorry
have h'z₁ : z₁ ∈ (Metric.ball z₀.re rx × Metric.ball z₀.im ry) := by have h'z₁ : z₁ ∈ (Metric.ball z₀.re rx × Metric.ball z₀.im ry) := by
sorry dsimp [rx, ry]
constructor
· rw [dist_comm]; simp; exact hε
· rw [dist_comm]; simp; exact hε
let A := primitive_additivity f z₀ rx ry h'ry h'f z₁ h'z₁ obtain ⟨εx, hεx, εy, hεy, hε⟩ := primitive_additivity h'f h'ry h'z₁
obtain ⟨εx, εy, hε⟩ := A
apply Filter.eventuallyEq_iff_exists_mem.2 apply Filter.eventuallyEq_iff_exists_mem.2
use (Metric.ball z₁.re εx × Metric.ball z₁.im εy) use (Metric.ball z₁.re εx × Metric.ball z₁.im εy)
@ -529,10 +560,8 @@ theorem primitive_additivity'
exact Metric.isOpen_ball exact Metric.isOpen_ball
exact Metric.isOpen_ball exact Metric.isOpen_ball
constructor constructor
· simp · simpa
sorry · simpa
· simp
sorry
· intro x hx · intro x hx
simp simp
rw [← sub_zero (primitive z₀ f x), ← hε x hx] rw [← sub_zero (primitive z₀ f x), ← hε x hx]