## Parity-Check Code

A linear orthogonal array OA(*b*, *s*,**F**_{b}, 1) and a linear [*s*, *s*−1, 2]-code over **F**_{b} exists for arbitrarily large *s*.

### The Orthogonal Array (Line)

The orthogonal array A can be identified with an arbitrary line in general position in **F**_{b}^{s}. Thus the 1×*s* matrix (1,…, 1) is a possible generator matrix of A.

When interpreted as a code, A is the [*s*, 1, *s*]-repetition code.

### The Linear Code (Parity Check Code)

The linear [*s*, *s*−1, 2]-code C over **F**_{b} is most easily defined as C = A^{⊥}. Its parity check matrix is the 1×*s* matrix (1,…, 1), its generator matrix is the (*s* – 1)×*s* matrix ( – **1**_{(s−1)×1}, *I*_{s−1}). This shows that C can be constructed by adding a single control symbol to each code word of an [*s*−1, *s*−1, 1]-code without redundancy, such that the sum of all coordinates is 0. Therefore this code is called parity-check code or sum zero code. For *b* = 2 is is also known as even weight code.

If A is interpreted as an orthogonal array, it is the hyperplane orthogonal array OA(*b*^{s−1}, *s*,**F**_{b}, *s*−1).

### Optimality

Parity-check codes meet the Singleton bound with equality and are therefore MDS-codes. Alternatively, their dual OAs are OAs with index unity. Since they can be truncated to [*s*−1, *s*−1, 1]-codes without redundancy, which meet the Hamming bound with equality and are therefore perfect, parity-check codes are nearly perfect codes.

### Copyright

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. “Parity-Check Code.”
From MinT—the database of optimal net, code, OA, and OOA parameters.
Version: 2015-09-03.
http://mint.sbg.ac.at/desc_CK1.html