Creation of Affine Algebras#

One can create an affine algebra simply by forming the quotient of a multivariate polynomial ring by an ideal (quo constructor or / function). A special constructor AffineAlgebra is also provided to remove the need to create the base polynomial ring.

quo< P | J >: RngMPol, RngMPol -> RngMPolRes#
quo< P | a₁, ..., aᵣ >: RngMPol, RngMPolElt, ..., RngMPolElt -> RngMPolRes, Map#

Given a multivariate polynomial ring \(P\) and an ideal \(J\) of \(P\), return the quotient ring \(P/J\). The ideal \(J\) may either be specified as an ideal or by a list \(a_1\), \(a_2\), \(\ldots\), \(a_r\), of generators which all lie in \(P\). The angle bracket notation can be used to assign names to the indeterminates: Q<q, r> := quo< I | I.1 + I.2, I.2^2 - 2, I.3^2 + I.4 >;.

P / J: RngMPol, RngMPol -> RngMPolRes#

Given a multivariate polynomial ring \(P\) and an ideal \(J\) of \(P\), return the quotient affine algebra \(P/J\).

AffineAlgebra< R, X | L >: Fld, List, List -> RngMPolRes#

Given a ring \(R\), a list \(X\) of \(n\) identifiers, and a list \(L\) of polynomials (relations) in the \(n\) variables \(X\), create the affine algebra of rank \(n\) with base ring \(R\) with given quotient relations; i.e., return \(R[X]/\langle L\rangle\). The angle bracket notation can be used to assign names to the indeterminates.

Example: Creation (ex-3c15de)#

One can create a relative extension of an algebraic number field as an affine algebra. The multivariate representation will often be more efficient than an absolute representation because of the sparsity of the elements in the field.

> Q := RationalField();
> A<x, y> := AffineAlgebra<Q, x, y | x^2 - y^2 + 2, y^3 - 5>;
> A;
Affine Algebra of rank 2 over Rational Field
Lexicographical Order
Variables: x, y
Quotient relations:
[
    x^2 - y^2 + 2,
    y^3 - 5
]
> x^2;
y^2 - 2
> x^-1;
2/17*x*y^2 + 5/17*x*y + 4/17*x
> P<z> := PolynomialRing(Q);
> MinimalPolynomial(x);
z^6 + 6*z^4 + 12*z^2 - 17
> MinimalPolynomial(x^-1);
z^6 - 12/17*z^4 - 6/17*z^2 - 1/17
> MinimalPolynomial(y);
z^3 - 5

Run in calculator

Another important construction is to create an affine algebra over a rational function field to obtain an algebraic function field:

> F<t> := FunctionField(IntegerRing());
> A<x, y> := AffineAlgebra<F, x, y | t*x^2 - y^2 + t + 1, y^3 - t>;
> P<z> := PolynomialRing(F);
> x^-1;
(-t^2 - t)/(t^3 + 2*t^2 + 3*t + 1)*x*y^2 - t^2/(t^3 + 2*t^2 + 3*t + 1)*x*y
    + (-t^3 - 2*t^2 - t)/(t^3 + 2*t^2 + 3*t + 1)*x
> MinimalPolynomial(x);
z^6 + (3*t + 3)/t*z^4 + (3*t^2 + 6*t + 3)/t^2*z^2 + (t^3 + 2*t^2 + 3*t +
    1)/t^3
> MinimalPolynomial(x^-1);
z^6 + (3*t^3 + 6*t^2 + 3*t)/(t^3 + 2*t^2 + 3*t + 1)*z^4 + (3*t^3 +
   3*t^2)/(t^3 + 2*t^2 + 3*t + 1)*z^2 + t^3/(t^3 + 2*t^2 + 3*t + 1)

Run in calculator

In this example we can consider \(y\) as a cube root of the transcendental indeterminate \(t\). Note that in general the (Krull) dimension of the ideal defining the relations may be anything; it need not be 0 or 1 as it is in these examples.