[Next][Prev] [Right] [Left] [Up] [Index] [Root]

Constructing Schemes

As shown in the examples in the introduction to this chapter, schemes are defined inside some ambient space, either affine or projective space, by a collection of polynomials from the coordinate ring associated with that space. Schemes may also be defined inside other schemes using polynomials from the coordinate ring of the bigger scheme or polynomials from the ambient space.

There is very little difference between creation methods for affine and projective schemes. Of course, in the projective case, the defining polynomials are checked for homogeneity or if an ideal is used, a check is made that its basis contains only homogeneous elements. Otherwise, the only check made at the time of creation is that the polynomials used to define the scheme really do lie in, or are coerced automatically into, the coordinate ring of the chosen ambient space.

Saturation:

As mentioned in the introduction, for schemes in projective spaces, there is a largest ideal which defines that scheme. Technically speaking, if I is any homogeneous defining ideal, this maximal one can be obtained from I by removing the primary components whose radical contains a certain redundant ideal of the ambient coordinate ring. This redundant ideal defines sets of points that are illegal projectively. For example, in ordinary projective space, there is one illegal point with all coordinates 0 and this is defined by the redundant ideal (x1, ..., xn). The operation to remove these primary components is ideal saturation of I by the redundant ideal, so we refer to the maximal defining ideal as saturated and a scheme X as saturated if its current ideal (as returned by DefiningIdeal(X)) is known to be the maximal one.

There are several basic functions that rely on the defining ideal of a scheme X being saturated. The most important are IsReduced, IsIrreducible, Prime/Primary Components, eq for any projective schemes and Dimension, f(X) (map images) for multi-graded projective schemes.

As the process of saturation may be quite expensive in higher dimensional ambient spaces, the ideal of X is not saturated until the saturation property is required and once saturation has been performed, this is recorded internally. Additionally, scheme constructions like Union will automatically produce a result marked as saturated if that can be deduced from the construction method and the saturation state of the argument schemes. In particular, any ambient or scheme defined by a single equation in an ambient is marked as saturated on construction. The ProjectiveClosure of an affine scheme is also saturated by construction.

Furthermore, for all of the basic Scheme and Curve constructors where saturation of the ideal generated by the defining equations is not automatic, there is a Saturated parameter that the user can set to be true to mark the initial defining ideal as saturated without further checking.

Scheme(X,f) : Sch,RngMPolElt -> Sch
Scheme(X,F) : Sch,SeqEnum -> Sch
Scheme(X,I) : Sch,RngMPol -> Sch
Scheme(X,Q) : Sch,RngMPolRes -> Sch
    Nonsingular: BoolElt                Default: false
    Reduced: BoolElt                    Default: false
    Irreducible: BoolElt                Default: false
    GeometricallyIrreducible: BoolElt   Default: false
    Saturated: BoolElt                  Default: false
Create the scheme inside the scheme X defined by the vanishing of the polynomial f, or the sequence of polynomials F, or the ideal of polynomials I, or the ideal in the denominator of the quotient ring Q = R/I. In each case, the polynomials must be elements of the coordinate ring of A or automatically coercible into it.

If any of the optional parameters are set to true, Magma will assume without checking that the scheme has the corresponding property. This may enable subsequent calculations to be done faster; note that if the assumption is not correct, arbitrary misbehaviour may result. The option Saturated only makes sense when the ambient is projective, and refers to the defining ideal rather than the scheme.

Cluster(X,f) : Sch,RngMPolElt -> Clstr
Cluster(X,F) : Sch,SeqEnum -> Clstr
Cluster(X,I) : Sch,RngMPol -> Clstr
Cluster(X,Q) : Sch,RngMPolRes -> Clstr
    Saturated: BoolElt                  Default: false
Create the 0-dimensional scheme inside the scheme X defined by the vanishing of the given polynomials. These can be given as the single polynomial f, or the sequence of polynomials F, or the ideal of polynomials I, or the ideal in the denominator of the quotient ring Q = R/I. In each case, the polynomials must be elements of the coordinate ring of X or automatically coercible into it.

Example Scheme_schemes-creation (H112E10)

In this example we simply create three schemes. The first is an ambient space A, the affine plane, while the others are subschemes of A.

> A<x,y,z> := AffineSpace(Rationals(),3);
> X := Scheme(A,x-y);
> X;
Scheme over Rational Field defined by
x - y
> Y := Scheme(X,[x^2 - z^3,y^3 - z^4]);
> Y;
Scheme over Rational Field defined by
x^2 - z^3
y^3 - z^4
x - y
> Ambient(Y) eq A;
true
Note that since Y was created as a subscheme of X it inherits the equations of X. The ambient space of Y is still considered to be A.
Spec(R) : RngMPolRes -> Sch,Aff
The scheme ( Spec)(R) associated to the affine algebra R. A new affine space Spec(Generic(R)) will be created as the ambient space of this scheme.
Proj(R) : RngMPolRes -> Sch,Prj
The scheme ( Proj)(R) associated to the affine algebra R which will be interpreted with its grading (which will be the standard grading by degree if no other has been assigned). A new projective space Proj(Generic(R)) will be created as the ambient space of this scheme.
EmptyScheme(X) : Sch -> Sch
EmptySubscheme(X) : Sch -> Sch, MapSch
The subscheme of X defined, for an affine scheme X by the trivial polynomial 1, or by maximal ideal (x1, ..., xn) for a projective scheme X. The returned scheme is marked as saturated.
X meet Y : Sch,Sch -> Sch
Intersection(X,Y) : Sch,Sch -> Sch
The intersection of schemes X and Y in their common ambient space. This simply concatenates their defining equations without testing for emptiness.
X join Y : Sch,Sch -> Sch
Union(X,Y) : Sch,Sch -> Sch
The union of schemes X and Y in their common ambient space. This is formed by creating the intersection of their defining ideals which is done using a Gröbner basis computation. If both X and Y are saturated then the result is as well and is marked as such.
& join S : [Sch] -> Sch
The union of the schemes in the sequence S in their common ambient space.
Difference(X, Y) : Sch, Sch -> Sch
Returns the scheme that is obtained by taking the closure of the result of removing {( X meet Y)} from the scheme X, counting multiplicity. The ideal of the result will be the colon ideal of the ideal of X and the ideal of the scheme Y. If X is saturated then the result is as well and is marked as such.
RemoveLinearRelations(X) : Sch -> Sch, MapIsoSch
Convenience function that takes linear relations between variables on X and uses them to eliminate variables. The intrinsic is currently only avaialable for X in ordinary projective space. The result is scheme Y that lies in a lower dimensional projective space that can be identified with the smallest linear subspace of the ambient of X that contains X. Y is returned along with the (linear) scheme isomorphism from X to Y.

Example Scheme_remove (H112E11)

The behaviour of Difference is shown.

> A2<x,y>:=AffineSpace(Rationals(),2);
> C:=Scheme(A2,(x*y)); //union of the x- and y-axis
> X2:=Scheme(A2,x^2);  //y-axis with double multiplicity
> Difference(X2,C); //y-axis with mult. 1.
Scheme over Rational Field defined by
x
> O:=Scheme(A2,[x,y]);
> Difference(C,O);   
Scheme over Rational Field defined by
x*y
Removing "ambient" spaces is tricky: Everything is removed.

> Difference(C,A2);     
Scheme over Rational Field defined by
1
> A3<x,y,z>:= AffineSpace(Rationals(),3);
> C:=Scheme(A3,Ideal([x,z])*Ideal([y,z])); //again, union of x- and y-axis
> Z:=Scheme(A3,[z]); //the x,y plane
> Difference(C,Z); 
Scheme over Rational Field defined by
x,
y,
z
As one can see, the Z-plane is removed with multiplicities: all that's left is the origin, which has multiplicity 2 in C and only multiplicity 1 in Z.
Saturate(~X) : Sch ->
If the scheme X is projective and is not already saturated, saturate its defining ideal.
AssignNames(~X,N) : Sch,SeqEnum ->
Assign the strings in the sequence N to the ambient coordinate functions of the scheme X.
X . i : Sch,RngIntElt -> RngMPolElt
Name(X,i) : Sch,RngIntElt -> RngMPolElt
The ith coordinate function of the ambient space of the scheme X. The dot notation X.i may also be used.
 [Next][Prev] [Right] [Left] [Up] [Index] [Root]

Version: V2.19 of Mon Dec 17 14:40:36 EST 2012