Module

RelativeGroupLaw_surjective_schemeNsmul_of_flat_of_field.lean

Nyll.AlgebraicCurves.Geometry.AbelianSchemes.Theorems.RelativeGroupLaw_surjective_schemeNsmul_of_flat_of_field
55 declarations indexed from sourceView source ↗

Relative Group Law surjective scheme Nsmul of flat of field

Imports9
  • Nyll.AlgebraicCurves.Geometry.AbelianSchemes.GroupLaw.Kernel
  • Mathlib.AlgebraicGeometry.Morphisms.Flat
  • Mathlib.AlgebraicGeometry.Morphisms.FiniteType
  • Mathlib.AlgebraicGeometry.Morphisms.UniversallyOpen
  • Mathlib.AlgebraicGeometry.ResidueField
  • Mathlib.AlgebraicGeometry.PullbackCarrier
  • Mathlib.AlgebraicGeometry.Noetherian
  • Mathlib.Topology.Connected.Clopen
  • Mathlib.CategoryTheory.Limits.Shapes.Pullback.HasPullback
Imported by2

Declarations

AlgebraicCurves.Geometry.AbelianSchemes.Theorems.Proofs.RelativeGroupLaw_surjective_schemeNsmul_of_flat_of_field.GoodReductionJacobian.RelativeGroupLaw.schemeHomOverComp_mk
Source context 14 commands

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

section ProofImplementation
namespace AlgebraicCurves.Geometry.AbelianSchemes.Theorems.Proofs
namespace RelativeGroupLaw_surjective_schemeNsmul_of_flat_of_field
universe u
open _root_.CategoryTheory
open _root_.CategoryTheory.Limits
open _root_.AlgebraicGeometry
open _root_.NeronModelInfra
open _root_.GoodReductionJacobian
namespace GoodReductionJacobian
namespace RelativeGroupLaw
open _root_.GoodReductionJacobian.RelativeGroupLaw
open _root_.GoodReductionJacobian
variable {R : Type u} [CommRing R] {A : Scheme.{u}} {f : A ⟶ Spec (CommRingCat.of R)}
  (G : RelativeGroupLaw R f)
theorem schemeHomOverComp_mk {T T' : Scheme.{u}} {t : T ⟶ Spec (CommRingCat.of R)}
    (ψ : T' ⟶ T) (x : SchemeHomOver t f) :
    (schemeHomOverComp ψ rfl x).1 = ψ ≫ x.1
GoodReductionJacobian.RelativeGroupLaw.inv_natural
Source context 14 commands

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

section ProofImplementation
namespace AlgebraicCurves.Geometry.AbelianSchemes.Theorems.Proofs
namespace RelativeGroupLaw_surjective_schemeNsmul_of_flat_of_field
universe u
open _root_.CategoryTheory
open _root_.CategoryTheory.Limits
open _root_.AlgebraicGeometry
open _root_.NeronModelInfra
open _root_.GoodReductionJacobian
namespace GoodReductionJacobian
namespace RelativeGroupLaw
open _root_.GoodReductionJacobian.RelativeGroupLaw
open _root_.GoodReductionJacobian
variable {R : Type u} [CommRing R] {A : Scheme.{u}} {f : A ⟶ Spec (CommRingCat.of R)}
  (G : RelativeGroupLaw R f)
theorem _root_.GoodReductionJacobian.RelativeGroupLaw.inv_natural {T T' : Scheme.{u}} (t :
  T ⟶ Spec (CommRingCat.of R))
    (t' : T' ⟶ Spec (CommRingCat.of R)) (ψ : T' ⟶ T) (hψ : ψ ≫ t = t') (x : SchemeHomOver t f) :
    schemeHomOverComp ψ hψ (G.inv t x) = G.inv t' (schemeHomOverComp ψ hψ x)
GoodReductionJacobian.RelativeGroupLaw.nsmul_coe
Source context 14 commands

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

section ProofImplementation
namespace AlgebraicCurves.Geometry.AbelianSchemes.Theorems.Proofs
namespace RelativeGroupLaw_surjective_schemeNsmul_of_flat_of_field
universe u
open _root_.CategoryTheory
open _root_.CategoryTheory.Limits
open _root_.AlgebraicGeometry
open _root_.NeronModelInfra
open _root_.GoodReductionJacobian
namespace GoodReductionJacobian
namespace RelativeGroupLaw
open _root_.GoodReductionJacobian.RelativeGroupLaw
open _root_.GoodReductionJacobian
variable {R : Type u} [CommRing R] {A : Scheme.{u}} {f : A ⟶ Spec (CommRingCat.of R)}
  (G : RelativeGroupLaw R f)
theorem _root_.GoodReductionJacobian.RelativeGroupLaw.nsmul_coe {T : Scheme.{u}} (t : T ⟶
  Spec (CommRingCat.of R)) (n : ℕ) (x : SchemeHomOver t f) :
    (G.nsmul t n x).1 = x.1 ≫ G.schemeNsmul n
GoodReductionJacobian.RelativeGroupLaw.nsmul_mul
Source context 14 commands

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

section ProofImplementation
namespace AlgebraicCurves.Geometry.AbelianSchemes.Theorems.Proofs
namespace RelativeGroupLaw_surjective_schemeNsmul_of_flat_of_field
universe u
open _root_.CategoryTheory
open _root_.CategoryTheory.Limits
open _root_.AlgebraicGeometry
open _root_.NeronModelInfra
open _root_.GoodReductionJacobian
namespace GoodReductionJacobian
namespace RelativeGroupLaw
open _root_.GoodReductionJacobian.RelativeGroupLaw
open _root_.GoodReductionJacobian
variable {R : Type u} [CommRing R] {A : Scheme.{u}} {f : A ⟶ Spec (CommRingCat.of R)}
  (G : RelativeGroupLaw R f)
theorem _root_.GoodReductionJacobian.RelativeGroupLaw.nsmul_mul (hc : G.IsCommutative) {T :
  Scheme.{u}} (t : T ⟶ Spec (CommRingCat.of R)) (n : ℕ)
    (x y : SchemeHomOver t f) : G.nsmul t n (G.mul t x y) = G.mul t (G.nsmul t n x) (G.nsmul t n y)
GoodReductionJacobian.RelativeGroupLaw.nsmul_inv
Source context 14 commands

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

section ProofImplementation
namespace AlgebraicCurves.Geometry.AbelianSchemes.Theorems.Proofs
namespace RelativeGroupLaw_surjective_schemeNsmul_of_flat_of_field
universe u
open _root_.CategoryTheory
open _root_.CategoryTheory.Limits
open _root_.AlgebraicGeometry
open _root_.NeronModelInfra
open _root_.GoodReductionJacobian
namespace GoodReductionJacobian
namespace RelativeGroupLaw
open _root_.GoodReductionJacobian.RelativeGroupLaw
open _root_.GoodReductionJacobian
variable {R : Type u} [CommRing R] {A : Scheme.{u}} {f : A ⟶ Spec (CommRingCat.of R)}
  (G : RelativeGroupLaw R f)
theorem _root_.GoodReductionJacobian.RelativeGroupLaw.nsmul_inv (hc : G.IsCommutative) {T :
  Scheme.{u}} (t : T ⟶ Spec (CommRingCat.of R)) (n : ℕ)
    (x : SchemeHomOver t f) : G.nsmul t n (G.inv t x) = G.inv t (G.nsmul t n x)
AlgebraicCurves.Geometry.AbelianSchemes.Theorems.Proofs.RelativeGroupLaw_surjective_schemeNsmul_of_flat_of_field.GoodReductionJacobian.RelativeGroupLaw.prBase

The structure morphism of the double fibre product.

Source context 15 commands

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

section ProofImplementation
namespace AlgebraicCurves.Geometry.AbelianSchemes.Theorems.Proofs
namespace RelativeGroupLaw_surjective_schemeNsmul_of_flat_of_field
universe u
open _root_.CategoryTheory
open _root_.CategoryTheory.Limits
open _root_.AlgebraicGeometry
open _root_.NeronModelInfra
open _root_.GoodReductionJacobian
namespace GoodReductionJacobian
namespace RelativeGroupLaw
open _root_.GoodReductionJacobian.RelativeGroupLaw
open _root_.GoodReductionJacobian
variable {R : Type u} [CommRing R] {A : Scheme.{u}} {f : A ⟶ Spec (CommRingCat.of R)}
  (G : RelativeGroupLaw R f)
section Shear
abbrev prBase : pullback f f ⟶ Spec (CommRingCat.of R)
AlgebraicCurves.Geometry.AbelianSchemes.Theorems.Proofs.RelativeGroupLaw_surjective_schemeNsmul_of_flat_of_field.GoodReductionJacobian.RelativeGroupLaw.ptFst

The first projection as a point over the product base.

Source context 15 commands

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

section ProofImplementation
namespace AlgebraicCurves.Geometry.AbelianSchemes.Theorems.Proofs
namespace RelativeGroupLaw_surjective_schemeNsmul_of_flat_of_field
universe u
open _root_.CategoryTheory
open _root_.CategoryTheory.Limits
open _root_.AlgebraicGeometry
open _root_.NeronModelInfra
open _root_.GoodReductionJacobian
namespace GoodReductionJacobian
namespace RelativeGroupLaw
open _root_.GoodReductionJacobian.RelativeGroupLaw
open _root_.GoodReductionJacobian
variable {R : Type u} [CommRing R] {A : Scheme.{u}} {f : A ⟶ Spec (CommRingCat.of R)}
  (G : RelativeGroupLaw R f)
section Shear
abbrev ptFst : SchemeHomOver (prBase (f := f)) f
AlgebraicCurves.Geometry.AbelianSchemes.Theorems.Proofs.RelativeGroupLaw_surjective_schemeNsmul_of_flat_of_field.GoodReductionJacobian.RelativeGroupLaw.ptSnd

The second projection as a point over the product base.

Source context 15 commands

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

section ProofImplementation
namespace AlgebraicCurves.Geometry.AbelianSchemes.Theorems.Proofs
namespace RelativeGroupLaw_surjective_schemeNsmul_of_flat_of_field
universe u
open _root_.CategoryTheory
open _root_.CategoryTheory.Limits
open _root_.AlgebraicGeometry
open _root_.NeronModelInfra
open _root_.GoodReductionJacobian
namespace GoodReductionJacobian
namespace RelativeGroupLaw
open _root_.GoodReductionJacobian.RelativeGroupLaw
open _root_.GoodReductionJacobian
variable {R : Type u} [CommRing R] {A : Scheme.{u}} {f : A ⟶ Spec (CommRingCat.of R)}
  (G : RelativeGroupLaw R f)
section Shear
abbrev ptSnd : SchemeHomOver (prBase (f := f)) f
GoodReductionJacobian.RelativeGroupLaw.mulHom
Source context 15 commands

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

section ProofImplementation
namespace AlgebraicCurves.Geometry.AbelianSchemes.Theorems.Proofs
namespace RelativeGroupLaw_surjective_schemeNsmul_of_flat_of_field
universe u
open _root_.CategoryTheory
open _root_.CategoryTheory.Limits
open _root_.AlgebraicGeometry
open _root_.NeronModelInfra
open _root_.GoodReductionJacobian
namespace GoodReductionJacobian
namespace RelativeGroupLaw
open _root_.GoodReductionJacobian.RelativeGroupLaw
open _root_.GoodReductionJacobian
variable {R : Type u} [CommRing R] {A : Scheme.{u}} {f : A ⟶ Spec (CommRingCat.of R)}
  (G : RelativeGroupLaw R f)
section Shear
def _root_.GoodReductionJacobian.RelativeGroupLaw.mulHom : pullback f f ⟶ A
GoodReductionJacobian.RelativeGroupLaw.mulHom_comp
Source context 15 commands

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

section ProofImplementation
namespace AlgebraicCurves.Geometry.AbelianSchemes.Theorems.Proofs
namespace RelativeGroupLaw_surjective_schemeNsmul_of_flat_of_field
universe u
open _root_.CategoryTheory
open _root_.CategoryTheory.Limits
open _root_.AlgebraicGeometry
open _root_.NeronModelInfra
open _root_.GoodReductionJacobian
namespace GoodReductionJacobian
namespace RelativeGroupLaw
open _root_.GoodReductionJacobian.RelativeGroupLaw
open _root_.GoodReductionJacobian
variable {R : Type u} [CommRing R] {A : Scheme.{u}} {f : A ⟶ Spec (CommRingCat.of R)}
  (G : RelativeGroupLaw R f)
section Shear
theorem _root_.GoodReductionJacobian.RelativeGroupLaw.mulHom_comp : G.mulHom ≫ f = prBase
GoodReductionJacobian.RelativeGroupLaw.shear
Source context 15 commands

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

section ProofImplementation
namespace AlgebraicCurves.Geometry.AbelianSchemes.Theorems.Proofs
namespace RelativeGroupLaw_surjective_schemeNsmul_of_flat_of_field
universe u
open _root_.CategoryTheory
open _root_.CategoryTheory.Limits
open _root_.AlgebraicGeometry
open _root_.NeronModelInfra
open _root_.GoodReductionJacobian
namespace GoodReductionJacobian
namespace RelativeGroupLaw
open _root_.GoodReductionJacobian.RelativeGroupLaw
open _root_.GoodReductionJacobian
variable {R : Type u} [CommRing R] {A : Scheme.{u}} {f : A ⟶ Spec (CommRingCat.of R)}
  (G : RelativeGroupLaw R f)
section Shear
def _root_.GoodReductionJacobian.RelativeGroupLaw.shear : pullback f f ⟶
  pullback f f
GoodReductionJacobian.RelativeGroupLaw.shearInv
Source context 15 commands

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

section ProofImplementation
namespace AlgebraicCurves.Geometry.AbelianSchemes.Theorems.Proofs
namespace RelativeGroupLaw_surjective_schemeNsmul_of_flat_of_field
universe u
open _root_.CategoryTheory
open _root_.CategoryTheory.Limits
open _root_.AlgebraicGeometry
open _root_.NeronModelInfra
open _root_.GoodReductionJacobian
namespace GoodReductionJacobian
namespace RelativeGroupLaw
open _root_.GoodReductionJacobian.RelativeGroupLaw
open _root_.GoodReductionJacobian
variable {R : Type u} [CommRing R] {A : Scheme.{u}} {f : A ⟶ Spec (CommRingCat.of R)}
  (G : RelativeGroupLaw R f)
section Shear
def _root_.GoodReductionJacobian.RelativeGroupLaw.shearInv : pullback f f ⟶
  pullback f f
AlgebraicCurves.Geometry.AbelianSchemes.Theorems.Proofs.RelativeGroupLaw_surjective_schemeNsmul_of_flat_of_field.GoodReductionJacobian.RelativeGroupLaw.shear_fst
Source context 15 commands

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

section ProofImplementation
namespace AlgebraicCurves.Geometry.AbelianSchemes.Theorems.Proofs
namespace RelativeGroupLaw_surjective_schemeNsmul_of_flat_of_field
universe u
open _root_.CategoryTheory
open _root_.CategoryTheory.Limits
open _root_.AlgebraicGeometry
open _root_.NeronModelInfra
open _root_.GoodReductionJacobian
namespace GoodReductionJacobian
namespace RelativeGroupLaw
open _root_.GoodReductionJacobian.RelativeGroupLaw
open _root_.GoodReductionJacobian
variable {R : Type u} [CommRing R] {A : Scheme.{u}} {f : A ⟶ Spec (CommRingCat.of R)}
  (G : RelativeGroupLaw R f)
section Shear
theorem shear_fst : G.shear ≫ pullback.fst f f = G.mulHom
AlgebraicCurves.Geometry.AbelianSchemes.Theorems.Proofs.RelativeGroupLaw_surjective_schemeNsmul_of_flat_of_field.GoodReductionJacobian.RelativeGroupLaw.shear_snd
Source context 15 commands

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

section ProofImplementation
namespace AlgebraicCurves.Geometry.AbelianSchemes.Theorems.Proofs
namespace RelativeGroupLaw_surjective_schemeNsmul_of_flat_of_field
universe u
open _root_.CategoryTheory
open _root_.CategoryTheory.Limits
open _root_.AlgebraicGeometry
open _root_.NeronModelInfra
open _root_.GoodReductionJacobian
namespace GoodReductionJacobian
namespace RelativeGroupLaw
open _root_.GoodReductionJacobian.RelativeGroupLaw
open _root_.GoodReductionJacobian
variable {R : Type u} [CommRing R] {A : Scheme.{u}} {f : A ⟶ Spec (CommRingCat.of R)}
  (G : RelativeGroupLaw R f)
section Shear
theorem shear_snd : G.shear ≫ pullback.snd f f = pullback.snd f f
AlgebraicCurves.Geometry.AbelianSchemes.Theorems.Proofs.RelativeGroupLaw_surjective_schemeNsmul_of_flat_of_field.GoodReductionJacobian.RelativeGroupLaw.shearInv_fst
Source context 15 commands

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

section ProofImplementation
namespace AlgebraicCurves.Geometry.AbelianSchemes.Theorems.Proofs
namespace RelativeGroupLaw_surjective_schemeNsmul_of_flat_of_field
universe u
open _root_.CategoryTheory
open _root_.CategoryTheory.Limits
open _root_.AlgebraicGeometry
open _root_.NeronModelInfra
open _root_.GoodReductionJacobian
namespace GoodReductionJacobian
namespace RelativeGroupLaw
open _root_.GoodReductionJacobian.RelativeGroupLaw
open _root_.GoodReductionJacobian
variable {R : Type u} [CommRing R] {A : Scheme.{u}} {f : A ⟶ Spec (CommRingCat.of R)}
  (G : RelativeGroupLaw R f)
section Shear
theorem shearInv_fst : G.shearInv ≫ pullback.fst f f = (G.mul prBase ptFst (G.inv
  prBase ptSnd)).1
AlgebraicCurves.Geometry.AbelianSchemes.Theorems.Proofs.RelativeGroupLaw_surjective_schemeNsmul_of_flat_of_field.GoodReductionJacobian.RelativeGroupLaw.shearInv_snd
Source context 15 commands

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

section ProofImplementation
namespace AlgebraicCurves.Geometry.AbelianSchemes.Theorems.Proofs
namespace RelativeGroupLaw_surjective_schemeNsmul_of_flat_of_field
universe u
open _root_.CategoryTheory
open _root_.CategoryTheory.Limits
open _root_.AlgebraicGeometry
open _root_.NeronModelInfra
open _root_.GoodReductionJacobian
namespace GoodReductionJacobian
namespace RelativeGroupLaw
open _root_.GoodReductionJacobian.RelativeGroupLaw
open _root_.GoodReductionJacobian
variable {R : Type u} [CommRing R] {A : Scheme.{u}} {f : A ⟶ Spec (CommRingCat.of R)}
  (G : RelativeGroupLaw R f)
section Shear
theorem shearInv_snd : G.shearInv ≫ pullback.snd f f = pullback.snd f f
AlgebraicCurves.Geometry.AbelianSchemes.Theorems.Proofs.RelativeGroupLaw_surjective_schemeNsmul_of_flat_of_field.GoodReductionJacobian.RelativeGroupLaw.comp_mul_val
Source context 15 commands

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

section ProofImplementation
namespace AlgebraicCurves.Geometry.AbelianSchemes.Theorems.Proofs
namespace RelativeGroupLaw_surjective_schemeNsmul_of_flat_of_field
universe u
open _root_.CategoryTheory
open _root_.CategoryTheory.Limits
open _root_.AlgebraicGeometry
open _root_.NeronModelInfra
open _root_.GoodReductionJacobian
namespace GoodReductionJacobian
namespace RelativeGroupLaw
open _root_.GoodReductionJacobian.RelativeGroupLaw
open _root_.GoodReductionJacobian
variable {R : Type u} [CommRing R] {A : Scheme.{u}} {f : A ⟶ Spec (CommRingCat.of R)}
  (G : RelativeGroupLaw R f)
section Shear
theorem comp_mul_val {S : Scheme.{u}} (s : S ⟶ pullback f f) (x y : SchemeHomOver (prBase (f := f))
  f) :
    s ≫ (G.mul prBase x y).1 = (G.mul (s ≫ prBase) (schemeHomOverComp s rfl x) (schemeHomOverComp s
      rfl y)).1
AlgebraicCurves.Geometry.AbelianSchemes.Theorems.Proofs.RelativeGroupLaw_surjective_schemeNsmul_of_flat_of_field.GoodReductionJacobian.RelativeGroupLaw.comp_inv_val
Source context 15 commands

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

section ProofImplementation
namespace AlgebraicCurves.Geometry.AbelianSchemes.Theorems.Proofs
namespace RelativeGroupLaw_surjective_schemeNsmul_of_flat_of_field
universe u
open _root_.CategoryTheory
open _root_.CategoryTheory.Limits
open _root_.AlgebraicGeometry
open _root_.NeronModelInfra
open _root_.GoodReductionJacobian
namespace GoodReductionJacobian
namespace RelativeGroupLaw
open _root_.GoodReductionJacobian.RelativeGroupLaw
open _root_.GoodReductionJacobian
variable {R : Type u} [CommRing R] {A : Scheme.{u}} {f : A ⟶ Spec (CommRingCat.of R)}
  (G : RelativeGroupLaw R f)
section Shear
theorem comp_inv_val {S : Scheme.{u}} (s : S ⟶ pullback f f) (x : SchemeHomOver (prBase (f := f))
  f) :
    s ≫ (G.inv prBase x).1 = (G.inv (s ≫ prBase) (schemeHomOverComp s rfl x)).1
AlgebraicCurves.Geometry.AbelianSchemes.Theorems.Proofs.RelativeGroupLaw_surjective_schemeNsmul_of_flat_of_field.GoodReductionJacobian.RelativeGroupLaw.qBase

The structure morphism of the pullback along the chosen base morphism.

Source context 16 commands

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

section ProofImplementation
namespace AlgebraicCurves.Geometry.AbelianSchemes.Theorems.Proofs
namespace RelativeGroupLaw_surjective_schemeNsmul_of_flat_of_field
universe u
open _root_.CategoryTheory
open _root_.CategoryTheory.Limits
open _root_.AlgebraicGeometry
open _root_.NeronModelInfra
open _root_.GoodReductionJacobian
namespace GoodReductionJacobian
namespace RelativeGroupLaw
open _root_.GoodReductionJacobian.RelativeGroupLaw
open _root_.GoodReductionJacobian
variable {R : Type u} [CommRing R] {A : Scheme.{u}} {f : A ⟶ Spec (CommRingCat.of R)}
  (G : RelativeGroupLaw R f)
section Translate
variable {S : Scheme.{u}} (s : S ⟶ Spec (CommRingCat.of R)) (a : SchemeHomOver s f)
abbrev qBase : pullback s f ⟶ Spec (CommRingCat.of R)
AlgebraicCurves.Geometry.AbelianSchemes.Theorems.Proofs.RelativeGroupLaw_surjective_schemeNsmul_of_flat_of_field.GoodReductionJacobian.RelativeGroupLaw.qA

The chosen point pulled back along the first projection.

Source context 16 commands

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

section ProofImplementation
namespace AlgebraicCurves.Geometry.AbelianSchemes.Theorems.Proofs
namespace RelativeGroupLaw_surjective_schemeNsmul_of_flat_of_field
universe u
open _root_.CategoryTheory
open _root_.CategoryTheory.Limits
open _root_.AlgebraicGeometry
open _root_.NeronModelInfra
open _root_.GoodReductionJacobian
namespace GoodReductionJacobian
namespace RelativeGroupLaw
open _root_.GoodReductionJacobian.RelativeGroupLaw
open _root_.GoodReductionJacobian
variable {R : Type u} [CommRing R] {A : Scheme.{u}} {f : A ⟶ Spec (CommRingCat.of R)}
  (G : RelativeGroupLaw R f)
section Translate
variable {S : Scheme.{u}} (s : S ⟶ Spec (CommRingCat.of R)) (a : SchemeHomOver s f)
abbrev qA : SchemeHomOver (qBase s (f := f)) f
AlgebraicCurves.Geometry.AbelianSchemes.Theorems.Proofs.RelativeGroupLaw_surjective_schemeNsmul_of_flat_of_field.GoodReductionJacobian.RelativeGroupLaw.qY

The point given by the second projection of the pullback.

Source context 16 commands

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

section ProofImplementation
namespace AlgebraicCurves.Geometry.AbelianSchemes.Theorems.Proofs
namespace RelativeGroupLaw_surjective_schemeNsmul_of_flat_of_field
universe u
open _root_.CategoryTheory
open _root_.CategoryTheory.Limits
open _root_.AlgebraicGeometry
open _root_.NeronModelInfra
open _root_.GoodReductionJacobian
namespace GoodReductionJacobian
namespace RelativeGroupLaw
open _root_.GoodReductionJacobian.RelativeGroupLaw
open _root_.GoodReductionJacobian
variable {R : Type u} [CommRing R] {A : Scheme.{u}} {f : A ⟶ Spec (CommRingCat.of R)}
  (G : RelativeGroupLaw R f)
section Translate
variable {S : Scheme.{u}} (s : S ⟶ Spec (CommRingCat.of R)) (a : SchemeHomOver s f)
abbrev qY : SchemeHomOver (qBase s (f := f)) f
GoodReductionJacobian.RelativeGroupLaw.translate
Source context 16 commands

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

section ProofImplementation
namespace AlgebraicCurves.Geometry.AbelianSchemes.Theorems.Proofs
namespace RelativeGroupLaw_surjective_schemeNsmul_of_flat_of_field
universe u
open _root_.CategoryTheory
open _root_.CategoryTheory.Limits
open _root_.AlgebraicGeometry
open _root_.NeronModelInfra
open _root_.GoodReductionJacobian
namespace GoodReductionJacobian
namespace RelativeGroupLaw
open _root_.GoodReductionJacobian.RelativeGroupLaw
open _root_.GoodReductionJacobian
variable {R : Type u} [CommRing R] {A : Scheme.{u}} {f : A ⟶ Spec (CommRingCat.of R)}
  (G : RelativeGroupLaw R f)
section Translate
variable {S : Scheme.{u}} (s : S ⟶ Spec (CommRingCat.of R)) (a : SchemeHomOver s f)
def _root_.GoodReductionJacobian.RelativeGroupLaw.translate : pullback s f ⟶
  pullback s f
GoodReductionJacobian.RelativeGroupLaw.translateInv
Source context 16 commands

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

section ProofImplementation
namespace AlgebraicCurves.Geometry.AbelianSchemes.Theorems.Proofs
namespace RelativeGroupLaw_surjective_schemeNsmul_of_flat_of_field
universe u
open _root_.CategoryTheory
open _root_.CategoryTheory.Limits
open _root_.AlgebraicGeometry
open _root_.NeronModelInfra
open _root_.GoodReductionJacobian
namespace GoodReductionJacobian
namespace RelativeGroupLaw
open _root_.GoodReductionJacobian.RelativeGroupLaw
open _root_.GoodReductionJacobian
variable {R : Type u} [CommRing R] {A : Scheme.{u}} {f : A ⟶ Spec (CommRingCat.of R)}
  (G : RelativeGroupLaw R f)
section Translate
variable {S : Scheme.{u}} (s : S ⟶ Spec (CommRingCat.of R)) (a : SchemeHomOver s f)
def _root_.GoodReductionJacobian.RelativeGroupLaw.translateInv : pullback s f
  ⟶ pullback s f
AlgebraicCurves.Geometry.AbelianSchemes.Theorems.Proofs.RelativeGroupLaw_surjective_schemeNsmul_of_flat_of_field.GoodReductionJacobian.RelativeGroupLaw.translate_fst
Source context 16 commands

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

section ProofImplementation
namespace AlgebraicCurves.Geometry.AbelianSchemes.Theorems.Proofs
namespace RelativeGroupLaw_surjective_schemeNsmul_of_flat_of_field
universe u
open _root_.CategoryTheory
open _root_.CategoryTheory.Limits
open _root_.AlgebraicGeometry
open _root_.NeronModelInfra
open _root_.GoodReductionJacobian
namespace GoodReductionJacobian
namespace RelativeGroupLaw
open _root_.GoodReductionJacobian.RelativeGroupLaw
open _root_.GoodReductionJacobian
variable {R : Type u} [CommRing R] {A : Scheme.{u}} {f : A ⟶ Spec (CommRingCat.of R)}
  (G : RelativeGroupLaw R f)
section Translate
variable {S : Scheme.{u}} (s : S ⟶ Spec (CommRingCat.of R)) (a : SchemeHomOver s f)
theorem translate_fst : G.translate s a ≫ pullback.fst s f = pullback.fst s f
AlgebraicCurves.Geometry.AbelianSchemes.Theorems.Proofs.RelativeGroupLaw_surjective_schemeNsmul_of_flat_of_field.GoodReductionJacobian.RelativeGroupLaw.translate_snd
Source context 16 commands

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

section ProofImplementation
namespace AlgebraicCurves.Geometry.AbelianSchemes.Theorems.Proofs
namespace RelativeGroupLaw_surjective_schemeNsmul_of_flat_of_field
universe u
open _root_.CategoryTheory
open _root_.CategoryTheory.Limits
open _root_.AlgebraicGeometry
open _root_.NeronModelInfra
open _root_.GoodReductionJacobian
namespace GoodReductionJacobian
namespace RelativeGroupLaw
open _root_.GoodReductionJacobian.RelativeGroupLaw
open _root_.GoodReductionJacobian
variable {R : Type u} [CommRing R] {A : Scheme.{u}} {f : A ⟶ Spec (CommRingCat.of R)}
  (G : RelativeGroupLaw R f)
section Translate
variable {S : Scheme.{u}} (s : S ⟶ Spec (CommRingCat.of R)) (a : SchemeHomOver s f)
theorem translate_snd : G.translate s a ≫ pullback.snd s f = (G.mul (qBase s) (qA s
  a) (qY s)).1
AlgebraicCurves.Geometry.AbelianSchemes.Theorems.Proofs.RelativeGroupLaw_surjective_schemeNsmul_of_flat_of_field.GoodReductionJacobian.RelativeGroupLaw.translateInv_fst
Source context 16 commands

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

section ProofImplementation
namespace AlgebraicCurves.Geometry.AbelianSchemes.Theorems.Proofs
namespace RelativeGroupLaw_surjective_schemeNsmul_of_flat_of_field
universe u
open _root_.CategoryTheory
open _root_.CategoryTheory.Limits
open _root_.AlgebraicGeometry
open _root_.NeronModelInfra
open _root_.GoodReductionJacobian
namespace GoodReductionJacobian
namespace RelativeGroupLaw
open _root_.GoodReductionJacobian.RelativeGroupLaw
open _root_.GoodReductionJacobian
variable {R : Type u} [CommRing R] {A : Scheme.{u}} {f : A ⟶ Spec (CommRingCat.of R)}
  (G : RelativeGroupLaw R f)
section Translate
variable {S : Scheme.{u}} (s : S ⟶ Spec (CommRingCat.of R)) (a : SchemeHomOver s f)
theorem translateInv_fst : G.translateInv s a ≫ pullback.fst s f = pullback.fst s f
AlgebraicCurves.Geometry.AbelianSchemes.Theorems.Proofs.RelativeGroupLaw_surjective_schemeNsmul_of_flat_of_field.GoodReductionJacobian.RelativeGroupLaw.translateInv_snd
Source context 16 commands

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

section ProofImplementation
namespace AlgebraicCurves.Geometry.AbelianSchemes.Theorems.Proofs
namespace RelativeGroupLaw_surjective_schemeNsmul_of_flat_of_field
universe u
open _root_.CategoryTheory
open _root_.CategoryTheory.Limits
open _root_.AlgebraicGeometry
open _root_.NeronModelInfra
open _root_.GoodReductionJacobian
namespace GoodReductionJacobian
namespace RelativeGroupLaw
open _root_.GoodReductionJacobian.RelativeGroupLaw
open _root_.GoodReductionJacobian
variable {R : Type u} [CommRing R] {A : Scheme.{u}} {f : A ⟶ Spec (CommRingCat.of R)}
  (G : RelativeGroupLaw R f)
section Translate
variable {S : Scheme.{u}} (s : S ⟶ Spec (CommRingCat.of R)) (a : SchemeHomOver s f)
theorem translateInv_snd : G.translateInv s a ≫ pullback.snd s f =
    (G.mul (qBase s) (G.inv (qBase s) (qA s a)) (qY s)).1
GoodReductionJacobian.RelativeGroupLaw.comp_mul_val'
Source context 16 commands

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

section ProofImplementation
namespace AlgebraicCurves.Geometry.AbelianSchemes.Theorems.Proofs
namespace RelativeGroupLaw_surjective_schemeNsmul_of_flat_of_field
universe u
open _root_.CategoryTheory
open _root_.CategoryTheory.Limits
open _root_.AlgebraicGeometry
open _root_.NeronModelInfra
open _root_.GoodReductionJacobian
namespace GoodReductionJacobian
namespace RelativeGroupLaw
open _root_.GoodReductionJacobian.RelativeGroupLaw
open _root_.GoodReductionJacobian
variable {R : Type u} [CommRing R] {A : Scheme.{u}} {f : A ⟶ Spec (CommRingCat.of R)}
  (G : RelativeGroupLaw R f)
section Translate
variable {S : Scheme.{u}} (s : S ⟶ Spec (CommRingCat.of R)) (a : SchemeHomOver s f)
theorem _root_.GoodReductionJacobian.RelativeGroupLaw.comp_mul_val' {S' : Scheme.{u}} (r :
  S' ⟶ pullback s f) (t' : S' ⟶ Spec (CommRingCat.of R))
    (hr : r ≫ qBase s = t') (x y : SchemeHomOver (qBase s (f := f)) f) :
    r ≫ (G.mul (qBase s) x y).1 =
      (G.mul t' (schemeHomOverComp r hr x) (schemeHomOverComp r hr y)).1
AlgebraicCurves.Geometry.AbelianSchemes.Theorems.Proofs.RelativeGroupLaw_surjective_schemeNsmul_of_flat_of_field.GoodReductionJacobian.RelativeGroupLaw.comp_inv_val'
Source context 16 commands

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

section ProofImplementation
namespace AlgebraicCurves.Geometry.AbelianSchemes.Theorems.Proofs
namespace RelativeGroupLaw_surjective_schemeNsmul_of_flat_of_field
universe u
open _root_.CategoryTheory
open _root_.CategoryTheory.Limits
open _root_.AlgebraicGeometry
open _root_.NeronModelInfra
open _root_.GoodReductionJacobian
namespace GoodReductionJacobian
namespace RelativeGroupLaw
open _root_.GoodReductionJacobian.RelativeGroupLaw
open _root_.GoodReductionJacobian
variable {R : Type u} [CommRing R] {A : Scheme.{u}} {f : A ⟶ Spec (CommRingCat.of R)}
  (G : RelativeGroupLaw R f)
section Translate
variable {S : Scheme.{u}} (s : S ⟶ Spec (CommRingCat.of R)) (a : SchemeHomOver s f)
theorem comp_inv_val' {S' : Scheme.{u}} (r : S' ⟶ pullback s f) (t' : S' ⟶ Spec (CommRingCat.of R))
    (hr : r ≫ qBase s = t') (x : SchemeHomOver (qBase s (f := f)) f) :
    r ≫ (G.inv (qBase s) x).1 = (G.inv t' (schemeHomOverComp r hr x)).1
GoodReductionJacobian.RelativeGroupLaw.translate_base
Source context 16 commands

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

section ProofImplementation
namespace AlgebraicCurves.Geometry.AbelianSchemes.Theorems.Proofs
namespace RelativeGroupLaw_surjective_schemeNsmul_of_flat_of_field
universe u
open _root_.CategoryTheory
open _root_.CategoryTheory.Limits
open _root_.AlgebraicGeometry
open _root_.NeronModelInfra
open _root_.GoodReductionJacobian
namespace GoodReductionJacobian
namespace RelativeGroupLaw
open _root_.GoodReductionJacobian.RelativeGroupLaw
open _root_.GoodReductionJacobian
variable {R : Type u} [CommRing R] {A : Scheme.{u}} {f : A ⟶ Spec (CommRingCat.of R)}
  (G : RelativeGroupLaw R f)
section Translate
variable {S : Scheme.{u}} (s : S ⟶ Spec (CommRingCat.of R)) (a : SchemeHomOver s f)
theorem _root_.GoodReductionJacobian.RelativeGroupLaw.translate_base : G.translate s a ≫
  qBase s = qBase s
GoodReductionJacobian.RelativeGroupLaw.translateInv_base
Source context 16 commands

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

section ProofImplementation
namespace AlgebraicCurves.Geometry.AbelianSchemes.Theorems.Proofs
namespace RelativeGroupLaw_surjective_schemeNsmul_of_flat_of_field
universe u
open _root_.CategoryTheory
open _root_.CategoryTheory.Limits
open _root_.AlgebraicGeometry
open _root_.NeronModelInfra
open _root_.GoodReductionJacobian
namespace GoodReductionJacobian
namespace RelativeGroupLaw
open _root_.GoodReductionJacobian.RelativeGroupLaw
open _root_.GoodReductionJacobian
variable {R : Type u} [CommRing R] {A : Scheme.{u}} {f : A ⟶ Spec (CommRingCat.of R)}
  (G : RelativeGroupLaw R f)
section Translate
variable {S : Scheme.{u}} (s : S ⟶ Spec (CommRingCat.of R)) (a : SchemeHomOver s f)
theorem _root_.GoodReductionJacobian.RelativeGroupLaw.translateInv_base : G.translateInv s
  a ≫ qBase s = qBase s
AlgebraicCurves.Geometry.AbelianSchemes.Theorems.Proofs.RelativeGroupLaw_surjective_schemeNsmul_of_flat_of_field.GoodReductionJacobian.RelativeGroupLaw.translate_qA
Source context 16 commands

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

section ProofImplementation
namespace AlgebraicCurves.Geometry.AbelianSchemes.Theorems.Proofs
namespace RelativeGroupLaw_surjective_schemeNsmul_of_flat_of_field
universe u
open _root_.CategoryTheory
open _root_.CategoryTheory.Limits
open _root_.AlgebraicGeometry
open _root_.NeronModelInfra
open _root_.GoodReductionJacobian
namespace GoodReductionJacobian
namespace RelativeGroupLaw
open _root_.GoodReductionJacobian.RelativeGroupLaw
open _root_.GoodReductionJacobian
variable {R : Type u} [CommRing R] {A : Scheme.{u}} {f : A ⟶ Spec (CommRingCat.of R)}
  (G : RelativeGroupLaw R f)
section Translate
variable {S : Scheme.{u}} (s : S ⟶ Spec (CommRingCat.of R)) (a : SchemeHomOver s f)
theorem translate_qA : schemeHomOverComp (G.translate s a) (G.translate_base s a) (qA s a) = qA s a
AlgebraicCurves.Geometry.AbelianSchemes.Theorems.Proofs.RelativeGroupLaw_surjective_schemeNsmul_of_flat_of_field.GoodReductionJacobian.RelativeGroupLaw.translate_qY
Source context 16 commands

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

section ProofImplementation
namespace AlgebraicCurves.Geometry.AbelianSchemes.Theorems.Proofs
namespace RelativeGroupLaw_surjective_schemeNsmul_of_flat_of_field
universe u
open _root_.CategoryTheory
open _root_.CategoryTheory.Limits
open _root_.AlgebraicGeometry
open _root_.NeronModelInfra
open _root_.GoodReductionJacobian
namespace GoodReductionJacobian
namespace RelativeGroupLaw
open _root_.GoodReductionJacobian.RelativeGroupLaw
open _root_.GoodReductionJacobian
variable {R : Type u} [CommRing R] {A : Scheme.{u}} {f : A ⟶ Spec (CommRingCat.of R)}
  (G : RelativeGroupLaw R f)
section Translate
variable {S : Scheme.{u}} (s : S ⟶ Spec (CommRingCat.of R)) (a : SchemeHomOver s f)
theorem translate_qY : schemeHomOverComp (G.translate s a) (G.translate_base s a) (qY s) =
    G.mul (qBase s) (qA s a) (qY s)
AlgebraicCurves.Geometry.AbelianSchemes.Theorems.Proofs.RelativeGroupLaw_surjective_schemeNsmul_of_flat_of_field.GoodReductionJacobian.RelativeGroupLaw.translateInv_qA
Source context 16 commands

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

section ProofImplementation
namespace AlgebraicCurves.Geometry.AbelianSchemes.Theorems.Proofs
namespace RelativeGroupLaw_surjective_schemeNsmul_of_flat_of_field
universe u
open _root_.CategoryTheory
open _root_.CategoryTheory.Limits
open _root_.AlgebraicGeometry
open _root_.NeronModelInfra
open _root_.GoodReductionJacobian
namespace GoodReductionJacobian
namespace RelativeGroupLaw
open _root_.GoodReductionJacobian.RelativeGroupLaw
open _root_.GoodReductionJacobian
variable {R : Type u} [CommRing R] {A : Scheme.{u}} {f : A ⟶ Spec (CommRingCat.of R)}
  (G : RelativeGroupLaw R f)
section Translate
variable {S : Scheme.{u}} (s : S ⟶ Spec (CommRingCat.of R)) (a : SchemeHomOver s f)
theorem translateInv_qA : schemeHomOverComp (G.translateInv s a) (G.translateInv_base s a) (qA s a)
  = qA s a
AlgebraicCurves.Geometry.AbelianSchemes.Theorems.Proofs.RelativeGroupLaw_surjective_schemeNsmul_of_flat_of_field.GoodReductionJacobian.RelativeGroupLaw.translateInv_qY
Source context 16 commands

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

section ProofImplementation
namespace AlgebraicCurves.Geometry.AbelianSchemes.Theorems.Proofs
namespace RelativeGroupLaw_surjective_schemeNsmul_of_flat_of_field
universe u
open _root_.CategoryTheory
open _root_.CategoryTheory.Limits
open _root_.AlgebraicGeometry
open _root_.NeronModelInfra
open _root_.GoodReductionJacobian
namespace GoodReductionJacobian
namespace RelativeGroupLaw
open _root_.GoodReductionJacobian.RelativeGroupLaw
open _root_.GoodReductionJacobian
variable {R : Type u} [CommRing R] {A : Scheme.{u}} {f : A ⟶ Spec (CommRingCat.of R)}
  (G : RelativeGroupLaw R f)
section Translate
variable {S : Scheme.{u}} (s : S ⟶ Spec (CommRingCat.of R)) (a : SchemeHomOver s f)
theorem translateInv_qY : schemeHomOverComp (G.translateInv s a) (G.translateInv_base s a) (qY s) =
    G.mul (qBase s) (G.inv (qBase s) (qA s a)) (qY s)
GoodReductionJacobian.RelativeGroupLaw.translate_translateInv
Source context 16 commands

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

section ProofImplementation
namespace AlgebraicCurves.Geometry.AbelianSchemes.Theorems.Proofs
namespace RelativeGroupLaw_surjective_schemeNsmul_of_flat_of_field
universe u
open _root_.CategoryTheory
open _root_.CategoryTheory.Limits
open _root_.AlgebraicGeometry
open _root_.NeronModelInfra
open _root_.GoodReductionJacobian
namespace GoodReductionJacobian
namespace RelativeGroupLaw
open _root_.GoodReductionJacobian.RelativeGroupLaw
open _root_.GoodReductionJacobian
variable {R : Type u} [CommRing R] {A : Scheme.{u}} {f : A ⟶ Spec (CommRingCat.of R)}
  (G : RelativeGroupLaw R f)
section Translate
variable {S : Scheme.{u}} (s : S ⟶ Spec (CommRingCat.of R)) (a : SchemeHomOver s f)
theorem _root_.GoodReductionJacobian.RelativeGroupLaw.translate_translateInv : G.translate
  s a ≫ G.translateInv s a = 𝟙 _
GoodReductionJacobian.RelativeGroupLaw.translateInv_translate
Source context 16 commands

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

section ProofImplementation
namespace AlgebraicCurves.Geometry.AbelianSchemes.Theorems.Proofs
namespace RelativeGroupLaw_surjective_schemeNsmul_of_flat_of_field
universe u
open _root_.CategoryTheory
open _root_.CategoryTheory.Limits
open _root_.AlgebraicGeometry
open _root_.NeronModelInfra
open _root_.GoodReductionJacobian
namespace GoodReductionJacobian
namespace RelativeGroupLaw
open _root_.GoodReductionJacobian.RelativeGroupLaw
open _root_.GoodReductionJacobian
variable {R : Type u} [CommRing R] {A : Scheme.{u}} {f : A ⟶ Spec (CommRingCat.of R)}
  (G : RelativeGroupLaw R f)
section Translate
variable {S : Scheme.{u}} (s : S ⟶ Spec (CommRingCat.of R)) (a : SchemeHomOver s f)
theorem _root_.GoodReductionJacobian.RelativeGroupLaw.translateInv_translate :
  G.translateInv s a ≫ G.translate s a = 𝟙 _
GoodReductionJacobian.RelativeGroupLaw.translateIso
Source context 16 commands

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

section ProofImplementation
namespace AlgebraicCurves.Geometry.AbelianSchemes.Theorems.Proofs
namespace RelativeGroupLaw_surjective_schemeNsmul_of_flat_of_field
universe u
open _root_.CategoryTheory
open _root_.CategoryTheory.Limits
open _root_.AlgebraicGeometry
open _root_.NeronModelInfra
open _root_.GoodReductionJacobian
namespace GoodReductionJacobian
namespace RelativeGroupLaw
open _root_.GoodReductionJacobian.RelativeGroupLaw
open _root_.GoodReductionJacobian
variable {R : Type u} [CommRing R] {A : Scheme.{u}} {f : A ⟶ Spec (CommRingCat.of R)}
  (G : RelativeGroupLaw R f)
section Translate
variable {S : Scheme.{u}} (s : S ⟶ Spec (CommRingCat.of R)) (a : SchemeHomOver s f)
def _root_.GoodReductionJacobian.RelativeGroupLaw.translateIso : pullback s f
  ≅ pullback s f
GoodReductionJacobian.RelativeGroupLaw.unitSec
Source context 16 commands

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

section ProofImplementation
namespace AlgebraicCurves.Geometry.AbelianSchemes.Theorems.Proofs
namespace RelativeGroupLaw_surjective_schemeNsmul_of_flat_of_field
universe u
open _root_.CategoryTheory
open _root_.CategoryTheory.Limits
open _root_.AlgebraicGeometry
open _root_.NeronModelInfra
open _root_.GoodReductionJacobian
namespace GoodReductionJacobian
namespace RelativeGroupLaw
open _root_.GoodReductionJacobian.RelativeGroupLaw
open _root_.GoodReductionJacobian
variable {R : Type u} [CommRing R] {A : Scheme.{u}} {f : A ⟶ Spec (CommRingCat.of R)}
  (G : RelativeGroupLaw R f)
section C4
variable {k : Type u} [Field k] {B : Scheme.{u}} {g : B ⟶ Spec (CommRingCat.of k)} (L :
  RelativeGroupLaw k g)
abbrev _root_.GoodReductionJacobian.RelativeGroupLaw.unitSec : Spec
  (CommRingCat.of k) ⟶ B
GoodReductionJacobian.RelativeGroupLaw.unitSec_comp
Source context 16 commands

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

section ProofImplementation
namespace AlgebraicCurves.Geometry.AbelianSchemes.Theorems.Proofs
namespace RelativeGroupLaw_surjective_schemeNsmul_of_flat_of_field
universe u
open _root_.CategoryTheory
open _root_.CategoryTheory.Limits
open _root_.AlgebraicGeometry
open _root_.NeronModelInfra
open _root_.GoodReductionJacobian
namespace GoodReductionJacobian
namespace RelativeGroupLaw
open _root_.GoodReductionJacobian.RelativeGroupLaw
open _root_.GoodReductionJacobian
variable {R : Type u} [CommRing R] {A : Scheme.{u}} {f : A ⟶ Spec (CommRingCat.of R)}
  (G : RelativeGroupLaw R f)
section C4
variable {k : Type u} [Field k] {B : Scheme.{u}} {g : B ⟶ Spec (CommRingCat.of k)} (L :
  RelativeGroupLaw k g)
theorem _root_.GoodReductionJacobian.RelativeGroupLaw.unitSec_comp : L.unitSec ≫ g = 𝟙 _
GoodReductionJacobian.RelativeGroupLaw.unitSec_schemeNsmul
Source context 16 commands

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

section ProofImplementation
namespace AlgebraicCurves.Geometry.AbelianSchemes.Theorems.Proofs
namespace RelativeGroupLaw_surjective_schemeNsmul_of_flat_of_field
universe u
open _root_.CategoryTheory
open _root_.CategoryTheory.Limits
open _root_.AlgebraicGeometry
open _root_.NeronModelInfra
open _root_.GoodReductionJacobian
namespace GoodReductionJacobian
namespace RelativeGroupLaw
open _root_.GoodReductionJacobian.RelativeGroupLaw
open _root_.GoodReductionJacobian
variable {R : Type u} [CommRing R] {A : Scheme.{u}} {f : A ⟶ Spec (CommRingCat.of R)}
  (G : RelativeGroupLaw R f)
section C4
variable {k : Type u} [Field k] {B : Scheme.{u}} {g : B ⟶ Spec (CommRingCat.of k)} (L :
  RelativeGroupLaw k g)
theorem _root_.GoodReductionJacobian.RelativeGroupLaw.unitSec_schemeNsmul (n : ℕ) :
  L.unitSec ≫ L.schemeNsmul n = L.unitSec
GoodReductionJacobian.RelativeGroupLaw.pairUnit
Source context 16 commands

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

section ProofImplementation
namespace AlgebraicCurves.Geometry.AbelianSchemes.Theorems.Proofs
namespace RelativeGroupLaw_surjective_schemeNsmul_of_flat_of_field
universe u
open _root_.CategoryTheory
open _root_.CategoryTheory.Limits
open _root_.AlgebraicGeometry
open _root_.NeronModelInfra
open _root_.GoodReductionJacobian
namespace GoodReductionJacobian
namespace RelativeGroupLaw
open _root_.GoodReductionJacobian.RelativeGroupLaw
open _root_.GoodReductionJacobian
variable {R : Type u} [CommRing R] {A : Scheme.{u}} {f : A ⟶ Spec (CommRingCat.of R)}
  (G : RelativeGroupLaw R f)
section C4
variable {k : Type u} [Field k] {B : Scheme.{u}} {g : B ⟶ Spec (CommRingCat.of k)} (L :
  RelativeGroupLaw k g)
def _root_.GoodReductionJacobian.RelativeGroupLaw.pairUnit : B ⟶ pullback g g
AlgebraicCurves.Geometry.AbelianSchemes.Theorems.Proofs.RelativeGroupLaw_surjective_schemeNsmul_of_flat_of_field.GoodReductionJacobian.RelativeGroupLaw.pairUnit_fst
Source context 16 commands

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

section ProofImplementation
namespace AlgebraicCurves.Geometry.AbelianSchemes.Theorems.Proofs
namespace RelativeGroupLaw_surjective_schemeNsmul_of_flat_of_field
universe u
open _root_.CategoryTheory
open _root_.CategoryTheory.Limits
open _root_.AlgebraicGeometry
open _root_.NeronModelInfra
open _root_.GoodReductionJacobian
namespace GoodReductionJacobian
namespace RelativeGroupLaw
open _root_.GoodReductionJacobian.RelativeGroupLaw
open _root_.GoodReductionJacobian
variable {R : Type u} [CommRing R] {A : Scheme.{u}} {f : A ⟶ Spec (CommRingCat.of R)}
  (G : RelativeGroupLaw R f)
section C4
variable {k : Type u} [Field k] {B : Scheme.{u}} {g : B ⟶ Spec (CommRingCat.of k)} (L :
  RelativeGroupLaw k g)
theorem pairUnit_fst : L.pairUnit ≫ pullback.fst g g = 𝟙 B
AlgebraicCurves.Geometry.AbelianSchemes.Theorems.Proofs.RelativeGroupLaw_surjective_schemeNsmul_of_flat_of_field.GoodReductionJacobian.RelativeGroupLaw.pairUnit_snd
Source context 16 commands

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

section ProofImplementation
namespace AlgebraicCurves.Geometry.AbelianSchemes.Theorems.Proofs
namespace RelativeGroupLaw_surjective_schemeNsmul_of_flat_of_field
universe u
open _root_.CategoryTheory
open _root_.CategoryTheory.Limits
open _root_.AlgebraicGeometry
open _root_.NeronModelInfra
open _root_.GoodReductionJacobian
namespace GoodReductionJacobian
namespace RelativeGroupLaw
open _root_.GoodReductionJacobian.RelativeGroupLaw
open _root_.GoodReductionJacobian
variable {R : Type u} [CommRing R] {A : Scheme.{u}} {f : A ⟶ Spec (CommRingCat.of R)}
  (G : RelativeGroupLaw R f)
section C4
variable {k : Type u} [Field k] {B : Scheme.{u}} {g : B ⟶ Spec (CommRingCat.of k)} (L :
  RelativeGroupLaw k g)
theorem pairUnit_snd : L.pairUnit ≫ pullback.snd g g = g ≫ L.unitSec
AlgebraicCurves.Geometry.AbelianSchemes.Theorems.Proofs.RelativeGroupLaw_surjective_schemeNsmul_of_flat_of_field.GoodReductionJacobian.RelativeGroupLaw.pairUnit_mulHom
Source context 16 commands

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

section ProofImplementation
namespace AlgebraicCurves.Geometry.AbelianSchemes.Theorems.Proofs
namespace RelativeGroupLaw_surjective_schemeNsmul_of_flat_of_field
universe u
open _root_.CategoryTheory
open _root_.CategoryTheory.Limits
open _root_.AlgebraicGeometry
open _root_.NeronModelInfra
open _root_.GoodReductionJacobian
namespace GoodReductionJacobian
namespace RelativeGroupLaw
open _root_.GoodReductionJacobian.RelativeGroupLaw
open _root_.GoodReductionJacobian
variable {R : Type u} [CommRing R] {A : Scheme.{u}} {f : A ⟶ Spec (CommRingCat.of R)}
  (G : RelativeGroupLaw R f)
section C4
variable {k : Type u} [Field k] {B : Scheme.{u}} {g : B ⟶ Spec (CommRingCat.of k)} (L :
  RelativeGroupLaw k g)
theorem pairUnit_mulHom : L.pairUnit ≫ L.mulHom = 𝟙 B
GoodReductionJacobian.RelativeGroupLaw.symmetry_mulHom
Source context 16 commands

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

section ProofImplementation
namespace AlgebraicCurves.Geometry.AbelianSchemes.Theorems.Proofs
namespace RelativeGroupLaw_surjective_schemeNsmul_of_flat_of_field
universe u
open _root_.CategoryTheory
open _root_.CategoryTheory.Limits
open _root_.AlgebraicGeometry
open _root_.NeronModelInfra
open _root_.GoodReductionJacobian
namespace GoodReductionJacobian
namespace RelativeGroupLaw
open _root_.GoodReductionJacobian.RelativeGroupLaw
open _root_.GoodReductionJacobian
variable {R : Type u} [CommRing R] {A : Scheme.{u}} {f : A ⟶ Spec (CommRingCat.of R)}
  (G : RelativeGroupLaw R f)
section C4
variable {k : Type u} [Field k] {B : Scheme.{u}} {g : B ⟶ Spec (CommRingCat.of k)} (L :
  RelativeGroupLaw k g)
theorem _root_.GoodReductionJacobian.RelativeGroupLaw.symmetry_mulHom (hc :
  L.IsCommutative) : (pullbackSymmetry g g).hom ≫ L.mulHom = L.mulHom
GoodReductionJacobian.RelativeGroupLaw.nn_cond
Source context 16 commands

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

section ProofImplementation
namespace AlgebraicCurves.Geometry.AbelianSchemes.Theorems.Proofs
namespace RelativeGroupLaw_surjective_schemeNsmul_of_flat_of_field
universe u
open _root_.CategoryTheory
open _root_.CategoryTheory.Limits
open _root_.AlgebraicGeometry
open _root_.NeronModelInfra
open _root_.GoodReductionJacobian
namespace GoodReductionJacobian
namespace RelativeGroupLaw
open _root_.GoodReductionJacobian.RelativeGroupLaw
open _root_.GoodReductionJacobian
variable {R : Type u} [CommRing R] {A : Scheme.{u}} {f : A ⟶ Spec (CommRingCat.of R)}
  (G : RelativeGroupLaw R f)
section C4
variable {k : Type u} [Field k] {B : Scheme.{u}} {g : B ⟶ Spec (CommRingCat.of k)} (L :
  RelativeGroupLaw k g)
theorem _root_.GoodReductionJacobian.RelativeGroupLaw.nn_cond (n : ℕ) : g ≫ 𝟙 (Spec
  (CommRingCat.of k)) = L.schemeNsmul n ≫ g
GoodReductionJacobian.RelativeGroupLaw.nn
Source context 16 commands

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

section ProofImplementation
namespace AlgebraicCurves.Geometry.AbelianSchemes.Theorems.Proofs
namespace RelativeGroupLaw_surjective_schemeNsmul_of_flat_of_field
universe u
open _root_.CategoryTheory
open _root_.CategoryTheory.Limits
open _root_.AlgebraicGeometry
open _root_.NeronModelInfra
open _root_.GoodReductionJacobian
namespace GoodReductionJacobian
namespace RelativeGroupLaw
open _root_.GoodReductionJacobian.RelativeGroupLaw
open _root_.GoodReductionJacobian
variable {R : Type u} [CommRing R] {A : Scheme.{u}} {f : A ⟶ Spec (CommRingCat.of R)}
  (G : RelativeGroupLaw R f)
section C4
variable {k : Type u} [Field k] {B : Scheme.{u}} {g : B ⟶ Spec (CommRingCat.of k)} (L :
  RelativeGroupLaw k g)
def _root_.GoodReductionJacobian.RelativeGroupLaw.nn (n : ℕ) : pullback g g ⟶
  pullback g g
AlgebraicCurves.Geometry.AbelianSchemes.Theorems.Proofs.RelativeGroupLaw_surjective_schemeNsmul_of_flat_of_field.GoodReductionJacobian.RelativeGroupLaw.nn_fst
Source context 16 commands

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

section ProofImplementation
namespace AlgebraicCurves.Geometry.AbelianSchemes.Theorems.Proofs
namespace RelativeGroupLaw_surjective_schemeNsmul_of_flat_of_field
universe u
open _root_.CategoryTheory
open _root_.CategoryTheory.Limits
open _root_.AlgebraicGeometry
open _root_.NeronModelInfra
open _root_.GoodReductionJacobian
namespace GoodReductionJacobian
namespace RelativeGroupLaw
open _root_.GoodReductionJacobian.RelativeGroupLaw
open _root_.GoodReductionJacobian
variable {R : Type u} [CommRing R] {A : Scheme.{u}} {f : A ⟶ Spec (CommRingCat.of R)}
  (G : RelativeGroupLaw R f)
section C4
variable {k : Type u} [Field k] {B : Scheme.{u}} {g : B ⟶ Spec (CommRingCat.of k)} (L :
  RelativeGroupLaw k g)
theorem nn_fst (n : ℕ) : L.nn n ≫ pullback.fst g g = pullback.fst g g ≫
  L.schemeNsmul n
AlgebraicCurves.Geometry.AbelianSchemes.Theorems.Proofs.RelativeGroupLaw_surjective_schemeNsmul_of_flat_of_field.GoodReductionJacobian.RelativeGroupLaw.nn_snd
Source context 16 commands

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

section ProofImplementation
namespace AlgebraicCurves.Geometry.AbelianSchemes.Theorems.Proofs
namespace RelativeGroupLaw_surjective_schemeNsmul_of_flat_of_field
universe u
open _root_.CategoryTheory
open _root_.CategoryTheory.Limits
open _root_.AlgebraicGeometry
open _root_.NeronModelInfra
open _root_.GoodReductionJacobian
namespace GoodReductionJacobian
namespace RelativeGroupLaw
open _root_.GoodReductionJacobian.RelativeGroupLaw
open _root_.GoodReductionJacobian
variable {R : Type u} [CommRing R] {A : Scheme.{u}} {f : A ⟶ Spec (CommRingCat.of R)}
  (G : RelativeGroupLaw R f)
section C4
variable {k : Type u} [Field k] {B : Scheme.{u}} {g : B ⟶ Spec (CommRingCat.of k)} (L :
  RelativeGroupLaw k g)
theorem nn_snd (n : ℕ) : L.nn n ≫ pullback.snd g g = pullback.snd g g ≫
  L.schemeNsmul n
GoodReductionJacobian.RelativeGroupLaw.range_nn
Source context 16 commands

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

section ProofImplementation
namespace AlgebraicCurves.Geometry.AbelianSchemes.Theorems.Proofs
namespace RelativeGroupLaw_surjective_schemeNsmul_of_flat_of_field
universe u
open _root_.CategoryTheory
open _root_.CategoryTheory.Limits
open _root_.AlgebraicGeometry
open _root_.NeronModelInfra
open _root_.GoodReductionJacobian
namespace GoodReductionJacobian
namespace RelativeGroupLaw
open _root_.GoodReductionJacobian.RelativeGroupLaw
open _root_.GoodReductionJacobian
variable {R : Type u} [CommRing R] {A : Scheme.{u}} {f : A ⟶ Spec (CommRingCat.of R)}
  (G : RelativeGroupLaw R f)
section C4
variable {k : Type u} [Field k] {B : Scheme.{u}} {g : B ⟶ Spec (CommRingCat.of k)} (L :
  RelativeGroupLaw k g)
theorem _root_.GoodReductionJacobian.RelativeGroupLaw.range_nn (n : ℕ) : Set.range (L.nn n)
  =
    pullback.fst g g ⁻¹' Set.range (L.schemeNsmul n) ∩ pullback.snd g g ⁻¹' Set.range
      (L.schemeNsmul n)
GoodReductionJacobian.RelativeGroupLaw.nn_translateInv
Source context 16 commands

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

section ProofImplementation
namespace AlgebraicCurves.Geometry.AbelianSchemes.Theorems.Proofs
namespace RelativeGroupLaw_surjective_schemeNsmul_of_flat_of_field
universe u
open _root_.CategoryTheory
open _root_.CategoryTheory.Limits
open _root_.AlgebraicGeometry
open _root_.NeronModelInfra
open _root_.GoodReductionJacobian
namespace GoodReductionJacobian
namespace RelativeGroupLaw
open _root_.GoodReductionJacobian.RelativeGroupLaw
open _root_.GoodReductionJacobian
variable {R : Type u} [CommRing R] {A : Scheme.{u}} {f : A ⟶ Spec (CommRingCat.of R)}
  (G : RelativeGroupLaw R f)
section C4
variable {k : Type u} [Field k] {B : Scheme.{u}} {g : B ⟶ Spec (CommRingCat.of k)} (L :
  RelativeGroupLaw k g)
theorem _root_.GoodReductionJacobian.RelativeGroupLaw.nn_translateInv (hc :
  L.IsCommutative) (n : ℕ) :
    L.nn n ≫ L.translateInv g idPoint = L.translateInv g idPoint ≫ L.nn n
AlgebraicCurves.Geometry.AbelianSchemes.Theorems.Proofs.RelativeGroupLaw_surjective_schemeNsmul_of_flat_of_field.GoodReductionJacobian.RelativeGroupLaw.translate_id_snd
Source context 16 commands

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

section ProofImplementation
namespace AlgebraicCurves.Geometry.AbelianSchemes.Theorems.Proofs
namespace RelativeGroupLaw_surjective_schemeNsmul_of_flat_of_field
universe u
open _root_.CategoryTheory
open _root_.CategoryTheory.Limits
open _root_.AlgebraicGeometry
open _root_.NeronModelInfra
open _root_.GoodReductionJacobian
namespace GoodReductionJacobian
namespace RelativeGroupLaw
open _root_.GoodReductionJacobian.RelativeGroupLaw
open _root_.GoodReductionJacobian
variable {R : Type u} [CommRing R] {A : Scheme.{u}} {f : A ⟶ Spec (CommRingCat.of R)}
  (G : RelativeGroupLaw R f)
section C4
variable {k : Type u} [Field k] {B : Scheme.{u}} {g : B ⟶ Spec (CommRingCat.of k)} (L :
  RelativeGroupLaw k g)
theorem translate_id_snd : L.translate g idPoint ≫ pullback.snd g g = L.mulHom
GoodReductionJacobian.RelativeGroupLaw.surjective_schemeNsmul_of_flat_of_field'
Source context 16 commands

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

section ProofImplementation
namespace AlgebraicCurves.Geometry.AbelianSchemes.Theorems.Proofs
namespace RelativeGroupLaw_surjective_schemeNsmul_of_flat_of_field
universe u
open _root_.CategoryTheory
open _root_.CategoryTheory.Limits
open _root_.AlgebraicGeometry
open _root_.NeronModelInfra
open _root_.GoodReductionJacobian
namespace GoodReductionJacobian
namespace RelativeGroupLaw
open _root_.GoodReductionJacobian.RelativeGroupLaw
open _root_.GoodReductionJacobian
variable {R : Type u} [CommRing R] {A : Scheme.{u}} {f : A ⟶ Spec (CommRingCat.of R)}
  (G : RelativeGroupLaw R f)
section C4
variable {k : Type u} [Field k] {B : Scheme.{u}} {g : B ⟶ Spec (CommRingCat.of k)} (L :
  RelativeGroupLaw k g)
theorem
  _root_.GoodReductionJacobian.RelativeGroupLaw.surjective_schemeNsmul_of_flat_of_field'
    [LocallyOfFiniteType g] [IrreducibleSpace B] (hc : L.IsCommutative) (n : ℕ)
    [Flat (L.schemeNsmul n)] : Surjective (L.schemeNsmul n)
GoodReductionJacobian.RelativeGroupLaw.surjective_schemeNsmul_of_flat_of_field
Source context 22 commands

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

section ProofImplementation
namespace AlgebraicCurves.Geometry.AbelianSchemes.Theorems.Proofs
namespace RelativeGroupLaw_surjective_schemeNsmul_of_flat_of_field
universe u
open _root_.CategoryTheory
open _root_.CategoryTheory.Limits
open _root_.AlgebraicGeometry
open _root_.NeronModelInfra
open _root_.GoodReductionJacobian
attribute [local simp] GoodReductionJacobian.RelativeGroupLaw.shear_fst
attribute [local simp] GoodReductionJacobian.RelativeGroupLaw.shear_snd
attribute [local simp] GoodReductionJacobian.RelativeGroupLaw.shearInv_fst
attribute [local simp] GoodReductionJacobian.RelativeGroupLaw.shearInv_snd
attribute [local simp] GoodReductionJacobian.RelativeGroupLaw.translate_fst
attribute [local simp] GoodReductionJacobian.RelativeGroupLaw.translate_snd
attribute [local simp] GoodReductionJacobian.RelativeGroupLaw.translateInv_fst
attribute [local simp] GoodReductionJacobian.RelativeGroupLaw.translateInv_snd
attribute [local simp] GoodReductionJacobian.RelativeGroupLaw.pairUnit_fst
attribute [local simp] GoodReductionJacobian.RelativeGroupLaw.pairUnit_snd
attribute [local simp] GoodReductionJacobian.RelativeGroupLaw.nn_fst
attribute [local simp] GoodReductionJacobian.RelativeGroupLaw.nn_snd
open CategoryTheory CategoryTheory.Limits AlgebraicGeometry NeronModelInfra
  _root_.GoodReductionJacobian GoodReductionJacobian in
theorem _root_.GoodReductionJacobian.RelativeGroupLaw.surjective_schemeNsmul_of_flat_of_field
    {k : Type u} [Field k] {A : Scheme.{u}} {f : A ⟶ Spec (CommRingCat.of k)}
    [LocallyOfFiniteType f] [IrreducibleSpace A]
    (G : RelativeGroupLaw k f)
    (hc : G.IsCommutative)
    (n : ℕ) [Flat (G.schemeNsmul n)] :
    Surjective (G.schemeNsmul n)