Magma

MAGMA Computational Algebra System

Magma
 •  How to get it
 •  Download
 •  Online Demo
 
Resources
 •  Online Help
 •  Discovering Mathematics with Magma
 •  Citations
 •  How to cite Magma
 •  Links
 •  Contact us
 
[Next][Prev] [Right] [Left] [Up] [Index] [Root]

Computation of Varieties

Magma allows the explicit computation of the variety of an ideal defined over a field when that ideal is zero-dimensional, i.e., the set of solutions to the simultaneous equations represented by the ideal. When an ideal is not zero-dimensional and the base field is not finite, the corresponding variety over the algebraic closure of the coefficient field is infinite and it is not possible to compute such varieties within Magma.

Variety(I) : RngMPol -> [ ModTupFldElt ]
Variety(I, L) : RngMPol, Rng -> [ ModTupFldElt ]
    Digits: RngIntElt                   Default: 38
Given a zero-dimensional ideal I of a polynomial ring P whose order is of lexicographic type, return the variety of I over its coefficient field K as a sequence of tuples. Each tuple is of length n, where n is the rank of P, and corresponds to an assignment of the n variables of P (in order) such that all polynomials in I vanish with this assignment.

If K is not a finite field then the ideal must be the full polynomial ring or be zero-dimensional so that the variety is known to be finite. If a superfield L of K is also given, the variety is computed over L instead, so the entries of the tuples lie in L.

If the field over which the variety is computed is the free complex field, Magma uses a special root finding algorithm to ensure the precision of the results; in this case, the parameter Digits may be given (see the Roots function in the Real and Complex Fields chapter (Chapter REAL AND COMPLEX FIELDS)).

VarietySequence(I) : RngMPol -> [ [ RngElt ] ]
VarietySequence(I, L) : RngMPol, Rng -> [ [ RngElt ] ]
    Digits: RngIntElt                   Default: 38
Given a zero-dimensional ideal I of a polynomial ring P whose order is of lexicographic type, return the variety of I over its coefficient field K as a sequence of sequences of elements of K. Each inner sequence is of length n, where n is the rank of P, and corresponds to an assignment of the n variables of P (in order) such that all polynomials in I vanish with this assignment.

If K is not a finite field then the ideal must be the full polynomial ring or be zero-dimensional so that the variety is known to be finite. If a superfield L of K is also given, the variety is computed over L instead, so the entries of the sequences lie in L.

If the field over which the variety is computed is the free complex field, Magma uses a special root finding algorithm to ensure the precision of the results; in this case, the parameter Digits may be given (see the Roots intrinsic function in the Real and Complex Fields chapter (Chapter REAL AND COMPLEX FIELDS)).

VarietySizeOverAlgebraicClosure(I) : RngMPol -> RngIntElt
Given a zero-dimensional ideal I of a polynomial ring P over a field K, return the size of the variety of I over the algebraic closure K' of K. The size is determined by finding the (prime) radical decomposition of I and placing each component of the decomposition into normal position so the size of the variety of the component over K' can be read off. Note that this function will usually be much faster than actually computing the variety of I over a suitable extension field of K.

Example GB_Variety (H97E13)

We construct an ideal I of the polynomial ring GF(27)[x, y], and then find the variety V = V(I). We then check that I vanishes on V.

> K<w> := GF(27);
> P<x, y> := PolynomialRing(K, 2);
> I := ideal<P | x^8 + y + 2, y^6 + x*y^5 + x^2>;
> Groebner(I);
> I;
Ideal of Polynomial ring of rank 2 over GF(3^3)
Order: Lexicographical
Variables: x, y
Inhomogeneous, Dimension 0
Groebner basis:
[
    x + 2*y^47 + 2*y^45 + y^44 + 2*y^43 + y^41 + 2*y^39 + 2*y^38 + 2*y^37 + 
        2*y^36 + y^35 + 2*y^34 + 2*y^33 + y^32 + 2*y^31 + y^30 + y^28 + y^27 + 
        y^26 + y^25 + 2*y^23 + y^22 + y^21 + 2*y^19 + 2*y^18 + 2*y^16 + y^15 + 
        y^13 + y^12 + 2*y^10 + y^9 + y^8 + y^7 + 2*y^6 + y^4 + y^3 + y^2 + y + 
        2,
    y^48 + y^41 + 2*y^40 + y^37 + 2*y^36 + 2*y^33 + y^32 + 2*y^29 + y^28 + 
        2*y^25 + y^24 + y^2 + y + 1
]
> V := Variety(I);
> V;
[ <w^14, w^12>, <w^16, w^10>, <w^22, w^4> ]
> // Check that the original polynomials vanish:
> [
>    <x^8 + y + 2, y^6 + x*y^5 + x^2> where x is v[1] where y is v[2]: v in V
> ];
[ <0, 0>, <0, 0>, <0, 0> ]
> // Note that the variety of I would be larger over an extension field of K:
> VarietySizeOverAlgebraicClosure(I);
48

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

Version: V2.15 of Tue Dec 23 15:17:23 EST 2008

Valid HTML 4.01! Valid CSS!