Update holomorphic.primitive.lean

This commit is contained in:
Stefan Kebekus 2024-06-12 12:30:08 +02:00
parent f43fd50528
commit a9f1c3eaa6
1 changed files with 78 additions and 28 deletions

View File

@ -38,6 +38,7 @@ theorem MeasureTheory.integral2_divergence_prod_of_hasFDerivWithinAt_off_countab
integral2_divergence_prod_of_hasFDerivWithinAt_off_countable f g f' g' a₁ a₂ b₁ b₂ s hs Hcf Hcg integral2_divergence_prod_of_hasFDerivWithinAt_off_countable f g f' g' a₁ a₂ b₁ b₂ s hs Hcf Hcg
Hdf Hdg Hi Hdf Hdg Hi
theorem MeasureTheory.integral2_divergence_prod_of_hasFDerivWithinAt_off_countable₂ theorem MeasureTheory.integral2_divergence_prod_of_hasFDerivWithinAt_off_countable₂
{E : Type u} [NormedAddCommGroup E] [NormedSpace E] [CompleteSpace E] {E : Type u} [NormedAddCommGroup E] [NormedSpace E] [CompleteSpace E]
(f : × → E) (f : × → E)
@ -65,7 +66,7 @@ theorem MeasureTheory.integral2_divergence_prod_of_hasFDerivWithinAt_off_countab
assumption assumption
theorem MeasureTheory.integral2_divergence_prod_of_hasFDerivWithinAt_off_countable theorem MeasureTheory.integral2_divergence₃
{E : Type u} [NormedAddCommGroup E] [NormedSpace E] [CompleteSpace E] {E : Type u} [NormedAddCommGroup E] [NormedSpace E] [CompleteSpace E]
(f g : × → E) (f g : × → E)
(h₁f : ContDiff 1 f) (h₁f : ContDiff 1 f)
@ -84,11 +85,11 @@ theorem MeasureTheory.integral2_divergence_prod_of_hasFDerivWithinAt_off_countab
exact h₁g.continuous.continuousOn exact h₁g.continuous.continuousOn
-- --
rw [Set.diff_empty] rw [Set.diff_empty]
intro x h₁x intro x _
exact DifferentiableAt.hasFDerivAt ((h₁f.differentiable le_rfl) x) exact DifferentiableAt.hasFDerivAt ((h₁f.differentiable le_rfl) x)
-- --
rw [Set.diff_empty] rw [Set.diff_empty]
intro y h₁y intro y _
exact DifferentiableAt.hasFDerivAt ((h₁g.differentiable le_rfl) y) exact DifferentiableAt.hasFDerivAt ((h₁g.differentiable le_rfl) y)
-- --
apply ContinuousOn.integrableOn_compact apply ContinuousOn.integrableOn_compact
@ -103,7 +104,7 @@ theorem MeasureTheory.integral2_divergence_prod_of_hasFDerivWithinAt_off_countab
theorem integral_divergence₄ theorem integral_divergence₄
{E : Type u} [NormedAddCommGroup E] [NormedSpace E] [CompleteSpace E] {E : Type u} [NormedAddCommGroup E] [NormedSpace E] [CompleteSpace E]
(f g : → E) (f g : → E)
(h₁f : ContDiff 1 f) (h₁f : ContDiff 1 f)
(h₁g : ContDiff 1 g) (h₁g : ContDiff 1 g)
@ -113,27 +114,76 @@ theorem integral_divergence₄
(b₂ : ) : (b₂ : ) :
∫ (x : ) in a₁..b₁, ∫ (y : ) in a₂..b₂, ((fderiv f) ⟨x, y⟩ ) 1 + ((fderiv g) ⟨x, y⟩) Complex.I = (((∫ (x : ) in a₁..b₁, g ⟨x, b₂⟩) - ∫ (x : ) in a₁..b₁, g ⟨x, a₂⟩) + ∫ (y : ) in a₂..b₂, f ⟨b₁, y⟩) - ∫ (y : ) in a₂..b₂, f ⟨a₁, y⟩ := by ∫ (x : ) in a₁..b₁, ∫ (y : ) in a₂..b₂, ((fderiv f) ⟨x, y⟩ ) 1 + ((fderiv g) ⟨x, y⟩) Complex.I = (((∫ (x : ) in a₁..b₁, g ⟨x, b₂⟩) - ∫ (x : ) in a₁..b₁, g ⟨x, a₂⟩) + ∫ (y : ) in a₂..b₂, f ⟨b₁, y⟩) - ∫ (y : ) in a₂..b₂, f ⟨a₁, y⟩ := by
apply integral2_divergence_prod_of_hasFDerivWithinAt_off_countable f g (fderiv f) (fderiv g) a₁ a₂ b₁ b₂ ∅ let fr : × → E := f ∘ Complex.equivRealProdCLM.symm
exact Set.countable_empty let gr : × → E := g ∘ Complex.equivRealProdCLM.symm
-- ContinuousOn f (Set.uIcc a₁ b₁ ×ˢ Set.uIcc a₂ b₂)
exact h₁f.continuous.continuousOn have sfr {x y : } : f { re := x, im := y } = fr (x, y) := by exact rfl
-- have sgr {x y : } : g { re := x, im := y } = gr (x, y) := by exact rfl
exact h₁g.continuous.continuousOn repeat (conv in f { re := _, im := _ } => rw [sfr])
-- repeat (conv in g { re := _, im := _ } => rw [sgr])
rw [Set.diff_empty]
intro x h₁x have sfr' {x y : } {z : } : (fderiv f { re := x, im := y }) z = fderiv fr (x, y) (Complex.equivRealProdCLM z) := by
exact DifferentiableAt.hasFDerivAt ((h₁f.differentiable le_rfl) x) rw [fderiv.comp]
-- rw [Complex.equivRealProdCLM.symm.fderiv]
rw [Set.diff_empty] tauto
intro y h₁y apply Differentiable.differentiableAt
exact DifferentiableAt.hasFDerivAt ((h₁g.differentiable le_rfl) y) exact h₁f.differentiable le_rfl
-- exact Complex.equivRealProdCLM.symm.differentiableAt
apply ContinuousOn.integrableOn_compact conv in ⇑(fderiv f { re := _, im := _ }) _ => rw [sfr']
apply IsCompact.prod
exact isCompact_uIcc have sgr' {x y : } {z : } : (fderiv g { re := x, im := y }) z = fderiv gr (x, y) (Complex.equivRealProdCLM z) := by
exact isCompact_uIcc rw [fderiv.comp]
apply ContinuousOn.add rw [Complex.equivRealProdCLM.symm.fderiv]
apply Continuous.continuousOn tauto
exact Continuous.clm_apply (ContDiff.continuous_fderiv h₁f le_rfl) continuous_const apply Differentiable.differentiableAt
apply Continuous.continuousOn exact h₁g.differentiable le_rfl
exact Continuous.clm_apply (ContDiff.continuous_fderiv h₁g le_rfl) continuous_const exact Complex.equivRealProdCLM.symm.differentiableAt
conv in ⇑(fderiv g { re := _, im := _ }) _ => rw [sgr']
apply MeasureTheory.integral2_divergence₃ fr gr _ _ a₁ a₂ b₁ b₂
-- ContDiff 1 fr
exact (ContinuousLinearEquiv.contDiff_comp_iff (ContinuousLinearEquiv.symm Complex.equivRealProdCLM)).mpr h₁f
-- ContDiff 1 gr
exact (ContinuousLinearEquiv.contDiff_comp_iff (ContinuousLinearEquiv.symm Complex.equivRealProdCLM)).mpr h₁g
theorem integral_divergence₅
{E : Type u} [NormedAddCommGroup E] [NormedSpace E] [CompleteSpace E]
(F : )
(hF : Differentiable F)
(a₁ : )
(a₂ : )
(b₁ : )
(b₂ : ) :
(∫ (x : ) in a₁..b₁, Complex.I • F { re := x, im := b₂ }) +
(∫ (y : ) in a₂..b₂, F { re := b₁, im := y })
=
(∫ (x : ) in a₁..b₁, Complex.I • F { re := x, im := a₂ }) +
(∫ (y : ) in a₂..b₂, F { re := a₁, im := y }) := by
let f := F
let h₁f : ContDiff 1 f := by sorry
let g := Complex.I • F
let h₁g : ContDiff 1 g := by sorry
let A := integral_divergence₄ f g h₁f h₁g a₁ a₂ b₁ b₂
have {z : } : fderiv f z 1 = partialDeriv 1 f z := by rfl
conv at A in (fderiv f _) 1 => rw [this]
have {z : } : fderiv g z Complex.I = partialDeriv Complex.I g z := by rfl
conv at A in (fderiv g _) Complex.I => rw [this]
have : Differentiable g := by sorry
conv at A =>
left
arg 1
intro x
arg 1
intro y
rw [CauchyRiemann₄ this]
rw [partialDeriv_smul'₂]
rw [← smul_assoc]
simp
simp at A
sorry