1 Introduction

In the 1970s, Alltop [1] began research into wireless signal sets with low correlation for use as signals in CDMA systems. In 1980, Alltop successfully constructed periodic sequences which came close to the known bounds for use in these systems, using a cubic polynomial over the field \({\mathbb {F}}_{p}\) where p was a prime greater than 3.

This construction was extended to all prime power fields \({\mathbb {F}}_{p^{r}}\) for \(p > 3, r \ge 1\) and used to construct mutually unbiased bases (MUBs) [9]. MUBs are important for quantum key distribution algorithms and CDMA signal sets [3].

Identifying a MUB is a computationally expensive process which is being explored numerically [5]. As such, exploring Alltop functions potentially adds to the space of MUBs that could be used for quantum key distribution algorithms. There are two known families of Alltop functions [1, 7] which are both suitable for MUBs and CDMA signal set constructions. These applications motivate further searches for Alltop functions. There has been recent computational work in this direction [8].

In 2013, a family of Alltop functions was discovered which is inequivalent to the cubic polynomial introduced by Alltop in 1980 [7]. We continue from this family, exploring polynomials in order to search for additional families of Alltop functions. The computational complexity of naively verifying an Alltop functions is not practical. For this reason, our focus in this paper is on refining the search space of Alltop functions and reducing the computations required to verify an Alltop function.

Throughout this paper, we cover the following. In Sect. 2, we describe the known literature surrounding planar functions and Alltop functions. In Sect. 3, the existing families of Alltop functions are discussed and the form of Alltop functions is further explored. Section 4 introduces the characteristic cubic (CC) polynomial. The naive (exhaustive) computational requirements are also discussed here before a theoretical approach is taken in Sect. 5-7 which significantly reduces the computational requirements for verifying Alltop monomials. An improved process is set out in Sect. 8, followed by some computational results and related conjectures in Sect. 9. Finally, the results are summarized in Sect. 10.

2 Preliminaries

Planar functions and Alltop functions are defined in terms of the difference function, the discrete analogue of a derivative.

Definition 1

(Difference function) Let (G,+) be a group and \(\alpha \) be a nonzero element of (G,+). Given a function f over (G,+), the difference function is defined as \(\Delta _{f,\alpha } : g \mapsto f(g + \alpha ) - f(g)\).

We next formally define both planar functions and Alltop functions.

Definition 2

(Planar function) [2] Let \({\mathbb {F}}_{p^{r}}\) be a finite field of prime characteristic p. A function \(f : {\mathbb {F}}_{p^{r}} \rightarrow {\mathbb {F}}_{p^{r}}\) is called a planar function if, for every \(\alpha \in {\mathbb {F}}^{*}_{p^{r}}\), the difference function, \(\Delta _{f,\alpha }\), is a bijection (i.e. a permutation).

The definition of Alltop functions builds on the definition of planar functions.

Definition 3

(Alltop function) [6] Let \({\mathbb {F}}_{p^{r}}\) be a finite field of prime characteristic p. A function \(A : {\mathbb {F}}_{p^{r}} \rightarrow {\mathbb {F}}_{p^{r}}\) is called an Alltop function if, for every \(\alpha \in {\mathbb {F}}^{*}_{p^{r}}\), the difference function, \(\Delta _{A,\alpha }\), is a planar function.

As we apply the difference operator twice to determine whether a given polynomial is an Alltop function, we use \(\alpha \) for the first application of the difference function (the planar step) and \(\beta \) for the second application of the difference function (the permutation step). It is known that planar functions do not exist when \(p = 2\) [11] and that Alltop functions do not exist when \(p = 3\) [6]. Therefore, when discussing Alltop functions, we note that \(p \ge 5\). The property of a function being planar is preserved when the function is composed with an additive (or linearized) polynomial [2].

Definition 4

(Linearized polynomial) [2] A function \(L(x) : {\mathbb {F}}_{p^{r}} \rightarrow {\mathbb {F}}_{p^{r}}\) is called additive or linearized if \(L(x) + L(y) = L(x + y)\) for all \(x, y \in {\mathbb {F}}_{p^{r}}\). All linearized functions on \({\mathbb {F}}_{p^{r}}\) have the shape

$$\begin{aligned} L(x) = \sum \limits _{k=0}^{r-1} a_{k}x^{p^{k}}, \end{aligned}$$
(1)

where \(a_{k} \in {\mathbb {F}}_{p^{r}}\).

All known planar functions on fields of characteristic \(p \ge 5\) have the shape of a Dembowski-Ostrom (DO) polynomial [4].

Definition 5

(Dembowski-Ostrom polynomial) [2] A function \(D(x) \in {\mathbb {F}}_{p^{r}}[x]\) is a Dembowski-Ostrom (DO) polynomial if, for \(a_{ij} \in {\mathbb {F}}_{p^{r}}\), D(x) has the form

$$\begin{aligned} D(x) = \sum \limits _{i,j=0}^{r-1} a_{ij}x^{p^{i} + p^{j}} \end{aligned}$$
(2)

Equivalence is important to consider in this case as we are dealing with a finite number of polynomials and want to know how many are unique given a specific field.

Definition 6

[7] Two functions, \(f_{1}, f_{2}\), are extended affine (EA) equivalent if there exist affine functions \(l_{1},l_{2},l_{3}\) such that

$$\begin{aligned} f_{1}(x) = l_{1} \circ f_{2}\circ l_{2}(x) + l_{3}(x), \end{aligned}$$

where \(l_{1}(x),l_{2}(x)\) are permutations.

We apply this definition to planar and Alltop functions.

Lemma 1

[2] Let \(l_{1},l_{2},l_{3}\) be affine functions with \(l_{1}(x)\) and \(l_{2}(x)\) permutations. If \(\Pi (x)\) is a planar function on \({\mathbb {F}}_{p^{r}}\) and

$$\begin{aligned} \Pi '(x) = l_{1} \circ \Pi \circ l_{2}(x) + l_{3}(x) \end{aligned}$$
(3)

then \(\Pi '(x)\) is also a planar function and is EA-equivalent to \(\Pi (x)\).

Any function which is EA-equivalent to a planar function is itself a planar function [2], therefore, all planar functions can be partitioned into EA-equivalence classes. This also holds true for Alltop functions.

Lemma 2

[7] Let \(l_{1},l_{2},l_{3}\) be affine functions with \(l_{1}(x)\) and \(l_{2}(x)\) permutations, and D(x) a DO polynomial. If A(x) is an Alltop polynomial on \({\mathbb {F}}_{p^{r}}\) and

$$\begin{aligned} A'(x) = l_{1} \circ A \circ l_{2}(x) + D(x) + l_{3}(x) \end{aligned}$$
(4)

then \(A'(x)\) is also an Alltop polynomial and is EA-equivalent to A(x).

3 Families of Alltop functions

There are two existing families of Alltop functions. The first family is the cubic function \(A(x) = x^{3}\) which exists over any field \({\mathbb {F}}_{p^{r}}\) for characteristic \(p \ge 5\) [1, 9]. The second family was discovered in 2013 by Hall, Rao and Gagola [7].

Theorem 1

[7] Let \(p \ge 5\) be an odd prime and r an integer such that 3 does not divide \(p^{r}+1\). Then, \(A(x) = x^{p^{r}+2}\) is an Alltop polynomial over \({\mathbb {F}}_{p^{2r}}\).

The constraints of both field and characteristic in Theorem 1 suggest that further Alltop functions may exist and could also form an infinite family. We begin our exploration by assessing the result when two difference operators are applied to a polynomial. For a polynomial, \(f(x) = \sum \limits _{i = 0}^{n} a_{i}x^{i}\), of degree n over the field \({\mathbb {F}}_{p^{r}}\), the first difference function simplifies to

$$\begin{aligned} \Delta _{f,\alpha }(x) = \sum \limits _{i = 0}^{n-1} a_{i}\Bigg (\sum \limits _{k = 0}^{i-1} \left( {\begin{array}{c}i\\ k\end{array}}\right) x^{k}\alpha ^{i-k}\Bigg ) + a_{n}\Bigg (\sum \limits _{k = 0}^{n-1} \left( {\begin{array}{c}n\\ k\end{array}}\right) x^{k}\alpha ^{n-k}\Bigg ). \end{aligned}$$
(5)

This leads to the following result.

Lemma 3

Let \(f(x) = \sum \limits _{i = 0}^{n} a_{i}x^{i}\) be a polynomial of degree n over a field \({\mathbb {F}}_{p^{r}}\). Then, \(\Delta _{f,\alpha }(x)\) is a polynomial of degree \(\le n - 1\), with equality holding iff \(p \not \mid n\).

Lemma 3 can be extended to second difference functions.

Corollary 1

Let \(f(x) = \sum \limits _{i = 0}^{n} a_{i}x^{i}\) be a polynomial of degree n. Then, \(\Delta _{\Delta _{f,\alpha },\beta }(x)\) is a polynomial of degree \(n - 2\) iff \(p \not \mid n\) and \(p \not \mid (n-1)\).

Thus, for \(p \ge 5\), applying any two difference operators to the cubic function, \(x^{3}\), yields a linear function. Polynomials of lower order similarly reduce to constant functions, which cannot be permutations. Turning to higher order polynomials, we next see that Alltop functions of degree 4 do not exist.

Lemma 4

A quadratic function is not a permutation over any field of characteristic \(p \ge 3\).

Proof

Let \(f(x) = ax^{2}+bx + c\) be a quadratic function over a field, \({\mathbb {F}}\), where \(a \ne 0\). If \(b \ne 0\), then \(-a^{-1}b \ne 0\) but \(f(-a^{-1}b) = f(0) = c\). If \(b = 0\) but \(p \ne 2\), then \(\exists x\) with \(-x \ne x\) and \(f(-x) = f(x) = ax^2 + c\).

Either way, there exist distinct x and y with \(f(x) = f(y)\), so f is not a permutation. \(\square \)

Lemma 5

There does not exist an Alltop function of degree 4 over any field of characteristic \(p \ge 5\).

Proof

Result follows from Corollary 1 and Lemma 4. \(\square \)

Note that, Lemma 5 may not extend to all functions of even degree. An example of an even degree permutation polynomial is the function \(f(x) = x^{4} \pm 3x \in {\mathbb {F}}_{7}\) [10] which, by Corollary 1, allows the existence of even degree Alltop functions.

Table 1 Number of \(\Delta _{\Delta _{f,\alpha },\beta }(x)\) calculations required to exhaustively verify whether all possible CC monomials are Alltop functions over some example finite fields

4 Alltop function search space

We are interested in reducing the search space of Alltop functions, as an improved search speed may enable the discovery of additional Alltop functions. We begin by arguing that it is reasonable to reduce the search space from all polynomials over \({\mathbb {F}}\) to a general form related to the requirement that the second difference function of an Alltop function must be a permutation. Even so, for a naive search, the number of operations required to identify whether a polynomial is an Alltop function is too large to be considered feasible (see Table 1, details explained later) and so we also consider ways to reduce this computational load.

In order to find a general form, we seek to identify polynomials f(x) for which \(\Delta _{\Delta _{f,\alpha },\beta }(x)\) is most likely to be a permutation function. Considering the infinite family of Alltop functions given by Hall et al. [7], as well as Alltop’s cubic function [1], we note that these families share the form \(x^{p^{k}+p^{j}+p^{i}}\).

$$\begin{aligned} x^{p^{r}+2}&= x^{p^{r}+p^{0}+p^{0}}. \end{aligned}$$
(6)
$$\begin{aligned} x^{3}&= x^{p^{0}+p^{0}+p^{0}}. \end{aligned}$$
(7)

Both Eqs. (6) and (7) match the following form that is given in [7] relating to function equivalence.

Lemma 6

[7] Let p be an odd prime and r a positive integer. Any function f over \({\mathbb {F}}_{p^{r}}\) of the form

$$\begin{aligned} f(x) = \sum \limits _{0\le k,j,i < r} a_{kji}x^{p^{k}+p^{j}+p^{i}} \end{aligned}$$
(8)

such that \(a_{kji} = 0\) for \(k = j = i\), is EA-inequivalent to \(x^3\).

This form is useful since, as we show in Lemmas 7 and 8, only functions of this form relate to DO polynomials.

Definition 7

(Characteristic Cubic polynomial) Let p be an odd prime and r a positive integer. We denote polynomials over \({\mathbb {F}}_{p^{r}}\) of the form

$$\begin{aligned} f(x) = \sum \limits _{0\le k,j,i < r} a_{kji}x^{p^{k}+p^{j}+p^{i}} \end{aligned}$$

to be characteristic cubic (CC) polynomials.

Lemma 7

Let p be an odd prime, r a positive integer and f(x) a polynomial over \({\mathbb {F}}_{p^{r}}\) of the form \(f(x) = \sum \limits _{0\le k,j,i < r} a_{kji}x^{p^{k}+p^{j}+p^{i}}\). Then, \(\Delta _{f,\alpha }(x)\) is EA-equivalent to a DO polynomial.

Proof

Consider the monomial \(f(x) = x^{p^{k}+p^{j}+p^{i}}\) on finite field \({\mathbb {F}}_{p^{r}}\).

$$\begin{aligned} \Delta _{f,\alpha }(x) =&(x + \alpha )^{p^{k}+p^{j}+p^{i}} - x^{p^{k}+p^{j}+p^{i}} \\ =&(x^{p^{k}}+\alpha ^{p^{k}})(x^{p^{j}}+\alpha ^{p^{j}})(x^{p^{i}}+\alpha ^{p^{i}}) - x^{p^{k}+p^{j}+p^{i}} \\ =&x^{p^{k}+p^{j}}\alpha ^{p^{i}}\! + x^{p^{k}+p^{i}}\alpha ^{p^{j}}\! + x^{p^{k}}\alpha ^{p^{j}+p^{i}}\! + x^{p^{j}+p^{i}}\alpha ^{p^{k}} \\&+ x^{p^{j}}\alpha ^{p^{k}+p^{i}} + x^{p^{i}}\alpha ^{p^{k}+p^{j}} + \alpha ^{p^{k}+p^{j}+p^{i}} \end{aligned}$$

We can then classify each of the components as follows:

$$\begin{aligned} D(x)&= x^{p^{k}+p^{j}}\alpha ^{p^{i}} + x^{p^{k}+p^{i}}\alpha ^{p^{j}} + x^{p^{j}+p^{i}}\alpha ^{p^{k}} \end{aligned}$$
(9)
$$\begin{aligned} L(x)&= x^{p^{k}}\alpha ^{p^{j}+p^{i}} + x^{p^{j}}\alpha ^{p^{k}+p^{i}} + x^{p^{i}}\alpha ^{p^{k}+p^{j}} \end{aligned}$$
(10)
$$\begin{aligned} c&= \alpha ^{p^{k}+p^{j}+p^{i}} \end{aligned}$$
(11)

Hence, \(\Delta _{f,\alpha }(x) = D(x) + L(x) + c = D'(x)\) which is EA-equivalent to a DO polynomial.

More generally, if f(x) is a polynomial with \(n>1\) terms, then \(\Delta _{f,\alpha }(x) = D'_{1}(x) + D'_{2}(x) + \dots + D'_{n}(x)\) in similar fashion. Since the sum of two DO polynomials is EA-equivalent to a DO polynomial [2], \(\Delta _{f,\alpha }(x)\) is EA-equivalent to a DO polynomial. \(\square \)

Further, we show that, over \({\mathbb {F}}_{p^{r}}\), only polynomials EA-equivalent to CC polynomials have difference functions that are EA-equivalent to DO polynomials.

Lemma 8

Let p be an odd prime, r is a positive integer and \(\alpha \in {\mathbb {F}}_{p^{r}}^{*}\). If \(\Delta _{f,\alpha }(x)\) is a DO polynomial, then the function f(x) must be EA-equivalent to a CC polynomial.

Proof

If \(\Delta _{f,\alpha }(x)\) is a DO polynomial, then, from Lemma 3, f(x) must be EA-equivalent to the form

$$\begin{aligned} f(x) = \sum \limits _{0\le k,j \le r} a_{kj}x^{p^{k} + p^{j}+u_{kj}}, \end{aligned}$$

where \(u_{kj} \ge 1\). Consider the application of the difference operator upon f(x). From Lemma 7, each monomial \(x^{p^{k}+p^{j}+u_{kj}}\) gives the following difference function

$$\begin{aligned} \Delta _{f,\alpha }(x)&= (x + \alpha )^{p^{k}}(x + \alpha )^{p^{j}}(x + \alpha )^{u_{kj}} - x^{p^{k}+p^{j}+u_{kj}} \\&= (x^{p^{k}}+\alpha ^{p^{k}})(x^{p^{j}}+\alpha ^{p^{j}})(x + \alpha )^{u_{kj}} - x^{p^{k}+p^{j}+u_{kj}} \end{aligned}$$

The leading term of \((x + \alpha )^{u_{kj}}\) gives a difference function \(\Delta _{f,\alpha }(x)\) which contains the terms \(x^{p^{k}+u_{kj}}\) and \(x^{p^{j}+u_{kj}}\). Hence, \(\Delta _{f,\alpha }(x)\) is EA-equivalent to a DO polynomial only if \(u_{kj} = p^{i}\), for some \(0 \le i < r\). Hence, if \(\Delta _{f,\alpha }(x)\) is a DO polynomial, then the function f(x) must be EA-equivalent to a CC polynomial. \(\square \)

As noted above, all known planar functions on fields \({\mathbb {F}}_{p^{r}}\) for \(p \ge 5\) are DO polynomials [4]. The results of Lemmas 7 and 8 therefore reduce the search space of likely Alltop functions to CC polynomials. For simplicity, we will consider monomials of this form from now on.

Note that, not all CC polynomials are Alltop functions, though all known Alltop functions are EA-equivalent to CC polynomials. If an Alltop function g(x) is found that is not equivalent to a CC polynomial, the planar function \(\Delta _{g,\alpha }(x)\) must be non-equivalent to a DO polynomial. To quantify the reduced search space, the number of CC monomials over any finite field can be calculated; in fact, it is straightforward to show that the number of monomials of the form \(f(x) = x^{p^{k}+p^{j}+p^{i}}\) over \({\mathbb {F}}_{p^{r}}\), where \(i,j,k < r\), is equal to \(\frac{r(r+1)(r+2)}{6}\).

Understanding the number of CC monomials over a field allows us to begin computational exploration. In order to exhaustively verify the Alltop function requirements computationally, we are required to perform the following steps.

Exhaustive Process:

Given a candidate function f(x) over \({\mathbb {F}}_{p^{r}}\):

  1. 1.

    For each \(\alpha , \beta \in {\mathbb {F}}_{p^{r}}^{*}\), calculate the second difference function, \(\Delta _{\Delta _{f,\alpha },\beta }(x)\).

  2. 2.

    Evaluate \(\Delta _{\Delta _{f,\alpha },\beta }(x)\) for all \(x \in {\mathbb {F}}_{p^{r}}\).

  3. 3.

    Inspect the range to determine whether \(\Delta _{\Delta _{f,\alpha },\beta }(x)\) is a permutation function.

  4. 4.

    If \(\Delta _{\Delta _{f,\alpha },\beta }(x)\) is a permutation function for all \(\alpha , \beta , x\), then f(x) is an Alltop function. Otherwise, f(x) is not an Alltop function.

Exhaustive computation therefore requires \(p^{r}\times (p^{r}-1)^{2}\) evaluations of \(\Delta _{\Delta _{f,\alpha },\beta }(x)\) to successfully identify a monomial as an Alltop function, and therefore, \(1/6 \times r(r+1)(r+2) \times p^{r} \times (p^{r} - 1)^{2}\) evaluations of \(\Delta _{\Delta _{f,\alpha },\beta }(x)\) are needed to verify all CC monomials in a given field. Table 1 presents the number of \(\Delta _{\Delta _{f,\alpha },\beta }(x)\) calculations for some example fields.

Note that, the calculations presented are maximums, as the verification process can be terminated for a specific function f(x) as soon as we know that \(\Delta _{\Delta _{f,\alpha },\beta }(x)\) is not a permutation function. As the field size increases, the number of \(\Delta _{\Delta _{f,\alpha },\beta }(x)\) evaluations required in this exhaustive process becomes too large to feasibly compute. For Alltop functions, the exhaustive process will never terminate early.

There is structure within the field that can be exploited to achieve greater efficiency.

5 Subgroups and cosets

We explore the structure of CC polynomials over finite fields by assessing the application of the difference operator on a general CC monomial. From Lemma 7, the form of \(\Delta _{f,\alpha }(x)\) over \({\mathbb {F}}_{p^{r}}\) for \(f(x) =\, x^{p^{k}+p^{j}+p^{i}}\) is as follows.

$$\begin{aligned} \Delta _{f,a}(x) =\,&x^{p^{k}+p^{j}}\alpha ^{p^{i}} + x^{p^{k}+p^{i}}\alpha ^{p^{j}} + x^{p^{j}+p^{i}}\alpha ^{p^{k}} + x^{p^{k}}\alpha ^{p^{j}+p^{i}} + x^{p^{j}}\alpha ^{p^{k}+p^{i}}\\&+ x^{p^{i}}\alpha ^{p^{k}+p^{j}} + \alpha ^{p^{k}+p^{j}+p^{i}} \end{aligned}$$

By the same process, \(\Delta _{\Delta _{f,\alpha },\beta }(x)\) is found to have the form

$$\begin{aligned} \Delta _{\Delta _{f,\alpha },\beta }(x) =\,&(\beta ^{p^{j}}\alpha ^{p^{i}}\! + \beta ^{p^{i}}\alpha ^{p^{j}})x^{p^{k}}\! + (\beta ^{p^{k}}\alpha ^{p^{i}}\! + \beta ^{p^{i}}\alpha ^{p^{k}})x^{p^{j}} + (\beta ^{p^{k}}\alpha ^{p^{j}}\\&+ \beta ^{p^{j}}\alpha ^{p^{k}})x^{p^{i}}\! + c \end{aligned}$$
Fig. 1
figure 1

Evaluations of \(\Delta _{\Delta _{f,\alpha },\beta }(x)\) (y-axis) against inputs x (x-axis) as discussed in Sect. 5. The function plotted is the second difference function of \(f(x) = x^{7}\) over \({\mathbb {F}}_{5^{2}}\), with \(\alpha = 1\) and \(\beta = \zeta + 3 = \zeta ^{2}\) and shows clustering. The primitive polynomial used to generate the field is \(x^{2} + 4x + 2\)

with the constant term

$$\begin{aligned} c&=\alpha ^{p^{k}+p^{j}}\beta ^{p^{i}} + \alpha ^{p^{k}+p^{i}}\beta ^{p^{j}} + \alpha ^{p^{j}+p^{i}}\beta ^{p^{k}}\\&\quad +\, \alpha ^{p^{k}}\beta ^{p^{j}+p^{i}} + \alpha ^{p^{j}}\beta ^{p^{k}+p^{i}} + \alpha ^{p^{i}}\beta ^{p^{k}+p^{j}}. \end{aligned}$$

In order to see the structure present in the range of \(\Delta _{\Delta _{f,\alpha },\beta }(x)\) for a non-Alltop function, we plot an example case. The evaluations of a second difference function of \(f(x) = x^{7}\) over \({\mathbb {F}}_{5^{2}}\) are plotted in Fig. 1, where \(\zeta \) is used to represent a primitive element.

The graph in Fig. 1 suggests that a subgroup structure exists among non-Alltop functions. We demonstrate this structure by displaying the subgroup and the 1-coset for the example from Fig. 1 in Table 2. This result is explained by [10], Theorem 3.50: In particular, the solutions of \(\Delta _{\Delta _{f,\alpha },\beta }(x) = \Delta _{\Delta _{f,\alpha },\beta }(0)\) form a subgroup of the additive group of \({\mathbb {F}}_{p^r}\).

Theorem 2

[10] Let L(x) be a nonzero linearised polynomial over \({\mathbb {F}}_{p^r}\) and let the extension field \({\mathbb {F}}_{p^s}\) of \({\mathbb {F}}_{p^r}\) contain all the roots of L(x). Then, each root of L(x) has the same multiplicity, which is either 1 or a power of p, and the roots form a linear subspace of \({\mathbb {F}}_{p^s}\), where \({\mathbb {F}}_{p^s}\) is regarded as a vector space over \({\mathbb {F}}_{p}\).

This is an important result which shows that we no longer have to verify all outputs \(\Delta _{\Delta _{f,\alpha },\beta }(x)\) as permutations across all \(\alpha , \beta \) for a given function. Theorem 2 also shows that if the subgroup, \({\textbf{G}}\), given by the solutions to \(\Delta _{\Delta _{f,\alpha },\beta }(x) = \Delta _{\Delta _{f,\alpha },\beta }(0)\) is non-trivial, then it has cardinality \(|{\textbf{G}}| = p^v\), for some positive v.

If a polynomial, f(x), is an Alltop function, then \(\Delta _{\Delta _{f,\alpha },\beta }(x)\) is a permutation function and hence the roots of \(\Delta _{\Delta _{f,\alpha },\beta }(x)\) are trivial. Conversely, if the group of roots is non-trivial, then f(x) is not an Alltop function. The task of checking whether a given polynomial is an Alltop function has thus been reduced to a search for non-trivial roots of \(\Delta _{\Delta _{f,\alpha },\beta }(x)\). We next consider how the search space for these solutions can be reduced.

Table 2 The subgroup and coset behaviour of the non-Alltop polynomial \(f(x) = x^{7}\). The second difference function was found by setting \(\alpha = 1\) and \(\beta = \zeta + 3 = \zeta ^{2}\) with the primitive polynomial \(x^{2} + 4x + 2\) over \({\mathbb {F}}_{5^{2}}\). These results are given in multiplicative field notation (M) and in vector space notation (VS)

6 Reducing the search space

The number of calculations of \(\Delta _{\Delta _{f,\alpha },\beta }(x)\) for a given \(f(x) = x^{p^{k}+p^{j}+p^{i}}\) can be reduced by removing the need to search over \(\alpha \); the variable used to define the first difference function. We show that it is sufficient to search for a nonzero solution for which \(\alpha = 1\).

Lemma 9

Let \(\Delta _{\Delta _{f,\alpha },\beta }(x)\) be the second difference function of a CC monomial. Suppose there is a solution \((x,\alpha ,\beta )\) for the equation \(\Delta _{\Delta _{f,\alpha },\beta }(x) = c\), with \(x \ne 0\). Then, \((x',\alpha ',\beta ')\) is also a solution, where \(\alpha ' = 1\) and \(x' \ne 0\).

Proof

As noted above, if x satisfies \(\Delta _{\Delta _{f,\alpha },\beta }(x) = \Delta _{\Delta _{f,\alpha },\beta }(0)\), then

$$\begin{aligned} 0 =&(\beta ^{p^{j}}\alpha ^{p^{i}}\! + \beta ^{p^{i}}\alpha ^{p^{j}})x^{p^{k}}\! + (\beta ^{p^{k}}\alpha ^{p^{i}}\! + \beta ^{p^{i}}\alpha ^{p^{k}})x^{p^{j}} + (\beta ^{p^{k}}\alpha ^{p^{j}} + \beta ^{p^{j}}\alpha ^{p^{k}})x^{p^{i}}\!. \end{aligned}$$

Dividing by \(\alpha ^{p^{k}+p^{j}+p^{i}}\) and setting \(x' = \frac{x}{\alpha } \ne 0\), \(\beta ' = \frac{\beta }{\alpha }\) and \(\alpha ' = \frac{\alpha }{\alpha } = 1\) gives

$$\begin{aligned} 0 =&(\beta '^{p^{j}}(1)^{p^{i}}\! + \beta '^{p^{i}}(1)^{p^{j}})x'^{p^{k}}\! + (\beta '^{p^{k}}(1)^{p^{i}}\! + \beta '^{p^{i}}(1)^{p^{k}})x'^{p^{j}}\\&+ (\beta '^{p^{k}}(1)^{p^{j}} + \beta '^{p^{j}}(1)^{p^{k}})x'^{p^{i}}\!. \end{aligned}$$

That is, \(x', \alpha ' = 1\) and \(\beta '\) give a solution of the equation, as claimed. \(\square \)

As a result of Lemma 9, it suffices to search for nonzero solution pairs \((x, \beta )\) of the equation

$$\begin{aligned} 0 =&(\beta ^{p^{j}}\! + \beta ^{p^{i}})x^{p^{k}}\! + (\beta ^{p^{k}}\! + \beta ^{p^{i}})x^{p^{j}}\! + (\beta ^{p^{k}}\! + \beta ^{p^{j}})x^{p^{i}}. \end{aligned}$$
(12)

Thus, rather than exhaustively verifying whether \(\Delta _{\Delta _{f,\alpha },\beta }(x)\) is a permutation function for all \(x \in {\mathbb {F}}_{p^{r}}\) and \(\alpha , \beta \in {\mathbb {F}}_{p^{r}}^{*}\), we need only show that there exist no nonzero solutions to Eq. (12). This is achieved by attempting to find at least one nonzero subgroup element.

7 Finding subgroup elements

In searching for non-trivial solutions to Eq. (12), it is convenient to consider three cases relating to the values of i, j and k. In all cases, we consider \(f(x) = x^{p^{k}+p^{j}+p^{i}}\).

7.1 All exponents equal

When \(i = j = k\), Eq. (12) reduces to

$$\begin{aligned} 6\beta ^{p^{i}}x^{p^{i}} = 0. \end{aligned}$$

Since \(\beta \ne 0\), there are no nonzero solutions x of this equation; every function of the form \(x^{3p^{i}}\) is an Alltop function. This result is not surprising, since \(f(x) = x^{3p^{i}}\) is EA-equivalent to \(f_{2}(x) = x^{3}\) (see Definition 6).

7.2 Two exponents equal

When \(k \ne j = i = \varphi \), Eq. (12) reduces to

$$\begin{aligned} 2(\beta ^{p^{\varphi }}x^{p^{k}} + \beta ^{p^{k}}x^{p^{\varphi }} + \beta ^{p^{\varphi }}x^{p^{\varphi }}) = 0. \end{aligned}$$

Since \(\beta \ne 0\) and we are seeking non-trivial solutions for x, this reduces further to

$$\begin{aligned} x^{p^{k}-p^{\varphi }} + \beta ^{p^{k}-p^{\varphi }} + 1&= 0 \end{aligned}$$

or, equivalently, to

$$\begin{aligned} x^{p^{k}-p^{\varphi }} = -(\beta ^{p^{k}-p^{\varphi }} + 1). \end{aligned}$$
(13)

The following lemma shows that we need not check every combination of \(x, \beta \in {\mathbb {F}}_{p^{r}}^{*}\) to determine whether Eq. (13) has a nonzero solution.

Lemma 10

Let \(f(x) = x^{p^{k} + 2p^{\varphi }}\) be a polynomial over a field \({\mathbb {F}}_{p^{r}}\). To verify that f(x) is an Alltop function it is sufficient to check \(\frac{p^{r}-1}{p^{\theta }-1}\) values of the field \({\mathbb {F}}_{p^{r}}\), where \(\theta = gcd(k-\varphi ,r)\).

Proof

Let \(\theta = gcd(k-\varphi ,r)\), so that

$$\begin{aligned} \gamma&= p^{\theta }-1 \\&= gcd(p^{k-\varphi }-1,p^{r}-1) \\&= gcd(p^{\varphi }(p^{k-\varphi }-1), p^{r}-1). \end{aligned}$$

Denote a generator of \({\mathbb {F}}_{p^{r}}\) as \(\zeta \). Then, as \(\beta \) cycles through all the elements of \({\mathbb {F}}_{p^{r}}^{*}\), the powers \(\beta ^{p^{k}-p^{\varphi }}\) will cycle through all the powers of \(\zeta ^{\gamma }\). Likewise, \(x^{p^{k}-p^{\varphi }}\) must also be a power of \(\zeta ^{\gamma }\) for any nonzero value of x.

It follows that it is sufficient to check at most \(|{\mathbb {F}}_{p^{r}}^{*}|/|{\mathbb {F}}_{p^{\theta }}^{*}| = (p^{r}-1)/(p^{\theta }-1)\) distinct values of \(\beta \) in seeking possible solutions to Eq. (13). Furthermore, it is not necessary to explicitly solve for x, as it is straightforward to check whether the resulting RHS value of Eq. (13) is a power of \(\zeta ^{\gamma }\). \(\square \)

For any given field \({\mathbb {F}}_{p^{r}}\), Lemma 10 also allows us to reduce the number of index sets \(k \ne j = i = \varphi \) that must be included in our search for Alltop functions of the form \(x^{p^{k}+2p^{\varphi }}\).

Note that, the same value of \(\gamma \) applies for any pairs of values of k and \(\varphi \) that differ by a constant amount \(k-\varphi \), so we are seeking solutions for x and \(\beta \) among the same set of powers (powers of \(\zeta ^{\gamma }\)) in all these cases. Based on this observation, it suffices to search over pairs \((k,\varphi )\) for which \(\varphi = 0\), of which there are only \(r-1\) \((k = 1, 2, \dots , r-1)\). Furthermore, the search space can be further reduced by noting that it is not \(k-\varphi \) itself but \(gcd(k-\varphi ,r)\) which determines \(\gamma \); as a consequence, it is sufficient to search only over values of \(k-\varphi \) that are divisors of r. We have therefore demonstrated the following lemma.

Lemma 11

Consider the set of CC monomials of the form \(x^{p^{k}+2p^{\varphi }}\) over a field \({\mathbb {F}}_{p^{r}}\). To assess whether any of these monomials are Alltop functions, it is sufficient to search for nonzero solutions of Eq. (13) with \(\varphi = 0\) and k|r.

For a given field \({\mathbb {F}}_{p^{r}}\), there are exactly \(d(r)-1\) such values of k, where d(r) is the number of positive divisors of r. Additionally, from Theorem 1, we can exclude \(k = r/2\) if r is even, as functions of this form are known Alltop functions if 3 does not divide \(p^{r/2}+1\) and are not Alltop functions otherwise [7].

7.3 Distinct exponents

When \(k \ne j \ne i\), Eq. (12) can again be reduced. As \(\beta \ne 0\) and we seek nonzero solutions for x, Eq. (12) reduces to

$$\begin{aligned} 0 =&(\beta ^{p^{j}-p^{i}}\! +1)x^{p^{k}-p^{i}}\! + (\beta ^{p^{k}-p^{i}}\! + 1)x^{p^{j}-p^{i}}\! + \beta ^{p^{k}-p^{i}}\! + \beta ^{p^{j}-p^{i}} \nonumber \\ 0 =&(\beta ^{p^{i}(p^{j-i}-1)}\! +1)x^{p^{i}(p^{k-i}-1)} + (\beta ^{p^{i}(p^{k-i}-1)}\! + 1)x^{p^{i}(p^{j-i}-1)}\nonumber \\&+ \beta ^{p^{i}(p^{k-i}-1)}\! + \beta ^{p^{i}(p^{j-i}-1)}. \end{aligned}$$
(14)

The following lemma shows that, in the same way as Lemma 10, it is not necessary to check every combination of \(x, \beta \in {\mathbb {F}}_{p^{r}}^{*}\) to determine whether this equation has a nonzero solution.

Lemma 12

Let \(f(x) = x^{p^{k} + p^{j} + p^{i}}\) be a polynomial over a field \({\mathbb {F}}_{p^{r}}\), where \(k \ne j \ne i\). To verify that f(x) is an Alltop function, it is sufficient to check \(\frac{\tau ^2+\tau }{2}\) pairs of nonzero values \((x,\beta )\) from the field \({\mathbb {F}}_{p^{r}}\), where \(\tau = \big (\frac{p^{r}-1}{p^{\theta }-1}\big )\), \(\theta = gcd(k-i,j-i,r)\).

Proof

Let \(\theta = gcd(k-i,j-i,r)\), so that

$$\begin{aligned} \gamma&= p^{\theta }-1 \nonumber \\&= gcd(p^{k-i}-1,p^{j-i}-1,p^{r}-1). \end{aligned}$$
(15)

Denote the generator of \({\mathbb {F}}_{p^{r}}\) as \(\zeta \); then, as \(\beta \) cycles through all the elements of \({\mathbb {F}}_{p^{r}}^{*}\), the powers \(\beta ^{p^{j}-p^{i}}\) and \(\beta ^{p^{k}-p^{i}}\) will cycle through various powers of \(\zeta ^{\gamma }\). Likewise, \(x^{p^{k}-p^{i}}\) and \(x^{p^{j}-p^{i}}\) must also be powers of \(\zeta ^{\gamma }\) for any nonzero value of x.

It follows that it is sufficient to check at most \(|{\mathbb {F}}_{p^{r}}^{*}|/|{\mathbb {F}}_{p^{\theta }}^{*}| = (p^{r}-1)/(p^{\theta }-1)\) distinct values each of \(\beta \) and x in seeking possible solutions to Eq. (14). Unlike Eq. (13), there is no simple reduction to Eq. (14) which allows us to avoid searching over x in addition to \(\beta \) and, as such, it may be necessary to check up to \(\big (\frac{p^{r}-1}{p^{\theta }-1}\big )^{2}\) pairs of nonzero field elements in order to verify f(x) as an Alltop function. In fact, as Eq. (14) is symmetric over x and \(\beta \), it is necessary to check only unique unordered pairs \((x, \beta )\), of which there exist \(\frac{\tau ^{2}+\tau }{2}\), over any finite field \({\mathbb {F}}_{p^{r}}\). \(\square \)

It is possible to reduce the number of CC monomials of the form \(f(x) = x^{p^{k} + p^{j} + p^{i}}\), where \(k \ne j \ne i\), that must be checked to find Alltop functions for any given field \({\mathbb {F}}_{p^{r}}\). Similarly to the discussion supporting Lemma 11, we are interested in the pairs of values of j and i and pairs of values of k and i which differ by constant amounts \(j - i\) and \(k - i\), respectively. For any given value of these differences, we are seeking solutions for x and \(\beta \) among the same set of powers of \(\zeta ^{\gamma }\). This gives the following lemma.

Lemma 13

Consider the set of CC monomials of the form \(x^{p^{k} + p^{j} + p^{i}}\) over a field \({\mathbb {F}}_{p^{r}}\). To assess whether any of these monomials are Alltop functions, it is sufficient to search for nonzero solutions of Eq. (14) over tuples (kji) for which \(i = 0\).

Note that, all CC monomials with distinct exponents for which \(i = 0\) are EA-inequivalent (see Definition 6). This means there are \({r-1 \atopwithdelims ()2} = \frac{(r-1)(r-2)}{2}\) unique CC monomials with distinct exponents in a given field. A further reduction similar to the second reduction argument in Lemma 11 may be possible but due to the additional term in the gcd of Eq. (15), any such reduction is not expected to have a significant impact on the overall verification process. As a result, this optimization is omitted from this paper.

In these last two sections, we have reduced the number of functions to be tested by restricting the search space to the set of CC monomials; we have also reduced the number of operations required to determine if a CC monomial is an Alltop function and quantified this reduced operation count. The full improved process is given in the following section.

8 Optimization results

Throughout this paper, we have reduced the number of monomials needed to verify whether any of these is an Alltop function over a given field, \({\mathbb {F}}_{p^{r}}\). We have removed the need to search over \(\alpha \) and have also reduced the operation count by exploiting the group structure inherent in the outputs of the candidate functions, f(x). We present the improved process by which potential Alltop functions in a given field \({\mathbb {F}}_{p^{r}}\) can be identified based on the various results presented in Sect. 7. This process is given as a comparison to the exhaustive process in Sect. 4.

Improved Process:

Consider the CC monomials, \(f(x) = x^{p^{k}+p^{j}+p^{i}}\), over \({\mathbb {F}}_{p^{r}}\), according to the values of exponents kj and i:

  1. 1.

    For \(k = j = i\) (all exponents equal):

    1. (a)

      f(x) is an Alltop function (EA-equivalent to \(x^{3}\)).

  2. 2.

    For, WLOG, \(k \ne j = i = \varphi \) (two exponents equal):

    1. (a)

      Find all distinct potential Alltop functions: \(f(x) = x^{p^{k} + 2}\), where \(0< k < r\) and k|r.

    2. (b)

      If r is even, then exclude \(f(x) = x^{p^{r/2}+2}\).

    3. (c)

      For each remaining candidate function:

      1. i.

        Calculate \(|{\mathbb {F}}_{p^{\theta }}^{*}| = \gamma = p^{\theta }-1\).

      2. (ii.)

        Evaluate the RHS of Eq. (13) for all \(\beta \in {\mathbb {F}}_{p^{r}}^{*}\). If any of the results is a power of \(\zeta ^{\gamma }\), then f(x) is not an Alltop function, otherwise f(x) is an Alltop function.

  3. 3.

    For \(k \ne j \ne i\) (no exponents equal):

    1. (a)

      Find all distinct potential Alltop functions: \(f(x) = x^{p^{k} + p^{j} + 1}\), where \(r> k> j > 0\).

    2. (b)

      For each candidate function:

      1. i.

        Calculate \(|{\mathbb {F}}_{p^{\theta }}^{*}| = \gamma = p^{\theta }-1\).

      2. ii.

        Evaluate the RHS of Equation (??) for all \(x, \beta \in {\mathbb {F}}_{p^{r}}\) of the form \(n\gamma \), where \(n = 0, 1 \dots \tau \). If any of the results is 0, then f(x) is not an Alltop function, otherwise f(x) is an Alltop function.

This improved evaluation process for Alltop functions allows us to review the upper bounds given in Table 1. In place of the right-most column displaying the number of times \(\Delta _{\Delta _{f,\alpha },\beta }(x)\) is calculated, we instead need only the number of times Equations (13) and (14) are calculated. Adding the two of these values together gives an upper bound on the number of \(x, \alpha \) and \(\beta \) values checked through the verification process of a given field. These revised upper bounds are displayed in Table 3. Note that, for \(r > 4\), the results will be an overestimate as we have assumed \(\theta = 1\) for all calculations for simplicity.

Table 3 Upper bounds for the total number of times different field elements need be substituted into Eqs. (13) and (14), with \(\theta = 1\). This table replicates the fields given in Table 1 to demonstrate the large efficiency gain over the exhaustive process in Sect. 4
Table 4 Differences in computational run-time between the original exhaustive method in Sect. 4 and the improved process in Sect. 8. The exhaustive process for fields \({\mathbb {F}}_{7^{4}}\) and above take greater than one week (\(6.048\times 10^{5}\)s) to compute

9 Computational results

It is also important to discuss the computational saving involved in the optimization process. Some representative results are shown in Table 4. These results were obtained by running the relevant calculations on the Queensland University of Technology’s high-performance computer cluster using an Intel Xenon E5-2680v2 processor and requiring a maximum of 4GB of memory.

These computational results indicate that the tests of steps 2)c)ii) and 3)b)ii) routinely take far fewer than the maximum number of steps before determining that a candidate monomial is not an Alltop function. For run-times displayed in Table 4, the exhaustive process for \({\mathbb {F}}_{7^{4}}\) ran for a week without terminating. As a result, we did not attempt the exhaustive process for larger fields.

The improved process takes far less time to compute than the exhaustive process. Not only are there fewer functions and less field elements to test, but also the process of each check is greatly reduced. Due to this additional efficiency, the run-time saving is even greater than the difference that Tables 1 and 3 imply.

The improved process, coupled with Tables 3 and 4 combine to show, through an analysis of the subgroups in \(\Delta _{\Delta _{f,\alpha },\beta }(x)\) over \({\mathbb {F}}_{p^{r}}\), that the time to verify Alltop functions over large fields can be greatly reduced.

Despite the improved process, only monomials which belong to the Alltop function families presented in [1] and [7] have so far been found over larger fields. All fields \({\mathbb {F}}_{p^{r}}\) with \(5\le p \le 97\) and \(r \le 4\), and fields \({\mathbb {F}}_{p^{r}}\) with \(5 \le p \le 59\) and \(r \le 20\) have been tested. These results suggest the following two conjectures:

Conjecture 1

Let p be an odd prime and r a positive odd integer. A monomial \(f(x) = x^{a}\) over \({\mathbb {F}}_{p^{r}}\) is an Alltop function only if it is EA-equivalent to the function \(A(x) = x^{3}\) (Alltop’s cubic function from [1]).

Conjecture 2

Let p be an odd prime and r any positive integer. Over the field \({\mathbb {F}}_{p^{r}}\), there exist only two families of Alltop monomials: Alltop’s cubic function [1] and the family given by Hall et al. [7].

10 Conclusion

After considering the link between Alltop functions and planar functions, the form of known Alltop functions, and the link between planar functions and DO polynomials, we have introduced the CC polynomial form and proved that only functions of this form have difference functions of the DO form. Thus, we have established it as a likely form for Alltop functions. We have also demonstrated a subgroup structure related to the second difference functions for CC monomials. By exploiting this structure, we have significantly reduced the number of calculations required to detect whether a given CC monomial is Alltop compared to the exhaustive search.

From our computational search, we conjecture that all Alltop monomials belong to one of two existing families [1, 7].