2

Let $\zeta := e^{\frac{2\pi i}{11}}$ and $p(x) \in \mathbb{F}_{2}[x]$. Do you know of a quick way to determine the multiplicative order of $p(\zeta)$ as an element of $\mathbb{F}_{2}(\zeta)$? I am trying to determine the order of some expressions of that persuasion in Mathematica, but it seems to me that there is not an optimal way to handle roots of unity in Mathematica.

One of the main difficulties I am facing comes from the fact that Mathematica does not reduce neatly the powers of $p(\zeta)$; obviously, if it were capable of doing so, I would only need to check which of the powers $p(\zeta)^k$, with $k\in \{1, 3, 11, 31, 33, 93, 341, 1023\}$, satisfy $(p(\zeta))^{k}=1$. How have you handle these types of issues when they popped up in your studies?

Thanks in advance for your suggestions, comments, and replies.

Jamai-Con
  • 647
  • 3
    Is $\zeta$ shorthand for describing an $11$-th root of unity in an extension field of $\mathbb F_2$ or do you literally mean an $11$-th root of unity in the complex field $\mathbb C$? – Dilip Sarwate Sep 11 '17 at 02:57
  • @DilipSarwate What difference ? Algebraically they are the same – reuns Sep 11 '17 at 03:26
  • 1
    @reuns: I think Dilip objects to the given definition of $ζ$ as "$e^\frac{2πi}{11}$". – user21820 Sep 11 '17 at 07:55
  • 3
    @reuns They are not algebraically the same. They live in incompatible fields; one satisfies $\zeta+\zeta=0$, the other doesn't. – Wojowu Sep 11 '17 at 08:42

2 Answers2

4

The minimal polynomial $f \in \mathbb{F}_2|x]$ of $\zeta_{11}$ is $\prod_{k=1}^d (x-\zeta_{11}^{2^k})$ where $d$ is the order of $2\bmod 11$.

$d= 10$ and $f(X) = \sum_{n=0}^{10} X^n$. Thus $\mathbb{F}_2(\zeta_{11})=\mathbb{F}_2[x]/(f(x))$ and its multiplicative group is cyclic with $2^{10}-1=1023= 3 . 11 . 31$ elements.

Therefore for any $\alpha \in \mathbb{F}_2(\zeta_{11})$ it suffice to compute $\alpha^{1023/p},p = 3,11,31$ to know its order.

In mathematica, you can implement $\mathbb{F}_2(\zeta_{11})$ as $\mathbb{Z}[M] \bmod 2$ where $M$ is the companion matrix of $f$, or you can implement the $\bmod (f(x),2)$ reduction for integer polynomials.

reuns
  • 79,880
3

reuns has handled the mathematical portion of your question, so I will address the software portion. I think Mathematica is very ill-suited to this sort of computation. I recommend trying the (free, open-source) software SageMath. Here is some example SageMath code:

F = GF(2)
R.<x> = PolynomialRing(F)
K = F.extension(x^10 + x^9 + x^8 + x^7 + x^6 + x^5 + x^4 + x^3 + x^2 + x + 1,'a')
a = K.gens()[0]
b = 1 + a^3 + a^5
b.multiplicative_order()

You can try running it yourself on the SageMathCell.

Viktor Vaughn
  • 20,897
  • 1
    Thank you very much for leaving your reply! I suppose that in lines 2 and 3 you are only "defining" the extension $\mathbb{F}{2}(\zeta{11})$, right? It seems to me that you are basically identifying the $\zeta_{11}$ with $a$ there... – Jamai-Con Sep 11 '17 at 04:20
  • Yes, that's right. I chose the name a for a generator, but you can call it whatever you'd like by replacing the a in lines 3 and 4. – Viktor Vaughn Sep 11 '17 at 04:41
  • then you proceeded to calculate the order of $1+\zeta_{11}^{3}+\zeta_{11}^{5}$ which is an element of the extension in question, right? – Jamai-Con Sep 11 '17 at 04:47
  • Yes, that's right. You can try changing $b$ to something else and seeing what its order is. – Viktor Vaughn Sep 11 '17 at 12:32