Dual code
In coding theory, the dual code of a linear code
is the linear code defined by
where
is a scalar product. In linear algebra terms, the dual code is the annihilator of C with respect to the bilinear form . The dimension of C and its dual always add up to the length n:
A generator matrix for the dual code is the parity-check matrix for the original code and vice versa. The dual of the dual code is always the original code.
01Self-dual codes
A self-dual code is one which is its own dual. This implies that n is even and dim C = n/2. If a self-dual code is such that each codeword's weight is a multiple of some constant , then it is of one of the following four types:
- Type I codes are binary self-dual codes which are not doubly even. Type I codes are always even (every codeword has even Hamming weight).
- Type II codes are binary self-dual codes which are doubly even.
- Type III codes are ternary self-dual codes. Every codeword in a Type III code has Hamming weight divisible by 3.
- Type IV codes are self-dual codes over F4. These are again even.
Codes of types I, II, III, or IV exist only if the length n is a multiple of 2, 8, 4, or 2 respectively.
If a self-dual code has a generator matrix of the form , then the dual code
has generator matrix
, where
is the
identity matrix and
.
Sources and credits
This article is adapted from the Wikipedia article “Dual code”, written by its contributors and licensed under CC BY-SA 4.0. Fathomly has changed the layout, removed citation markers, navigation and maintenance notices, and adjusted punctuation. This adapted version is shared under the same license. For references, see the original article.
Fathomly is not affiliated with or endorsed by the Wikimedia Foundation. Spotted a problem? Tell us.