Module

OpenNormalPullbackModel.lean

Nyll.EtaleFundamentalGroups.GaloisCovers.OpenNormalPullbackModel
10 declarations indexed from sourceView source ↗

Geometric models of open-normal pullbacks

Every open normal subgroup of the target fundamental group determines an actual pointed finite-etale Galois cover and an actual pointed Galois component of its pullback. This file packages those choices uniformly, so the local finite-cover extension argument can be passed directly to the open-normal prosolvable criterion.

Declarations

AlgebraicGeometry.FiniteEtale.OpenNormalPullbackModel

An actual geometric realization of the restriction of a fundamental group map over one open normal subgroup of its target.

Source context 8 commands

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

noncomputable section
open CategoryTheory
open CategoryTheory.PreGaloisCategory
open ProCGroups.FiniteStepSolvableQuotients
namespace AlgebraicGeometry.FiniteEtale
universe u
variable {X Y : Scheme.{u}} [ConnectedSpace X] [ConnectedSpace Y]
variable {Omega : Type u} [Field Omega] [IsSepClosed Omega]
structure OpenNormalPullbackModel
    (f : X ⟶ Y) (xi : Spec (.of Omega) ⟶ X)
    (U : OpenNormalSubgroup π₁ᵉᵗ(xi ≫ f)) where
  /-- The finite etale Galois cover of the target realizing the subgroup. -/
  targetCover : FiniteEtale Y
  /-- The chosen geometric point in the fiber of the target cover. -/
  targetPoint : (fiber (xi ≫ f)).obj targetCover
  /-- The Galois component of the pulled-back target cover. -/
  sourceCover : FiniteEtale X
  /-- The inclusion of the source component into the pullback cover. -/
  inclusion : sourceCover ⟶ (pullback f).obj targetCover
  /-- The chosen geometric point in the fiber of the source component. -/
  sourcePoint : (fiber xi).obj sourceCover
  /-- The target cover is a Galois object. -/
  targetIsGalois : IsGalois targetCover
  /-- The source component is a Galois object. -/
  sourceIsGalois : IsGalois sourceCover
  /-- The component inclusion is a monomorphism. -/
  inclusionMono : Mono inclusion
  /-- The source fundamental group identifies with the inverse-image subgroup. -/
  sourceEquiv :
    π₁ᵉᵗ((fiberObjEquivHom xi sourceCover sourcePoint).left) ≃ₜ*
      ProCGroups.OpenNormalSubgroup.comap
        (fundamentalGroupHom f xi).toMonoidHom
        (fundamentalGroupHom f xi).continuous_toFun U
  /-- The target-cover fundamental group identifies with the target subgroup. -/
  targetEquiv :
    π₁ᵉᵗ((fiberObjEquivHom xi sourceCover sourcePoint).left ≫
      (inclusion.left ≫ Limits.pullback.fst targetCover.hom f)) ≃ₜ* U
  /-- The fundamental group map agrees with restriction under these identifications. -/
  commutes : ∀ a,
    targetEquiv
        (fundamentalGroupHom
          (inclusion.left ≫ Limits.pullback.fst targetCover.hom f)
          (fiberObjEquivHom xi sourceCover sourcePoint).left a) =
      ProCGroups.ContinuousMonoidHom.restrictPreimage
        (fundamentalGroupHom f xi) (U : Subgroup π₁ᵉᵗ(xi ≫ f))
        (sourceEquiv a)
AlgebraicGeometry.FiniteEtale.nonempty_openNormalPullbackModel

The geometric pullback-component construction supplies a model for every open normal subgroup.

Source context 8 commands

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

noncomputable section
open CategoryTheory
open CategoryTheory.PreGaloisCategory
open ProCGroups.FiniteStepSolvableQuotients
namespace AlgebraicGeometry.FiniteEtale
universe u
variable {X Y : Scheme.{u}} [ConnectedSpace X] [ConnectedSpace Y]
variable {Omega : Type u} [Field Omega] [IsSepClosed Omega]
theorem nonempty_openNormalPullbackModel
    (f : X ⟶ Y) (xi : Spec (.of Omega) ⟶ X)
    (U : OpenNormalSubgroup π₁ᵉᵗ(xi ≫ f)) :
    Nonempty (OpenNormalPullbackModel f xi U)
AlgebraicGeometry.FiniteEtale.openNormalPullbackModel

A fixed actual model for an open normal subgroup.

Source context 8 commands

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

noncomputable section
open CategoryTheory
open CategoryTheory.PreGaloisCategory
open ProCGroups.FiniteStepSolvableQuotients
namespace AlgebraicGeometry.FiniteEtale
universe u
variable {X Y : Scheme.{u}} [ConnectedSpace X] [ConnectedSpace Y]
variable {Omega : Type u} [Field Omega] [IsSepClosed Omega]
def openNormalPullbackModel
    (f : X ⟶ Y) (xi : Spec (.of Omega) ⟶ X)
    (U : OpenNormalSubgroup π₁ᵉᵗ(xi ≫ f)) :
    OpenNormalPullbackModel f xi U
AlgebraicGeometry.FiniteEtale.OpenNormalPullbackModel.sourceScheme

The source scheme in the selected geometric model.

Source context 11 commands

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

noncomputable section
open CategoryTheory
open CategoryTheory.PreGaloisCategory
open ProCGroups.FiniteStepSolvableQuotients
namespace AlgebraicGeometry.FiniteEtale
universe u
variable {X Y : Scheme.{u}} [ConnectedSpace X] [ConnectedSpace Y]
variable {Omega : Type u} [Field Omega] [IsSepClosed Omega]
namespace OpenNormalPullbackModel
variable {f : X ⟶ Y} {xi : Spec (.of Omega) ⟶ X}
variable {U : OpenNormalSubgroup π₁ᵉᵗ(xi ≫ f)}
abbrev sourceScheme (M : OpenNormalPullbackModel f xi U) : Scheme.{u}
AlgebraicGeometry.FiniteEtale.OpenNormalPullbackModel.targetScheme

The target scheme in the selected geometric model.

Source context 11 commands

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

noncomputable section
open CategoryTheory
open CategoryTheory.PreGaloisCategory
open ProCGroups.FiniteStepSolvableQuotients
namespace AlgebraicGeometry.FiniteEtale
universe u
variable {X Y : Scheme.{u}} [ConnectedSpace X] [ConnectedSpace Y]
variable {Omega : Type u} [Field Omega] [IsSepClosed Omega]
namespace OpenNormalPullbackModel
variable {f : X ⟶ Y} {xi : Spec (.of Omega) ⟶ X}
variable {U : OpenNormalSubgroup π₁ᵉᵗ(xi ≫ f)}
abbrev targetScheme (M : OpenNormalPullbackModel f xi U) : Scheme.{u}
AlgebraicGeometry.FiniteEtale.OpenNormalPullbackModel.hom

The actual morphism from the pullback component to the target cover.

Source context 11 commands

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

noncomputable section
open CategoryTheory
open CategoryTheory.PreGaloisCategory
open ProCGroups.FiniteStepSolvableQuotients
namespace AlgebraicGeometry.FiniteEtale
universe u
variable {X Y : Scheme.{u}} [ConnectedSpace X] [ConnectedSpace Y]
variable {Omega : Type u} [Field Omega] [IsSepClosed Omega]
namespace OpenNormalPullbackModel
variable {f : X ⟶ Y} {xi : Spec (.of Omega) ⟶ X}
variable {U : OpenNormalSubgroup π₁ᵉᵗ(xi ≫ f)}
abbrev hom (M : OpenNormalPullbackModel f xi U) :
    M.sourceScheme ⟶ M.targetScheme
AlgebraicGeometry.FiniteEtale.OpenNormalPullbackModel.geometricPoint

The geometric point on the source component.

Source context 11 commands

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

noncomputable section
open CategoryTheory
open CategoryTheory.PreGaloisCategory
open ProCGroups.FiniteStepSolvableQuotients
namespace AlgebraicGeometry.FiniteEtale
universe u
variable {X Y : Scheme.{u}} [ConnectedSpace X] [ConnectedSpace Y]
variable {Omega : Type u} [Field Omega] [IsSepClosed Omega]
namespace OpenNormalPullbackModel
variable {f : X ⟶ Y} {xi : Spec (.of Omega) ⟶ X}
variable {U : OpenNormalSubgroup π₁ᵉᵗ(xi ≫ f)}
abbrev geometricPoint (M : OpenNormalPullbackModel f xi U) :
    Spec (.of Omega) ⟶ M.sourceScheme
AlgebraicGeometry.FiniteEtale.OpenNormalPullbackModel.sourceConnectedSpace
Source context 11 commands

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

noncomputable section
open CategoryTheory
open CategoryTheory.PreGaloisCategory
open ProCGroups.FiniteStepSolvableQuotients
namespace AlgebraicGeometry.FiniteEtale
universe u
variable {X Y : Scheme.{u}} [ConnectedSpace X] [ConnectedSpace Y]
variable {Omega : Type u} [Field Omega] [IsSepClosed Omega]
namespace OpenNormalPullbackModel
variable {f : X ⟶ Y} {xi : Spec (.of Omega) ⟶ X}
variable {U : OpenNormalSubgroup π₁ᵉᵗ(xi ≫ f)}
instance sourceConnectedSpace
    (M : OpenNormalPullbackModel f xi U) : ConnectedSpace M.sourceScheme
AlgebraicGeometry.FiniteEtale.OpenNormalPullbackModel.targetConnectedSpace
Source context 11 commands

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

noncomputable section
open CategoryTheory
open CategoryTheory.PreGaloisCategory
open ProCGroups.FiniteStepSolvableQuotients
namespace AlgebraicGeometry.FiniteEtale
universe u
variable {X Y : Scheme.{u}} [ConnectedSpace X] [ConnectedSpace Y]
variable {Omega : Type u} [Field Omega] [IsSepClosed Omega]
namespace OpenNormalPullbackModel
variable {f : X ⟶ Y} {xi : Spec (.of Omega) ⟶ X}
variable {U : OpenNormalSubgroup π₁ᵉᵗ(xi ≫ f)}
instance targetConnectedSpace
    (M : OpenNormalPullbackModel f xi U) : ConnectedSpace M.targetScheme
AlgebraicGeometry.FiniteEtale.fundamentalGroupHom_openNormalFiniteDiscreteAbelianMapsKillKernel_of_pullbackModel_extensions

Specializing the general open-normal kernel bridge to the uniformly selected actual pullback components leaves only the geometric cover-extension input. No fundamental-group square is assumed.

Source context 8 commands

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

noncomputable section
open CategoryTheory
open CategoryTheory.PreGaloisCategory
open ProCGroups.FiniteStepSolvableQuotients
namespace AlgebraicGeometry.FiniteEtale
universe u
variable {X Y : Scheme.{u}} [ConnectedSpace X] [ConnectedSpace Y]
variable {Omega : Type u} [Field Omega] [IsSepClosed Omega]
theorem
    fundamentalGroupHom_openNormalFiniteDiscreteAbelianMapsKillKernel_of_pullbackModel_extensions
    (f : X ⟶ Y) (xi : Spec (.of Omega) ⟶ X)
    (extend : ∀ (U : OpenNormalSubgroup π₁ᵉᵗ(xi ≫ f))
      (W : FiniteEtale (openNormalPullbackModel f xi U).sourceScheme)
      (_hW : IsGalois W),
      IsMulCommutative (Aut W) →
        Σ Z : FiniteEtale (openNormalPullbackModel f xi U).targetScheme,
          (pullback (openNormalPullbackModel f xi U).hom).obj Z ≅ W) :
    OpenNormalFiniteDiscreteAbelianMapsKillKernel
      (fundamentalGroupHom f xi)