**Classification of APN mappings in dimension 5 over GF(2)**

This page reports the numerical experiments related to the classification of the APN mappings in 5 variables that I computed in July 2011.

Let m be a positive integer. A mapping is a vectorial function from
GF(2)^m into GF(2)^m. More generally, a mapping at level l is a vectorial
function from GF(2)^m into GF(2)^l. A mapping f is said to be APN when,

The goal of the numerical experiment is to describe the set of APN mappings in dimension 5. This job was done by Brinkmann and Leander, as a consequence of

Marcus Brinkmann, Gregor Leander On the classification of APN functions up to dimension five Designs, Codes and Cryptography Volume 49, Numbers 1-3, 273-288, DOI: 10.1007/s10623-008-9194-6

The method presented here is completely different and it looks more efficient to obtain the classification of APN mappings up to CCZ-equivalence..

Two mappings f and g at level l are affine equivalent when there
exists a linear transformations A in AG(2,l), an affine transformation
B in AG(2,m) such that :

This equivalence is often called extended affine equivalence. Of course, APN property is invariant under affine equivalence.

According to Charpin, Carlet and Zinoviev, two mappings f and g
at level l are CCZ-equivalent when there exists an affine
transformation S in AG(2,m + l),

AGL-equivalence is finer than CCZ-equivalence APN property is invariant under CCZ-equivalence.

Given a mapping at level l, we denote by vect(f) the space
of Boolean functions spaned by the coordinate of f.

One can prove that two mappings g and f are CCZ-equivalent iff code(f) and code(g) are equivalents.

Given x,y,z,t in GF(2,m), we denote by xyzt the character of B(m) that sends a Boolean function b on (-1)^[ b(x)+b(y)+b(z)+b(t) ]. We consider the indicator function M of characters X of B(m) of the form xyzt with x+y+z+t=0 but all disctincts. The Fourier coefficient of M at b is:

A mapping f is APN iff

Now, let f be a mapping at level l. A Boolean function b is a candidate for f if there exist an APN extension of f of the form

A set C of mappings at level l, is a covering at level l if any APN mapping is CCZ-equivalent to (f, g) with f in C and some mapping g at level m-l. One construct a covering at level l+1 by extending the mappings f of C by Boolean functions b that are good candidates for g. One reduce the size of this new covering by applying CCZ equivalence at level l+1.

- Covering at level 1.
- Up to affines transformations, there are 48 Boolean functions modulo RM(1,5).
- Only 6 of these classes satisfy the L4-norm criterion, see sel-1-5.txt .
- selection --> 6, 0 immediate.

- Covering at level 2.
- agl-extension --> 3628 candidates in 4 minutes.
- test --> 3537, 1 minute.
- ccz --> 1782 classes, 3 minutes.

- Covering at level 3.
- extension --> 3437013 , 52 minutes.
- Note that was possible to reduce the running time and the size of this covering by determing some stablizer groups... But it costs also time to make programs !
- test --> 1071994, 2 minutes.
- apn-check --> 288, 18 minutes.
- ccz --> 7, 9 minutes.

- Covering at level 4.
- extension --> 75, 6 secondes.
- test --> 42, immediate.
- ccz -->4, in 18 minutes.
- Clearly, our home made ccz classifier is not efficient !

- Covering at level 5.
- apn --> 5, immediate.
- We apply CCZ equivalence to obtain the classification of APN mappings in dimension 5. We get 3 ccz-classes of APN mappings.

Philippe Langevin, Last modification March 29th 2012.