Root of unity modulo n


In mathematics, namely ring theory, a k-th root of unity modulo n for positive integers k, n ≥ 2, is a root of unity in the ring of integers modulo n, that is, a solution x to the equation . If k is the smallest such exponent for x, then x is called a primitive k-th root of unity modulo n. See modular arithmetic for notation and terminology.
Do not confuse this with a primitive root modulo n, which is a generator of the group of units of the ring of integers modulo n. The primitive roots modulo n are the primitive -roots of unity modulo n, where is Euler's totient function.

Roots of unity

Properties

For the lack of a widely accepted symbol, we denote the number of k-th roots of unity modulo n by.
It satisfies a number of properties:

Properties

For the lack of a widely accepted symbol, we denote the number of primitive k-th roots of unity modulo n by.
It satisfies the following properties:
By fast exponentiation you can check that. If this is true, x is a k-th root of unity modulo n but not necessarily primitive. If it is not a primitive root, then there would be some divisor ℓ of k, with. In order to exclude this possibility, one has only to check for a few ℓ's equal k divided by a prime. That is, what needs to be checked is:

Finding a primitive ''k''-th root of unity modulo ''n''

Among the primitive k-th roots of unity, the primitive -th roots are most frequent.
It is thus recommended to try some integers for being a primitive -th root, what will succeed quickly.
For a primitive -th root x, the number is a primitive -th root of unity.
If k does not divide, then there will be no k-th roots of unity, at all.

Finding multiple primitive ''k''-th roots modulo ''n''

Once you have a primitive k-th root of unity x, every power is a -th root of unity, but not necessarily a primitive one. The power is a primitive -th root of unity if and only if and are coprime. The proof is as follows: If is not primitive, then there exists a divisor of with, and since and are coprime, there exists an inverse of modulo. This yields, which means that is not a primitive -th root of unity because there is the smaller exponent.
That is, by exponentiating x one can obtain different primitive k-th roots of unity, but these may not be all such roots. However, finding all of them is not so easy.

Finding an ''n'' with a primitive ''k''-th root of unity modulo ''n''

You may want to know, in what integer residue class rings you have a primitive k-th root of unity. You need it for instance if you want to compute a Discrete Fourier Transform of a -dimensional integer vector. In order to perform the inverse transform, you also need to divide by, that is, k shall also be a unit modulo
A simple way to find such an n is to check for primitive k-th roots with respect to the moduli in the arithmetic progression. All of these moduli are coprime to k and thus k is a unit. According to Dirichlet's theorem on arithmetic progressions there are infinitely many primes in the progression, and for a prime it holds. Thus if is prime then and thus you have primitive k-th roots of unity. But the test for primes is too strong, you may find other appropriate moduli.

Finding an ''n'' with multiple primitive roots of unity modulo ''n''

If you want to have a modulus such that there are primitive -th, -th,..., -th roots of unity modulo, the following theorem reduces the problem to a simpler one:
; Proof
Backward direction:
If there is a primitive -th root of unity modulo called, then is a -th root of unity modulo.
Forward direction:
If there are primitive -th,..., -th roots of unity modulo, then all exponents are divisors of. This implies and this in turn means there is a primitive -th root of unity modulo.