3

Consider a finite field $GF(q)$. We refer to $GF(q)^{\times }$ as the multiplicative group of $GF(q)$. Given that $\left| GF(q)^{\times }\right| =q-1$ and $GF(q)^{\times } \cong \mathbb{Z}_{q-1}$ forms a cyclic group, we understand that the non-trivial subgroups of $\mathbb{Z}_{p-1}$ partition $\mathbb{Z}_{p-1}$ into several cosets. I'm seeking to determine how to identify if two elements belong to the same coset without tedious calculation. Here is an example to illustrate my question:

Let's take $q=43$, a prime number. Then $GF(43)^{\times }$ constitutes the multiplicative group of modulo $43$ (a property that holds only for prime fields). We find that $\left| GF(43)^{\times }\right| =42$ and $\mathbb{Z}_{42} =\mathbb{Z}_{6} \times \mathbb{Z}_{7} =\mathbb{Z}_{2} \times \mathbb{Z}_{3} \times \mathbb{Z}_{7}$. The primitive element of $GF(43)^{\times }$ is $3$. Considering the subgroup $\mathbb{Z}_{7}$ and taking $4$ as the generator, we can form a subgroup \begin{equation*} H=\{1,\ 4,\ 11,\ 16,\ 21,\ 35,\ 41\}. \end{equation*} We can then list $GF(43)^{\times } /\mathbb{Z}_{7} =\{H,2H,3H,6H,7H,9H\}$, where \begin{equation*} \begin{aligned} 2H & =\{2,\ 8,\ 22,\ 27,\ 32,\ 39,\ 42\}\\ 3H & =\{3,\ 5,\ 12,\ 19,\ 20,\ 33,\ 37\}\\ 6H & =\{6,\ 10,\ 23,\ 24,\ 31,\ 38,\ 40\}\\ 7H & =\{7,\ 18,\ 26,\ 28,\ 29,\ 30,\ 34\}\\ 9H & =\{9,\ 13,\ 14,\ 15,\ 17,\ 25,\ 36\}. \end{aligned} \end{equation*} Therefore, given two elements, for example, $37$ and $20$, how can I determine whether these two elements are in the same coset? Or given an element, say $29$, how can I affirm that it's in the coset $7H$ without listing all the subgroups?

Let's take another example when $q=2^{4}$, which is not a prime number. Now $GF(16)=GF(2)[x]/(x^{4} +x+1)$ and $GF(16)^{\times } =\mathbb{Z}_{15} =\mathbb{Z}_{3} \times \mathbb{Z}_{5}$. We use decimal numbers to represent the group elements, for example, $x^{2} +1$ corresponds to $0101=5$ and $x^{3} +x^{2} +1$ corresponds to $1101=13$. Considering $x^{3} \equiv 8$ as the generator, we obtain a subgroup \begin{equation*} H=\{1,8,10,12,15\}. \end{equation*} The other two cosets are \begin{equation*} \begin{aligned} 2H & =\{2,3,7,11,13\}\\ 4H & =\{4,5,6,9,14\}. \end{aligned} \end{equation*} So how can I determine if $3$ and $11$ are in the same coset? Is there an algorithm for any finite field? If not, is there an algorithm for at least $GF(2^n)$(or even $GF(2^{2^n})$)?

KCd
  • 46,062
  • When you ask about being "in the same subgroup", do you really mean "in the same coset"? – hardmath Jul 29 '23 at 18:41
  • 2
    @hardmath That's my fault, I shouldn't ask "in the same subgroup". I have changed "subgroups" into "cosets" in the question. Thank you for your remind. – Photon-gjq Jul 30 '23 at 02:02
  • 2
    In your first example, two elements are in the same coset of $H$ if and only if their quotient is in $H$. In the 2nd example, why does $4H$ have only four elements? – Gerry Myerson Jul 30 '23 at 02:47
  • 2
    From the theory of cyclic groups we know that the elements of the (unique) subgroup $H$ of order $d$ ($d\mid q-1$) are the roots of $x^d-1$. It follows (taking into account Gerry's comment) that $x$ and $y$ are in the same coset of $H$ if and only if $(x/y)^d=1$. – Jyrki Lahtonen Jul 30 '23 at 02:51
  • 1
    And you can use the good old square-and-multiply to relatively quickly test whether $(x/y)^d=1$. Or, equivalently, whether $x^d=y^d$. – Jyrki Lahtonen Jul 30 '23 at 02:57

1 Answers1

3

The computation in a general setting, deciding if two elements $x,y \in G$ belong to the same cosets of a (normal) subgroup $H \leqslant G$, is described by Gerry Myerson's comment:

$$ xH = yH \iff x/y \in H $$

Jyrki Lahtonen's comments point out simplifications available for the special case where $G$ is the multiplicative group of a finite field. Those groups are abelian, so it's given that $H$ is normal in $G$. Moreover the subgroup $H$ is uniquely determined by its order $d$ (cf. the details of three proofs here that any finite subgroup of the multiplicative group of a field is cyclic). Thus once we know $|H| = d$, it follows:

$$ xH = yH \iff (x/y)^d = 1 \iff x^d = y^d $$

Of course the usual details of carrying out such multiplicative arithmetic in $GF(p^n)$ depend on your choice of an irreducible polynomial $f(X)$ of degree $n$ over $\mathbb Z/ p\mathbb Z$. See the answers to Shortest irreducible polynomials over $\mathbb F_p$ of degree $n$ for some ideas about how to make the choice.

hardmath
  • 37,015