Preparata Codes

The Preparata code P(u) for an even u ≥ 4 is a binary, non-linear (2u, 22u−2u, 6)-code with strength 2u−1 – 2(u−2)/2 − 1 [1]. Therefore it can also be interpreted as an orthogonal array OA(22u−2u, 2u, ℤ2, 2u−1 – 2(u−2)/2 − 1). No linear code or linear orthogonal array with these parameters can exist [2].

In [3] it is shown that these codes can be constructed by applying the Gray-code mapping 0 $ \mapsto$ 00, 1 $ \mapsto$ 01, 2 $ \mapsto$ 11, and 3 $ \mapsto$ 10 to extended cyclic codes over 4. When this mapping is applied to the dual of the code over 4, Kerdock codes are obtained.

Special Cases

See Also


[1]Franco P. Preparata.
A class of optimum nonlinear double-error correcting codes.
Information and Control, 13(4):378–400, October 1968.
[2]J.-M. Goethals and S. L. Snover.
Nearly perfect binary codes.
Discrete Mathematics, 3(1–3):65–88, 1972.
[3]A. R. Hammons, Jr., P. V. Kumar, A. R. Calderbank, Neil J. A. Sloane, and P. Solé.
The 4-linearity of Kerdock, Preparata, Goethals and related codes.
IEEE Transactions on Information Theory, 40(2):301–319, March 1994.
[4]F. Jessie MacWilliams and Neil J. A. Sloane.
The Theory of Error-Correcting Codes.
North-Holland, Amsterdam, 1977.
[5]A. S. Hedayat, Neil J. A. Sloane, and John Stufken.
Orthogonal Arrays.
Springer Series in Statistics. Springer-Verlag, 1999.


Copyright © 2004, 2005, 2006, 2007, 2008, 2009, 2010 by Rudolf Schürer and Wolfgang Ch. Schmid.
Cite this as: Rudolf Schürer and Wolfgang Ch. Schmid. “Preparata Codes.” From MinT—the database of optimal net, code, OA, and OOA parameters. Version: 2008-04-04.

Show usage of this method