在pari-gp中,如何找到有限域的原始元素?

时间:2016-02-01 21:48:48

标签: finite-field pari-gp

说,我想要一个包含q^nprime q positive n元素的有限字段。如何获取原始元素

1 个答案:

答案 0 :(得分:2)

您可以使用以下代码获取一些原始元素:

var = 'x; \\ sets a variable in the polynomial representation of finite field
f = ffgen(ffinit(q, n)); \\ GF(q^n) ~ GF(q)[x]/<f(x)>. Note `f` is just an irreducible
a = ffprimroot(f); \\ gets a root `a` of `f`
poly = minpoly(a, var); \\ finds a minimal polynomial for `a`
primitive_elt = ffgen(poly, var); \\ finds a root of the minimal polynomial

\\ assertion: check the order
fforder(primitive_elt) == q^n-1

注意,有限域可以具有某些原始元素。上面的代码随机找到任何。请注意,上面的代码假定为n&gt; 1.否则,函数minpoly崩溃(使用PARI / GP 2.7.2 32位测试)。