8.Β Chapter 12.3 Sequence of holomorphic functions
import Mathlib.Data.Complex.Basic import Mathlib.Tactic
Equivalence of Locally Uniform Convergence and Compact Convergence
We prove that for a sequence of complex-valued functions on a nonempty
open connected domain D \subseteq \mathbb{C}
Definition of Locally uniform convergence:
at every point of D, there is a neighborhood on which the sequence converges uniformly.
Theorem 12.3.1. The following are equivalent:
-
Locally uniform convergence: For every
z_0 \in D, there exists a neighborhoodUofz_0such thatf_k \to funiformly onU. -
Compact convergence: For every compact set
K \subset D, f_k β funiformly onK.
We will need some functions from Filter, Topology and Set
open Filter Topology Set
Define locally uniform convergence and compact convergence.
def LocallyUniformConvergence (F : β β β β β) (f : β β β)
(D : Set β) : Prop :=
β zβ β D, β U β π zβ, TendstoUniformlyOn F f atTop U
/-- Compact convergence: the sequence converges
uniformly on every compact subset of D. -/
def CompactConvergence (F : β β β β β)
(f : β β β) (D : Set β) : Prop :=
β K β D, IsCompact K β TendstoUniformlyOn F f atTop K
Locally uniform convergence implies compact convergence.
/--
Locally uniform convergence implies compact convergence
for sequences of complex functions on a
nonempty open connected domain.
-/
theorem locallyUniform_implies_compact
(D : Set β)
-- (hD_open : IsOpen D) -- the argument does not
-- (hD_nonempty : D.Nonempty) -- requires these
-- (hD_conn : IsConnected D) -- assumptions
(F : β β β β β) (f : β β β)
(hloc : LocallyUniformConvergence F f D) :
CompactConvergence F f D := D:Set βF:β β β β βf:β β βhloc:LocallyUniformConvergence F f Dβ’ CompactConvergence F f D
intro K D:Set βF:β β β β βf:β β βhloc:LocallyUniformConvergence F f DK:Set βhK_sub:K β Dβ’ IsCompact K β TendstoUniformlyOn F f atTop K D:Set βF:β β β β βf:β β βhloc:LocallyUniformConvergence F f DK:Set βhK_sub:K β DhK_compact:IsCompact Kβ’ TendstoUniformlyOn F f atTop K
have h_neighborhoods : β z β K, β U β π z,
TendstoUniformlyOn F f atTop U := D:Set βF:β β β β βf:β β βhloc:LocallyUniformConvergence F f Dβ’ CompactConvergence F f D
All goals completed! π
D:Set βF:β β β β βf:β β βhloc:LocallyUniformConvergence F f DK:Set βhK_sub:K β DhK_compact:IsCompact Kh_neighborhoods:β z β K, β U β π z, TendstoUniformlyOn F f atTop Uβ’ TendstoUniformlyOn F f atTop K; (
D:Set βF:β β β β βf:β β βhloc:LocallyUniformConvergence F f DK:Set βhK_sub:K β DhK_compact:IsCompact KU:β β Set βhU:β z β K, U z β π z β§ TendstoUniformlyOn F f atTop (U z)β’ TendstoUniformlyOn F f atTop K;
-- Since $K$ is compact, we can find a finite subcover
-- of $K$ by the neighborhoods $U_z$.
obtain β¨z_fin, hz_finβ© : β z_fin : Finset β,
(β z β z_fin, z β K) β§ K β β z β z_fin, U z := D:Set βF:β β β β βf:β β βhloc:LocallyUniformConvergence F f DK:Set βhK_sub:K β DhK_compact:IsCompact KU:β β Set βhU:β z β K, U z β π z β§ TendstoUniformlyOn F f atTop (U z)β’ β z_fin, (β z β z_fin, z β K) β§ K β β z β z_fin, U z
D:Set βF:β β β β βf:β β βhloc:LocallyUniformConvergence F f DK:Set βhK_sub:K β DhK_compact:IsCompact KU:β β Set βhU:β z β K, U z β π z β§ TendstoUniformlyOn F f atTop (U z)this:β t, (β x β t, x β K) β§ K β β x β t, U xβ’ β z_fin, (β z β z_fin, z β K) β§ K β β z β z_fin, U z; All goals completed! π;
D:Set βF:β β β β βf:β β βhloc:LocallyUniformConvergence F f DK:Set βhK_sub:K β DhK_compact:IsCompact KU:β β Set βhU:β z β K, U z β π z β§ TendstoUniformlyOn F f atTop (U z)z_fin:Finset βhz_fin:(β z β z_fin, z β K) β§ K β β z β z_fin, U zβ’ TendstoUniformlyOn F f atTop K; (
D:Set βF:β β β β βf:β β βhloc:LocallyUniformConvergence F f DK:Set βhK_sub:K β DhK_compact:IsCompact KU:β β Set βz_fin:Finset βhU:β z β K, U z β π z β§ β (Ξ΅ : β), 0 < Ξ΅ β β a, β (b : β), a β€ b β β x β U z, dist (f x) (F b x) < Ξ΅hz_fin:(β z β z_fin, z β K) β§ K β β z β z_fin, U zβ’ β (Ξ΅ : β), 0 < Ξ΅ β β a, β (b : β), a β€ b β β x β K, dist (f x) (F b x) < Ξ΅
intro Ξ΅ D:Set βF:β β β β βf:β β βhloc:LocallyUniformConvergence F f DK:Set βhK_sub:K β DhK_compact:IsCompact KU:β β Set βz_fin:Finset βhU:β z β K, U z β π z β§ β (Ξ΅ : β), 0 < Ξ΅ β β a, β (b : β), a β€ b β β x β U z, dist (f x) (F b x) < Ξ΅hz_fin:(β z β z_fin, z β K) β§ K β β z β z_fin, U zΞ΅:βhΞ΅:0 < Ξ΅β’ β a, β (b : β), a β€ b β β x β K, dist (f x) (F b x) < Ξ΅
D:Set βF:β β β β βf:β β βhloc:LocallyUniformConvergence F f DK:Set βhK_sub:K β DhK_compact:IsCompact KU:β β Set βz_fin:Finset βhU:β z β K, U z β π z β§ β (Ξ΅ : β), 0 < Ξ΅ β β a, β (b : β), a β€ b β β x β U z, dist (f x) (F b x) < Ξ΅hz_fin:(β z β z_fin, z β K) β§ K β β z β z_fin, U zΞ΅:βhΞ΅:0 < Ξ΅a:β β βha:β z β z_fin, β (b : β), a z β€ b β β x β U z, dist (f x) (F b x) < Ξ΅β’ β a, β (b : β), a β€ b β β x β K, dist (f x) (F b x) < Ξ΅
D:Set βF:β β β β βf:β β βhloc:LocallyUniformConvergence F f DK:Set βhK_sub:K β DhK_compact:IsCompact KU:β β Set βz_fin:Finset βhU:β z β K, U z β π z β§ β (Ξ΅ : β), 0 < Ξ΅ β β a, β (b : β), a β€ b β β x β U z, dist (f x) (F b x) < Ξ΅hz_fin:(β z β z_fin, z β K) β§ K β β z β z_fin, U zΞ΅:βhΞ΅:0 < Ξ΅a:β β βha:β z β z_fin, β (b : β), a z β€ b β β x β U z, dist (f x) (F b x) < Ξ΅β’ β (b : β), z_fin.sup a β€ b β β x β K, dist (f x) (F b x) < Ξ΅
intro n D:Set βF:β β β β βf:β β βhloc:LocallyUniformConvergence F f DK:Set βhK_sub:K β DhK_compact:IsCompact KU:β β Set βz_fin:Finset βhU:β z β K, U z β π z β§ β (Ξ΅ : β), 0 < Ξ΅ β β a, β (b : β), a β€ b β β x β U z, dist (f x) (F b x) < Ξ΅hz_fin:(β z β z_fin, z β K) β§ K β β z β z_fin, U zΞ΅:βhΞ΅:0 < Ξ΅a:β β βha:β z β z_fin, β (b : β), a z β€ b β β x β U z, dist (f x) (F b x) < Ξ΅n:βhn:z_fin.sup a β€ nβ’ β x β K, dist (f x) (F n x) < Ξ΅ D:Set βF:β β β β βf:β β βhloc:LocallyUniformConvergence F f DK:Set βhK_sub:K β DhK_compact:IsCompact KU:β β Set βz_fin:Finset βhU:β z β K, U z β π z β§ β (Ξ΅ : β), 0 < Ξ΅ β β a, β (b : β), a β€ b β β x β U z, dist (f x) (F b x) < Ξ΅hz_fin:(β z β z_fin, z β K) β§ K β β z β z_fin, U zΞ΅:βhΞ΅:0 < Ξ΅a:β β βha:β z β z_fin, β (b : β), a z β€ b β β x β U z, dist (f x) (F b x) < Ξ΅n:βhn:z_fin.sup a β€ nx:ββ’ x β K β dist (f x) (F n x) < Ξ΅ D:Set βF:β β β β βf:β β βhloc:LocallyUniformConvergence F f DK:Set βhK_sub:K β DhK_compact:IsCompact KU:β β Set βz_fin:Finset βhU:β z β K, U z β π z β§ β (Ξ΅ : β), 0 < Ξ΅ β β a, β (b : β), a β€ b β β x β U z, dist (f x) (F b x) < Ξ΅hz_fin:(β z β z_fin, z β K) β§ K β β z β z_fin, U zΞ΅:βhΞ΅:0 < Ξ΅a:β β βha:β z β z_fin, β (b : β), a z β€ b β β x β U z, dist (f x) (F b x) < Ξ΅n:βhn:z_fin.sup a β€ nx:βhx:x β Kβ’ dist (f x) (F n x) < Ξ΅
D:Set βF:β β β β βf:β β βhloc:LocallyUniformConvergence F f DK:Set βhK_sub:K β DhK_compact:IsCompact KU:β β Set βz_fin:Finset βhU:β z β K, U z β π z β§ β (Ξ΅ : β), 0 < Ξ΅ β β a, β (b : β), a β€ b β β x β U z, dist (f x) (F b x) < Ξ΅hz_fin:(β z β z_fin, z β K) β§ K β β z β z_fin, U zΞ΅:βhΞ΅:0 < Ξ΅a:β β βha:β z β z_fin, β (b : β), a z β€ b β β x β U z, dist (f x) (F b x) < Ξ΅n:βhn:z_fin.sup a β€ nx:βhx:x β Kz:βhz:z β z_finhxz:x β U zβ’ dist (f x) (F n x) < Ξ΅
All goals completed! π;))
Compact convergence implies locally uniform convergence
/--
Compact convergence implies locally uniform
convergence for sequences of complex functions
on a nonempty open connected domain.
-/
theorem compact_implies_locallyUniform
(D : Set β) (hD_open : IsOpen D)
-- (_hD_nonempty : D.Nonempty)
-- (_hD_conn : IsConnected D)
(F : β β β β β)
(f : β β β)
(hcpt : CompactConvergence F f D) :
LocallyUniformConvergence F f D := D:Set βhD_open:IsOpen DF:β β β β βf:β β βhcpt:CompactConvergence F f Dβ’ LocallyUniformConvergence F f D
-- Given that F converges compactly to f on D,
-- we need to show that F converges locally
-- uniformly to f on D.
intro zβ D:Set βhD_open:IsOpen DF:β β β β βf:β β βhcpt:CompactConvergence F f Dzβ:βhzβ:zβ β Dβ’ β U β π zβ, TendstoUniformlyOn F f atTop U
obtain β¨r, hr_pos, hrβ© :
β r > 0, (Metric.closedBall zβ r) β D := D:Set βhD_open:IsOpen DF:β β β β βf:β β βhcpt:CompactConvergence F f Dzβ:βhzβ:zβ β Dβ’ β r > 0, Metric.closedBall zβ r β D
All goals completed! π
All goals completed! π
/-- Locally uniform convergence and
compact convergence are equivalent for sequences
of complex functions on a nonempty open connected
domain D β β.
-/
theorem locallyUniform_iff_compact
(D : Set β) (hD_open : IsOpen D)
-- (hD_nonempty : D.Nonempty)
-- (hD_conn : IsConnected D)
(F : β β β β β) (f : β β β) :
LocallyUniformConvergence F f D
β CompactConvergence F f D := D:Set βhD_open:IsOpen DF:β β β β βf:β β ββ’ LocallyUniformConvergence F f D β CompactConvergence F f D
D:Set βhD_open:IsOpen DF:β β β β βf:β β ββ’ LocallyUniformConvergence F f D β CompactConvergence F f DD:Set βhD_open:IsOpen DF:β β β β βf:β β ββ’ CompactConvergence F f D β LocallyUniformConvergence F f D
D:Set βhD_open:IsOpen DF:β β β β βf:β β ββ’ LocallyUniformConvergence F f D β CompactConvergence F f D All goals completed! π
-- hD_open hD_nonempty hD_conn F f
D:Set βhD_open:IsOpen DF:β β β β βf:β β ββ’ CompactConvergence F f D β LocallyUniformConvergence F f D All goals completed! π
-- hD_nonempty hD_conn F f