Module: sage.schemes.generic.scheme
Schemes
Author Log:
Module-level Functions
x) |
Return True if
is an affine scheme.
sage: is_AffineScheme(5) False sage: E = Spec(QQ) sage: is_AffineScheme(E) True
x) |
Return True if
is a scheme.
sage: is_Scheme(5) False sage: X = Spec(QQ) sage: is_Scheme(X) True
Class: AffineScheme
Functions: hom
self, x, [Y=None]) |
Return the scheme morphism from self to Y defined by x.
If Y is not given, try to determine from context.
We construct the inclusion from
into
induced by the inclusion from
into
.
sage: X = Spec(QQ) sage: X.hom(ZZ.hom(QQ)) Affine Scheme morphism: From: Spectrum of Rational Field To: Spectrum of Integer Ring Defn: Ring Coercion morphism: From: Integer Ring To: Rational Field
Class: Scheme
self, X) |
Functions: base_extend,
base_morphism,
base_ring,
base_scheme,
category,
coordinate_ring,
count_points,
dimension,
hom,
identity_morphism,
point,
point_homset,
point_set,
structure_morphism,
zeta_series
self, Y) |
Y is either a scheme in the same category as self or a ring.
self) |
Return the coordinate ring of this scheme, if defined. Otherwise raise a ValueError.
self, n) |
Count points over
on
a scheme over a finite field
.
NOTE: This is currently only implemented for curves over prime order finite fields.
sage: P.<x> = PolynomialRing(GF(3)) sage: C = HyperellipticCurve(x^3+x^2+1) sage: C.count_points(4) [6, 12, 18, 96] sage: C.base_extend(GF(9,'a')).count_points(2) Traceback (most recent call last): ... NotImplementedError: Point counting only implemented for schemes over prime fields
self) |
Return the relative dimension of this scheme over its base.
self, x, [Y=None]) |
Return the scheme morphism from self to Y defined by x. If x is a scheme, try to determine a natural map to x.
If Y is not given, try to determine Y from context.
self, S) |
Return the set of S-valued points of this scheme.
self) |
Same as self.base_morphism().
self, n, t) |
Compute a power series approximation to the zeta function of a scheme over a finite field.
Input:
sage: P.<x> = PolynomialRing(GF(3)) sage: C = HyperellipticCurve(x^3+x^2+1) sage: R.<t> = PowerSeriesRing(Integers()) sage: C.zeta_series(4,t) 1 + 6*t + 24*t^2 + 78*t^3 + 240*t^4 + O(t^5) sage: (1+2*t+3*t^2)/(1-t)/(1-3*t) + O(t^5) 1 + 6*t + 24*t^2 + 78*t^3 + 240*t^4 + O(t^5)
Note that this function depends on count_points, which is only defined for prime order fields:
sage: C.base_extend(GF(9,'a')).zeta_series(4,t) Traceback (most recent call last): ... NotImplementedError: Point counting only implemented for schemes over prime fields
Special Functions: __add__,
__call__,
__cmp__,
__div__,
__init__,
_Hom_,
_homset_class,
_point_class,
_point_morphism_class
self) |
If S is a ring or scheme, return the set
of
-valued
points on
. If
is a list or tuple or just the coordinates,
return a point in
, where
is the base scheme of self.
sage: A = AffineSpace(2, QQ)
We create some point sets:
sage: A(QQ) Set of Rational Points of Affine Space of dimension 2 over Rational Field sage: A(RR) Set of Rational Points of Affine Space of dimension 2 over Real Field with 53 bits of precision
Space of dimension 2 over Rational Field
sage: R.<x> = PolynomialRing(QQ) sage: A(NumberField(x^2+1, 'a')) Set of Rational Points of Affine Space of dimension 2 over Number Field in a with defining polynomial x^2 + 1 sage: A(GF(7)) Traceback (most recent call last): ... ValueError: No natural map from the base ring (=Rational Field) to S (=Finite Field of size 7)
We create some points:
sage: A(QQ)([1,0]) (1, 0)
We create the same point by giving the coordinates of the point directly.
sage: A( 1,0 ) (1, 0)
self, Y) |
Return the base extension of self to Y.
sage: A = AffineSpace(3, ZZ) sage: A Affine Space of dimension 3 over Integer Ring sage: A/QQ Affine Space of dimension 3 over Rational Field sage: A/GF(7) Affine Space of dimension 3 over Finite Field of size 7
self, Y, [cat=None], [check=True]) |
Return the set of scheme morphisms from self to Y.