1. Introduction
A permutation array (PA) is a set of permutations on n symbols. Let n be a positive integer and let and be permutations over n symbols. and have a Hamming distance of at least D, denoted by , if in at least D different positions x. A PA A has Hamming distance D, denoted by , if every pair of distinct permutations in A has Hamming distance at least D. The maximum number of permutations, over all PAs A on n symbols with , is denoted by .
Let
denote the finite field over
elements, where
p is prime and
. The prime
p is called the
characteristic of the field. A polynomial
over
is a
permutation polynomial (
) if it permutes the elements of
. Let
be the number of PPs of degree
d over
. Lidl and Mullen [
1,
2] posed the problem of computing
. Dickson [
3] characterized all PPs of degree up to 5 and degree 6 for polynomials with odd characteristics. Hou [
4] gave a survey of recent results about PPs. Chu, Colbourn, and Dukes [
5], using a table of all PPs of degree at most five given by Lidl and Mullen [
1], counted the number of different PPs of degree at most 5. Shallue and Wanless [
6] described those of degree 6. Li, Chandler, and Xiang [
7] described PPs of degree 6 and 7 over a field of characteristic 2.
Much recent work has focused on computing large PAs with a given lower bound for their pairwise Hamming distance [
5,
8,
9,
10,
11,
12,
13,
14,
15,
16,
17,
18,
19]. Chu et al. [
5] showed that PPs can be used for lower bounds on
.
We find PPs of degree
d over
to obtain PAs with a large Hamming distance. Let
and
be two permutation polynomials of degree
d over
. Note that
and
can agree in at most
d points, because for every set of
points there is one and only one polynomial of degree
d that passes through them. So, the corresponding permutations must disagree in at least
positions. That is, the permutations have Hamming distance at least
. So, it follows that
. Chu et al. [
5] showed that, when
q is a prime power, the following is true:
If , then .
If
, then
( In [
5] a typo states
.)
An early version of this paper appears in [
20]. Because of its length, we have removed parts and refer the reader to [
20] for missing details.
Recent work has also been performed on permutation rational functions (PRFs), which also give many large permutation arrays [
11]. Let
and
be polynomials over
, such that
. Let
denote
. If the rational function
permutes the elements of
, then it is called a permutation rational function. The lower bounds on the sizes of PAs described in [
11] are summarized succinctly in
Table 1. Full details and exact values can be found in [
11]. For degrees 8 and 9, bounds are only known for
. For
d = 8, the bounds are of the form
c·
and
c·
, for some c > 0, for
and
, respectively. For
d = 9, the bounds are of the form
c·
and
c·
, for some c > 0, for
and
, respectively.
Fan [
21] obtained a classification of all permutation polynomials of degree 7 over
for any odd prime power
up to linear transformations. Fan also [
22] obtained a classification of all permutation polynomials of degree 8 over
for any odd prime power
up to linear transformations and proved that there are no PPs of degree 8 for finite fields of order
q when
. In addition, Fan [
23] described all PPs of degree 8 over finite fields of characteristic 2.
Let
be a degree
d permutation polynomial over
. A brute force search for such a degree
d permutation polynomials over
would require
time as there are
coefficients, with
q choices for each one, and, for each of these possibilities, one needs to examine the list of
q values formed by the
d terms of the polynomial on each element of
to see if the result is a permutation. Of course, the determination of whether
over
is a PP may terminate as soon as
, for distinct values
. This search technique is reminiscent of an
in that it tries all possibilities for coefficients, starting with low order terms first, and then proceeding to higher order terms. In this paper, we describe specific transformations of PPs, such as normalization and certain mappings, to restrict the search space, so that our odometer makes fewer turns than a brute force odometer. By using these methods we reduce the search time to
). We have implemented the improved search algorithm, and provide some improved lower bounds for
(Table 4), and Tables 3 and 5, which list values of
calculated by our program.
This paper is organized as follows. In
Section 2, we discuss normalization of PPs. Normalization fixes three coefficients, which improves the search time to
).
In
Section 3, we review transformations that map PPs to PPs, which we call the
and the
. As the
F-map allows us to restrict the range of another coefficient in a search for PPs, the time complexity is reduced to
.
In
Section 4, we describe uses of Hermite’s criterion, which allows the time complexity in some cases to be reduced again by an
factor.
Finally, in
Section 5, we present the results of our computations. We provide Table 3, in which we list specific values for
, and Table 5, in which we list the total number of PPs for
and degree
. We also include Table 4, giving some new lower bounds for
.
Notation. In this paper, we use
p to denote a prime and
to denote a power of the prime
p for some
. We use
d (
) to denote the degree of a PP
over the finite field
with field characteristic
p. Throughout this paper and in the tables at the end, we use the following notation for the elements of
.
has
non-zero elements, all of which can be listed as
, where
represents a generator of the multiplicative group of nonzero elements of
. We use the notation
. The elements of a finite field
can also be described as degree
m polynomials with coefficients from
[
24]. PPs can easily be converted from one notation to the other.
2. Normalization
Normalization facilitates our search for degree d PPs over a finite field by fixing certain coefficients. It is known that any PP can be transformed into a PP () by certain algebraic operations, which we describe shortly.
We describe nPPs by considering three cases based on the degree
d of the polynomial, the characteristic
p of the finite field, and whether
p divides
d. Let
be a degree
d polynomial with the coefficients as shown in statement (1) earlier. In all three cases, we have
is fixed at 1 and
is fixed at 0. In addition, when
p does not divide
d,
is fixed at 0 [
1].
In this paper, we use the names
c-normalization to denote the case where
,
m-normalization when
and
, and
b-normalization when
and
. In all three cases of normalization, searching for nPPs takes
time as three coefficients (positions) are fixed in the odometer process.
Table 2 summarizes the three types of normalization.
Here are some examples of normalized PPs:
The degree-9 PP over is c-normalized, as , and .
The degree-6 PP is over is m-normalized, as , and .
The degree-10 PP over is b-normalized, as , and (with and ).
An nPP is a representative of an equivalence class. We can make a more efficient search algorithm by searching for nPPs and the equivalence class they represent, rather than searching directly for PPs. The for a polynomial are as follows: (i) multiplying by a non-zero constant a, (ii) adding a constant c to , and (iii) adding a constant b to the argument x of . They can be summarized simply by the statement that, if is a PP over , then is a PP over .
The following result was given in [
20]. The proof is included here.
Theorem 1.
[
20]
Any PP where the degree d is a multiple of the field characteristic , can be transformed to an m-normalized PP by the normalization operations. Proof. Let
, and, for some
with
, let the following be true:
Observe that the degree
d term of
has the coefficient
. If we choose
a to be the multiplicative inverse of
, then the degree
d coefficient of
will be 1.
If , then , and the desired property is true. So, suppose that , and consider in . Since d is a multiple of p, the expansion of will derive nonzero coefficients only for terms whose degrees are multiples of p. Since , this means that , so will have a coefficient of 0 for the degree term. Hence, is calculated solely by the expansion of .
The expansion of will produce a term of degree with the coefficient where . The expansion of will produce a term of degree with the coefficient . Therefore, the coefficient of in is . Additionally, by algebra, is zero if . Since and is not a multiple of p, we can choose b such that is the additive inverse of , making in . So, in and either or .
If we choose c to be the additive inverse of the constant term of , then the constant term becomes zero. So, we achieve m-normalization. □
The following result was shown in [
20].
Theorem 2
([
20]).
Any PP over for some , and can be transformed to an b-normalized PP by the normalization operations, except when , for some . When the degree d of a PP is not a multiple of the field characteristic p, the PP can be c-normalized. As shown below, for any such PP , the there is a unique triple such that is c-normalized. Moreover, each equivalence class contains exactly one nPP, and each PP belongs to exactly one equivalence class. These properties allow us to count, for a given q and d, the number of PPs in each equivalence class.
Observation 1 Let be a degree d PP with characteristic p, where . Then, the triple such that is c-normalized is unique.
Proof. Let such that is c-normalized. The coefficient of its degree-d term is . Hence . The degree- term of is , so . (Note that ). Finally, since the constant term of , namely , is 0, c is uniquely determined by the constant term of . □
Let
be an nPP of degree
d. The equivalence class under the relation
containing
, denoted by
, is the following set:
Note that, if a triple is such that is normalized, then the triple transforms into .
Lemma 1.
Let be a c-normalized nPP of degree where . Then, all polynomials in are different.
Proof. Let , with and . One needs to show that, if , then . We show the contrapositive. Assume that the polynomials and in are equal. As the degree-d terms of and are equal, it must be that . Since the degree- terms are equal, . Then, as , and and (since d is not a multiple of p). Let e be the lowest degree term of . Then, the lowest degree terms of and are and , respectively. Thus, and the claim follows. □
Note that Lemma 1 implies that each equivalence class contains one and only one nPP. Thus, when d is not a multiple of p, each equivalence class contains exactly members (including the representative nPP). Note that the equivalence classes by definition are disjoint. If the number of nPPs is k, there are PPs. Similar statements apply for m-normalization and b-normalization.
We note that there is also an extended normalization operation, namely, multiplication of the variable, i.e., , for some nonzero constant s.
Extended normalization will come into play in
Section 3. It is customary in the literature to refer to the normalization operations applied to a PP
by
, where
a,
b, and
c are elements of the finite field, with
a being nonzero. References to extended normalization applied to a PP
, denoted by
, where
, and
s are elements of the finite field, with both
a and
s nonzero, appear, for example, in [
21,
22,
23], and have been called linear transformations. The equivalence relation defined by the extended normalization operations will be denoted by
.
3. Mapping nPPs to nPPs
We now describe the F-map and the G-map, two functions that map nPPs to nPPs. The F-map is the function that multiplies the degree term of by , for all , where t is a generator of the cyclic group of non-zero elements of . The F-map allows one additional coefficient to have its range severely restricted, as we shall see, resulting in an order of magnitude speedup in the search for PPs.
Let
be a degree
d polynomial, with coefficients as shown in statement (1) earlier. Then, the following is true:
Theorem 3
([
20]).
If is a nPP over , then is a nPP over . The iterates of the F-map, acting on, for example the coefficient
, yields the sequence of coefficients
. If
, then these coefficients are all distinct and contain all of the non-zero elements of
. That is, the following sequence:
This is a cycle in which the coefficient of the
term takes on each of the non-zero elements of
. In this case, one need only consider the possibilities that the coefficient of the
term is 0 or 1. Clearly, a coefficient 0 maps to itself under the F-map. Any other possible coefficient for the
term is mapped to by the sequence of F-map iterates when
. This means that one can examine the two cases, (1)
, and (2)
. In case (2), if
is a nPP, when
, then one can simply multiply the number of nPPs by
, and not explicitly consider nPPs with other non-zero choices for
. That is, the odometer for that coefficient can be fixed at 1.
On the other hand, if , where , then there are s cycles, each of length m, such that the non-zero elements of each appear once in one and only one of the s cycles. In this case, one only need consider the values for the coefficient .
It should be noted that one can choose the coefficient for any i (). In most cases, there is such an i such that .
As mentioned earlier, we have created a program that employs the efficiencies of normalization and F-maps and G-maps. We describe some of the improved results.
Example 1.
Consider degree-9 permutations of the form over . The form is restricted to possible c-normalized PPs, as , and . In this example, . We observe that , , , , , , and . Our program would select , as that is the smallest index i which gives one cycle under the F-map for all non-zero elements of . So, as d=9, , and the program only considers with and .
The program also calculates the number of nPPs in a given F-map cycle for any nPP found. For example, for the family of permutations given above, with , it finds that the nPP is an nPP over . Here, , , , , , and . As each of the non-zero coefficients in is in a cycle of length 2 or a multiple of 2, the number of nPPs in the F-map cycle is .
Consider a finite field , where , and a permutation over . The G-map is a function that raises each coefficient in to the power p.
Let
be a degree d polynomial, with coefficients as shown in statement (1) earlier. Then, the following is true:
The iterates of the G-map, acting on, for example, the coefficient , yields the sequence of coefficients . This allows one to restrict the range of values considered by our odometer program for a coefficient .
Example 2.
Consider degree-9 permutations over of the form . As stated earlier, the form is restricted to possible c-normalized PPs, as , and . In this example, . The program also calculates the number of nPPs in a given G-map cycle for any nPP found. For example, for the family of permutations given above, with , it finds that the nPP is an nPP over . Observe that , which is not in the F-map cycle of , as the coefficient for remains 1, but other coefficients have changed. In fact, for each of the 24 nPPs in the F-map cycle of , applying the G-map to each gives a nPP that is not in the F-map cycle [20]. So, the program automatically calculates, in this example, that there are 48 nPPs corresponding to by applying the F-map and G-map. Our examples have focused on c-normalization. We note that F-maps and G-maps can also be used for m-normalization and b-normalization.
Theorem 4
([
20]).
Let p be a prime and and let with . If is a nPP over , then is a nPP over . These two functions, the F-map and G-map, transform PPs into other PPs and nPPs into other nPPs. These functions can be applied sequentially. It is interesting to note that two different sequences of compositions can represent the same transformation. This is illustrated by the following diagram, which indicates that is the same as , for all PPs .
The equivalence relations
and
, which we described in
Section 2, allow a more efficient search for PPs by limiting the search to nPPs. More inclusive equivalence relations would optimize the search even further, by allowing the search to be restricted to representatives of equivalence classes. In this section, we introduce new equivalence relations, based on the
F-map and the
G-map and iterations of the maps, that merge equivalence classes, thereby compressing the search space considerably. We begin with an equivalence relation induced by the
F-map.
Definition 1.
Let and be PPs. If can be converted into by some sequence consisting of normalization operations and F-map operations, then and are related by .
We have seen that the iterates of the F-map form a cycle. Moreover, if is an nPP, then the F-cycle on is a cycle of nPPs.
Lemma 2
([
20]).
The equivalence relations and are the same. We can choose any nPP in an equivalence class to be the representative for the class. For convenience, we usually choose the term of largest degree which has the longest cycle under the F-map. Additionally, for each such cycle for that term, we choose the smallest coefficient in the cycle. for a specific chosen degree to be the representative. To illustrate, let be an nPP in some equivalence class, let the specific degree be for some k, and consider the the coefficient of , namely . Let the multiplicative inverse of be for some i. Suppose the length of the F-cycle on is . Then, sequence includes every nonzero element in . Specifically, for one element in the F-cycle, say the i-th one, . In other words, in the nPP , the coefficient of takes the value 1. So, in this case we choose to be the representative of the equivalence class, making the search for nPPs more efficient since the coefficient of can be fixed to 1. Notice that, if the length of the F-cycle on is less than , then there may be a nPP with a nonzero coefficient, but not one with the coefficient equal to 1. In that case, if the cycle length is , for some , then one needs to search for nPPs with a coefficient equal to each of the values . Also, if there is an nPP whose coefficient is zero, it would be chosen as the representative for the equivalence class.
So, again, in our search for all permutation polynomials over for a given q, we can reduce the search to the space of normalized PPs which are representatives of an F-map equivalence class. Specifically, when the degree of the polynomial is not a multiple of the field characteristic, we can restrict the search to polynomials , where , , and ranges over all cycle representatives. We choose a value of i, so that the coefficient has the longest cycle. When the degree is a multiple of the field characteristic, and the characteristic is not 2, we restrict the search to polynomials , where , , and one of the following cases (1) , and (2) and . The statement is similar when the field characteristic is 2 and the degree of the polynomial is even.
For example, consider the nPP = for , with the primitive polynomial . As there are 31 non-zero elements in , and 31 is prime, the length of the F-cycle on is 31. The iterates of G-map on the coefficient 16 give the G-cycle , which has a length of 5. So, denotes an equivalence class with nPPs. Although the G-map (unlike the F-map) does not allow, in general, an additional coefficient to be fixed, when used with the F-map, it does allow a more efficient search.
4. Using Hermite’s Criterion
The following is a statement derived from Hermite’s criterion [
3,
22,
25].
Theorem 5
([
25]).
If is a PP over , then for each k, with , the sum of the coefficients of in , over all positive integers , must be 0. Theorem 5 can be used to fix another coefficient in a nPP beyond those already described.
For example, let be a nPP of degree 11 over . By Theorem 5, in the coefficient of must be 0. As the coefficients and of are, respectively, 1 and 0, computing the coefficients of by expansion, one finds that the coefficient of is simply . So, in searching for degree 11 nPPs over one can fix the coefficient to be 0. That means, to summarize, in searching for degree 11 nPPs over , by normalization, one fixes coefficients , , and to 1, 0, and 0, respectively. By using Hermite’s criterion, one can fix to be 0 and, by the F-map, one can fix to be either 0 or 1. As far as we know, one needs to try all possible combinations of elements of for the seven remaining coefficients. That is, different combinations, which is large, but smaller, of course, than . Specifically, the computation of all these possibilities can be done in a few days, rather than in a few months.
In a similar manner, using Hermite’s criterion and the nPP = + + … +, one can give additional examples:
- (a)
In over , the coefficient of must equal 0, so . That is, , i.e., the value of depends on the value of .
- (b)
In over , the coefficient of must equal 0, so , i.e., .
Our search for all nPPs over a given finite field uses such examples from Hermite’s criterion for efficient computations. That is, the program allows a particular set of coefficients to be fixed to a set of chosen values. For example, in example (b) above, the program allows one to fix the coefficient to be zero. Clearly, fixing any set of coefficients to a specified set of values makes the program terminate quicker.
The idea of fixing a set of chosen coefficients to a specified set of values also allows one to search for PPs in a distributed manner. For example, we computed all PPs of degree 13 over using this approach. So, for polynomials of the form , by c-normalization, we fixed three coefficients, namely , , and . By the use of F-maps we fixed coefficient to two possible values, namely, 0 and 1. (We chose , for the F-map, as , and gcd(5,18)=1. That is, the F-cycle on has maximum length.) By choice, for the sake of using a distributed approach, we separately fixed to be each of the nineteen possible values in , and ran the program on each of these nineteen choices simultaneously, using different CPUs.
The result is
. So,
. This is a slight improvement over the previous lower bound of 933,426,695,689 [
8].
5. Results
As stated in
Section 1, a brute force search for degree
d permutation polynomials over
requires
time. Normalization operations are defined in [
1]. For example, for PPs in which
, the operation fixes three of the coefficients and, therefore, reduces the time to
. We improved the time bound to
by fixing an additional coefficient by the F-map and, in many cases, improved the time bound to
by the use of Hermite’s criterion. Our program also allows a specified set of coefficients to be fixed at specified values. This is needed in our use of the Hermite criterion and allows for the search to be distributed.
Our results are shown in Table 5, which lists the total number of PPs for
and degree
d, where
. For degrees
, all PPs have been described; for example, in [
5]. More recent work [
6,
7,
21,
22,
23] gives all PPs of degree
. We list some of these in Table 5 for completeness. Table 5 does not have columns for
. However, we include some values for
in
Table 3. This yields
, and
.
We note that it was stated in [
26] that 32 h were required to compute the RS code for
and
; for
and
, the authors were able to compute only the size of the set of PPs, not the set itself. Our program allows for the computation of all nPPs, for
and
, in a few seconds and, for
and
, in about 10 min.
Our results on the number of PPs also give some new lower bounds for
. These are given in
Table 4 using
, and the values of
given in
Table 3,
Table 5 and separately in the text. We note that the lower bound
, for a prime power
and
, is given in [
8]. Here are some examples of computations to determine the competitiveness of our bounds:
:
. Previous lower bound in [
8] is
. Our bound is slightly better.
:
. A lower bound of 4,258,658,638 is given in [
8], so our bound is not competitive.
:
. A lower bound of 14,353,040,302 is given in [
9], so our bound is not competitive.
:
. A lower bound of 2,319,933,000 for M(25,16) is given in [
11]. Since
[
5], our bound is not competitive.
: . Using the previous item, we have . So, our bound is better than the previous ones.
:
. A lower bound of
is given in [
11], which also gives, of course, the same lower bound for
. Our bound is larger.
Table 4.
Some new lower bounds for .
Table 4.
Some new lower bounds for .
n | D | ≥ | Previou |
---|
16 | 5 | 5,112,053,760 | 5,108,103,000
[8] |
19 | 6 | 933,551,546,094 | 933,426,695,689 [8] |
19 | 7 | 49,196,963,448 | 49,127,770,826 [9] |
25 | 14 | 6,766,439,400 | 2,319,933,000 [11] |
81 | 72 | 3,100,041,120 | 2,934,438,840 [11] |
Table 5.
Total number of PPs for and degree d, where .
Table 5.
Total number of PPs for and degree d, where .
q/d | 7 | 8 | 9 | 10 | 11 |
---|
11 | 272,250 | 3,332,340 | 36,281,850 | | |
13 | 233,220 | 2,798,640 | 33,948,720 | 442,144,560 | |
16 | 829,440 | 3,555,840 | 16,128,000 | 340,224,000 | 4,751,093,760 |
17 | 966,416 | 0 | 13,978,352 | 234,011,392 | 4,001,494,000 |
19 | 727,776 | 5,614,272 | 0 | 126,996,912 | 2,431,915,488 |
23 | 1,035,782 | 1,792,252 | 35,984,696 | 586,578,476 | 0 |
25 | 675,000 | 0 | 15,570,000 | 240,768,000 | 6,509,295,000 |
27 | 265,356 | 6,899,256 | 20,744,100 | 134,535,492 | 2,826,989,100 |
29 | 0 | 753,536 | 41,232,548 | 36,923,264 | 1,014,518,484 |
31 | 3,055,980 | 864,900 | 18,162,900 | 0 | 385,053,880 |
32 | 1,015,808 | 19,467,008 | 9,872,384 | 407,434,240 | 190,940,160 |
37 | 1,823,508 | 0 | 0 | 10,645,344 | 446,266,620 |
41 | 67,240 | 0 | 22,256,440 | 0 | 52,581,680 |
43 | 0 | 0 | 3,261,636 | 7,610,484 | 17,473,060 |
47 | 0 | 4,775,858 | 11,787,224 | 0 | 58,631,278 |
49 | 9,316,272 | 0 | 11,063,808 | 1,843,968 | 260,114,736 |
53 | 7,741,604 | 0 | 7,741,604 | 0 | 11,539,372 |
59 | 11,911,982 | 0 | 23,622,066 | 0 | 11,911,982 |
61 | 13,618,860 | 0 | 0 | 0 | |
64 | 0 | 326,462,976 | 0 | 85,155,840 | 43,610,112 |
67 | 19,850,358 | 0 | 0 | 0 | |
71 | 0 | 0 | 25,053,770 | 0 | |
73 | 28,009,224 | 0 | 0 | 0 | |
79 | 38,457,042 | 0 | 0 | 0 | |
81 | 42,515,280 | 0 | 3,057,853,680 | 0 | |
83 | 564,898 | 0 | 46,886,534 | 0 | |
89 | 62,037,272 | 0 | 62,037,272 | 0 | |
97 | 903,264 | 0 | 0 | 0 | |
Additional improved lower bounds can be obtained from those shown in
Table 4 using inequalities, such as
[
5], or the operation of contraction [
10].