> < ^ Date: Wed, 19 May 1993 16:44:44 +0200
> < ^ From: Derek Holt <dfh@maths.warwick.ac.uk >
> ^ Subject: Query about finite fields

Dear GAP Forum,

I have a query about the construction of finite fields using the form


where pol is a polynomial.

The first remark is that this function does not in fact expect a GAP polynomial
at all, but a list of coefficients. That is not a serious problem, however.

My main problem is how to refer to the field elements once the field is
constructed. I want to refer to them as polynomials over the ground
field in the indeterminate w, where 'pol' is the minimal polynomial of w
that I have specified. But how do I refer to w?

If w is a primitive root, then it apparently is given by F.root.


gap> F:=GF(2,[Z(2)^0, 0*Z(2), Z(2)^0,Z(2)^0 ]);
gap> F.root;
gap> MinPol(F.root);
[ Z(2)^0, 0*Z(2), Z(2)^0, Z(2)^0 ]

but, in general, w may not be a primitive root and, if not, then F.root
does not appear to get itself defined at all.


gap> F:=GF(2,[ Z(2)^0, Z(2)^0, Z(2)^0, Z(2)^0, Z(2)^0 ]);
gap> F.root;
Error, Record: element 'root' must have an assigned value

This is serious, because a lot of the GAP code that I have written for finite
fields uses the .root component. Is there any way that I can define F.root
in such a case without causing problems? Or do I have to make sure that I
only call the function for primitive elements?

Derek Holt.

> < [top]