Module

RepresentsRelSubPic_nonempty_poincare_pullbackAlong_iso_rigidify_normModule_baseChange.lean

Nyll.JacobianVarieties.Picard.RepresentsRelSubPic_nonempty_poincare_pullbackAlong_iso_rigidify_normModule_baseChange
16 declarations indexed from sourceView source ↗

Base change of the norm Poincaré comparison

Compare the represented norm transformation and its Poincaré family after base change.

Imports41
Imported by2

Declarations

JacobianVarieties.Picard.Proofs.NormPoincareBaseChange.T2Sol.isPullback_of_mono
Source context 16 commands

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

section ProofImplementation
namespace JacobianVarieties.Picard.Proofs.NormPoincareBaseChange
attribute [-simp]
  PresheafOfModules.pushforwardCongr_inv_app_app_apply
  PresheafOfModules.pushforwardNatTrans_app_app_apply
  PresheafOfModules.pushforwardCongr_hom_app_app_apply
  AlgebraicGeometry.tilde.functorCompPullbackSpecIso_app TwoChartCech.Mumford.dK_apply
  TwoChartCech.Mumford.ι0_apply TwoChartCech.Mumford.ι1_apply TwoChartCech.KerCoprod.dK_apply
  TwoChartCech.KerCoprod.ι1_apply TwoChartCech.KerCoprod.ι0_apply
universe u
open _root_.CategoryTheory
open _root_.CategoryTheory.Limits
open _root_.CategoryTheory.MonoidalCategory
open _root_.AlgebraicGeometry
open _root_.AlgebraicGeometry.RelPicard
open _root_.NeronModelInfra
open _root_.GoodReductionJacobian
open _root_.AlgebraicCurve
open _root_.AlgebraicGeometry.Scheme.TwoAffineOpenCover
namespace T2Sol
section MonoBase
variable (R : Type u) [CommRing R] (K : Type u) [CommRing K] [Algebra R K] [Mono (specMap R K)]
  {Y T : Scheme.{u}} (y : Y ⟶ Spec (.of K)) (t : T ⟶ Spec (.of K))
theorem isPullback_of_mono :
    IsPullback (pullback.fst y t) (pullback.snd y t) (y ≫ specMap R K) (t ≫ specMap R K)
JacobianVarieties.Picard.Proofs.NormPoincareBaseChange.T2Sol.eY

The pullback comparison induced by a monomorphism of base spectra.

Source context 16 commands

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

section ProofImplementation
namespace JacobianVarieties.Picard.Proofs.NormPoincareBaseChange
attribute [-simp]
  PresheafOfModules.pushforwardCongr_inv_app_app_apply
  PresheafOfModules.pushforwardNatTrans_app_app_apply
  PresheafOfModules.pushforwardCongr_hom_app_app_apply
  AlgebraicGeometry.tilde.functorCompPullbackSpecIso_app TwoChartCech.Mumford.dK_apply
  TwoChartCech.Mumford.ι0_apply TwoChartCech.Mumford.ι1_apply TwoChartCech.KerCoprod.dK_apply
  TwoChartCech.KerCoprod.ι1_apply TwoChartCech.KerCoprod.ι0_apply
universe u
open _root_.CategoryTheory
open _root_.CategoryTheory.Limits
open _root_.CategoryTheory.MonoidalCategory
open _root_.AlgebraicGeometry
open _root_.AlgebraicGeometry.RelPicard
open _root_.NeronModelInfra
open _root_.GoodReductionJacobian
open _root_.AlgebraicCurve
open _root_.AlgebraicGeometry.Scheme.TwoAffineOpenCover
namespace T2Sol
section MonoBase
variable (R : Type u) [CommRing R] (K : Type u) [CommRing K] [Algebra R K] [Mono (specMap R K)]
  {Y T : Scheme.{u}} (y : Y ⟶ Spec (.of K)) (t : T ⟶ Spec (.of K))
def eY : Limits.pullback y t ≅ Limits.pullback (y ≫ specMap R K) (t ≫ specMap R K)
JacobianVarieties.Picard.Proofs.NormPoincareBaseChange.T2Sol.eY_hom_fst
Source context 16 commands

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

section ProofImplementation
namespace JacobianVarieties.Picard.Proofs.NormPoincareBaseChange
attribute [-simp]
  PresheafOfModules.pushforwardCongr_inv_app_app_apply
  PresheafOfModules.pushforwardNatTrans_app_app_apply
  PresheafOfModules.pushforwardCongr_hom_app_app_apply
  AlgebraicGeometry.tilde.functorCompPullbackSpecIso_app TwoChartCech.Mumford.dK_apply
  TwoChartCech.Mumford.ι0_apply TwoChartCech.Mumford.ι1_apply TwoChartCech.KerCoprod.dK_apply
  TwoChartCech.KerCoprod.ι1_apply TwoChartCech.KerCoprod.ι0_apply
universe u
open _root_.CategoryTheory
open _root_.CategoryTheory.Limits
open _root_.CategoryTheory.MonoidalCategory
open _root_.AlgebraicGeometry
open _root_.AlgebraicGeometry.RelPicard
open _root_.NeronModelInfra
open _root_.GoodReductionJacobian
open _root_.AlgebraicCurve
open _root_.AlgebraicGeometry.Scheme.TwoAffineOpenCover
namespace T2Sol
section MonoBase
variable (R : Type u) [CommRing R] (K : Type u) [CommRing K] [Algebra R K] [Mono (specMap R K)]
  {Y T : Scheme.{u}} (y : Y ⟶ Spec (.of K)) (t : T ⟶ Spec (.of K))
theorem eY_hom_fst :
    (eY R K y t).hom ≫ pullback.fst (y ≫ specMap R K) (t ≫ specMap R K) = pullback.fst y t
JacobianVarieties.Picard.Proofs.NormPoincareBaseChange.T2Sol.eY_hom_snd
Source context 16 commands

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

section ProofImplementation
namespace JacobianVarieties.Picard.Proofs.NormPoincareBaseChange
attribute [-simp]
  PresheafOfModules.pushforwardCongr_inv_app_app_apply
  PresheafOfModules.pushforwardNatTrans_app_app_apply
  PresheafOfModules.pushforwardCongr_hom_app_app_apply
  AlgebraicGeometry.tilde.functorCompPullbackSpecIso_app TwoChartCech.Mumford.dK_apply
  TwoChartCech.Mumford.ι0_apply TwoChartCech.Mumford.ι1_apply TwoChartCech.KerCoprod.dK_apply
  TwoChartCech.KerCoprod.ι1_apply TwoChartCech.KerCoprod.ι0_apply
universe u
open _root_.CategoryTheory
open _root_.CategoryTheory.Limits
open _root_.CategoryTheory.MonoidalCategory
open _root_.AlgebraicGeometry
open _root_.AlgebraicGeometry.RelPicard
open _root_.NeronModelInfra
open _root_.GoodReductionJacobian
open _root_.AlgebraicCurve
open _root_.AlgebraicGeometry.Scheme.TwoAffineOpenCover
namespace T2Sol
section MonoBase
variable (R : Type u) [CommRing R] (K : Type u) [CommRing K] [Algebra R K] [Mono (specMap R K)]
  {Y T : Scheme.{u}} (y : Y ⟶ Spec (.of K)) (t : T ⟶ Spec (.of K))
theorem eY_hom_snd :
    (eY R K y t).hom ≫ pullback.snd (y ≫ specMap R K) (t ≫ specMap R K) = pullback.snd y t
JacobianVarieties.Picard.Proofs.NormPoincareBaseChange.T2Sol.eY_curveChange
Source context 16 commands

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

section ProofImplementation
namespace JacobianVarieties.Picard.Proofs.NormPoincareBaseChange
attribute [-simp]
  PresheafOfModules.pushforwardCongr_inv_app_app_apply
  PresheafOfModules.pushforwardNatTrans_app_app_apply
  PresheafOfModules.pushforwardCongr_hom_app_app_apply
  AlgebraicGeometry.tilde.functorCompPullbackSpecIso_app TwoChartCech.Mumford.dK_apply
  TwoChartCech.Mumford.ι0_apply TwoChartCech.Mumford.ι1_apply TwoChartCech.KerCoprod.dK_apply
  TwoChartCech.KerCoprod.ι1_apply TwoChartCech.KerCoprod.ι0_apply
universe u
open _root_.CategoryTheory
open _root_.CategoryTheory.Limits
open _root_.CategoryTheory.MonoidalCategory
open _root_.AlgebraicGeometry
open _root_.AlgebraicGeometry.RelPicard
open _root_.NeronModelInfra
open _root_.GoodReductionJacobian
open _root_.AlgebraicCurve
open _root_.AlgebraicGeometry.Scheme.TwoAffineOpenCover
namespace T2Sol
section Squares
variable {R : Type u} [CommRing R] {C : Scheme.{u}} (c : C ⟶ Spec (.of R)) (K : Type u) [CommRing
  K] [Algebra R K]
  [Mono (specMap R K)] {Y T : Scheme.{u}} (y : Y ⟶ Spec (.of K)) (t : T ⟶ Spec (.of K))
  (π : Y ⟶ C) (Hπ : π ≫ c = y ≫ specMap R K) (Hπ₁ : pullback.lift π y Hπ ≫
    SmoothProperCurve.baseChange R c K = y)
theorem eY_curveChange :
    (eY R K y t).hom ≫ curveChange (c' := y ≫ specMap R K) π Hπ (t ≫ specMap R K) =
      curveChange (c' := y) (pullback.lift π y Hπ) Hπ₁ t ≫ (BaseChange.κ c K t).hom
JacobianVarieties.Picard.Proofs.NormPoincareBaseChange.T2Sol.eY_inv_curveChange
Source context 16 commands

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

section ProofImplementation
namespace JacobianVarieties.Picard.Proofs.NormPoincareBaseChange
attribute [-simp]
  PresheafOfModules.pushforwardCongr_inv_app_app_apply
  PresheafOfModules.pushforwardNatTrans_app_app_apply
  PresheafOfModules.pushforwardCongr_hom_app_app_apply
  AlgebraicGeometry.tilde.functorCompPullbackSpecIso_app TwoChartCech.Mumford.dK_apply
  TwoChartCech.Mumford.ι0_apply TwoChartCech.Mumford.ι1_apply TwoChartCech.KerCoprod.dK_apply
  TwoChartCech.KerCoprod.ι1_apply TwoChartCech.KerCoprod.ι0_apply
universe u
open _root_.CategoryTheory
open _root_.CategoryTheory.Limits
open _root_.CategoryTheory.MonoidalCategory
open _root_.AlgebraicGeometry
open _root_.AlgebraicGeometry.RelPicard
open _root_.NeronModelInfra
open _root_.GoodReductionJacobian
open _root_.AlgebraicCurve
open _root_.AlgebraicGeometry.Scheme.TwoAffineOpenCover
namespace T2Sol
section Squares
variable {R : Type u} [CommRing R] {C : Scheme.{u}} (c : C ⟶ Spec (.of R)) (K : Type u) [CommRing
  K] [Algebra R K]
  [Mono (specMap R K)] {Y T : Scheme.{u}} (y : Y ⟶ Spec (.of K)) (t : T ⟶ Spec (.of K))
  (π : Y ⟶ C) (Hπ : π ≫ c = y ≫ specMap R K) (Hπ₁ : pullback.lift π y Hπ ≫
    SmoothProperCurve.baseChange R c K = y)
theorem eY_inv_curveChange :
    (eY R K y t).inv ≫ curveChange (c' := y) (pullback.lift π y Hπ) Hπ₁ t =
      curveChange (c' := y ≫ specMap R K) π Hπ (t ≫ specMap R K) ≫ (BaseChange.κ c K t).inv
JacobianVarieties.Picard.Proofs.NormPoincareBaseChange.T2Sol.isPullback_curveChange
Source context 16 commands

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

section ProofImplementation
namespace JacobianVarieties.Picard.Proofs.NormPoincareBaseChange
attribute [-simp]
  PresheafOfModules.pushforwardCongr_inv_app_app_apply
  PresheafOfModules.pushforwardNatTrans_app_app_apply
  PresheafOfModules.pushforwardCongr_hom_app_app_apply
  AlgebraicGeometry.tilde.functorCompPullbackSpecIso_app TwoChartCech.Mumford.dK_apply
  TwoChartCech.Mumford.ι0_apply TwoChartCech.Mumford.ι1_apply TwoChartCech.KerCoprod.dK_apply
  TwoChartCech.KerCoprod.ι1_apply TwoChartCech.KerCoprod.ι0_apply
universe u
open _root_.CategoryTheory
open _root_.CategoryTheory.Limits
open _root_.CategoryTheory.MonoidalCategory
open _root_.AlgebraicGeometry
open _root_.AlgebraicGeometry.RelPicard
open _root_.NeronModelInfra
open _root_.GoodReductionJacobian
open _root_.AlgebraicCurve
open _root_.AlgebraicGeometry.Scheme.TwoAffineOpenCover
namespace T2Sol
section Squares
variable {R : Type u} [CommRing R] {C : Scheme.{u}} (c : C ⟶ Spec (.of R)) (K : Type u) [CommRing
  K] [Algebra R K]
  [Mono (specMap R K)] {Y T : Scheme.{u}} (y : Y ⟶ Spec (.of K)) (t : T ⟶ Spec (.of K))
  (π : Y ⟶ C) (Hπ : π ≫ c = y ≫ specMap R K) (Hπ₁ : pullback.lift π y Hπ ≫
    SmoothProperCurve.baseChange R c K = y)
theorem isPullback_curveChange :
    IsPullback (eY R K y t).inv (curveChange (c' := y ≫ specMap R K) π Hπ (t ≫ specMap R K))
      (curveChange (c' := y) (pullback.lift π y Hπ) Hπ₁ t) (BaseChange.κ c K t).inv
JacobianVarieties.Picard.Proofs.NormPoincareBaseChange.T2Sol.isPullback_fst_curveChange
Source context 17 commands

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

section ProofImplementation
namespace JacobianVarieties.Picard.Proofs.NormPoincareBaseChange
attribute [-simp]
  PresheafOfModules.pushforwardCongr_inv_app_app_apply
  PresheafOfModules.pushforwardNatTrans_app_app_apply
  PresheafOfModules.pushforwardCongr_hom_app_app_apply
  AlgebraicGeometry.tilde.functorCompPullbackSpecIso_app TwoChartCech.Mumford.dK_apply
  TwoChartCech.Mumford.ι0_apply TwoChartCech.Mumford.ι1_apply TwoChartCech.KerCoprod.dK_apply
  TwoChartCech.KerCoprod.ι1_apply TwoChartCech.KerCoprod.ι0_apply
universe u
open _root_.CategoryTheory
open _root_.CategoryTheory.Limits
open _root_.CategoryTheory.MonoidalCategory
open _root_.AlgebraicGeometry
open _root_.AlgebraicGeometry.RelPicard
open _root_.NeronModelInfra
open _root_.GoodReductionJacobian
open _root_.AlgebraicCurve
open _root_.AlgebraicGeometry.Scheme.TwoAffineOpenCover
namespace T2Sol
section Squares
variable {R : Type u} [CommRing R] {C : Scheme.{u}} (c : C ⟶ Spec (.of R)) (K : Type u) [CommRing
  K] [Algebra R K]
  [Mono (specMap R K)] {Y T : Scheme.{u}} (y : Y ⟶ Spec (.of K)) (t : T ⟶ Spec (.of K))
  (π : Y ⟶ C) (Hπ : π ≫ c = y ≫ specMap R K) (Hπ₁ : pullback.lift π y Hπ ≫
    SmoothProperCurve.baseChange R c K = y)
omit [Mono (specMap R K)] in
theorem isPullback_fst_curveChange :
    IsPullback (pullback.fst y t) (curveChange (c' := y) (pullback.lift π y Hπ) Hπ₁ t)
      (pullback.lift π y Hπ)
      (pullback.fst (SmoothProperCurve.baseChange R c K) t)
JacobianVarieties.Picard.Proofs.NormPoincareBaseChange.T2Sol.finrank_curveChange
Source context 17 commands

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

section ProofImplementation
namespace JacobianVarieties.Picard.Proofs.NormPoincareBaseChange
attribute [-simp]
  PresheafOfModules.pushforwardCongr_inv_app_app_apply
  PresheafOfModules.pushforwardNatTrans_app_app_apply
  PresheafOfModules.pushforwardCongr_hom_app_app_apply
  AlgebraicGeometry.tilde.functorCompPullbackSpecIso_app TwoChartCech.Mumford.dK_apply
  TwoChartCech.Mumford.ι0_apply TwoChartCech.Mumford.ι1_apply TwoChartCech.KerCoprod.dK_apply
  TwoChartCech.KerCoprod.ι1_apply TwoChartCech.KerCoprod.ι0_apply
universe u
open _root_.CategoryTheory
open _root_.CategoryTheory.Limits
open _root_.CategoryTheory.MonoidalCategory
open _root_.AlgebraicGeometry
open _root_.AlgebraicGeometry.RelPicard
open _root_.NeronModelInfra
open _root_.GoodReductionJacobian
open _root_.AlgebraicCurve
open _root_.AlgebraicGeometry.Scheme.TwoAffineOpenCover
namespace T2Sol
section Squares
variable {R : Type u} [CommRing R] {C : Scheme.{u}} (c : C ⟶ Spec (.of R)) (K : Type u) [CommRing
  K] [Algebra R K]
  [Mono (specMap R K)] {Y T : Scheme.{u}} (y : Y ⟶ Spec (.of K)) (t : T ⟶ Spec (.of K))
  (π : Y ⟶ C) (Hπ : π ≫ c = y ≫ specMap R K) (Hπ₁ : pullback.lift π y Hπ ≫
    SmoothProperCurve.baseChange R c K = y)
omit [Mono (specMap R K)] in
theorem finrank_curveChange [Flat (pullback.lift π y Hπ)] [IsFinite (pullback.lift π y Hπ)] (z) :
    (curveChange (c' := y) (pullback.lift π y Hπ) Hπ₁ t).finrank z =
      (pullback.lift π y Hπ).finrank (pullback.fst (SmoothProperCurve.baseChange R c K) t z)
JacobianVarieties.Picard.Proofs.NormPoincareBaseChange.T2Sol.pullbackRigidifyIso

Pullback commutes with rigidification along the compatible section and projection.

Source context 16 commands

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

section ProofImplementation
namespace JacobianVarieties.Picard.Proofs.NormPoincareBaseChange
attribute [-simp]
  PresheafOfModules.pushforwardCongr_inv_app_app_apply
  PresheafOfModules.pushforwardNatTrans_app_app_apply
  PresheafOfModules.pushforwardCongr_hom_app_app_apply
  AlgebraicGeometry.tilde.functorCompPullbackSpecIso_app TwoChartCech.Mumford.dK_apply
  TwoChartCech.Mumford.ι0_apply TwoChartCech.Mumford.ι1_apply TwoChartCech.KerCoprod.dK_apply
  TwoChartCech.KerCoprod.ι1_apply TwoChartCech.KerCoprod.ι0_apply
universe u
open _root_.CategoryTheory
open _root_.CategoryTheory.Limits
open _root_.CategoryTheory.MonoidalCategory
open _root_.AlgebraicGeometry
open _root_.AlgebraicGeometry.RelPicard
open _root_.NeronModelInfra
open _root_.GoodReductionJacobian
open _root_.AlgebraicCurve
open _root_.AlgebraicGeometry.Scheme.TwoAffineOpenCover
namespace T2Sol
section Rigidify
variable {T P P' : Scheme.{u}} (σ : T ⟶ P) (q : P ⟶ T) (σ' : T ⟶ P') (q' : P' ⟶ T) (e : P' ⟶ P)
  (hσ : σ' ≫ e = σ) (hq : e ≫ q = q')
def pullbackRigidifyIso (L : P.Modules) :
    (Scheme.Modules.pullback e).obj (Scheme.Modules.rigidify σ q L) ≅
      Scheme.Modules.rigidify σ' q' ((Scheme.Modules.pullback e).obj L)
JacobianVarieties.Picard.Proofs.NormPoincareBaseChange.T2Sol.fstPoint

The relative point obtained from a base-changed point by the first projection.

Source context 17 commands

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

section ProofImplementation
namespace JacobianVarieties.Picard.Proofs.NormPoincareBaseChange
attribute [-simp]
  PresheafOfModules.pushforwardCongr_inv_app_app_apply
  PresheafOfModules.pushforwardNatTrans_app_app_apply
  PresheafOfModules.pushforwardCongr_hom_app_app_apply
  AlgebraicGeometry.tilde.functorCompPullbackSpecIso_app TwoChartCech.Mumford.dK_apply
  TwoChartCech.Mumford.ι0_apply TwoChartCech.Mumford.ι1_apply TwoChartCech.KerCoprod.dK_apply
  TwoChartCech.KerCoprod.ι1_apply TwoChartCech.KerCoprod.ι0_apply
universe u
open _root_.CategoryTheory
open _root_.CategoryTheory.Limits
open _root_.CategoryTheory.MonoidalCategory
open _root_.AlgebraicGeometry
open _root_.AlgebraicGeometry.RelPicard
open _root_.NeronModelInfra
open _root_.GoodReductionJacobian
open _root_.AlgebraicCurve
open _root_.AlgebraicGeometry.Scheme.TwoAffineOpenCover
namespace T2Sol
section Classify
open AlgebraicGeometry.RelPicard.BaseTransport
variable {R : Type u} [CommRing R] {C : Scheme.{u}} (c : C ⟶ Spec (.of R)) (ε : SchemeHomOver (𝟙
  (Spec (.of R))) c)
  (K : Type u) [CommRing K] [Algebra R K]
  (D : RelativePic0Designation R c) (h : RepresentsRelSubPic c ε (algEquivZeroCut c ε) D)
  (h' : RepresentsRelSubPic (SmoothProperCurve.baseChange R c K)
    (SmoothProperCurve.sectionBaseChange K ε)
    (algEquivZeroCut (SmoothProperCurve.baseChange R c K) (SmoothProperCurve.sectionBaseChange K
      ε)) (D.baseChange K))
  (hP : Nonempty (h'.poincare.L ≅ (BaseChange.ofR c ε K
    (h.poincare.pullbackAlong ⟨pullback.fst D.toBase (specMap R K), pullback.condition⟩)).L))
  {T : Scheme.{u}} (t : T ⟶ Spec (.of K))
def fstPoint (b : SchemeHomOver t (D.baseChange K).toBase) :
    SchemeHomOver (t ≫ specMap R K) D.toBase
JacobianVarieties.Picard.Proofs.NormPoincareBaseChange.T2Sol.fstPoint_coe
Source context 17 commands

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

section ProofImplementation
namespace JacobianVarieties.Picard.Proofs.NormPoincareBaseChange
attribute [-simp]
  PresheafOfModules.pushforwardCongr_inv_app_app_apply
  PresheafOfModules.pushforwardNatTrans_app_app_apply
  PresheafOfModules.pushforwardCongr_hom_app_app_apply
  AlgebraicGeometry.tilde.functorCompPullbackSpecIso_app TwoChartCech.Mumford.dK_apply
  TwoChartCech.Mumford.ι0_apply TwoChartCech.Mumford.ι1_apply TwoChartCech.KerCoprod.dK_apply
  TwoChartCech.KerCoprod.ι1_apply TwoChartCech.KerCoprod.ι0_apply
universe u
open _root_.CategoryTheory
open _root_.CategoryTheory.Limits
open _root_.CategoryTheory.MonoidalCategory
open _root_.AlgebraicGeometry
open _root_.AlgebraicGeometry.RelPicard
open _root_.NeronModelInfra
open _root_.GoodReductionJacobian
open _root_.AlgebraicCurve
open _root_.AlgebraicGeometry.Scheme.TwoAffineOpenCover
namespace T2Sol
section Classify
open AlgebraicGeometry.RelPicard.BaseTransport
variable {R : Type u} [CommRing R] {C : Scheme.{u}} (c : C ⟶ Spec (.of R)) (ε : SchemeHomOver (𝟙
  (Spec (.of R))) c)
  (K : Type u) [CommRing K] [Algebra R K]
  (D : RelativePic0Designation R c) (h : RepresentsRelSubPic c ε (algEquivZeroCut c ε) D)
  (h' : RepresentsRelSubPic (SmoothProperCurve.baseChange R c K)
    (SmoothProperCurve.sectionBaseChange K ε)
    (algEquivZeroCut (SmoothProperCurve.baseChange R c K) (SmoothProperCurve.sectionBaseChange K
      ε)) (D.baseChange K))
  (hP : Nonempty (h'.poincare.L ≅ (BaseChange.ofR c ε K
    (h.poincare.pullbackAlong ⟨pullback.fst D.toBase (specMap R K), pullback.condition⟩)).L))
  {T : Scheme.{u}} (t : T ⟶ Spec (.of K))
theorem fstPoint_coe (b : SchemeHomOver t (D.baseChange K).toBase) :
    (fstPoint c K D t b).1 = b.1 ≫ pullback.fst D.toBase (specMap R K)
JacobianVarieties.Picard.Proofs.NormPoincareBaseChange.T2Sol.poincareFstIso

Compare the Poincaré family at a projected point with its base transport.

Source context 17 commands

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

section ProofImplementation
namespace JacobianVarieties.Picard.Proofs.NormPoincareBaseChange
attribute [-simp]
  PresheafOfModules.pushforwardCongr_inv_app_app_apply
  PresheafOfModules.pushforwardNatTrans_app_app_apply
  PresheafOfModules.pushforwardCongr_hom_app_app_apply
  AlgebraicGeometry.tilde.functorCompPullbackSpecIso_app TwoChartCech.Mumford.dK_apply
  TwoChartCech.Mumford.ι0_apply TwoChartCech.Mumford.ι1_apply TwoChartCech.KerCoprod.dK_apply
  TwoChartCech.KerCoprod.ι1_apply TwoChartCech.KerCoprod.ι0_apply
universe u
open _root_.CategoryTheory
open _root_.CategoryTheory.Limits
open _root_.CategoryTheory.MonoidalCategory
open _root_.AlgebraicGeometry
open _root_.AlgebraicGeometry.RelPicard
open _root_.NeronModelInfra
open _root_.GoodReductionJacobian
open _root_.AlgebraicCurve
open _root_.AlgebraicGeometry.Scheme.TwoAffineOpenCover
namespace T2Sol
section Classify
open AlgebraicGeometry.RelPicard.BaseTransport
variable {R : Type u} [CommRing R] {C : Scheme.{u}} (c : C ⟶ Spec (.of R)) (ε : SchemeHomOver (𝟙
  (Spec (.of R))) c)
  (K : Type u) [CommRing K] [Algebra R K]
  (D : RelativePic0Designation R c) (h : RepresentsRelSubPic c ε (algEquivZeroCut c ε) D)
  (h' : RepresentsRelSubPic (SmoothProperCurve.baseChange R c K)
    (SmoothProperCurve.sectionBaseChange K ε)
    (algEquivZeroCut (SmoothProperCurve.baseChange R c K) (SmoothProperCurve.sectionBaseChange K
      ε)) (D.baseChange K))
  (hP : Nonempty (h'.poincare.L ≅ (BaseChange.ofR c ε K
    (h.poincare.pullbackAlong ⟨pullback.fst D.toBase (specMap R K), pullback.condition⟩)).L))
  {T : Scheme.{u}} (t : T ⟶ Spec (.of K))
def poincareFstIso (b : SchemeHomOver t (D.baseChange K).toBase) :
    (h.poincare.pullbackAlong (fstPoint c K D t b)).L ≅ (BaseChange.toR c ε K
      (h'.poincare.pullbackAlong b)).L
JacobianVarieties.Picard.Proofs.NormPoincareBaseChange.T2Sol.toR_mem
Source context 17 commands

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

section ProofImplementation
namespace JacobianVarieties.Picard.Proofs.NormPoincareBaseChange
attribute [-simp]
  PresheafOfModules.pushforwardCongr_inv_app_app_apply
  PresheafOfModules.pushforwardNatTrans_app_app_apply
  PresheafOfModules.pushforwardCongr_hom_app_app_apply
  AlgebraicGeometry.tilde.functorCompPullbackSpecIso_app TwoChartCech.Mumford.dK_apply
  TwoChartCech.Mumford.ι0_apply TwoChartCech.Mumford.ι1_apply TwoChartCech.KerCoprod.dK_apply
  TwoChartCech.KerCoprod.ι1_apply TwoChartCech.KerCoprod.ι0_apply
universe u
open _root_.CategoryTheory
open _root_.CategoryTheory.Limits
open _root_.CategoryTheory.MonoidalCategory
open _root_.AlgebraicGeometry
open _root_.AlgebraicGeometry.RelPicard
open _root_.NeronModelInfra
open _root_.GoodReductionJacobian
open _root_.AlgebraicCurve
open _root_.AlgebraicGeometry.Scheme.TwoAffineOpenCover
namespace T2Sol
section Classify
open AlgebraicGeometry.RelPicard.BaseTransport
variable {R : Type u} [CommRing R] {C : Scheme.{u}} (c : C ⟶ Spec (.of R)) (ε : SchemeHomOver (𝟙
  (Spec (.of R))) c)
  (K : Type u) [CommRing K] [Algebra R K]
  (D : RelativePic0Designation R c) (h : RepresentsRelSubPic c ε (algEquivZeroCut c ε) D)
  (h' : RepresentsRelSubPic (SmoothProperCurve.baseChange R c K)
    (SmoothProperCurve.sectionBaseChange K ε)
    (algEquivZeroCut (SmoothProperCurve.baseChange R c K) (SmoothProperCurve.sectionBaseChange K
      ε)) (D.baseChange K))
  (hP : Nonempty (h'.poincare.L ≅ (BaseChange.ofR c ε K
    (h.poincare.pullbackAlong ⟨pullback.fst D.toBase (specMap R K), pullback.condition⟩)).L))
  {T : Scheme.{u}} (t : T ⟶ Spec (.of K))
theorem toR_mem
    (M : RigidifiedLineBundle (SmoothProperCurve.baseChange R c K)
      (SmoothProperCurve.sectionBaseChange K ε) t)
    (hM : (algEquivZeroCut (SmoothProperCurve.baseChange R c K)
      (SmoothProperCurve.sectionBaseChange K ε)).P t M) :
    (algEquivZeroCut c ε).P (t ≫ specMap R K) (BaseChange.toR c ε K M)
JacobianVarieties.Picard.Proofs.NormPoincareBaseChange.T2Sol.fstPoint_classify
Source context 18 commands

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

section ProofImplementation
namespace JacobianVarieties.Picard.Proofs.NormPoincareBaseChange
attribute [-simp]
  PresheafOfModules.pushforwardCongr_inv_app_app_apply
  PresheafOfModules.pushforwardNatTrans_app_app_apply
  PresheafOfModules.pushforwardCongr_hom_app_app_apply
  AlgebraicGeometry.tilde.functorCompPullbackSpecIso_app TwoChartCech.Mumford.dK_apply
  TwoChartCech.Mumford.ι0_apply TwoChartCech.Mumford.ι1_apply TwoChartCech.KerCoprod.dK_apply
  TwoChartCech.KerCoprod.ι1_apply TwoChartCech.KerCoprod.ι0_apply
universe u
open _root_.CategoryTheory
open _root_.CategoryTheory.Limits
open _root_.CategoryTheory.MonoidalCategory
open _root_.AlgebraicGeometry
open _root_.AlgebraicGeometry.RelPicard
open _root_.NeronModelInfra
open _root_.GoodReductionJacobian
open _root_.AlgebraicCurve
open _root_.AlgebraicGeometry.Scheme.TwoAffineOpenCover
namespace T2Sol
section Classify
open AlgebraicGeometry.RelPicard.BaseTransport
variable {R : Type u} [CommRing R] {C : Scheme.{u}} (c : C ⟶ Spec (.of R)) (ε : SchemeHomOver (𝟙
  (Spec (.of R))) c)
  (K : Type u) [CommRing K] [Algebra R K]
  (D : RelativePic0Designation R c) (h : RepresentsRelSubPic c ε (algEquivZeroCut c ε) D)
  (h' : RepresentsRelSubPic (SmoothProperCurve.baseChange R c K)
    (SmoothProperCurve.sectionBaseChange K ε)
    (algEquivZeroCut (SmoothProperCurve.baseChange R c K) (SmoothProperCurve.sectionBaseChange K
      ε)) (D.baseChange K))
  (hP : Nonempty (h'.poincare.L ≅ (BaseChange.ofR c ε K
    (h.poincare.pullbackAlong ⟨pullback.fst D.toBase (specMap R K), pullback.condition⟩)).L))
  {T : Scheme.{u}} (t : T ⟶ Spec (.of K))
include hP in
theorem fstPoint_classify
    (M : RigidifiedLineBundle (SmoothProperCurve.baseChange R c K)
      (SmoothProperCurve.sectionBaseChange K ε) t)
    (hM : (algEquivZeroCut (SmoothProperCurve.baseChange R c K)
      (SmoothProperCurve.sectionBaseChange K ε)).P t M) :
    fstPoint c K D t (h'.classify t M hM) = h.classify (t ≫ specMap R K) (BaseChange.toR c ε K M)
      (toR_mem c ε K t M hM)
AlgebraicGeometry.RelPicard.RepresentsRelSubPic.nonempty_poincare_pullbackAlong_iso_rigidify_normModule_baseChange
Source context 10 commands

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

section ProofImplementation
namespace AlgebraicGeometry.RelPicard
open CategoryTheory CategoryTheory.Limits CategoryTheory.MonoidalCategory
open NeronModelInfra GoodReductionJacobian
open AlgebraicGeometry.Scheme.TwoAffineOpenCover
open AlgebraicCurve
universe u
open _root_.JacobianVarieties.Picard.Proofs in
open NormPoincareBaseChange.T2Sol in
open _root_.AlgebraicGeometry.RelPicard.BaseTransport in
theorem RepresentsRelSubPic.nonempty_poincare_pullbackAlong_iso_rigidify_normModule_baseChange
    {R : Type u} [CommRing R] {C : Scheme.{u}} (c : C ⟶ Spec (.of R)) (ε : SchemeHomOver (𝟙 (Spec
      (.of R))) c)
    (K : Type u) [CommRing K] [Algebra R K] [Mono (specMap R K)]
    (D : RelativePic0Designation R c) (h : RepresentsRelSubPic c ε (algEquivZeroCut c ε) D)
    (h' : RepresentsRelSubPic (SmoothProperCurve.baseChange R c K)
      (SmoothProperCurve.sectionBaseChange K ε)
      (algEquivZeroCut (SmoothProperCurve.baseChange R c K) (SmoothProperCurve.sectionBaseChange K
        ε)) (D.baseChange K))
    (hP : Nonempty (h'.poincare.L ≅ (BaseChange.ofR c ε K
      (h.poincare.pullbackAlong ⟨pullback.fst D.toBase (specMap R K), pullback.condition⟩)).L))
    {Y : Scheme.{u}} (y : Y ⟶ Spec (.of K))
    (πα πβ : Y ⟶ C) (Hα : πα ≫ c = y ≫ specMap R K) (Hβ : πβ ≫ c = y ≫ specMap R K)
    [IsFinite (pullback.lift πα y Hα : Y ⟶ Limits.pullback c (specMap R K))]
    [Flat (pullback.lift πα y Hα : Y ⟶ Limits.pullback c (specMap R K))]
    [LocallyOfFinitePresentation (pullback.lift πα y Hα : Y ⟶ Limits.pullback c (specMap R K))]
    (d : ℕ) (hd : ∀ z, (pullback.lift πα y Hα : Y ⟶ Limits.pullback c (specMap R K)).finrank z = d)
    (φ₁ : SchemeHomOver D.toBase D.toBase)
    (hmoduli :
      ∀ (T : Scheme.{u}) (t' : T ⟶ Spec (.of K))
          (M : RigidifiedLineBundle c ε (t' ≫ specMap R K))
          (hM : (algEquivZeroCut c ε).P (t' ≫ specMap R K) M),
        Nonempty ((h.poincare.pullbackAlong
            (NeronModelInfra.schemeHomOverComp (h.classify (t' ≫ specMap R K) M hM) φ₁)).L ≅
          Scheme.Modules.rigidify (rigSection c (t' ≫ specMap R K) ε) (pullback.snd c (t' ≫ specMap
            R K))
            (Scheme.Modules.normModule (curveChange (c' := y ≫ specMap R K) πα Hα (t' ≫ specMap R
              K)) d
              ((Scheme.Modules.pullback (curveChange (c' := y ≫ specMap R K) πβ Hβ (t' ≫ specMap R
                K))).obj M.L))))
    (φ₁K : SchemeHomOver (D.baseChange K).toBase (D.baseChange K).toBase)
    (hφ₁K : φ₁K.1 ≫ pullback.fst D.toBase (specMap R K) = pullback.fst D.toBase (specMap R K) ≫
      φ₁.1)
    (Hα₁ : pullback.lift πα y Hα ≫ SmoothProperCurve.baseChange R c K = y)
    (Hβ₁ : pullback.lift πβ y Hβ ≫ SmoothProperCurve.baseChange R c K = y)
    (T : Scheme.{u}) (t : T ⟶ Spec (.of K))
    (M : RigidifiedLineBundle (SmoothProperCurve.baseChange R c K)
      (SmoothProperCurve.sectionBaseChange K ε) t)
    (hM : (algEquivZeroCut (SmoothProperCurve.baseChange R c K)
      (SmoothProperCurve.sectionBaseChange K ε)).P t M) :
    Nonempty ((h'.poincare.pullbackAlong (NeronModelInfra.schemeHomOverComp (h'.classify t M hM)
      φ₁K)).L ≅
      Scheme.Modules.rigidify
        (rigSection (SmoothProperCurve.baseChange R c K) t (SmoothProperCurve.sectionBaseChange K
          ε))
        (pullback.snd (SmoothProperCurve.baseChange R c K) t)
        (Scheme.Modules.normModule (curveChange (c' := y) (pullback.lift πα y Hα) Hα₁ t) d
          ((Scheme.Modules.pullback (curveChange (c' := y) (pullback.lift πβ y Hβ) Hβ₁ t)).obj
            M.L)))