[Jump to code hierarchy]

\(q\)-ary simplex code [1,2]

Alternative Names: First-order PRM code, \(q\)-ary maximum-length feedback-shift-register code.

Description

An \([n,m,q^{m-1}]_q\) equidistant projective code with \(n=\frac{q^m-1}{q-1}\), denoted as \(S(q,m)\). The columns of the generator matrix are in one-to-one correspondence with the elements of the projective space \(PG(m-1,q)\), with each column being a chosen representative of the corresponding element. All nonzero simplex codewords have a constant weight of \(q^{m-1}\) [3,4].

The dual of a \(q\)-ary simplex code is the \([n,n-m,3]_q\) \(q\)-ary Hamming code. A punctured simplex code is known as a \(q\)-ary MacDonald code [5], with parameters \([\frac{q^m-q^u}{q-1},m,q^{m-1}-q^{u-1}]_q\) for \(u \leq m-1\) [6].

Protection

The simplex codes saturate the Plotkin bound [7; Sec. 1.2.2].

Decoding

Permutation decoder for simplex [8] and MacDonald [9] codes.

Notes

See corresponding MinT database entry [10].Simplex codes are equivalent to irreducible cyclic codes \(C(q,n,1)\) when \(\gcd(q-1,m)=1\) [11; Exam. 2.5.1].

Cousins

  • Linear \(q\)-ary code— Linear \(q\)-ary codes cannot be constant weight, but can have nonzero codewords with constant weight. All such codes are equidistant. Bonisoli’s theorem states that, up to monomial equivalence and zero coordinates, any equidistant linear code is a \(q\)-ary simplex code with every coordinate repeated the same number of times [12] (see also Refs. [3,4]).
  • Constant-weight block code— Linear \(q\)-ary codes cannot be constant weight, but can have nonzero codewords with constant weight. All such codes are equidistant. Bonisoli’s theorem states that, up to monomial equivalence and zero coordinates, any equidistant linear code is a \(q\)-ary simplex code with every coordinate repeated the same number of times [12] (see also Refs. [3,4]).
  • Group-algebra code— Over a prime field \(\mathbb{F}_p\), simplex codes with parameters \([(p^m-1)/(p-1),m,p^{m-1}]_p\) and \(\gcd(m,p-1)=1\) are group-algebra codes [13; Exam. 16.8.2].
  • \(q\)-ary Hamming code— \(q\)-ary Hamming and \(q\)-ary simplex codes are dual to each other [7; pg. 45].
  • Dual linear code— \(q\)-ary Hamming and \(q\)-ary simplex codes are dual to each other [7; pg. 45]
  • Two-weight code— \(q\)-ary MacDonald codes are two-weight codes with weights \(q^{m-1}-q^{u-1}\) and \(q^{m-1}\) [6].
  • Extended GRS code— \(q\)-ary simplex codes for \(m=2\) can be thought of as extended RS codes [14].

Primary Hierarchy

Parents
The \(q\)-ary simplex codes are first-order PRM codes [7; Sec. 1.2.2].
Columns of a simplex code’s generator matrix correspond to 1D subspaces of \(\mathbb{F}_q^m\), i.e., to points of \(PG(m-1,q)\).
Simplex codes saturate the Griesmer bound ( [15], Exer. 5.1.11).
Simplex codes and their once-punctured versions are LP universally optimal codes [16].
\(q\)-ary simplex code
Children
\(q\)-ary simplex codes reduce to simplex codes for \(q=2\).
The tetracode is equivalent to \(S(3,2)\).

References

  1. [1]

    R. A. FISHER, “THE THEORY OF CONFOUNDING IN FACTORIAL EXPERIMENTS IN RELATION TO THE THEORY OF GROUPS”, Annals of Eugenics 11, 341 (1941) DOI

  2. [2]

    C. E. Shannon, “A Mathematical Theory of Communication”, Bell System Technical Journal 27, 379 (1948) DOI

  3. [3]

    A. E.F. Jr. and H. F. Mattson, “Error-correcting codes: An axiomatic approach”, Information and Control 6, 315 (1963) DOI

  4. [4]

    E. Weiss, “Linear Codes of Constant Weight”, SIAM Journal on Applied Mathematics 14, 106 (1966) DOI

  5. [5]

    J. E. MacDonald, “Design Methods for Maximum Minimum-Distance Error-Correcting Codes”, IBM Journal of Research and Development 4, 43 (1960) DOI

  6. [6]

    A. Patel, “Maximalq-nary linear codes with large minimum distance (Corresp.)”, IEEE Transactions on Information Theory 21, 106 (1975) DOI

  7. [7]

    M. A. Tsfasman and S. G. Vlăduţ, Algebraic-Geometric Codes (Springer Netherlands, 1991) DOI

  8. [8]

    W. Fish, J. D. Key, and E. Mwambene, “Partial permutation decoding for simplex codes”, Advances in Mathematics of Communications 6, 505 (2012) DOI

  9. [9]

    J. D. Key and P. Seneviratne, “Partial permutation decoding for MacDonald codes”, Applicable Algebra in Engineering, Communication and Computing 27, 399 (2016) DOI

  10. [10]

    R. Schürer and W. Ch. Schmid, “Simplex Code”, From MinT—the database of optimal net, code, OA, and OOA parameters. Version: 2015-09-03 URL

  11. [11]

    C. Ding, “Cyclic Codes over Finite Fields”, Concise Encyclopedia of Coding Theory (Chapman and Hall/CRC, 2021), pp. 45-60 DOI

  12. [12]

    A. Bonisoli, “Every equidistant linear code is a sequence of dual Hamming codes”, Ars Combinatoria 18, 181-186 (1984)

  13. [13]

    W. Willems, “Codes in Group Algebras”, Concise Encyclopedia of Coding Theory (Chapman and Hall/CRC, 2021), pp. 363-384 DOI

  14. [14]

    R. Schürer and W. Ch. Schmid, “Extended Reed–Solomon Code”, From MinT—the database of optimal net, code, OA, and OOA parameters. Version: 2015-09-03 URL

  15. [15]

    J. Bierbrauer, Introduction to Coding Theory (Chapman and Hall/CRC, 2016) DOI

  16. [16]

    H. Cohn and Y. Zhao, “Energy-Minimizing Error-Correcting Codes”, IEEE Transactions on Information Theory 60, 7442 (2014) arXiv:1212.1913 DOI

Page edit log

Your contribution is welcome!

on github.com (edit & pull request)

— see instructions

Zoo Code ID: q-ary_simplex

Cite as:
“\(q\)-ary simplex code”, The Error Correction Zoo (V. V. Albert & P. Faist, eds.), 2026. https://errorcorrectionzoo.org/c/q-ary_simplex, arXiv:2606.11484
BibTeX:
@incollection{eczoo_q-ary_simplex,
title={\(q\)-ary simplex code},
booktitle={The Error Correction Zoo},
year={2026},
editor={Albert, Victor V. and Faist, Philippe},
eprint={2606.11484},
doi={10.48550/arXiv.2606.11484},
url={https://errorcorrectionzoo.org/c/q-ary_simplex}
}
Share via:
Twitter | Mastodon |  | E-mail
Permanent link:
https://errorcorrectionzoo.org/c/q-ary_simplex

Cite as:

“\(q\)-ary simplex code”, The Error Correction Zoo (V. V. Albert & P. Faist, eds.), 2026. https://errorcorrectionzoo.org/c/q-ary_simplex, arXiv:2606.11484

Github: https://github.com/errorcorrectionzoo/eczoo_data/edit/main/codes/classical/q-ary_digits/projective/q-ary_simplex.yml.