Schemes#

class sage.categories.schemes.AbelianVarieties(base)#

Bases: Schemes_over_base

The category of abelian varieties over a given field.

EXAMPLES:

sage: AbelianVarieties(QQ)
Category of abelian varieties over Rational Field
sage: AbelianVarieties(ZZ)
Traceback (most recent call last):
...
ValueError: category of abelian varieties is only defined over fields
class Homsets(category, *args)#

Bases: HomsetsCategory

Overloaded Homsets class to register the homset as an additive abelian group.

EXAMPLES:

sage: AbelianVarieties(QQ).Homsets().is_subcategory(CommutativeAdditiveGroups())
True
class Endset(base_category)#

Bases: CategoryWithAxiom

Overloaded Endset class to register the endset as a ring.

sage: AbelianVarieties(QQ).Endsets().is_subcategory(Rings()) True

extra_super_categories()#

Register the endset as a ring.

EXAMPLES:

sage: End(EllipticCurve(j=1)) in Rings()
True
extra_super_categories()#

Register the homset as an additive abelian group.

EXAMPLES:

sage: Hom(EllipticCurve(j=1), EllipticCurve(j=2)) in CommutativeAdditiveGroups()
True
super_categories()#

EXAMPLES:

sage: AbelianVarieties(QQ).super_categories()
[Category of schemes over Rational Field,
 Category of commutative additive groups]
class sage.categories.schemes.Schemes#

Bases: Category

The category of all schemes.

EXAMPLES:

sage: Schemes()
Category of schemes

Schemes can also be used to construct the category of schemes over a given base:

sage: Schemes(Spec(ZZ))
Category of schemes over Integer Ring

sage: Schemes(ZZ)
Category of schemes over Integer Ring

Todo

Make Schemes() a singleton category (and remove Schemes from the workaround in category_types.Category_over_base._test_category_over_bases()).

This is currently incompatible with the dispatching below.

super_categories()#

EXAMPLES:

sage: Schemes().super_categories()
[Category of sets]
class sage.categories.schemes.Schemes_over_base(base, name=None)#

Bases: Category_over_base

The category of schemes over a given base scheme.

EXAMPLES:

sage: Schemes(Spec(ZZ))
Category of schemes over Integer Ring
base_scheme()#

EXAMPLES:

sage: Schemes(Spec(ZZ)).base_scheme()
Spectrum of Integer Ring
super_categories()#

EXAMPLES:

sage: Schemes(Spec(ZZ)).super_categories()
[Category of schemes]