[Jump to code hierarchy]

\([n,n-1,2]\) Single parity-check (SPC) code

Alternative Names: Sum-zero code, Zero-sum code, Even-weight code.

Description

An \([n,n-1,2]\) linear binary code whose codewords consist of the message string appended with a parity-check bit or parity bit such that the parity (i.e., sum over all coordinates of each codeword) is zero. If the Hamming weight of a message is odd (even), then the parity bit is one (zero). This code requires only one extra bit of overhead and is therefore inexpensive. Its codewords are all even-weight binary strings, and its parity-check matrix is a row vector of all ones. Its automorphism group is \(S_n\).

Protection

This code detects any odd number of bit errors but cannot correct an arbitrary single-bit error.

Rate

The code rate is \(\frac{n-1}{n}\to 1\) as \(n\to\infty\).

Decoding

If the receiver finds that the parity information of a codeword disagrees with the parity bit, then the receiver will discard the information and request a resend.Wagner’s rule yields a procedure that is linear in \(n\) [1] (see [2; Sec. 29.7.2] for a description).

Realizations

Can be realized on almost every communication device. SPCs are some of the earliest error-correcting codes [3; Ch. 27].

Notes

A parity-check code is the mod-two version of the casting out nines procedure [4,5].

Cousins

References

  1. [1]

    R. Silverman and M. Balser, “Coding for constant-data-rate systems”, Transactions of the IRE Professional Group on Information Theory 4, 50 (1954) DOI

  2. [2]

    A. Lapidoth, A Foundation in Digital Communication (Cambridge University Press, 2017) DOI

  3. [3]

    Encyclopedia of Computer Science and Technology, Second Edition Volume I (CRC Press, 2017) DOI

  4. [4]

    W. W. Peterson, “Error-Correcting Codes”, Scientific American 206(2), 96–111 (1962) URL

  5. [5]

    J. H. Conway and R. K. Guy, The Book of Numbers (Springer New York, 1996) DOI

  6. [6]

    T. R. Oenning and Jaekyun Moon, “A low-density generator matrix interpretation of parallel concatenated single bit parity codes”, IEEE Transactions on Magnetics 37, 737 (2001) DOI

  7. [7]

    T. Ericson and V. A. Zinoviev, eds., Codes on Euclidean Spheres (Elsevier, 2001)

  8. [8]

    J. H. Conway and N. J. A. Sloane, Sphere Packings, Lattices and Groups (Springer New York, 1999) DOI

  9. [9]

    S. T. Dougherty, P. Gaborit, M. Harada, A. Munemasa, and P. Sole, “Type IV self-dual codes over rings”, IEEE Transactions on Information Theory 45, 2345 (1999) DOI

  10. [10]

    N. Rengaswamy, R. Calderbank, H. D. Pfister, and S. Kadhe, “Synthesis of Logical Clifford Operators via Symplectic Geometry”, 2018 IEEE International Symposium on Information Theory (ISIT) 791 (2018) arXiv:1803.06987 DOI

  11. [11]

    M. Ergen, “Basics of Cellular Communication”, Mobile Broadband 19 (2008) DOI

  12. [12]

    J. Conway and N. Sloane, “Lexicographic codes: Error-correcting codes from game theory”, IEEE Transactions on Information Theory 32, 337 (1986) DOI

  13. [13]

    P. Boyvalenkov, D. Danev, “Linear programming bounds”, Concise Encyclopedia of Coding Theory (Chapman and Hall/CRC, 2021), pp. 251-266 DOI

Page edit log

Your contribution is welcome!

on github.com (edit & pull request)

— see instructions

Zoo Code ID: parity_check

Cite as:
“\([n,n-1,2]\) Single parity-check (SPC) code”, The Error Correction Zoo (V. V. Albert & P. Faist, eds.), 2026. https://errorcorrectionzoo.org/c/parity_check, arXiv:2606.11484
BibTeX:
@incollection{eczoo_parity_check,
title={\([n,n-1,2]\) Single parity-check (SPC) 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/parity_check}
}
Share via:
Twitter | Mastodon |  | E-mail
Permanent link:
https://errorcorrectionzoo.org/c/parity_check

Cite as:

“\([n,n-1,2]\) Single parity-check (SPC) code”, The Error Correction Zoo (V. V. Albert & P. Faist, eds.), 2026. https://errorcorrectionzoo.org/c/parity_check, arXiv:2606.11484

Github: https://github.com/errorcorrectionzoo/eczoo_data/edit/main/codes/classical/bits/easy/checksum/parity_check.yml.