Documentation

TauCeti.AlgebraicGeometry.EllipticCurve.Scheme.Geom

Elliptic curves over a scheme #

An elliptic curve over a scheme S is recorded here as a geometric object: a smooth proper morphism X ⟶ S of relative dimension one with a section, which Zariski-locally on S is the projective Weierstrass model WeierstrassCurve.projModel of an elliptic Weierstrass curve, compatibly with the structure morphisms and with the zero section [0 : 1 : 0].

The local-model condition is given in two forms. A pointed Weierstrass chart of π : X ⟶ S pointed by zero : S ⟶ X consists of an open immersion base ⟶ S from a scheme isomorphic to Spec R, an elliptic Weierstrass curve W over R, a pullback square of π along the open immersion, and an isomorphism of its apex with projModel W over Spec R carrying the section induced by zero to the zero section; a pointed Weierstrass atlas is a family of charts whose images cover S. The predicate IsLocallyWeierstrass states the condition pointwise instead, on affine opens U of S with Weierstrass curves over Γ(S, U) and the chosen pullback of π along U ⟶ S. The two forms agree: nonempty_pointedWeierstrassAtlas_iff.

Main definitions #

Main results #

Implementation notes #

The coefficient ring of a chart is only isomorphic to the ring of sections over the image of its base. Comparing a chart with the local-model condition therefore moves its Weierstrass curve along a ring isomorphism φ with WeierstrassCurve.map, and identifies projModel (W.map φ) with projModel W by WeierstrassCurve.projModelMapIso, the base change morphism along φ.

References #

Provenance #

IsLocallyWeierstrass and EllipticCurveGeom are adapted from AINTLIB (github.com/CBirkbeck/AINTLIB, Apache-2.0) at commit c3415f32a313e19ace43e05479aeaa0d56ca287a, file projects/ModularCurves/ModularCurves/EllipticCurve/Basic.lean, declarations ModularCurves.LocallyWeierstrass and ModularCurves.EllipticCurveGeom. Here the projective model is WeierstrassCurve.projModel, and the local model of EllipticCurveGeom is a nonempty pointed Weierstrass atlas, which is equivalent to IsLocallyWeierstrass by nonempty_pointedWeierstrassAtlas_iff.

Pointed Weierstrass charts and atlases #

A pointed Weierstrass chart of a morphism π : X ⟶ S pointed by zero : S ⟶ X: an open immersion baseMap : base ⟶ S from a scheme base ≅ Spec ring, an elliptic Weierstrass curve equation over ring, a pullback square of π along baseMap with apex pullbackCarrier, and an isomorphism modelIso of pullbackCarrier with the projective model of equation, lying over Spec ring and carrying the section pulledZero induced by zero to the zero section [0 : 1 : 0]. A chart presents X over the open subscheme of S that is the image of baseMap, and its fields make zero a section of π over that image.

Instances For
    @[simp]

    pulledZero is a section of the structure morphism of the restriction.

    A pointed Weierstrass atlas of a morphism π : X ⟶ S pointed by zero : S ⟶ X: a family of pointed Weierstrass charts whose images cover S. The images are open, so an atlas exhibits π Zariski-locally on S as the projective model of an elliptic Weierstrass curve with zero as its zero section.

    Instances For

      The local-model condition for a morphism π : X ⟶ S with a section zero: every point of S has an affine open neighbourhood U with an elliptic Weierstrass curve W over Γ(S, U) and an isomorphism of the restriction pullback π U.ι of X to U with the projective model of W, lying over U ≅ Spec Γ(S, U) and carrying the section induced by zero to the zero section of the model. It holds if and only if a PointedWeierstrassAtlas exists: nonempty_pointedWeierstrassAtlas_iff.

      Equations
      • One or more equations did not get rendered due to their size.
      Instances For

        The local-model condition IsLocallyWeierstrass π zero hzero holds if and only if every point of S has an affine open neighbourhood U with an elliptic Weierstrass curve W over Γ(S, U) and an isomorphism of pullback π U.ι with the projective model of W, lying over U ≅ Spec Γ(S, U) and carrying the section induced by zero to the zero section of the model.

        The base of a pointed Weierstrass chart is affine: it is isomorphic to Spec ring.

        The pointed Weierstrass chart on an affine open U of S given by an elliptic Weierstrass curve W over Γ(S, U) and an isomorphism e of the chosen pullback pullback π U.ι with the projective model of W, lying over U ≅ Spec Γ(S, U) and carrying the section induced by zero to the zero section. Its base is U, its coefficient ring is Γ(S, U) and its section is pullback.lift (U.ι ≫ zero) (𝟙 U).

        Equations
        • One or more equations did not get rendered due to their size.
        Instances For

          A morphism π with a section zero that admits a pointed Weierstrass atlas satisfies the local-model condition IsLocallyWeierstrass π zero hzero. The converse also holds: nonempty_pointedWeierstrassAtlas_iff.

          A morphism with a section admits a pointed Weierstrass atlas if and only if it satisfies the local-model condition IsLocallyWeierstrass.

          Elliptic curves over a scheme #

          An elliptic curve over a scheme S, as a geometric object: a morphism structureMap : carrier ⟶ S, smooth of relative dimension one and proper, with a section zero, such that structureMap and zero admit a pointed Weierstrass atlas, so that Zariski-locally on S the curve is the projective model of an elliptic Weierstrass curve with zero the zero section [0 : 1 : 0]. The atlas appears under Nonempty, so no local equation is part of the data.

          Instances For
            @[simp]

            The zero section of an elliptic curve is a section of its structure morphism: the field zero_comp, as a simp lemma.

            @[simp]

            The zero section of an elliptic curve is a section of its structure morphism: the field zero_comp, as a simp lemma.

            An elliptic curve over S satisfies the local-model condition IsLocallyWeierstrass for its structure morphism and zero section: the pointwise form of the atlas condition localModel.