An Algorithm to Determine Properties of Field Extensions Lying over a Ground Field^{∗}

Gregor Kemper ^{†}

October 10, 1993

Let K ≤ L ≤ N be fields such that N is finitely generated over K. We will use Gröbner basis methods to calculate the transcendence degree of N|L and the degree [N:L] if the extension is algebraic. There is another, similar proof for most of the results of this paper in [Sw1]. See also the closely related work [S-S] and the report [Sw2]. What is new here is a somewhat more structural understanding of the extension N|L, gained by looking at a chain of subfields between L and N, and a stronger result on the minimal polynomials that the algorithm will produce (see Proposition 2 (c)).

The main purpose of the paper, though, is to lay the theoretical grounds for an implementation of the algorithm which was done by the author using the Maple computer language ([Ma]). Section 2 is devoted to the description of it. We will also take a look at some examples of application. The second of these, verifying solutions of Noether’s Problem, was the main motivation for me to implement the algorithm.

∗This article also appeared as an IWR-Preprint in Heidelberg.

†The author is supported by the Graduiertenkolleg “Modellierung und wissenschaftliches Rechnen in Mathematik und Naturwissenschaften” which is funded by the DFG and the Land Baden-Württemberg.

Contents

1 The Theory 2 1.1 A Special Case . . . . . . . . . . . . . . . . . . . . . . . . . . 3 1.2 The General Case . . . . . . . . . . . . . . . . . . . . . . . . . 5

2 The Implementation 7 2.1 Some Remarks . . . . . . . . . . . . . . . . . . . . . . . . . . 7 2.2 Installation . . . . . . . . . . . . . . . . . . . . . . . . . . . . 9 2.3 Examples . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 10

Appendix 14

1 The Theory

Let us fix some notation first.

L|K is finitely generated, too, as will be shown in the Appendix. Say N = K(ϑ_{1}, …, ϑ_{n}) and L = K(φ_{1}, …, φ_{m}), then

φ_{i} = g_{i}(ϑ_{1}, …, ϑ_{n}) with g_{i} ∈ K(X_{1}, …, X_{n}),

the field of rational functions in n indeterminates. By Hilbert’s Basissatz, the kernel of

K[X_{1}, …, X_{n}] → N, X_{i} ↦ ϑ_{i}.

is a finitely generated ideal in K[X_{1}, …, X_{n}]. Let r_{1}, …, r_{s} be generators for it.

The basic idea is very simple: Take the equations

r_{i} = 0 (i = 1, …, s) and T_{i} = g_{i} (i = 1, …, m)

with additional indeterminates T_{i}, and try to solve these equations for the X_{i}. This crude idea still requires some refinement and elaboration, though.

In the sequel we will use the abbreviations \underline{X} for X_{1}, …, X_{n}, \underline{g} for g_{1}, …, g_{m} and so on. If G is a Gröbner basis, then by a G-residue of some polynomial f we mean the result of successively eliminating the lead term of f and of its descendants by adding a multiple of an element of G whose lead monomial divides the lead monomial of f (or its descendant). In particular, all members of the ideal generated by G have the G-residue zero.

1.1 A Special Case

First we prove two propositions for a special case and then the main result (Theorem 1), which itself turns out to be essentially a special case of Proposition 2.

Proposition 1 Suppose that in the above situation all g_{i} lie in K[\underline{X}]. Let T_{1}, …, T_{m} be additional indeterminates and

I = (r_{1}, …, r_{s}, T_{1} − g_{1}, …, T_{m} − g_{m}) ≤ K[\underline{T} , \underline{X}].

Then I is the kernel of the K-algebra homomorphism

K[\underline{T} , \underline{X}] → N, T_{i} ↦ φ_{i}, X_{i} ↦ ϑ_{i}.

Proof. It is clear that I lies in the kernel.

Let P (\underline{T}) be a product of T_{i}’s. We show by induction over the degree ∂P of P that

P (\underline{T}) − P (\underline{g}) ∈ I.

There is nothing to show for ∂P = 0.

Let ∂P > 0, then P (\underline{T}) = T_{i} · P′(\underline{T}) where ∂P′ < ∂P. By induction we have P′(\underline{T}) − P′(\underline{g}) ∈ I, and we conclude

P (\underline{T}) − P (\underline{g}) = (T_{i} − g_{i}) · P′(\underline{T}) + g_{i} · (P′(\underline{T}) − P′(\underline{g})) ∈ I.

Having shown this, it follows that for all f(\underline{T} , \underline{X}) ∈ K[\underline{T} , \underline{X}] we have

f(\underline{T} , \underline{X}) − f(\underline{g}, \underline{X}) ∈ I.

But if f lies in the kernel, then f(\underline{g}, \underline{X}) ∈ (r_{1}, …, r_{s}) and hence f(\underline{T} , \underline{X}) ∈ I. ■

Proposition 2 Again suppose that all g_{i} ∈ K[\underline{X}], and let T_{i} and I be as in Proposition 1. Let π ∈ S_{n} be any permutation of the indices 1, …, n. Using a term order ≺ on K[\underline{T} , \underline{X}] with the property

X_{π(i)} ≻ (any monomial in T_{1}, …, T_{m}, X_{π(1)}, …, X_{π(i−1)}) ,

let G be a minimal Gröbner basis of I. (By “minimal” we mean that the lead monomial of any member of G does not divide the lead monomial of any other.) Set

G_{T} = G ∩ K[\underline{T}], G_{i} = G ∩ K[\underline{T} , X_{π(1)}, …, X_{π(i)}] \ K[\underline{T} , X_{π(1)}, …, X_{π(i−1)}]

and

L_{i} = L(ϑ_{π(1)}, …, ϑ_{π(i)}) ≤ N.

Then the following holds

(a) G_{T} generates the kernel of K[\underline{T}] → L, T_{i} ↦ φ_{i}.

(b) The transcendence degree of N|L is equal to the number of G_{i}’s which are empty.

(c) If all G_{i}’s are non-empty, let f_{i} be a minimal member of G_{i} with respect to the term order ≺, and let e_{i} = ∂_{π(i)}(f_{i}) be the X_{π(i)}-degree of f_{i}. Then the lead monomial of f_{i} contains no X_{π(j)} with j ≠ i, and substituting T_{j} = φ_{j} for all j and X_{π(j)} = ϑ_{π(j)} for j < i in f_{i} yields a minimal polynomial for ϑ_{π(i)} over L_{i−1} (which need not be monic). In particular, we have the formula

[N : L] = ∏_{i=1}^{n} e_{i}.

Proof. G_{T} lies in I ∩ K[\underline{T}] and hence in the kernel.

Conversely, take f(\underline{T}) ∈ K[\underline{T}] such that f(\underline{φ}) = 0. Then f ∈ I by Proposition 1, so f has the G-residue 0. Since X_{i} ≻ K[\underline{T}] for all i, f must even have the G_{T} -residue 0. Hence f ∈ (G_{T}), which completes the proof of (a).

To show (b) and (c) we consider the extension L_{i}|L_{i−1} for a fixed i.

If G_{i} ≠ ∅, let f(\underline{T} , X_{π(1)}, …, X_{π(i)}) ∈ G_{i} and set f̄(X_{π(i)}) = f(\underline{φ}, ϑ_{π(1)}, …, ϑ_{π(i−1)}, X_{π(i)}) ∈ L_{i−1}[X_{π(i)}]. Assuming that ∂f̄ < ∂_{π(i)}(f), we conclude that f as a polynomial in X_{π(i)} has a highest coefficient c which lies in I ∩ K[\underline{T} , X_{π(1)}, …, X_{π(i−1)}]. Then the leading monomial LM(c) of c is divisible by the leading monomial of some f′ ∈ G_{j} with j < i; but by the property of the term order LM(c) divides the leading monomial of f, contradicting the minimality of G.

Thus we have ∂f̄ = ∂_{π(i)}(f) > 0. But f̄(ϑ_{π(i)}) = 0, so L_{i} is algebraic over L_{i−1}.

On the other hand, let L_{i}|L_{i−1} be algebraic and let 0 ≠ f̄(X_{π(i)}) ∈ L_{i−1}[X_{π(i)}] such that f̄(ϑ_{π(i)}) = 0. By multiplying f̄ by a constant from L_{i−1} we may assume that f̄(X_{π(i)}) ∈ K[\underline{φ}, ϑ_{π(1)}, …, ϑ_{π(i−1)}] [X_{π(i)}] without changing its degree. Let f ∈ K[\underline{T} , X_{π(1)}, …, X_{π(i−1)}, X_{π(i)}] such that substituting T_{j} = φ_{j} and X_{π(j)} = ϑ_{π(j)} (j < i) in f yields f̄. Then f ∈ I by Proposition 1, so f must have the G-residue 0. We may assume that f is already reduced by all members of G_{j}, j < i. Then the lead monomial of f must be divisible by the lead monomial of some member of G_{i}. In particular, G_{i} ≠ ∅.

We have shown that the transcendence degree of L_{i}/L_{i−1} is 0 iff G_{i} ≠ ∅ and 1 otherwise. Part (b) of the Proposition now follows immediately.

To prove (c), let all G_{i}’s be non-empty. Then N|L is algebraic and thus L_{i} = L[ϑ_{π(1)}, …, ϑ_{π(i)}] for all i. Fix any i. There exists f̄(X_{π(i)}) ∈ K[\underline{φ}, ϑ_{π(1)}, …, ϑ_{π(i−1)}] [X_{π(i)}] with f̄(ϑ_{π(i)}) = 0, such that the highest coefficient of f̄ contains no ϑ_{j} and ∂f̄ = [L_{i} : L_{i−1}]. By the above there must exist an h ∈ G_{i} with ∂_{π(i)}(h) = [L_{i} : L_{i−1}], whose lead monomial contains no X_{π(j)} with j ≠ i.

Let h′ be a minimal element of G_{i} with respect to the term order. We have seen that specializing T_{j} = φ_{j} and X_{π(j)} = ϑ_{π(j)} (j < i) in h′ yields a polynomial \overline{h′}(X_{π(i)}) with ∂\overline{h′} = ∂_{π(i)}(h′) and \overline{h′}(ϑ_{π(i)}) = 0, so ∂_{π(i)}(h′) ≥ [L_{i} : L_{i−1}]. The minimality of h′ now yields ∂_{π(i)}(h′) = ∂_{π(i)}(h), so \overline{h′}(X_{π(i)}) is a minimal polynomial for ϑ_{π(i)} over L_{i−1}. By the minimality of h′ we also get that the lead monomial of h′ contains no X_{π(j)} with j ≠ i.

This completes the proof of (c). ■

1.2 The General Case

We can turn to the general case now. The idea is to use the equations

(numerator of g_{i}) − T_{i} · (denominator of g_{i})

instead of T_{i} − g_{i}, and to include equations that will rule out solutions for which some of the denominators are zero.

Theorem 1 Using the notation introduced above, let g_{i} = \frac{n_{i}}{d_{i}} with n_{i}, d_{i} ∈ K[\underline{X}] and take p_{1}, …, p_{k} ∈ K[\underline{X}] \ (r_{1}, …, r_{s}) such that for the product d = p_{1} ⋯ p_{k} there exists a natural number e with d_{i} | d^{e} for all i. (In the implementation, the p_{i}’s will be those prime polynomials which occur as divisors of some d_{i}.) Introduce new indeterminates U_{1}, …, U_{k} and T_{1}, …, T_{m} and set

I = (p_{1} · U_{1} − 1, …, p_{k} · U_{k} − 1, r_{1}, …, r_{s},
n_{1} − T_{1} · d_{1}, …, n_{m} − T_{m} · d_{m}) ≤ K[\underline{T} , \underline{X}, \underline{U}].

Let π ∈ S_{n} be any permutation of the indices 1, …, n. Using a term order ≺ on K[\underline{T} , \underline{X}, \underline{U}] with the properties

U_{i} ≻ (any monomial in \underline{T} and \underline{X}) and
X_{π(i)} ≻ (any monomial in \underline{T}, X_{π(1)}, …, X_{π(i−1)}) ,

let G be a minimal Gröbner basis of I.

Define G_{T}, G_{i} and L_{i} as in Proposition 2, then the statements (a)-(c) from Proposition 2 hold.

Proof. Set δ_{i} = 1/p_{i}(ϑ_{1}, …, ϑ_{n}). It is verified by some calculation that the kernel of

K[\underline{X}, \underline{U}] → N, X_{i} ↦ ϑ_{i}, U_{i} ↦ δ_{i}

is exactly the ideal spanned by p_{i} · U_{i} − 1 (i = 1, …, k) and r_{i} (i = 1, …, s). The key observation is that

(p_{i}U_{i})^{i} − 1 = (p_{i}U_{i} − 1) · ∑_{ν=0}^{i−1} (p_{i}U_{i})^{ν} ∈ (p_{i}U_{i} − 1) .  (1)

Now set g′_{i} = (d · U_{1} ⋯ U_{k})^{e} g_{i} ∈ K[\underline{X}, \underline{U}] and

I′ = (p_{1}U_{1} − 1, …, p_{k}U_{k} − 1, r_{1}, …, r_{s}, T_{1} − g′_{1}, …, T_{m} − g′_{m}) .

Then clearly g′_{i}(\underline{ϑ}, \underline{δ}) = g(\underline{ϑ}, \underline{δ}), and another calculation shows that I′ = I.

Since I includes linear equations for the U_{i}, G will also be a Gröbner basis with respect to a term order which satisfies the slightly stronger condition

U_{τ(i)} ≻ (any monomial in \underline{T}, \underline{X} and U_{τ(1)}, …, U_{τ(i−1)})

for some permutation τ of the indices 1, …, k.

These observations show that we are exactly in the situation of Proposition 2, so Theorem 1 is actually a special case of Proposition 2. ■

2 The Implementation

The algorithm stated in Theorem 1 has been implemented as a Maple procedure called “extension”. This procedure is the main part of the program package “fields” which as another major procedure contains “normalform” (see below). As there is on-line help for the syntactical aspects of the package, we will only make a few notes here and give some examples of usage, keeping the notation from the introduction and Theorem 1.

2.1 Some Remarks

• The ground field K can be either ℚ or an algebraic number field. In the latter case, K is defined by the minimal polynomial of a generating algebraic number α, and elements of K are represented as polynomials in α with rational coefficients.

• Theorem 1 leaves a large variety of choices for the p_{i}’s. Experience seems to indicate that the highest speed is obtained by taking all prime polynomials which occur as divisors of some d_{i}, although this choice has the disadvantage of producing many additional variables U_{i} to calculate with. (But this seems to weigh little since there are linear equations for the U_{i}.) This would be an answer to a question posed by M. Sweedler in [Sw1]. Another obvious choice would be to take only one p_{i}, namely the square-free part of the common denominator of the g_{i}’s. There is an option in extension which lets the user specify his own p_{i}’s.

• N is given by its relations r_{1}, …, r_{s}, and L is given by the g_{i}’s. So the question arises what will happen if one of the denominators of the g_{i} evaluates to zero modulo 𝔯 = (r_{1}, …, r_{s}), or if 𝔯 is not a prime ideal or (even worse) equals (1). All these cases can be subsumed by the condition (C) that some power of the product of denominators of the g_{i} lies in 𝔯. Since (U_{1} ⋯ U_{k} · d)^{e} ≡ 1 (mod I) by Formula (1) in the proof of Theorem 1, (C) is equivalent to the condition I = (1). So the occurrence of (C) is easily diagnosed by extension. If, on the other hand, condition (C) does not hold, then the results computed by extension still make sense even if 𝔯 is not a prime ideal by considering K[\underline{ϑ}, \frac{1}{d(\underline{ϑ})}] instead of N.

• The permutation π of the X_{i} is chosen by a Maple library routine which reorders variables from a list of polynomials to make them “heuristically optimal” for Gröbner basis computations.

• G_{T} is a Gröbner basis for the kernel of K[\underline{T}] → L, T_{i} ↦ φ_{i}, and since the implementation uses a lexicographic term order on the T_{i}’s, the transcendence degree of L|K equals the number of T_{i}’s which do not occur in G_{T} by an argument analogous to that given in the proof of Proposition 2. The transcendence degree of L|K is returned by extension as one of its results.

• The really hard part of the algorithm is the computation of a Gröbner basis for I. But specializing some of the T_{i}’s for which the corresponding φ_{i}’s are assumed to be algebraically independent to random values will yield good probabilistic results for the transcendence degrees and for [N:L], if finite. On the other hand, this will make the computation much quicker. This option is supported by extension.

In my experience I never got a wrong result from specializing!

• The routine normalform calculates normal forms of elements of N in the following sense: After extension has been called, we have minimal polynomials for each ϑ_{π(i)} over L_{i−1} where L_{i}|L_{i−1} is algebraic. Then every element of L_{i} has a normal form as a polynomial in ϑ_{π(i)} of degree less than [L_{i}:L_{i−1}]. Or if L_{i}|L_{i−1} is not algebraic, then the normal form is a rational function in ϑ_{π(i)} with coefficients in L_{i−1}. Descending along the chain

N = L_{n} ≥ L_{n−1} ≥ … ≥ L_{1} ≥ L_{0} = L

yields a normal form for an element of N. The routine normalform calculates this normal form for elements of K[\underline{ϑ}]. For fractions, the quotient of the normal form of the numerator over that of the denominator is returned. In particular, this provides a membership test for L.

2.2 Installation

The fields package runs with Maple V and beyond. The package can be obtained directly from the author (The email address is at the end of this paper) or from the electronic share library of Maple, which can be accessed via anonymous ftp. The sites are

Internet address Symbolic address Site location
129.132.101.33 neptune.inf.ethz.ch Zurich, Switzerland
129.97.140.58  daisy.waterloo.edu Waterloo, Canada

What you need to get is the main file fields and maybe the test file fields.test. Suppose you have them sitting in the current working directory. Then you call Maple and do the following:

> read fields;
> # The procedures are now defined and saved in  fields.m.
> # If using MapleV Rel. 1, you have to say   _liblist:=[`.`]:
> with(fields):
> ?fields

Now you should get on-line help for the package, and you can start using it. If you type

> read `fields.test`;

you should get a series of okay’s.

2.3 Examples

We now give two examples of the fields package at work. The following listings are taken from Maple sessions using the version Maple V Release 2.

The first example is motivated by the idea of spherical coordinates. We take K = ℚ (\sqrt{−1}) as ground field (ℚ would work, too). N is the field of rational functions in x, y and z, and we generate L by the three functions

r = x^{2} + y^{2} + z^{2}, φ = \frac{y}{x} and ϑ = \frac{z^{2}}{x^{2} + y^{2}} ,

which are “almost” spherical coordinates.

> interface(screenwidth=63); gc(0):
> read fields;
> with(fields):
> minpol:=a^2+1:                                   # define K
> gens:={r=x^2+y^2+z^2,f=y/x,t=z^2/(x^2+y^2)}:
>
> # The global variable  protocol_level  controls how much
> # information  extension  will print out during execution
> protocol_level:=2:
>
> # Put the minimal polynomials into 'basis'. The ground field
> # K is communicated to  extension  be the equation for mipo.
> extension(gens,mipo=minpol,'basis');
Given Situation:
                         K=Q(a) with
                          2
                         a  + 1 = 0,

                         N=K(x,y,z),

                        L=K(r,t,f) with
                                               2
                  2    2    2                  z
             r = x  + y  + z , f = y/x, t = -------
                                            2    2
                                           x  + y

Calculating the prime divisors of the denominators of the g_i
... done
They are:
                     [x, x + a y, x - a y]

Take the term order with u[2] > u[3] > u[1] > z > y > x > r >
t > f
Calculating a Groebner basis of I ...
... done
Results:
N|L is algebraic of degree 4
Minimal polynomials:
                       2    2  2    2
z:                    z  + f  x  + x  - r
y:                          y - f x
                         2          2   2
x:                 (1 + f  + t + t f ) x  - r
L|K has transcendence degree 3

Time used: 6.383 sec
                              4
> # The degree [N:L] is returned by  extension.
>
> # Interpretation: For every (sufficiently general) choice of
> # r,f and t there are four points having these "coordinates".
> # This agrees with what one would intuitively expect!
>
> # Does y^2 lie in L?
> normalform(y^2,basis);
                              2
                             f  r
                       -----------------
                           2          2
                       1 + f  + t + t f
> # It does! Check this ...
> normal(subs(gens,"));
                               2
                              y
> # All right!

In the next example we verify a solution of Noether’s Problem for the group A_{4}, i.e. we show that the field of invariants under A_{4} acting on the field ℚ(x_{1}, …, x_{4}) of rational functions by permuting the indeterminates can be generated by (no more than) four invariants. A generating set of five elements is given by the elementary symmetric polynomials s_{1}, …, s_{4} and the expression

d = ∏_{i<j}(x_{i} − x_{j}),

where d satisfies the discriminant relation

d^{2} = Discr (x^{4} − s_{1}x^{3} + s_{2}x^{2} − s_{3}x + s_{4}) .

To make the computation simpler, we change s_{2}, s_{3} and s_{4} by substituting x_{i} → x_{i} − s_{1}/4. Then d satisfies the above discriminant relation, but without the x^{3}-term. This means that s_{1} is algebraically independent over N = ℚ(s_{2}, s_{3}, s_{4}, d), so now we have to generate N by three invariants. The theory (that I don’t want to go into here) yields candidates for such generating invariants, which are

φ_{1} = \frac{s_{3}}{s_{2}} , φ_{2} = \frac{12s_{2}s_{4} + s_{2}^{3}}{d} , φ_{3} = \frac{27s_{3}^{2} + 8s_{2}^{3}}{d} .

But it is still not certain whether these invariants actually generate all of N. So here is a listing of the Maple session where it is verified that N = ℚ(φ_{1}, φ_{2}, φ_{3}).

> interface(screenwidth=63); gc(0):
> read fields;
> with(fields):
> rel:=d^2-discrim(x^4+s2*x^2-s3*x+s4,x);
            2       3   2        4           4         2   2
    rel := d  + 4 s2  s3  + 27 s3  - 16 s4 s2  + 128 s4  s2
                    2            3
         - 144 s2 s3  s4 - 256 s4
> gens:={g1=s3/s2,g2=(12*s2*s4+s2^3)/d,g3=(27*s3^2+8*s2^3)/d};
                                      3            2       3
                s3        12 s2 s4 + s2        27 s3  + 8 s2
 gens := {g1 = ----, g2 = --------------, g3 = --------------}
                s2               d                    d
> # The equation indep=all tells  extension  that all g_i's are
> # assumed algebraically independent. This speeds up the
> # calculation. The relation is given by the equation for r.
>
> extension(gens,r=rel,indep=all);
Calculating the prime divisors of the denominators of the g_i

... done
Calculating a Groebner basis of I ...
... done
Results:
L=N
L|K has transcendence degree 3
                              1
> # So actually L=N, and Noether's Problem is solved!
> time();
                            8.766

Appendix

As promised in the introduction, we will now show that L is finitely generated over K.

Proposition 0 Let K ≤ L ≤ N be fields such that N is finitely generated over K. Then so is L.

Proof. L|K is of finite transcendence degree. Let x_{1}, …, x_{k} be a transcendence basis. It can be extended to a transcendence basis x_{1}, …, x_{n} of N|K. Set Ltr = K(x_{1}, …, x_{k}) and Ntr = K(x_{1}, …, x_{n}). We have the following diagram

[figure: N; L(x_{k+1}, …, x_{n}); L; Ntr; Ltr; K]

Since N is finite over Ntr by the assumption, so is L(x_{k+1}, …, x_{n}).

Let b_{1}, …, b_{s} ∈ L with s > [L(x_{k+1}, …, x_{n}) : Ntr]. Then they are linearly dependent over Ntr, say

∑_{i=1}^{s} α_{i}b_{i} = 0 with α_{i} ∈ Ntr = Ltr(x_{k+1}, …, x_{n}),

not all zero. We may assume α_{i} ∈ Ltr[x_{k+1}, …, x_{n}]. The equation lives in L[x_{k+1}, …, x_{n}], and since x_{k+1}, …, x_{n} are algebraically independent over L, it must hold coefficient-wise. But some coefficient of some α_{i} is non-zero, and we get a non-trivial linear equation for the b_{i} over Ltr.

Hence L is finite over Ltr, which completes the proof. ■

References

[Ma] B. Char, K. Geddes, G. Gonnet, M. Monagan and S. Watt, Maple Reference Manual (5th Edn.), Waterloo Maple Publishing, Waterloo, Ontario, 1990

[S-S] David Shannon and Moss Sweedler, Using Gröbner Bases to Determine Algebra Membership, Split Surjective Algebra Homomorphisms, and to Determine Birational Equivalence, J. of Symbolic Computation 6 (1988), 267–273

[Sw1] M.Sweedler, Using Gröbner Bases to Determine the Algebraic and Transcendental Nature of Field Extensions: Return of the Killer Tag Variables, in: Applied Algebra, Algebraic Algorithms and Error-Correcting Codes (Gérard Cohen, Teo Mora, Oscar Moreno Eds.), Springer LNCS 673 (1993), 66–75

[Sw2] Moss Sweedler, Using Gröbner Bases to Determine the Nature of Field Extensions, Transactions of the Ninth Army Conference on Applied Mathematics and Computing, ARO Report 92-1, 1992

Gregor Kemper IWR Im Neuenheimer Feld 368 69 120 Heidelberg Germany

     email kemper@kalliope.iwr.uni-heidelberg.de