geometry.manifold.complex
โท
Mathlib.Geometry.Manifold.Complex
The following section lists changes to this file in mathlib3 and mathlib4 that occured after the initial port. Most recent changes are shown first. Hovering over a commit will show all commits associated with the same mathlib3 commit.
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(last sync)
mathlib commit https://github.com/leanprover-community/mathlib/commit/65a1391a0106c9204fe45bc73a039f056558cb83
@@ -5,7 +5,7 @@ Authors: Heather Macbeth
-/
import Analysis.Complex.AbsMax
import Analysis.LocallyConvex.WithSeminorms
-import Geometry.Manifold.Mfderiv
+import Geometry.Manifold.MFDeriv.Defs
import Topology.LocallyConstant.Basic
#align_import geometry.manifold.complex from "leanprover-community/mathlib"@"9240e8be927a0955b9a82c6c85ef499ee3a626b8"
mathlib commit https://github.com/leanprover-community/mathlib/commit/65a1391a0106c9204fe45bc73a039f056558cb83
@@ -93,7 +93,7 @@ protected theorem isLocallyConstant {f : M โ F} (hf : MDifferentiable ๐(โ
have Hโ : (chart_at E p).symm z โ (chart_at E p).source := (chart_at E p).map_target hz
have Hโ : f ((chart_at E p).symm z) โ (chart_at F (0 : F)).source := trivial
have H := (mdifferentiableAt_iff_of_mem_source Hโ Hโ).mp (hf ((chart_at E p).symm z))
- simp only [differentiableWithinAt_univ, mfld_simps] at H
+ simp only [differentiableWithinAt_univ, mfld_simps] at H
simpa [PartialHomeomorph.right_inv _ hz] using H.2
-- `f` pulled back by the chart at `p` has a local max at `chart_at E p p`
have hf'' : IsLocalMax (norm โ f โ (chart_at E p).symm) (chart_at E p p) :=
mathlib commit https://github.com/leanprover-community/mathlib/commit/65a1391a0106c9204fe45bc73a039f056558cb83
@@ -85,7 +85,7 @@ protected theorem isLocallyConstant {f : M โ F} (hf : MDifferentiable ๐(โ
rw [โ Filter.mem_map, (chart_at E p).symm_map_nhds_eq (mem_chart_source E p)]
exact hps'
have keyโ : (chart_at E p).target โ ๐ (chart_at E p p) :=
- (LocalHomeomorph.open_target _).mem_nhds (mem_chart_target E p)
+ (PartialHomeomorph.open_target _).mem_nhds (mem_chart_target E p)
-- `f` pulled back by the chart at `p` is differentiable around `chart_at E p p`
have hf' : โแถ z : E in ๐ (chart_at E p p), DifferentiableAt โ (f โ (chart_at E p).symm) z :=
by
@@ -94,22 +94,22 @@ protected theorem isLocallyConstant {f : M โ F} (hf : MDifferentiable ๐(โ
have Hโ : f ((chart_at E p).symm z) โ (chart_at F (0 : F)).source := trivial
have H := (mdifferentiableAt_iff_of_mem_source Hโ Hโ).mp (hf ((chart_at E p).symm z))
simp only [differentiableWithinAt_univ, mfld_simps] at H
- simpa [LocalHomeomorph.right_inv _ hz] using H.2
+ simpa [PartialHomeomorph.right_inv _ hz] using H.2
-- `f` pulled back by the chart at `p` has a local max at `chart_at E p p`
have hf'' : IsLocalMax (norm โ f โ (chart_at E p).symm) (chart_at E p p) :=
by
refine' Filter.eventually_of_mem keyโ fun z hz => _
refine' (hpโ ((chart_at E p).symm z) hz).trans (_ : โf pโโ โค โf _โ)
- rw [โ hp, LocalHomeomorph.left_inv _ (mem_chart_source E p)]
+ rw [โ hp, PartialHomeomorph.left_inv _ (mem_chart_source E p)]
-- so by the maximum principle `f` is equal to `f p` near `p`
obtain โจU, hU, hUfโฉ := (Complex.eventually_eq_of_isLocalMax_norm hf' hf'').exists_mem
have Hโ : chart_at E p โปยน' U โ ๐ p := (chart_at E p).ContinuousAt (mem_chart_source E p) hU
have Hโ : (chart_at E p).source โ ๐ p :=
- (LocalHomeomorph.open_source _).mem_nhds (mem_chart_source E p)
+ (PartialHomeomorph.open_source _).mem_nhds (mem_chart_source E p)
apply Filter.mem_of_superset (Filter.inter_mem hps' (Filter.inter_mem Hโ Hโ))
rintro q โจhqs, hq : chart_at E p q โ _, hq'โฉ
refine' โจ_, hqsโฉ
- simpa [LocalHomeomorph.left_inv _ hq', hp, -norm_eq_abs] using hUf (chart_at E p q) hq
+ simpa [PartialHomeomorph.left_inv _ hq', hp, -norm_eq_abs] using hUf (chart_at E p q) hq
#align mdifferentiable.is_locally_constant MDifferentiable.isLocallyConstant
-/
mathlib commit https://github.com/leanprover-community/mathlib/commit/ce64cd319bb6b3e82f31c2d38e79080d377be451
@@ -3,10 +3,10 @@ Copyright (c) 2022 Heather Macbeth. All rights reserved.
Released under Apache 2.0 license as described in the file LICENSE.
Authors: Heather Macbeth
-/
-import Mathbin.Analysis.Complex.AbsMax
-import Mathbin.Analysis.LocallyConvex.WithSeminorms
-import Mathbin.Geometry.Manifold.Mfderiv
-import Mathbin.Topology.LocallyConstant.Basic
+import Analysis.Complex.AbsMax
+import Analysis.LocallyConvex.WithSeminorms
+import Geometry.Manifold.Mfderiv
+import Topology.LocallyConstant.Basic
#align_import geometry.manifold.complex from "leanprover-community/mathlib"@"9240e8be927a0955b9a82c6c85ef499ee3a626b8"
mathlib commit https://github.com/leanprover-community/mathlib/commit/8ea5598db6caeddde6cb734aa179cc2408dbd345
@@ -2,17 +2,14 @@
Copyright (c) 2022 Heather Macbeth. All rights reserved.
Released under Apache 2.0 license as described in the file LICENSE.
Authors: Heather Macbeth
-
-! This file was ported from Lean 3 source module geometry.manifold.complex
-! leanprover-community/mathlib commit 9240e8be927a0955b9a82c6c85ef499ee3a626b8
-! Please do not edit these lines, except to modify the commit id
-! if you have ported upstream changes.
-/
import Mathbin.Analysis.Complex.AbsMax
import Mathbin.Analysis.LocallyConvex.WithSeminorms
import Mathbin.Geometry.Manifold.Mfderiv
import Mathbin.Topology.LocallyConstant.Basic
+#align_import geometry.manifold.complex from "leanprover-community/mathlib"@"9240e8be927a0955b9a82c6c85ef499ee3a626b8"
+
/-! # Holomorphic functions on complex manifolds
> THIS FILE IS SYNCHRONIZED WITH MATHLIB4.
mathlib commit https://github.com/leanprover-community/mathlib/commit/9240e8be927a0955b9a82c6c85ef499ee3a626b8
@@ -4,7 +4,7 @@ Released under Apache 2.0 license as described in the file LICENSE.
Authors: Heather Macbeth
! This file was ported from Lean 3 source module geometry.manifold.complex
-! leanprover-community/mathlib commit f2ce6086713c78a7f880485f7917ea547a215982
+! leanprover-community/mathlib commit 9240e8be927a0955b9a82c6c85ef499ee3a626b8
! Please do not edit these lines, except to modify the commit id
! if you have ported upstream changes.
-/
@@ -15,6 +15,9 @@ import Mathbin.Topology.LocallyConstant.Basic
/-! # Holomorphic functions on complex manifolds
+> THIS FILE IS SYNCHRONIZED WITH MATHLIB4.
+> Any changes to this file require a corresponding PR to mathlib4.
+
Thanks to the rigidity of complex-differentiability compared to real-differentiability, there are
many results about complex manifolds with no analogue for manifolds over a general normed field. For
now, this file contains just two (closely related) such results:
mathlib commit https://github.com/leanprover-community/mathlib/commit/8b981918a93bc45a8600de608cde7944a80d92b9
@@ -55,6 +55,7 @@ variable {F : Type _} [NormedAddCommGroup F] [NormedSpace โ F] [StrictConvexSp
variable {M : Type _} [TopologicalSpace M] [CompactSpace M] [ChartedSpace E M]
[SmoothManifoldWithCorners ๐(โ, E) M]
+#print MDifferentiable.isLocallyConstant /-
/-- A holomorphic function on a compact complex manifold is locally constant. -/
protected theorem isLocallyConstant {f : M โ F} (hf : MDifferentiable ๐(โ, E) ๐(โ, F) f) :
IsLocallyConstant f :=
@@ -110,19 +111,24 @@ protected theorem isLocallyConstant {f : M โ F} (hf : MDifferentiable ๐(โ
refine' โจ_, hqsโฉ
simpa [LocalHomeomorph.left_inv _ hq', hp, -norm_eq_abs] using hUf (chart_at E p q) hq
#align mdifferentiable.is_locally_constant MDifferentiable.isLocallyConstant
+-/
+#print MDifferentiable.apply_eq_of_compactSpace /-
/-- A holomorphic function on a compact connected complex manifold is constant. -/
theorem apply_eq_of_compactSpace [PreconnectedSpace M] {f : M โ F}
(hf : MDifferentiable ๐(โ, E) ๐(โ, F) f) (a b : M) : f a = f b :=
hf.IsLocallyConstant.apply_eq_of_preconnectedSpace _ _
#align mdifferentiable.apply_eq_of_compact_space MDifferentiable.apply_eq_of_compactSpace
+-/
+#print MDifferentiable.exists_eq_const_of_compactSpace /-
/-- A holomorphic function on a compact connected complex manifold is the constant function `f โก v`,
for some value `v`. -/
theorem exists_eq_const_of_compactSpace [PreconnectedSpace M] {f : M โ F}
(hf : MDifferentiable ๐(โ, E) ๐(โ, F) f) : โ v : F, f = Function.const M v :=
hf.IsLocallyConstant.exists_eq_const
#align mdifferentiable.exists_eq_const_of_compact_space MDifferentiable.exists_eq_const_of_compactSpace
+-/
end MDifferentiable
mathlib commit https://github.com/leanprover-community/mathlib/commit/fdc286cc6967a012f41b87f76dcd2797b53152af
@@ -46,7 +46,7 @@ open scoped Manifold Topology
open Complex
-namespace Mdifferentiable
+namespace MDifferentiable
variable {E : Type _} [NormedAddCommGroup E] [NormedSpace โ E]
@@ -56,7 +56,7 @@ variable {M : Type _} [TopologicalSpace M] [CompactSpace M] [ChartedSpace E M]
[SmoothManifoldWithCorners ๐(โ, E) M]
/-- A holomorphic function on a compact complex manifold is locally constant. -/
-protected theorem isLocallyConstant {f : M โ F} (hf : Mdifferentiable ๐(โ, E) ๐(โ, F) f) :
+protected theorem isLocallyConstant {f : M โ F} (hf : MDifferentiable ๐(โ, E) ๐(โ, F) f) :
IsLocallyConstant f :=
by
haveI : LocallyConnectedSpace M := ChartedSpace.locallyConnectedSpace E M
@@ -109,20 +109,20 @@ protected theorem isLocallyConstant {f : M โ F} (hf : Mdifferentiable ๐(โ
rintro q โจhqs, hq : chart_at E p q โ _, hq'โฉ
refine' โจ_, hqsโฉ
simpa [LocalHomeomorph.left_inv _ hq', hp, -norm_eq_abs] using hUf (chart_at E p q) hq
-#align mdifferentiable.is_locally_constant Mdifferentiable.isLocallyConstant
+#align mdifferentiable.is_locally_constant MDifferentiable.isLocallyConstant
/-- A holomorphic function on a compact connected complex manifold is constant. -/
theorem apply_eq_of_compactSpace [PreconnectedSpace M] {f : M โ F}
- (hf : Mdifferentiable ๐(โ, E) ๐(โ, F) f) (a b : M) : f a = f b :=
+ (hf : MDifferentiable ๐(โ, E) ๐(โ, F) f) (a b : M) : f a = f b :=
hf.IsLocallyConstant.apply_eq_of_preconnectedSpace _ _
-#align mdifferentiable.apply_eq_of_compact_space Mdifferentiable.apply_eq_of_compactSpace
+#align mdifferentiable.apply_eq_of_compact_space MDifferentiable.apply_eq_of_compactSpace
/-- A holomorphic function on a compact connected complex manifold is the constant function `f โก v`,
for some value `v`. -/
theorem exists_eq_const_of_compactSpace [PreconnectedSpace M] {f : M โ F}
- (hf : Mdifferentiable ๐(โ, E) ๐(โ, F) f) : โ v : F, f = Function.const M v :=
+ (hf : MDifferentiable ๐(โ, E) ๐(โ, F) f) : โ v : F, f = Function.const M v :=
hf.IsLocallyConstant.exists_eq_const
-#align mdifferentiable.exists_eq_const_of_compact_space Mdifferentiable.exists_eq_const_of_compactSpace
+#align mdifferentiable.exists_eq_const_of_compact_space MDifferentiable.exists_eq_const_of_compactSpace
-end Mdifferentiable
+end MDifferentiable
mathlib commit https://github.com/leanprover-community/mathlib/commit/5f25c089cb34db4db112556f23c50d12da81b297
@@ -69,7 +69,7 @@ protected theorem isLocallyConstant {f : M โ F} (hf : Mdifferentiable ๐(โ
-- otherwise, let `pโ` be a point where the value of `f` has maximal norm
obtain โจpโ, hpโs, hpโโฉ := hsโ.exists_forall_ge hs' hf.continuous.norm.continuous_on
-- we will show `f` agrees everywhere with `f pโ`
- suffices s โ { r : M | f r = f pโ } โฉ s by exact (this hb).1.trans (this ha).1.symm;
+ suffices s โ {r : M | f r = f pโ} โฉ s by exact (this hb).1.trans (this ha).1.symm;
clear ha hb a b
refine' hsโ.subset_clopen _ โจpโ, hpโs, โจrfl, hpโsโฉโฉ
-- closedness of the set of points sent to `f pโ`
mathlib commit https://github.com/leanprover-community/mathlib/commit/cca40788df1b8755d5baf17ab2f27dacc2e17acb
@@ -92,7 +92,7 @@ protected theorem isLocallyConstant {f : M โ F} (hf : Mdifferentiable ๐(โ
have Hโ : (chart_at E p).symm z โ (chart_at E p).source := (chart_at E p).map_target hz
have Hโ : f ((chart_at E p).symm z) โ (chart_at F (0 : F)).source := trivial
have H := (mdifferentiableAt_iff_of_mem_source Hโ Hโ).mp (hf ((chart_at E p).symm z))
- simp only [differentiableWithinAt_univ, mfld_simps] at H
+ simp only [differentiableWithinAt_univ, mfld_simps] at H
simpa [LocalHomeomorph.right_inv _ hz] using H.2
-- `f` pulled back by the chart at `p` has a local max at `chart_at E p p`
have hf'' : IsLocalMax (norm โ f โ (chart_at E p).symm) (chart_at E p p) :=
mathlib commit https://github.com/leanprover-community/mathlib/commit/917c3c072e487b3cccdbfeff17e75b40e45f66cb
@@ -42,7 +42,7 @@ stalks, such as the Weierstrass preparation theorem.
-/
-open Manifold Topology
+open scoped Manifold Topology
open Complex
mathlib commit https://github.com/leanprover-community/mathlib/commit/917c3c072e487b3cccdbfeff17e75b40e45f66cb
@@ -69,7 +69,7 @@ protected theorem isLocallyConstant {f : M โ F} (hf : Mdifferentiable ๐(โ
-- otherwise, let `pโ` be a point where the value of `f` has maximal norm
obtain โจpโ, hpโs, hpโโฉ := hsโ.exists_forall_ge hs' hf.continuous.norm.continuous_on
-- we will show `f` agrees everywhere with `f pโ`
- suffices s โ { r : M | f r = f pโ } โฉ s by exact (this hb).1.trans (this ha).1.symm
+ suffices s โ { r : M | f r = f pโ } โฉ s by exact (this hb).1.trans (this ha).1.symm;
clear ha hb a b
refine' hsโ.subset_clopen _ โจpโ, hpโs, โจrfl, hpโsโฉโฉ
-- closedness of the set of points sent to `f pโ`
mathlib commit https://github.com/leanprover-community/mathlib/commit/bd9851ca476957ea4549eb19b40e7b5ade9428cc
Empty lines were removed by executing the following Python script twice
import os
import re
# Loop through each file in the repository
for dir_path, dirs, files in os.walk('.'):
for filename in files:
if filename.endswith('.lean'):
file_path = os.path.join(dir_path, filename)
# Open the file and read its contents
with open(file_path, 'r') as file:
content = file.read()
# Use a regular expression to replace sequences of "variable" lines separated by empty lines
# with sequences without empty lines
modified_content = re.sub(r'(variable.*\n)\n(variable(?! .* in))', r'\1\2', content)
# Write the modified content back to the file
with open(file_path, 'w') as file:
file.write(modified_content)
@@ -42,11 +42,8 @@ open scoped Manifold Topology Filter
open Function Set Filter Complex
variable {E : Type*} [NormedAddCommGroup E] [NormedSpace โ E]
-
variable {F : Type*} [NormedAddCommGroup F] [NormedSpace โ F]
-
variable {H : Type*} [TopologicalSpace H] {I : ModelWithCorners โ E H} [I.Boundaryless]
-
variable {M : Type*} [TopologicalSpace M] [CompactSpace M] [ChartedSpace H M]
[SmoothManifoldWithCorners I M]
@@ -74,7 +74,7 @@ theorem Complex.norm_eventually_eq_of_mdifferentiableAt_of_isLocalMax {f : M โ
exact hyโ.2
convert norm_eventually_eq_of_isLocalMax hd _
ยท exact congr_arg f (extChartAt_to_inv _ _).symm
- ยท simpa only [IsLocalMax, IsMaxFilter, โ Hโ, (ยท โ ยท), extChartAt_to_inv] using hc
+ ยท simpa only [e, IsLocalMax, IsMaxFilter, โ Hโ, (ยท โ ยท), extChartAt_to_inv] using hc
/-!
### Functions holomorphic on a set
have
, replace
and suffices
(#10640)
No changes to tactic file, it's just boring fixes throughout the library.
This follows on from #6964.
Co-authored-by: sgouezel <sebastien.gouezel@univ-rennes1.fr> Co-authored-by: Eric Wieser <wieser.eric@gmail.com>
@@ -59,14 +59,14 @@ theorem Complex.norm_eventually_eq_of_mdifferentiableAt_of_isLocalMax {f : M โ
set e := extChartAt I c
have hI : range I = univ := ModelWithCorners.Boundaryless.range_eq_univ
have Hโ : ๐[range I] (e c) = ๐ (e c) := by rw [hI, nhdsWithin_univ]
- have Hโ : map e.symm (๐ (e c)) = ๐ c
- ยท rw [โ map_extChartAt_symm_nhdsWithin_range I c, Hโ]
+ have Hโ : map e.symm (๐ (e c)) = ๐ c := by
+ rw [โ map_extChartAt_symm_nhdsWithin_range I c, Hโ]
rw [โ Hโ, eventually_map]
- replace hd : โแถ y in ๐ (e c), DifferentiableAt โ (f โ e.symm) y
- ยท have : e.target โ ๐ (e c) := Hโ โธ extChartAt_target_mem_nhdsWithin I c
+ replace hd : โแถ y in ๐ (e c), DifferentiableAt โ (f โ e.symm) y := by
+ have : e.target โ ๐ (e c) := Hโ โธ extChartAt_target_mem_nhdsWithin I c
filter_upwards [this, Tendsto.eventually Hโ.le hd] with y hyt hyโ
- have hys : e.symm y โ (chartAt H c).source
- ยท rw [โ extChartAt_source I c]
+ have hys : e.symm y โ (chartAt H c).source := by
+ rw [โ extChartAt_source I c]
exact (extChartAt I c).map_target hyt
have hfy : f (e.symm y) โ (chartAt F (0 : F)).source := mem_univ _
rw [mdifferentiableAt_iff_of_mem_source hys hfy, hI, differentiableWithinAt_univ,
@@ -89,9 +89,9 @@ theorem norm_eqOn_of_isPreconnected_of_isMaxOn {f : M โ F} {U : Set M} {c : M}
(hd : MDifferentiableOn I ๐(โ, F) f U) (hc : IsPreconnected U) (ho : IsOpen U)
(hcU : c โ U) (hm : IsMaxOn (norm โ f) U c) : EqOn (norm โ f) (const M โf cโ) U := by
set V := {z โ U | โf zโ = โf cโ}
- suffices : U โ V; exact fun x hx => (this hx).2
- have hVo : IsOpen V
- ยท refine isOpen_iff_mem_nhds.2 fun x hx โฆ inter_mem (ho.mem_nhds hx.1) ?_
+ suffices U โ V from fun x hx โฆ (this hx).2
+ have hVo : IsOpen V := by
+ refine isOpen_iff_mem_nhds.2 fun x hx โฆ inter_mem (ho.mem_nhds hx.1) ?_
replace hm : IsLocalMax (โf ยทโ) x :=
mem_of_superset (ho.mem_nhds hx.1) fun z hz โฆ (hm hz).out.trans_eq hx.2.symm
replace hd : โแถ y in ๐ x, MDifferentiableAt I ๐(โ, F) f y :=
@@ -5,7 +5,7 @@ Authors: Heather Macbeth
-/
import Mathlib.Analysis.Complex.AbsMax
import Mathlib.Analysis.LocallyConvex.WithSeminorms
-import Mathlib.Geometry.Manifold.MFDeriv
+import Mathlib.Geometry.Manifold.MFDeriv.Basic
import Mathlib.Topology.LocallyConstant.Basic
#align_import geometry.manifold.complex from "leanprover-community/mathlib"@"f2ce6086713c78a7f880485f7917ea547a215982"
Mostly, this means replacing "of_open" by "of_isOpen". A few lemmas names were misleading and are corrected differently. Zulip discussion.
@@ -100,7 +100,7 @@ theorem norm_eqOn_of_isPreconnected_of_isMaxOn {f : M โ F} {U : Set M} {c : M}
(Eq.trans ยท hx.2)
have hVne : (U โฉ V).Nonempty := โจc, hcU, hcU, rflโฉ
set W := U โฉ {z | โf zโ = โf cโ}แถ
- have hWo : IsOpen W := hd.continuousOn.norm.preimage_open_of_open ho isOpen_ne
+ have hWo : IsOpen W := hd.continuousOn.norm.isOpen_inter_preimage ho isOpen_ne
have hdVW : Disjoint V W := disjoint_compl_right.mono inf_le_right inf_le_right
have hUVW : U โ V โช W := fun x hx => (eq_or_ne โf xโ โf cโ).imp (.intro hx) (.intro hx)
exact hc.subset_left_of_subset_union hVo hWo hdVW hUVW hVne
@@ -124,8 +124,8 @@ theorem eqOn_of_isPreconnected_of_isMaxOn_norm [StrictConvexSpace โ F] {f : M
/-- If a function `f : M โ F` from a complex manifold to a complex normed space is holomorphic on a
(pre)connected compact open set, then it is a constant on this set. -/
theorem apply_eq_of_isPreconnected_isCompact_isOpen {f : M โ F} {U : Set M} {a b : M}
- (hd : MDifferentiableOn I ๐(โ, F) f U) (hpc : IsPreconnected U) (hc : IsCompact U)
- (ho : IsOpen U) (ha : a โ U) (hb : b โ U) : f a = f b := by
+ (hd : MDifferentiableOn I ๐(โ, F) f U) (hpc : IsPreconnected U) (hc : IsCompact U)
+ (ho : IsOpen U) (ha : a โ U) (hb : b โ U) : f a = f b := by
refine ?_
-- Subtract `f b` to avoid the assumption `[StrictConvexSpace โ F]`
wlog hbโ : f b = 0 generalizing f
Type _
and Sort _
(#6499)
We remove all possible occurences of Type _
and Sort _
in favor of Type*
and Sort*
.
This has nice performance benefits.
@@ -41,13 +41,13 @@ stalks, such as the Weierstrass preparation theorem.
open scoped Manifold Topology Filter
open Function Set Filter Complex
-variable {E : Type _} [NormedAddCommGroup E] [NormedSpace โ E]
+variable {E : Type*} [NormedAddCommGroup E] [NormedSpace โ E]
-variable {F : Type _} [NormedAddCommGroup F] [NormedSpace โ F]
+variable {F : Type*} [NormedAddCommGroup F] [NormedSpace โ F]
-variable {H : Type _} [TopologicalSpace H] {I : ModelWithCorners โ E H} [I.Boundaryless]
+variable {H : Type*} [TopologicalSpace H] {I : ModelWithCorners โ E H} [I.Boundaryless]
-variable {M : Type _} [TopologicalSpace M] [CompactSpace M] [ChartedSpace H M]
+variable {M : Type*} [TopologicalSpace M] [CompactSpace M] [ChartedSpace H M]
[SmoothManifoldWithCorners I M]
/-- **Maximum modulus principle**: if `f : M โ F` is complex differentiable in a neighborhood of `c`
@@ -2,17 +2,14 @@
Copyright (c) 2022 Heather Macbeth. All rights reserved.
Released under Apache 2.0 license as described in the file LICENSE.
Authors: Heather Macbeth
-
-! This file was ported from Lean 3 source module geometry.manifold.complex
-! leanprover-community/mathlib commit f2ce6086713c78a7f880485f7917ea547a215982
-! Please do not edit these lines, except to modify the commit id
-! if you have ported upstream changes.
-/
import Mathlib.Analysis.Complex.AbsMax
import Mathlib.Analysis.LocallyConvex.WithSeminorms
import Mathlib.Geometry.Manifold.MFDeriv
import Mathlib.Topology.LocallyConstant.Basic
+#align_import geometry.manifold.complex from "leanprover-community/mathlib"@"f2ce6086713c78a7f880485f7917ea547a215982"
+
/-! # Holomorphic functions on complex manifolds
Thanks to the rigidity of complex-differentiability compared to real-differentiability, there are
The unported dependencies are
algebra.order.module
init.core
linear_algebra.free_module.finite.rank
algebra.order.monoid.cancel.defs
algebra.abs
algebra.group_power.lemmas
init.data.list.basic
linear_algebra.free_module.rank
algebra.order.monoid.cancel.basic
init.data.list.default
topology.subset_properties
init.logic
The following 1 dependencies have changed in mathlib3 since they were ported, which may complicate porting this file