Update complexHarmonic.lean

This commit is contained in:
Stefan Kebekus
2024-05-02 21:09:38 +02:00
parent f239759275
commit ea3693ff24

View File

@@ -3,38 +3,74 @@ import Mathlib.Analysis.Complex.TaylorSeries
import Mathlib.Analysis.Calculus.LineDeriv.Basic
import Mathlib.Analysis.Calculus.ContDiff.Defs
import Mathlib.Analysis.Calculus.FDeriv.Basic
import Mathlib.Analysis.Calculus.FDeriv.Symmetric
import Nevanlinna.cauchyRiemann
noncomputable def Complex.laplace : ( ) ( ) := by
noncomputable def Complex.laplace : ( ) ( ) := by
intro f
let f₁ := fun x lineDeriv f x 1
let f₁₁ := fun x lineDeriv f x 1
let f := fun x lineDeriv f x Complex.I
let f₂₂ := fun x lineDeriv f x Complex.I
exact f₁₁ + f₂₂
let fx := fun w fderiv f w 1
let fxx := fun z fderiv fx z 1
let fy := fun w fderiv f w Complex.I
let fyy := fun z fderiv fy z Complex.I
exact fun z (fxx z) + (fyy z)
def Harmonic (f : ) : Prop :=
def Harmonic (f : ) : Prop :=
(ContDiff 2 f) ( z, Complex.laplace f z = 0)
theorem re_comp_holomorphic_is_harmonic (f : ) :
Differentiable f Harmonic (Complex.reCLM f) := by
Differentiable f Harmonic f := by
intro h
constructor
· -- Complex.reCLM ∘ f is two times real continuously differentiable
apply ContDiff.comp
· -- Complex.reCLM is two times real continuously differentiable
exact ContinuousLinearMap.contDiff Complex.reCLM
· -- f is two times real continuously differentiable
exact ContDiff.restrict_scalars (Differentiable.contDiff h)
· -- Laplace of f is zero
intro z
unfold Complex.laplace
simp
let ZZ := (CauchyRiemann₃ (h z)).left
conv =>
left
right
arg 1
arg 2
intro z
rw [CauchyRiemann₁ (h z)]
have t₀ : z, DifferentiableAt (fun w => (fderiv f w) 1) z := by
intro z
sorry
have t₁ : x, (fderiv (fun w => Complex.I * (fderiv f w) 1) z) x
= Complex.I * ((fderiv (fun w => (fderiv f w) 1) z) x) := by
intro x
rw [fderiv_const_mul]
simp
exact t₀ z
rw [t₁]
have t₂ : (fderiv (fun w => (fderiv f w) 1) z) Complex.I
= (fderiv (fun w => (fderiv f w) Complex.I) z) 1 := by
sorry
rw [t₂]
conv =>
left
right
arg 2
arg 1
arg 2
intro z
rw [CauchyRiemann₁ (h z)]
rw [t₁]
rw [ mul_assoc]
simp