Module

GenusZeroPunctured.lean

Nyll.AnabelianGeometry.GeometricFundamentalGroup.GenusZeroPunctured
3 declarations indexed from sourceView source ↗

A genus-zero curve with one puncture

A parameter with its unique pole at the prescribed puncture identifies that place with infinity. The induced curve-model isomorphism identifies the given open complement with the actual affine line. The fundamental group is transported through this scheme isomorphism.

Declarations

AnabelianGeometry.GeometricFundamentalGroup.exists_ratFunc_algEquiv_infinity_of_genus_zero

A rational coordinate on a genus-zero function field can have its pole at any prescribed place; the induced place equivalence sends infinity to that place.

Source context 6 commands

Surrounding namespaces, section variables, and local commands at this declaration.

noncomputable section
open CategoryTheory AlgebraicGeometry AlgebraicGeometry.FiniteEtale AlgebraicCurve
open scoped Polynomial
namespace AnabelianGeometry.GeometricFundamentalGroup
variable {K F : Type} [Field K] [IsAlgClosed K] [CharZero K] [Field F] [Algebra K F]
  [IsCurveOver K F] [Algebra.EssFiniteType K F]
open Classical in
theorem exists_ratFunc_algEquiv_infinity_of_genus_zero (hg : genusFF K F = 0)
    (v : Place K F) :
    ∃ e : RatFunc K ≃ₐ[K] F,
      Place.congrRingEquiv e.toRingEquiv (fun a => e.commutes a)
        (RationalFunctionField.placeInfty K) = v := by
  classical
  obtain ⟨w, _, hnot, _⟩ :=
    exists_place_notMem_ord_neg_and_forall_ord_eq_one (K := K) (F := F) {v}
  have hne : w ≠ v := fun h => hnot (Finset.mem_singleton.mpr h)
  obtain ⟨t, _, htr, hgen, hord⟩ := exists_parameter_of_genus_zero hg w v hne
  let e : RatFunc K ≃ₐ[K] F := (RatFunc.algEquivOfTranscendental t htr).trans
    ((IntermediateField.equivOfEq hgen).trans IntermediateField.topEquiv)
  have heX : e RatFunc.X = t := by
    change ((RatFunc.algEquivOfTranscendental t htr) RatFunc.X : F) = t
    rw [RatFunc.algEquivOfTranscendental_X]
  refine ⟨e, ?_⟩
  let u := Place.congrRingEquiv e.toRingEquiv (fun a => e.commutes a)
    (RationalFunctionField.placeInfty K)
  have hneg : u.ord t = -1 := by
    rw [← heX]
    exact (Place.ord_congrRingEquiv e.toRingEquiv (fun a => e.commutes a)
      (RationalFunctionField.placeInfty K) RatFunc.X).trans
        (RationalFunctionField.ord_placeInfty_X K)
  have hv : u = v := by
    by_contra huv
    rw [hord, ite_eq_right huv] at hneg
    split_ifs at hneg <;> omega
  exact hv
AnabelianGeometry.GeometricFundamentalGroup.nonempty_affineLine_iso_of_genus_zero_complement

The complement of any single closed point of a proper genus-zero curve model is isomorphic to the affine line. Neither an affine chart nor an isomorphism is an input.

Source context 5 commands

Surrounding namespaces, section variables, and local commands at this declaration.

noncomputable section
open CategoryTheory AlgebraicGeometry AlgebraicGeometry.FiniteEtale AlgebraicCurve
open scoped Polynomial
namespace AnabelianGeometry.GeometricFundamentalGroup
variable {K F : Type} [Field K] [IsAlgClosed K] [CharZero K] [Field F] [Algebra K F]
  [IsCurveOver K F] [Algebra.EssFiniteType K F]
theorem nonempty_affineLine_iso_of_genus_zero_complement
    (M : CurveModel K F) (hg : genusFF K F = 0) (x : closedPoints M.C)
    (U : M.C.Opens) (hU : (U : Set M.C) = {x.1}ᶜ) :
    Nonempty (U.toScheme ≅ Spec (.of K[X]))
AnabelianGeometry.GeometricFundamentalGroup.subsingleton_fundamentalGroup_of_genus_zero_complement

The actual étale fundamental group of a genus-zero curve model minus one closed point is trivial at every geometric point in characteristic zero.

Source context 5 commands

Surrounding namespaces, section variables, and local commands at this declaration.

noncomputable section
open CategoryTheory AlgebraicGeometry AlgebraicGeometry.FiniteEtale AlgebraicCurve
open scoped Polynomial
namespace AnabelianGeometry.GeometricFundamentalGroup
variable {K F : Type} [Field K] [IsAlgClosed K] [CharZero K] [Field F] [Algebra K F]
  [IsCurveOver K F] [Algebra.EssFiniteType K F]
theorem subsingleton_fundamentalGroup_of_genus_zero_complement
    (M : CurveModel K F) (hg : genusFF K F = 0) (x : closedPoints M.C)
    (U : M.C.Opens) (hU : (U : Set M.C) = {x.1}ᶜ)
    {Ω : Type} [Field Ω] [IsSepClosed Ω] (ξ : Spec (.of Ω) ⟶ U.toScheme) :
    Subsingleton π₁ᵉᵗ(ξ)