Permutation polynomial

From Wikipedia, the free encyclopedia
(Redirected from Permutation polynomials)
Jump to navigation Jump to search

In mathematics, a permutation polynomial (for a given ring) is a polynomial that acts as a permutation of the elements of the ring, i.e. the map xg(x) is a bijection. In case the ring is a finite field, the Dickson polynomials, which are closely related to the Chebyshev polynomials, provide examples. [1] Over a finite field, every function, so in particular every permutation of the elements of that field, can be written as a polynomial function.

In the case of finite rings Z/nZ, such polynomials have also been studied and applied in the interleaver component of error detection and correction algorithms.[2][3]

Single variable permutation polynomials over finite fields

[edit | edit source]

Let Fq = GF(q) be the finite field of characteristic p, that is, the field having q elements where q = pe for some prime p. A polynomial f with coefficients in Fq (symbolically written as fFq[x]) is a permutation polynomial of Fq if the function from Fq to itself defined by cf(c) is a permutation of Fq.[4]

Due to the finiteness of Fq, this definition can be expressed in several equivalent ways:[5]

  • the function cf(c) is onto (surjective);
  • the function cf(c) is one-to-one (injective);
  • f(x) = a has a solution in Fq for each a in Fq;
  • f(x) = a has a unique solution in Fq for each a in Fq.

A characterization of which polynomials are permutation polynomials is given by

(Hermite's Criterion)[6][7] fFq[x] is a permutation polynomial of Fq if and only if the following two conditions hold:

  1. f has exactly one root in Fq;
  2. for each integer t with 1 ≤ tq − 2 and t≢0(modp), the reduction of f(x)t mod (xqx) has degree q − 2.

If f(x) is a permutation polynomial defined over the finite field GF(q), then so is g(x) = a f(x + b) + c for all a ≠ 0, b and c in GF(q). The permutation polynomial g(x) is in normalized form if a, b and c are chosen so that g(x) is monic, g(0) = 0 and (provided the characteristic p does not divide the degree n of the polynomial) the coefficient of xn−1 is 0.

There are many open questions concerning permutation polynomials defined over finite fields.[8][9]

Small degree

[edit | edit source]

Hermite's criterion is computationally intensive and can be difficult to use in making theoretical conclusions. However, Dickson was able to use it to find all permutation polynomials of degree at most five over all finite fields. These results are:[10][7]

Normalized Permutation Polynomial of Fq q
x any q
x2 q0(mod2)
x3 q≢1(mod3)
x3ax (a not a square) q0(mod3)
x4±3x q=7
x4+a1x2+a2x (if its only root in Fq is 0) q0(mod2)
x5 q≢1(mod5)
x5ax (a not a fourth power) q0(mod5)
x5+ax(a2=2) q=9
x5±2x2 q=7
x5+ax3±x2+3a2x (a not a square) q=7
x5+ax3+51a2x (a arbitrary) q±2(mod5)
x5+ax3+3a2x (a not a square) q=13
x52ax3+a2x (a not a square) q0(mod5)

A list of all monic permutation polynomials of degree six in normalized form can be found in Shallue & Wanless (2013).[11]

Some classes of permutation polynomials

[edit | edit source]

Beyond the above examples, the following list, while not exhaustive, contains almost all of the known major classes of permutation polynomials over finite fields.[12]

  • xn permutes GF(q) if and only if n and q − 1 are coprime (notationally, (n, q − 1) = 1).[13]
  • If a is in GF(q) and n ≥ 1 then the Dickson polynomial (of the first kind) Dn(x,a) is defined by Dn(x,a)=j=0n/2nnj(njj)(a)jxn2j.

These can also be obtained from the recursion Dn(x,a)=xDn1(x,a)aDn2(x,a), with the initial conditions D0(x,a)=2 and D1(x,a)=x. The first few Dickson polynomials are:

  • D2(x,a)=x22a
  • D3(x,a)=x33ax
  • D4(x,a)=x44ax2+2a2
  • D5(x,a)=x55ax3+5a2x.

If a ≠ 0 and n > 1 then Dn(x, a) permutes GF(q) if and only if (n, q2 − 1) = 1.[14] If a = 0 then Dn(x, 0) = xn and the previous result holds.

  • If GF(qr) is an extension of GF(q) of degree r, then the linearized polynomial L(x)=s=0r1αsxqs, with αs in GF(qr), is a linear operator on GF(qr) over GF(q). A linearized polynomial L(x) permutes GF(qr) if and only if 0 is the only root of L(x) in GF(qr).[13] This condition can be expressed algebraically as[15] det(αijqj)0(i,j=0,1,,r1).

The linearized polynomials that are permutation polynomials over GF(qr) form a group under the operation of composition modulo xqrx, which is known as the Betti-Mathieu group, isomorphic to the general linear group GL(r, Fq).[15]

  • If g(x) is in the polynomial ring Fq[x] and g(xs) has no nonzero root in GF(q) when s divides q − 1, and r > 1 is relatively prime (coprime) to q − 1, then xr(g(xs))(q - 1)/s permutes GF(q).[7]
  • Only a few other specific classes of permutation polynomials over GF(q) have been characterized. Two of these, for example, are: x(q+m1)/m+ax where m divides q − 1, and xr(xda)(pn1)/d where d divides pn − 1.

Exceptional polynomials

[edit | edit source]

An exceptional polynomial over GF(q) is a polynomial in Fq[x] which is a permutation polynomial on GF(qm) for infinitely many m.[16]

A permutation polynomial over GF(q) of degree at most q1/4 is exceptional over GF(q).[17]

Every permutation of GF(q) is induced by an exceptional polynomial.[17]

If a polynomial with integer coefficients (i.e., in ℤ[x]) is a permutation polynomial over GF(p) for infinitely many primes p, then it is the composition of linear and Dickson polynomials.[18] (See Schur's conjecture below).

Geometric examples

[edit | edit source]

In finite geometry coordinate descriptions of certain point sets can provide examples of permutation polynomials of higher degree. In particular, the points forming an oval in a finite projective plane, PG(2,q) with q a power of 2, can be coordinatized in such a way that the relationship between the coordinates is given by an o-polynomial, which is a special type of permutation polynomial over the finite field GF(q).

Computational complexity

[edit | edit source]

The problem of testing whether a given polynomial over a finite field is a permutation polynomial can be solved in polynomial time.[19]

Permutation polynomials in several variables over finite fields

[edit | edit source]

A polynomial f𝔽q[x1,,xn] is a permutation polynomial in n variables over 𝔽q if the equation f(x1,,xn)=α has exactly qn1 solutions in 𝔽qn for each α𝔽q.[20]

Quadratic permutation polynomials (QPP) over finite rings

[edit | edit source]

For the finite ring Z/nZ one can construct quadratic permutation polynomials. Actually it is possible if and only if n is divisible by p2 for some prime number p. The construction is surprisingly simple, nevertheless it can produce permutations with certain good properties. That is why it has been used in the interleaver component of turbo codes in 3GPP Long Term Evolution mobile telecommunication standard (see 3GPP technical specification 36.212 [21] e.g. page 14 in version 8.8.0).

Simple examples

[edit | edit source]

Consider g(x)=2x2+x for the ring Z/4Z. One sees: g(0)=0; g(1)=3; g(2)=2; g(3)=1, so the polynomial defines the permutation (01230321).

Consider the same polynomial g(x)=2x2+x for the other ring Z/8Z. One sees: g(0)=0; g(1)=3; g(2)=2; g(3)=5; g(4)=4; g(5)=7; g(6)=6; g(7)=1, so the polynomial defines the permutation (0123456703254761).

Rings Z/pkZ

[edit | edit source]

Consider g(x)=ax2+bx+c for the ring Z/pkZ.

Lemma: for k=1 (i.e. Z/pZ) such polynomial defines a permutation only in the case a=0 and b not equal to zero. So the polynomial is not quadratic, but linear.

Lemma: for k>1, p>2 (Z/pkZ) such polynomial defines a permutation if and only if a0(modp) and b≢0(modp).

Rings Z/nZ

[edit | edit source]

Consider n=p1k1p2k2...plkl, where pt are prime numbers.

Lemma: any polynomial g(x)=a0+0<iMaixi defines a permutation for the ring Z/nZ if and only if all the polynomials gpt(x)=a0,pt+0<iMai,ptxi defines the permutations for all rings Z/ptktZ, where aj,pt are remainders of aj modulo ptkt.

As a corollary one can construct plenty quadratic permutation polynomials using the following simple construction. Consider n=p1k1p2k2plkl, assume that k1 >1.

Consider ax2+bx, such that a=0modp1, but a0modp1k1; assume that a=0modpiki, i > 1. And assume that b0modpi for all i = 1, ..., l. (For example, one can take a=p1p2k2...plkl and b=1). Then such polynomial defines a permutation.

To see this we observe that for all primes pi, i > 1, the reduction of this quadratic polynomial modulo pi is actually linear polynomial and hence is permutation by trivial reason. For the first prime number we should use the lemma discussed previously to see that it defines the permutation.

For example, consider Z/12Z and polynomial 6x2+x. It defines a permutation (0123456780729411618).

Higher degree polynomials over finite rings

[edit | edit source]

A polynomial g(x) for the ring Z/pkZ is a permutation polynomial if and only if it permutes the finite field Z/pZ and g(x)0modp for all x in Z/pkZ, where g′(x) is the formal derivative of g(x).[22]

Schur's conjecture

[edit | edit source]

Let K be an algebraic number field with R the ring of integers. The term "Schur's conjecture" refers to the assertion that, if a polynomial f defined over K is a permutation polynomial on R/P for infinitely many prime ideals P, then f is the composition of Dickson polynomials, degree-one polynomials, and polynomials of the form xk. In fact, Schur did not make any conjecture in this direction. The notion that he did is due to Fried,[23] who gave a flawed proof of a false version of the result. Correct proofs have been given by Turnwald[24] and Müller.[25]

Notes

[edit | edit source]
  1. ^ Lua error in Module:Citation/CS1/Configuration at line 2172: attempt to index field '?' (a nil value).
  2. ^ Lua error in Module:Citation/CS1/Configuration at line 2172: attempt to index field '?' (a nil value).
  3. ^ Lua error in Module:Citation/CS1/Configuration at line 2172: attempt to index field '?' (a nil value).
  4. ^ Mullen & Panario 2013, p. 215
  5. ^ Lidl & Niederreiter 1997, p. 348
  6. ^ Lidl & Niederreiter 1997, p. 349
  7. ^ a b c Mullen & Panario 2013, p. 216
  8. ^ Lidl & Mullen (1988)
  9. ^ Lidl & Mullen (1993)
  10. ^ Dickson 1958, pg. 63
  11. ^ Mullen & Panario 2013, p. 217
  12. ^ Lidl & Mullen 1988, p. 244
  13. ^ a b Lidl & Niederreiter 1997, p. 351
  14. ^ Lidl & Niederreiter 1997, p. 356
  15. ^ a b Lidl & Niederreiter 1997, p. 362
  16. ^ Mullen & Panario 2013, p. 236
  17. ^ a b Mullen & Panario 2013, p. 238
  18. ^ Mullen & Panario 2013, p. 239
  19. ^ Lua error in Module:Citation/CS1/Configuration at line 2172: attempt to index field '?' (a nil value). For earlier research on this problem, see: Lua error in Module:Citation/CS1/Configuration at line 2172: attempt to index field '?' (a nil value). Lua error in Module:Citation/CS1/Configuration at line 2172: attempt to index field '?' (a nil value).
  20. ^ Mullen & Panario 2013, p. 230
  21. ^ 3GPP TS 36.212
  22. ^ Lua error in Module:Citation/CS1/Configuration at line 2172: attempt to index field '?' (a nil value).
  23. ^ Lua error in Module:Citation/CS1/Configuration at line 2172: attempt to index field '?' (a nil value).
  24. ^ Lua error in Module:Citation/CS1/Configuration at line 2172: attempt to index field '?' (a nil value).
  25. ^ Lua error in Module:Citation/CS1/Configuration at line 2172: attempt to index field '?' (a nil value).

References

[edit | edit source]
  • Lua error in Module:Citation/CS1/Configuration at line 2172: attempt to index field '?' (a nil value).
  • Lua error in Module:Citation/CS1/Configuration at line 2172: attempt to index field '?' (a nil value).
  • Lua error in Module:Citation/CS1/Configuration at line 2172: attempt to index field '?' (a nil value).
  • Lua error in Module:Citation/CS1/Configuration at line 2172: attempt to index field '?' (a nil value). Chapter 7.
  • Lua error in Module:Citation/CS1/Configuration at line 2172: attempt to index field '?' (a nil value). Chapter 8.
  • Lua error in Module:Citation/CS1/Configuration at line 2172: attempt to index field '?' (a nil value).