// a, b, c are just sume dummy variables // X = \alpha ring rr = (2,X), (a,b,c), lp; minpoly = X^4 + X^3 + X^2 + X + 1; int i,j,k,m; number beta, p, result; // number = constant in the ring rr; for(i = 0; i <= 1; i = i + 1) { for(j = 0; j <= 1; j = j + 1) { for(k = 0; k <= 1; k = k + 1) { for(m = 0; m <= 1; m = m + 1) { beta = i*X^3 + j*X^2 + k*X + m; p = beta^4 + beta^3 + 1; /* Primitive polynomial; choose beta^4+beta+1 for the other set of solutions */ if (p == 0) {"Primitive element beta = ",beta; result = beta; } } } } } result = X3+X2+X+1; "To verify, see that the powers of the element"; result; "are:"; for(i = 1; i < 16; i = i + 1) { result^i; }