diff --git a/Nevanlinna/holomorphic_JensenFormula2.lean b/Nevanlinna/holomorphic_JensenFormula2.lean index 0125d36..99bb368 100644 --- a/Nevanlinna/holomorphic_JensenFormula2.lean +++ b/Nevanlinna/holomorphic_JensenFormula2.lean @@ -7,7 +7,7 @@ import Nevanlinna.specialFunctions_CircleIntegral_affine open Real - +/- noncomputable def Zeroset {f : ℂ → ℂ} {s : Set ℂ} @@ -72,7 +72,7 @@ noncomputable def order let A := ((ZeroFinset_mem_iff h₁f i).1 i.2).1 let B := (h₁f i.1 A).analyticAt exact B.order.toNat - +-/ theorem jensen_case_R_eq_one (f : ℂ → ℂ) @@ -180,29 +180,28 @@ theorem jensen_case_R_eq_one exact Ne.symm (zero_ne_one' ℝ) - have h₁Gi : ∀ i ∈ (ZeroFinset h₁f h₂f).attach, IntervalIntegrable (fun x => log (Complex.abs (circleMap 0 1 x - ↑i))) MeasureTheory.volume 0 (2 * π) := by + have h₁Gi : ∀ i ∈ (finiteZeros h₁U h₂U h'₁f h'₂f).toFinset, IntervalIntegrable (fun x => log (Complex.abs (circleMap 0 1 x - ↑i))) MeasureTheory.volume 0 (2 * π) := by -- This is hard. Need to invoke specialFunctions_CircleIntegral_affine. sorry - have : ∫ (x : ℝ) in (0)..2 * π, G (circleMap 0 1 x) = (∫ (x : ℝ) in (0)..2 * π, log (Complex.abs (F (circleMap 0 1 x)))) + ∑ x ∈ (ZeroFinset h₁f h₂f).attach, ↑(order x) * ∫ (x_1 : ℝ) in (0)..2 * π, log (Complex.abs (circleMap 0 1 x_1 - ↑x)) := by + have : ∫ (x : ℝ) in (0)..2 * π, G (circleMap 0 1 x) + = (∫ (x : ℝ) in (0)..2 * π, log (Complex.abs (F (circleMap 0 1 x)))) + + ∑ x ∈ (finiteZeros h₁U h₂U h'₁f h'₂f).toFinset, (h'₁f.order x).toNat * ∫ (x_1 : ℝ) in (0)..2 * π, log (Complex.abs (circleMap 0 1 x_1 - ↑x)) := by dsimp [G] rw [intervalIntegral.integral_add] rw [intervalIntegral.integral_finset_sum] simp_rw [intervalIntegral.integral_const_mul] - -- ∀ i ∈ (ZeroFinset h₁f).attach, IntervalIntegrable (fun x => ↑(order i) * - -- log (Complex.abs (circleMap 0 1 x - ↑i))) MeasureTheory.volume 0 (2 * π) + -- ∀ i ∈ (finiteZeros h₁U h₂U h'₁f h'₂f).toFinset, + -- IntervalIntegrable (fun x => (h'₁f.order i).toNat * + -- log (Complex.abs (circleMap 0 1 x - ↑i))) MeasureTheory.volume 0 (2 * π) intro i hi apply IntervalIntegrable.const_mul - have : i.1 ∈ Metric.closedBall (0 : ℂ) 1 := by exact ((ZeroFinset_mem_iff h₁f i).1 i.2).1 - simp at this + --simp at this by_cases h₂i : ‖i.1‖ = 1 -- case pos exact int'₂ h₂i -- case neg - have : i.1 ∈ Metric.ball (0 : ℂ) 1 := by sorry - - apply Continuous.intervalIntegrable apply continuous_iff_continuousAt.2 intro x @@ -234,32 +233,32 @@ theorem jensen_case_R_eq_one apply ContinuousAt.comp apply Real.continuousAt_log simp [h₂F] - -- + -- ContinuousAt (⇑Complex.abs ∘ F ∘ fun x => circleMap 0 1 x) x apply ContinuousAt.comp apply Complex.continuous_abs.continuousAt apply ContinuousAt.comp apply DifferentiableAt.continuousAt (𝕜 := ℂ ) apply HolomorphicAt.differentiableAt - simp [h₁F] - -- + simp [h'₁F] + -- ContinuousAt (fun x => circleMap 0 1 x) x apply Continuous.continuousAt apply continuous_circleMap - -- - have : (fun x => ∑ s ∈ (ZeroFinset h₁f h₂f).attach, ↑(order s) * log (Complex.abs (circleMap 0 1 x - ↑s))) - = ∑ s ∈ (ZeroFinset h₁f h₂f).attach, (fun x => ↑(order s) * log (Complex.abs (circleMap 0 1 x - ↑s))) := by + + have : (fun x => ∑ s ∈ (finiteZeros h₁U h₂U h'₁f h'₂f).toFinset, (h'₁f.order s).toNat * log (Complex.abs (circleMap 0 1 x - ↑s))) + = ∑ s ∈ (finiteZeros h₁U h₂U h'₁f h'₂f).toFinset, (fun x => (h'₁f.order s).toNat * log (Complex.abs (circleMap 0 1 x - ↑s))) := by funext x simp rw [this] apply IntervalIntegrable.sum intro i h₂i apply IntervalIntegrable.const_mul - have : i.1 ∈ Metric.closedBall (0 : ℂ) 1 := by exact ((ZeroFinset_mem_iff h₁f i).1 i.2).1 - simp at this + --have : i.1 ∈ Metric.closedBall (0 : ℂ) 1 := i.2 + --simp at this by_cases h₂i : ‖i.1‖ = 1 -- case pos exact int'₂ h₂i -- case neg - have : i.1 ∈ Metric.ball (0 : ℂ) 1 := by sorry + --have : i.1 ∈ Metric.ball (0 : ℂ) 1 := by sorry apply Continuous.intervalIntegrable apply continuous_iff_continuousAt.2 intro x @@ -287,16 +286,13 @@ theorem jensen_case_R_eq_one have t₀ : ∀ z ∈ Metric.closedBall 0 1, HarmonicAt logAbsF z := by intro z hz apply logabs_of_holomorphicAt_is_harmonic - apply h₁F z hz + apply h'₁F z hz exact h₂F z hz apply harmonic_meanValue₁ 1 Real.zero_lt_one t₀ simp_rw [← Complex.norm_eq_abs] at this rw [t₁] at this - --let Z₁ := (ZeroFinset h₁f h₂f) ∩ (Metric.ball 0 1) - - let Z₂ := { x : ZeroFinset h₁f h₂f | ‖x.1‖ = 1 } sorry