Dual code
In coding theory, the dual code of a linear code
- [math]\displaystyle{ C\subset\mathbb{F}_q^n }[/math]
is the linear code defined by
- [math]\displaystyle{ C^\perp = \{x \in \mathbb{F}_q^n \mid \langle x,c\rangle = 0\;\forall c \in C \} }[/math]
where
- [math]\displaystyle{ \langle x, c \rangle = \sum_{i=1}^n x_i c_i }[/math]
is a scalar product. In linear algebra terms, the dual code is the annihilator of C with respect to the bilinear form [math]\displaystyle{ \langle\cdot\rangle }[/math]. The dimension of C and its dual always add up to the length n:
- [math]\displaystyle{ \dim C + \dim C^\perp = n. }[/math]
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.
Self-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 [math]\displaystyle{ c \gt 1 }[/math], then it is of one of the following four types:[1]
- 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 [math]\displaystyle{ G=[I_k|A] }[/math], then the dual code [math]\displaystyle{ C^\perp }[/math] has generator matrix [math]\displaystyle{ [-\bar{A}^T|I_k] }[/math], where [math]\displaystyle{ I_k }[/math] is the [math]\displaystyle{ (n/2)\times (n/2) }[/math] identity matrix and [math]\displaystyle{ \bar{a}=a^q\in\mathbb{F}_q }[/math].
References
- ↑ Conway, J.H.; Sloane,N.J.A. (1988). Sphere packings, lattices and groups. Grundlehren der mathematischen Wissenschaften. 290. Springer-Verlag. p. 77. ISBN 0-387-96617-X. https://archive.org/details/spherepackingsla0000conw/page/77.
- Hill, Raymond (1986). A first course in coding theory. Oxford Applied Mathematics and Computing Science Series. Oxford University Press. p. 67. ISBN 0-19-853803-0. https://archive.org/details/firstcourseincod0000hill.
- Pless, Vera (1982). Introduction to the theory of error-correcting codes. Wiley-Interscience Series in Discrete Mathematics. John Wiley & Sons. p. 8. ISBN 0-471-08684-3.
- J.H. van Lint (1992). Introduction to Coding Theory. GTM. 86 (2nd ed.). Springer-Verlag. p. 34. ISBN 3-540-54894-7. https://archive.org/details/introductiontoco0000lint/page/34.
External links
- MATH32031: Coding Theory - Dual Code - pdf with some examples and explanations
Original source: https://en.wikipedia.org/wiki/Dual code.
Read more |