Module

Geometry.lean

Nyll.SchemeTheory.Pi1.FiniteEtale.Geometry
40 declarations indexed from sourceView source ↗

Geometric infrastructure for finite étale schemes

This module contains the scheme-theoretic and over-field results used by the finite étale category, independently of fundamental groups and Galois objects.

Imports23
Imported by14

Declarations

AlgebraicGeometry.FiniteEtale.finite_primeSpectrum_of_etale_field

An étale map whose source ring is isomorphic to a field has a finite prime spectrum.

Source context 7 commands

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

@[expose] public section
universe u
noncomputable section
open CategoryTheory Limits
namespace AlgebraicGeometry
namespace FiniteEtale
variable (X : Scheme.{u})
lemma finite_primeSpectrum_of_etale_field
    {K A B : Type u} [Field K] [CommRing A] [CommRing B]
    (e : A ≃+* K) (g : A →+* B) (hg : g.Etale) :
    Finite (PrimeSpectrum B)
AlgebraicGeometry.FiniteEtale.finite_of_isEtale_of_isAffineHom
Source context 7 commands

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

@[expose] public section
universe u
noncomputable section
open CategoryTheory Limits
namespace AlgebraicGeometry
namespace FiniteEtale
variable (X : Scheme.{u})
lemma finite_of_isEtale_of_isAffineHom (X : Scheme.{u}) {Ω : Type u} [Field Ω]
    (f : X ⟶ Spec (.of Ω)) [Etale f] [IsAffineHom f] :
    Finite X
Source context 7 commands

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

@[expose] public section
universe u
noncomputable section
open CategoryTheory Limits
namespace AlgebraicGeometry
namespace FiniteEtale
variable (X : Scheme.{u})
instance {Ω : Type u} [Field Ω] (X : FiniteEtale (Spec (.of Ω))) : Fintype X.left
AlgebraicGeometry.FiniteEtale.forgetScheme

Take the finite set of points of a finite etale scheme over a field.

Source context 7 commands

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

@[expose] public section
universe u
noncomputable section
open CategoryTheory Limits
namespace AlgebraicGeometry
namespace FiniteEtale
variable (X : Scheme.{u})
def forgetScheme (Ω : Type u) [Field Ω] : FiniteEtale (Spec (.of Ω)) ⥤ FintypeCat.{u} where
  obj X := FintypeCat.of X.left
  map {X Y} f := { hom := TypeCat.ofHom (⇑f.left : ↥X.left → ↥Y.left) }
AlgebraicGeometry.IsFiniteEtale.SpecMap_iff
Source context 8 commands

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

@[expose] public section
universe u
noncomputable section
open CategoryTheory Limits
namespace AlgebraicGeometry
namespace FiniteEtale
variable (X : Scheme.{u})
variable (Ω : Type u) [Field Ω]
lemma _root_.AlgebraicGeometry.IsFiniteEtale.SpecMap_iff {R S : CommRingCat.{u}}
    {f : R ⟶ S} :
    IsFiniteEtale (Spec.map f) ↔ f.hom.FiniteEtale
Source context 8 commands

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

@[expose] public section
universe u
noncomputable section
open CategoryTheory Limits
namespace AlgebraicGeometry
namespace FiniteEtale
variable (X : Scheme.{u})
variable (Ω : Type u) [Field Ω]
instance {ι : Type u} [Finite ι] (R : Type u) [CommRing R] :
    IsFiniteEtale (Spec.map <| CommRingCat.ofHom <| algebraMap R (ι → R))
AlgebraicGeometry.FiniteEtale.inventScheme

Construct the finite etale scheme whose section ring is the ring of functions from a finite set to the field.

Source context 8 commands

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

@[expose] public section
universe u
noncomputable section
open CategoryTheory Limits
namespace AlgebraicGeometry
namespace FiniteEtale
variable (X : Scheme.{u})
variable (Ω : Type u) [Field Ω]
def inventScheme (Ω : Type u) [Field Ω] : FintypeCat.{u} ⥤ FiniteEtale (Spec (.of Ω)) where
  obj S :=
    mk (Spec.map <| CommRingCat.ofHom <| algebraMap Ω (S → Ω))
  map {S T} f :=
    MorphismProperty.Over.homMk
      (Spec.map <| CommRingCat.ofHom <|
        RingHom.pi (fun s ↦ Pi.evalRingHom _ (f s))) <| by
      let a : CommRingCat.of Ω ⟶ CommRingCat.of (T → Ω) :=
        CommRingCat.ofHom (algebraMap Ω (T → Ω))
      let b : CommRingCat.of (T → Ω) ⟶ CommRingCat.of (S → Ω) :=
        CommRingCat.ofHom
          (RingHom.pi (fun s ↦ Pi.evalRingHom (fun _ ↦ Ω) (f s)))
      let c : CommRingCat.of Ω ⟶ CommRingCat.of (S → Ω) :=
        CommRingCat.ofHom (algebraMap Ω (S → Ω))
      change Spec.map b ≫ Spec.map a = Spec.map c
      rw [← Spec.map_comp]
      rfl
  map_id S := by
    apply MorphismProperty.Over.Hom.ext
    change
      Spec.map
          (CommRingCat.ofHom
            (RingHom.pi (fun s ↦
              Pi.evalRingHom (fun _ ↦ Ω)
                ((𝟙 S : S ⟶ S) s)))) =
        𝟙 (Spec (CommRingCat.of (S → Ω)))
    rw [← Spec.map_id]
    congr 2
  map_comp {S T W} f g := by
    apply MorphismProperty.Over.Hom.ext
    let a : CommRingCat.of (W → Ω) ⟶ CommRingCat.of (S → Ω) :=
      CommRingCat.ofHom
        (RingHom.pi (fun s ↦ Pi.evalRingHom (fun _ ↦ Ω) ((f ≫ g) s)))
    let b : CommRingCat.of (T → Ω) ⟶ CommRingCat.of (S → Ω) :=
      CommRingCat.ofHom
        (RingHom.pi (fun s ↦ Pi.evalRingHom (fun _ ↦ Ω) (f s)))
    let c : CommRingCat.of (W → Ω) ⟶ CommRingCat.of (T → Ω) :=
      CommRingCat.ofHom
        (RingHom.pi (fun t ↦ Pi.evalRingHom (fun _ ↦ Ω) (g t)))
    change Spec.map a = Spec.map b ≫ Spec.map c
    rw [← Spec.map_comp]
    congr 2
Source context 8 commands

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

@[expose] public section
universe u
noncomputable section
open CategoryTheory Limits
namespace AlgebraicGeometry
namespace FiniteEtale
variable (X : Scheme.{u})
variable (Ω : Type u) [Field Ω]
instance (S : FintypeCat.{u}) :
    Fintype (Spec (CommRingCat.of (S.obj → Ω))).toPresheafedSpace
AlgebraicGeometry.FiniteEtale.specPiEquiv

Identify the points of the spectrum of a finite product of fields with its product indices.

Source context 8 commands

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

@[expose] public section
universe u
noncomputable section
open CategoryTheory Limits
namespace AlgebraicGeometry
namespace FiniteEtale
variable (X : Scheme.{u})
variable (Ω : Type u) [Field Ω]
def specPiEquiv (ι : Type u) [Finite ι] (K : Type u) [Field K] :
    Spec (.of (ι → K)) ≃ ι
AlgebraicGeometry.FiniteEtale.specPiEquiv_symm_apply
Source context 8 commands

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

@[expose] public section
universe u
noncomputable section
open CategoryTheory Limits
namespace AlgebraicGeometry
namespace FiniteEtale
variable (X : Scheme.{u})
variable (Ω : Type u) [Field Ω]
lemma specPiEquiv_symm_apply (ι : Type u) [Finite ι] (K : Type u) [Field K]
    (i : ι) : (specPiEquiv ι K).symm i =
      (Spec.map <| CommRingCat.ofHom <| Pi.evalRingHom _ i).base default
AlgebraicGeometry.FiniteEtale.inventForgetIso

The points of the finite etale scheme constructed from a finite set recover that set naturally.

Source context 8 commands

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

@[expose] public section
universe u
noncomputable section
open CategoryTheory Limits
namespace AlgebraicGeometry
namespace FiniteEtale
variable (X : Scheme.{u})
variable (Ω : Type u) [Field Ω]
def inventForgetIso : inventScheme Ω ⋙ forgetScheme Ω ≅ 𝟭 FintypeCat
Source context 8 commands

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

@[expose] public section
universe u
noncomputable section
open CategoryTheory Limits
namespace AlgebraicGeometry
namespace FiniteEtale
variable (X : Scheme.{u})
variable (Ω : Type u) [Field Ω]
instance (X : Scheme.{u}) (R : CommRingCat.{u}) [X.Over (Spec R)] (U : X.Opens) :
    Algebra R Γ(X, U)
Source context 8 commands

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

@[expose] public section
universe u
noncomputable section
open CategoryTheory Limits
namespace AlgebraicGeometry
namespace FiniteEtale
variable (X : Scheme.{u})
variable (Ω : Type u) [Field Ω]
instance (X : Scheme.{u}) (R : Type u) [CommRing R] [X.Over (Spec (.of R))] (U : X.Opens) :
    Algebra R Γ(X, U)
AlgebraicGeometry.FiniteEtale.appLE_comp_algebraMap
Source context 8 commands

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

@[expose] public section
universe u
noncomputable section
open CategoryTheory Limits
namespace AlgebraicGeometry
namespace FiniteEtale
variable (X : Scheme.{u})
variable (Ω : Type u) [Field Ω]
lemma appLE_comp_algebraMap {X Y : Scheme.{u}} (f : X ⟶ Y) (R : Type u) [CommRing R]
    [X.Over (Spec (.of R))] [Y.Over (Spec (.of R))] [f.IsOver (Spec (.of R))]
    (U : Y.Opens) (V : X.Opens) (hUV : V ≤ f ⁻¹ᵁ U) :
    (f.appLE U V hUV).hom.comp (algebraMap R Γ(Y, U)) = algebraMap R Γ(X, V)
Source context 8 commands

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

@[expose] public section
universe u
noncomputable section
open CategoryTheory Limits
namespace AlgebraicGeometry
namespace FiniteEtale
variable (X : Scheme.{u})
variable (Ω : Type u) [Field Ω]
instance (X : Scheme.{u}) (R : Type u) [CommRing R] [X.Over (Spec (.of R))]
    [Etale (X ↘ Spec (.of R))] [IsAffineHom (X ↘ Spec (.of R))] :
    Algebra.Etale R Γ(X, ⊤)
Source context 8 commands

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

@[expose] public section
universe u
noncomputable section
open CategoryTheory Limits
namespace AlgebraicGeometry
namespace FiniteEtale
variable (X : Scheme.{u})
variable (Ω : Type u) [Field Ω]
instance (X : Scheme.{u}) (R : Type u) [Field R] [X.Over (Spec (.of R))]
    [Etale (X ↘ Spec (.of R))] [IsAffineHom (X ↘ Spec (.of R))] :
    Module.Finite R Γ(X, ⊤)
AlgebraicGeometry.FiniteEtale.appTop_left_comp_algebraMap
Source context 8 commands

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

@[expose] public section
universe u
noncomputable section
open CategoryTheory Limits
namespace AlgebraicGeometry
namespace FiniteEtale
variable (X : Scheme.{u})
variable (Ω : Type u) [Field Ω]
lemma appTop_left_comp_algebraMap {X Y : FiniteEtale (Spec <| .of Ω)} (f : X ⟶ Y) :
    f.left.appTop.hom.comp (algebraMap Ω Γ(Y.left, ⊤)) = algebraMap Ω Γ(X.left, ⊤)
AlgebraicGeometry.FiniteEtale.appTop_left_algebraMap
Source context 8 commands

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

@[expose] public section
universe u
noncomputable section
open CategoryTheory Limits
namespace AlgebraicGeometry
namespace FiniteEtale
variable (X : Scheme.{u})
variable (Ω : Type u) [Field Ω]
lemma appTop_left_algebraMap {X Y : FiniteEtale (Spec <| .of Ω)} (f : X ⟶ Y) (x : Ω) :
    f.left.appTop.hom (algebraMap Ω Γ(Y.left, ⊤) x) = algebraMap Ω Γ(X.left, ⊤) x
Source context 8 commands

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

@[expose] public section
universe u
noncomputable section
open CategoryTheory Limits
namespace AlgebraicGeometry
namespace FiniteEtale
variable (X : Scheme.{u})
variable (Ω : Type u) [Field Ω]
instance {S : Scheme.{u}} (X : FiniteEtale S) : IsFiniteEtale (X.left ↘ S)
AlgebraicGeometry.FiniteEtale.etaleFunctionsAlgEquiv

Reindex the canonical decomposition of an étale algebra by an equivalent point type.

Source context 8 commands

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

@[expose] public section
universe u
noncomputable section
open CategoryTheory Limits
namespace AlgebraicGeometry
namespace FiniteEtale
variable (X : Scheme.{u})
variable (Ω : Type u) [Field Ω]
def etaleFunctionsAlgEquiv (K A : Type u) [Field K] [CommRing A] [Algebra K A]
    [Algebra.Etale K A] [IsSepClosed K] {ι : Type u} (e : ι ≃ PrimeSpectrum A) :
    A ≃ₐ[K] (ι → K)
AlgebraicGeometry.IsFiniteEtale.isoSpecFun

A finite etale scheme over a separably closed field is the spectrum of the ring of functions on its points.

Source context 8 commands

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

@[expose] public section
universe u
noncomputable section
open CategoryTheory Limits
namespace AlgebraicGeometry
namespace FiniteEtale
variable (X : Scheme.{u})
variable (Ω : Type u) [Field Ω]
def _root_.AlgebraicGeometry.IsFiniteEtale.isoSpecFun [IsSepClosed Ω] (X : Scheme.{u})
    [X.Over (Spec (.of Ω))] [IsFiniteEtale (X ↘ Spec (.of Ω))] :
    X ≅ Spec (.of <| X → Ω)
AlgebraicGeometry.FiniteEtale.isoSpec_hom_comp_specMap_algebraMap

The canonical affine presentation recovers the structure map from the scalar map.

Source context 8 commands

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

@[expose] public section
universe u
noncomputable section
open CategoryTheory Limits
namespace AlgebraicGeometry
namespace FiniteEtale
variable (X : Scheme.{u})
variable (Ω : Type u) [Field Ω]
lemma isoSpec_hom_comp_specMap_algebraMap
    {R : Type u} [CommRing R] (X : Scheme.{u})
    [X.Over (Spec (.of R))] [IsAffine X] :
    X.isoSpec.hom ≫ Spec.map (CommRingCat.ofHom (algebraMap R Γ(X, ⊤))) =
      X ↘ Spec (.of R)
AlgebraicGeometry.FiniteEtale.isoSpec_hom_comp_specMap_algEquiv

An algebra equivalence on affine global sections gives a morphism over the base ring.

Source context 8 commands

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

@[expose] public section
universe u
noncomputable section
open CategoryTheory Limits
namespace AlgebraicGeometry
namespace FiniteEtale
variable (X : Scheme.{u})
variable (Ω : Type u) [Field Ω]
lemma isoSpec_hom_comp_specMap_algEquiv
    {R A : Type u} [CommRing R] [CommRing A] [Algebra R A]
    (X : Scheme.{u}) [X.Over (Spec (.of R))] [IsAffine X]
    (e : Γ(X, ⊤) ≃ₐ[R] A) :
    X.isoSpec.hom ≫ Spec.map (CommRingCat.ofHom e.symm.toRingEquiv.toRingHom) ≫
      Spec.map (CommRingCat.ofHom (algebraMap R A)) = X ↘ Spec (.of R)
AlgebraicGeometry.IsFiniteEtale.isoSpecFun_hom_SpecMap
Source context 8 commands

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

@[expose] public section
universe u
noncomputable section
open CategoryTheory Limits
namespace AlgebraicGeometry
namespace FiniteEtale
variable (X : Scheme.{u})
variable (Ω : Type u) [Field Ω]
lemma _root_.AlgebraicGeometry.IsFiniteEtale.isoSpecFun_hom_SpecMap [IsSepClosed Ω]
    (X : Scheme.{u}) [X.Over (Spec (.of Ω))] [IsFiniteEtale (X ↘ Spec (.of Ω))] :
    (IsFiniteEtale.isoSpecFun Ω X).hom ≫
      Spec.map (CommRingCat.ofHom <| algebraMap Ω (X → Ω)) = X ↘ Spec (.of Ω)
Source context 8 commands

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

@[expose] public section
universe u
noncomputable section
open CategoryTheory Limits
namespace AlgebraicGeometry
namespace FiniteEtale
variable (X : Scheme.{u})
variable (Ω : Type u) [Field Ω]
instance (priority := 900) [IsAffine X] (Y : FiniteEtale X) : IsAffine Y.left
AlgebraicGeometry.FiniteEtale.forgetInventIso

A finite etale scheme over a separably closed field is naturally recovered from its finite set of points.

Source context 8 commands

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

@[expose] public section
universe u
noncomputable section
open CategoryTheory Limits
namespace AlgebraicGeometry
namespace FiniteEtale
variable (X : Scheme.{u})
variable (Ω : Type u) [Field Ω]
def forgetInventIso [IsSepClosed Ω] :
    𝟭 (FiniteEtale (Spec (.of Ω))) ≅ forgetScheme Ω ⋙ inventScheme Ω
AlgebraicGeometry.FiniteEtale.equivFintypeCat

The equivalence between finite etale schemes over a separably closed field and finite sets.

Source context 8 commands

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

@[expose] public section
universe u
noncomputable section
open CategoryTheory Limits
namespace AlgebraicGeometry
namespace FiniteEtale
variable (X : Scheme.{u})
variable (Ω : Type u) [Field Ω]
def equivFintypeCat [IsSepClosed Ω] : FiniteEtale (Spec <| .of Ω) ≌ FintypeCat.{u}
Source context 8 commands

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

@[expose] public section
universe u
noncomputable section
open CategoryTheory Limits
namespace AlgebraicGeometry
namespace FiniteEtale
variable (X : Scheme.{u})
variable (Ω : Type u) [Field Ω]
instance [IsSepClosed Ω] : (forgetScheme Ω).IsEquivalence
AlgebraicGeometry.Scheme.connCompOpen

The open subset corresponding to one component when the scheme has finitely many connected components.

Source context 10 commands

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

@[expose] public section
universe u
noncomputable section
open CategoryTheory Limits
namespace AlgebraicGeometry
namespace FiniteEtale
variable (X : Scheme.{u})
variable (Ω : Type u) [Field Ω]
variable {Ω : Type u} [Field Ω] (ξ : Spec (.of Ω) ⟶ X)
variable {X}
def _root_.AlgebraicGeometry.Scheme.connCompOpen {X : Scheme.{u}}
    [Finite (_root_.ConnectedComponents X)]
    (i : _root_.ConnectedComponents X) : X.Opens
AlgebraicGeometry.Scheme.connectedComponents

The open cover by connected components of a scheme with finitely many connected components.

Source context 10 commands

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

@[expose] public section
universe u
noncomputable section
open CategoryTheory Limits
namespace AlgebraicGeometry
namespace FiniteEtale
variable (X : Scheme.{u})
variable (Ω : Type u) [Field Ω]
variable {Ω : Type u} [Field Ω] (ξ : Spec (.of Ω) ⟶ X)
variable {X}
def _root_.AlgebraicGeometry.Scheme.connectedComponents (X : Scheme.{u})
      [Finite (_root_.ConnectedComponents X)] :
    X.OpenCover where
  I₀ := _root_.ConnectedComponents X
  X c := X.connCompOpen c
  f c := (X.connCompOpen c).ι
  mem₀ := by
    rw [Scheme.ofArrows_mem_precoverage_iff]
    refine ⟨?_, ?_⟩
    · intro x
      refine ⟨.mk x, ?_⟩
      exact ⟨⟨x, rfl⟩, rfl⟩
    · infer_instance
Source context 10 commands

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

@[expose] public section
universe u
noncomputable section
open CategoryTheory Limits
namespace AlgebraicGeometry
namespace FiniteEtale
variable (X : Scheme.{u})
variable (Ω : Type u) [Field Ω]
variable {Ω : Type u} [Field Ω] (ξ : Spec (.of Ω) ⟶ X)
variable {X}
instance {X : Scheme.{u}} [Finite (_root_.ConnectedComponents X)]
    (i : _root_.ConnectedComponents X) :
    ConnectedSpace (X.connectedComponents.X i)
Source context 10 commands

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

@[expose] public section
universe u
noncomputable section
open CategoryTheory Limits
namespace AlgebraicGeometry
namespace FiniteEtale
variable (X : Scheme.{u})
variable (Ω : Type u) [Field Ω]
variable {Ω : Type u} [Field Ω] (ξ : Spec (.of Ω) ⟶ X)
variable {X}
instance {X : Scheme.{u}} [Finite (_root_.ConnectedComponents X)]
    (i : _root_.ConnectedComponents X) :
    IsClosedImmersion (X.connectedComponents.f i)
AlgebraicGeometry.IsFiniteEtale.isIso_of_isIso_snd
Source context 10 commands

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

@[expose] public section
universe u
noncomputable section
open CategoryTheory Limits
namespace AlgebraicGeometry
namespace FiniteEtale
variable (X : Scheme.{u})
variable (Ω : Type u) [Field Ω]
variable {Ω : Type u} [Field Ω] (ξ : Spec (.of Ω) ⟶ X)
variable {X}
lemma _root_.AlgebraicGeometry.IsFiniteEtale.isIso_of_isIso_snd {X Y Z : Scheme.{u}} (f : X ⟶ Z)
    (g : Y ⟶ Z) [IsFiniteEtale f] [PreconnectedSpace Z] [Nonempty Y]
    [IsIso (pullback.snd f g)] : IsIso f
Source context 10 commands

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

@[expose] public section
universe u
noncomputable section
open CategoryTheory Limits
namespace AlgebraicGeometry
namespace FiniteEtale
variable (X : Scheme.{u})
variable (Ω : Type u) [Field Ω]
variable {Ω : Type u} [Field Ω] (ξ : Spec (.of Ω) ⟶ X)
variable {X}
instance {X Y Z : Scheme.{u}} (f : X ⟶ Z) (g : Y ⟶ Z) [IsFiniteEtale g] :
    IsFiniteEtale (pullback.fst f g)
Source context 10 commands

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

@[expose] public section
universe u
noncomputable section
open CategoryTheory Limits
namespace AlgebraicGeometry
namespace FiniteEtale
variable (X : Scheme.{u})
variable (Ω : Type u) [Field Ω]
variable {Ω : Type u} [Field Ω] (ξ : Spec (.of Ω) ⟶ X)
variable {X}
instance {X Y Z : Scheme.{u}} (f : X ⟶ Z) (g : Y ⟶ Z) [IsFiniteEtale f] :
    IsFiniteEtale (pullback.snd f g)
AlgebraicGeometry.IsFiniteEtale.surjective
Source context 10 commands

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

@[expose] public section
universe u
noncomputable section
open CategoryTheory Limits
namespace AlgebraicGeometry
namespace FiniteEtale
variable (X : Scheme.{u})
variable (Ω : Type u) [Field Ω]
variable {Ω : Type u} [Field Ω] (ξ : Spec (.of Ω) ⟶ X)
variable {X}
instance _root_.AlgebraicGeometry.IsFiniteEtale.surjective {X Y : Scheme.{u}} (f : X ⟶ Y)
    [PreconnectedSpace Y] [Nonempty X] [IsFiniteEtale f] :
    Surjective f
AlgebraicGeometry.IsFiniteEtale.isIso_of_isIso_snd'
Source context 10 commands

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

@[expose] public section
universe u
noncomputable section
open CategoryTheory Limits
namespace AlgebraicGeometry
namespace FiniteEtale
variable (X : Scheme.{u})
variable (Ω : Type u) [Field Ω]
variable {Ω : Type u} [Field Ω] (ξ : Spec (.of Ω) ⟶ X)
variable {X}
lemma _root_.AlgebraicGeometry.IsFiniteEtale.isIso_of_isIso_snd' {X Y Z : Scheme.{u}} (f : X ⟶ Z)
    (g : Y ⟶ Z) [IsFiniteEtale f]
    [Finite (_root_.ConnectedComponents Z)]
    [∀ i : _root_.ConnectedComponents Z, Nonempty ↑(Limits.pullback g
      (Z.connectedComponents.f i))]
    [IsIso (pullback.snd f g)] : IsIso f
AlgebraicGeometry.FiniteEtale.isIso_of_isIso_left
Source context 10 commands

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

@[expose] public section
universe u
noncomputable section
open CategoryTheory Limits
namespace AlgebraicGeometry
namespace FiniteEtale
variable (X : Scheme.{u})
variable (Ω : Type u) [Field Ω]
variable {Ω : Type u} [Field Ω] (ξ : Spec (.of Ω) ⟶ X)
variable {X}
lemma isIso_of_isIso_left {A B : FiniteEtale X} (f : A ⟶ B) [IsIso f.left] : IsIso f
Source context 10 commands

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

@[expose] public section
universe u
noncomputable section
open CategoryTheory Limits
namespace AlgebraicGeometry
namespace FiniteEtale
variable (X : Scheme.{u})
variable (Ω : Type u) [Field Ω]
variable {Ω : Type u} [Field Ω] (ξ : Spec (.of Ω) ⟶ X)
variable {X}
instance [ConnectedSpace X] (Y : FiniteEtale X) :
    Finite (_root_.ConnectedComponents Y.left)
Source context 11 commands

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

@[expose] public section
universe u
noncomputable section
open CategoryTheory Limits
namespace AlgebraicGeometry
namespace FiniteEtale
variable (X : Scheme.{u})
variable (Ω : Type u) [Field Ω]
variable {Ω : Type u} [Field Ω] (ξ : Spec (.of Ω) ⟶ X)
variable {X}
open MorphismProperty
instance {Y : Scheme.{u}} [Nonempty Y] (g : Y ⟶ X) [ConnectedSpace X] :
    (pullback g).ReflectsIsomorphisms