pREU Q14

1294 days ago by kellerl@clemson.edu

#First I define a Galois field of size 2. F.<z> = GF(2) 
       
#I let "r" denote the set of polynomials with coefficients in GF(2). r.<x> = F[] 
       
#I ask SAGE to give me an irreducible polynomial, or element, of "r" whose degree is 4. p=r.irreducible_element(4) p 
       
x^4 + x + 1
x^4 + x + 1
#My strategy to find a subfield of F_16 with four elements is not too clever. I will create the field F_16 and mod out by my irreducible polynomial, and simply find the element of F_16 whose cubic power is the identity. This will give me a multiplicative group which, along with 0,1 will form the F_4 subgroup. #So there are some brute-force themes to my strategy, and I don't want to do all the polynomial-mod math by hand. I'll define a quotient ring... R = PolynomialRing(GF(2),'x') x = R.gen() S = R.quotient(x^4 + x + 1, 'a') a = S.gen() S 
       
Univariate Quotient Polynomial Ring in a over Finite Field of size 2
with modulus x^4 + x + 1
Univariate Quotient Polynomial Ring in a over Finite Field of size 2 with modulus x^4 + x + 1
#Now querying SAGE with algebraic expressions will return the mod in our quotient ring. Here I try "a^2 + a", and find the result I was looking for. (a^2+a)^3 
       
1
1
#Now we have found three elements of F_4: 0, 1, a^2 + a. To find the last element, we simply take the second power of a^2 + a (a^2+a)^2 
       
a^2 + a + 1
a^2 + a + 1
#Great! Now we have all four elements of our F_4 subgroup: { 0 , 1 , a^2 + a, a^2 + a + 1 }