Ambient spaces#
- class sage.schemes.generic.ambient_space.AmbientSpace(n, R=Integer Ring)#
Bases:
Scheme
Base class for ambient spaces over a ring.
INPUT:
n
- dimensionR
- ring
- ambient_space()#
Return the ambient space of the scheme self, in this case self itself.
EXAMPLES:
sage: P = ProjectiveSpace(4, ZZ) sage: P.ambient_space() is P True sage: A = AffineSpace(2, GF(3)) sage: A.ambient_space() Affine Space of dimension 2 over Finite Field of size 3
- base_extend(R)#
Return the natural extension of
self
overR
.INPUT:
R
– a commutative ring, such that there is a natural map from the base ring of self toR
.
OUTPUT:
an ambient space over
R
of the same structure asself
.
Note
A
ValueError
is raised if there is no such natural map. If you need to drop this condition, useself.change_ring(R)
.EXAMPLES:
sage: P.<x, y, z> = ProjectiveSpace(2, ZZ) sage: PQ = P.base_extend(QQ); PQ Projective Space of dimension 2 over Rational Field sage: PQ.base_extend(GF(5)) Traceback (most recent call last): ... ValueError: no natural map from the base ring (=Rational Field) to R (=Finite Field of size 5)!
- change_ring(R)#
Return an ambient space over ring \(R\) and otherwise the same as self.
INPUT:
R
– commutative ring
OUTPUT:
ambient space over
R
Note
There is no need to have any relation between \(R\) and the base ring of self, if you want to have such a relation, use
self.base_extend(R)
instead.
- defining_polynomials()#
Return the defining polynomials of the scheme self. Since self is an ambient space, this is an empty list.
EXAMPLES:
sage: ProjectiveSpace(2, QQ).defining_polynomials() () sage: AffineSpace(0, ZZ).defining_polynomials() ()
- dimension()#
Return the absolute dimension of this scheme.
EXAMPLES:
sage: A2Q = AffineSpace(2, QQ) sage: A2Q.dimension_absolute() 2 sage: A2Q.dimension() 2 sage: A2Z = AffineSpace(2, ZZ) sage: A2Z.dimension_absolute() 3 sage: A2Z.dimension() 3
- dimension_absolute()#
Return the absolute dimension of this scheme.
EXAMPLES:
sage: A2Q = AffineSpace(2, QQ) sage: A2Q.dimension_absolute() 2 sage: A2Q.dimension() 2 sage: A2Z = AffineSpace(2, ZZ) sage: A2Z.dimension_absolute() 3 sage: A2Z.dimension() 3
- dimension_relative()#
Return the relative dimension of this scheme over its base.
EXAMPLES:
sage: A2Q = AffineSpace(2, QQ) sage: A2Q.dimension_relative() 2 sage: A2Z = AffineSpace(2, ZZ) sage: A2Z.dimension_relative() 2
- gen(n=0)#
Return the \(n\)-th generator of the coordinate ring of the scheme self.
EXAMPLES:
sage: P.<x, y, z> = ProjectiveSpace(2, ZZ) sage: P.gen(1) y
- gens()#
Return the generators of the coordinate ring of the scheme self.
EXAMPLES:
sage: AffineSpace(0, QQ).gens() () sage: P.<x, y, z> = ProjectiveSpace(2, GF(5)) sage: P.gens() (x, y, z)
- identity_morphism()#
Return the identity morphism.
OUTPUT: the identity morphism of the scheme
self
EXAMPLES:
sage: A = AffineSpace(2, GF(3)) sage: A.identity_morphism() Scheme endomorphism of Affine Space of dimension 2 over Finite Field of size 3 Defn: Identity map sage: P = ProjectiveSpace(3, ZZ) sage: P.identity_morphism() Scheme endomorphism of Projective Space of dimension 3 over Integer Ring Defn: Identity map
- is_projective()#
Return whether this ambient space is projective n-space.
EXAMPLES:
sage: AffineSpace(3, QQ).is_projective() False sage: ProjectiveSpace(3, QQ).is_projective() True
- ngens()#
Return the number of generators of the coordinate ring of the scheme self.
EXAMPLES:
sage: AffineSpace(0, QQ).ngens() 0 sage: ProjectiveSpace(50, ZZ).ngens() 51
- sage.schemes.generic.ambient_space.is_AmbientSpace(x)#
Return True if \(x\) is an ambient space.
EXAMPLES:
sage: from sage.schemes.generic.ambient_space import is_AmbientSpace sage: is_AmbientSpace(ProjectiveSpace(3, ZZ)) True sage: is_AmbientSpace(AffineSpace(2, QQ)) True sage: P.<x, y, z> = ProjectiveSpace(2, ZZ) sage: is_AmbientSpace(P.subscheme([x + y + z])) False