Element Operations

See also Section Generic Element Functions.

Arithmetic Operators

+ a: RngGalElt -> RngGalElt
- a: RngGalElt -> RngGalElt
a + b: RngGalElt, RngGalElt -> RngGalElt
a - b: RngGalElt, RngGalElt -> RngGalElt
a * b: RngGalElt, RngGalElt -> RngGalElt
a ^ k: RngGalElt, RngIntElt -> RngGalElt
a +:= b: RngGalElt, RngGalElt -> RngGalElt
a -:= b: RngGalElt, RngGalElt -> RngGalElt
a *:= b: RngGalElt, RngGalElt -> RngGalElt

Euclidean Operations

a div b: RngGalElt, RngGalElt -> RngGalElt
a mod b: RngGalElt, RngGalElt -> RngGalElt
Quotrem(a, b): RngGalElt, RngGalElt -> RngGalElt
GCD(a, b): RngGalElt, RngGalElt -> RngGalElt
LCM(a, b): RngGalElt, RngGalElt -> RngGalElt
XGCD(a, b): RngGalElt, RngGalElt -> RngGalElt, RngGalElt, RngGalElt

Equality and Membership

a eq b: RngGalElt, RngGalElt -> BoolElt
a ne b: RngGalElt, RngGalElt -> BoolElt
a in R: RngGalElt, Rng -> BoolElt
a notin R: RngGalElt, Rng -> BoolElt

Parent and Category

Parent(a): RngGalElt -> RngGal
Category(a): RngGalElt -> Cat

Predicates on Ring Elements

IsZero(a): RngGalElt -> BoolElt
IsOne(a): RngGalElt -> BoolElt
IsMinusOne(a): RngGalElt -> BoolElt
IsNilpotent(a): RngGalElt -> BoolElt
IsIdempotent(a): RngGalElt -> BoolElt
IsUnit(a): RngGalElt -> BoolElt
IsZeroDivisor(a): RngGalElt -> BoolElt
Example: Groebner Bases over Galois Rings (ex-6cf97d)

This simple example shows how one can compute Gröbner bases over Galois rings. We create an ideal in 3 variables over a Galois ring and compute its Gröbner basis.

> R<w> := GaloisRing(3, 3, 2);
> #R;
729
> P<x,y,z> := PolynomialRing(R, 3);
> I := ideal<P | [x^2 - w*y, 3*y^3 - 3*w*x*z, 9*z^5 - 9*w]>;
> GroebnerBasis(I);
[
    x^2 + 26*w*y,
    3*x*y^3 + (6*w + 6)*y*z,
    3*x*z + (15*w + 3)*y^3,
    9*x + (9*w + 9)*y^3*z^4,
    3*y^6 + (21*w + 15)*y*z^2,
    9*z^5 + 18*w
]

Notice that the leading coefficients include 3 and 9, which are not units in the ring. See Chapter Gröbner Bases for much more information on such Gröbner bases.

Run in calculator (opens in a new tab)