Dual code: Difference between revisions

Content deleted Content added
No edit summary
generalize to q-ary codes; list types of self-dual codes
Line 1:
In [[coding theory]], the '''dual code''' of a [[linear code]]
 
:<math>C\subset\mathbb{F}_2_q^n</math>
 
is the linear code defined by
Line 7:
:<math>C^\perp = \{x \in \mathbb{F}_q^n \mid \langle x,c\rangle = 0\;\forall c \in C \} </math>
 
where
Here <,> denotes the vector [[dot product]], which is taken over the [[field (mathematics)|field]] <math>\mathbb{F}_q</math>. In simpler language, it consists of all code words, as [[binary string]]s, that have 1s in places overlapping the 1s in each word from ''C'' always at an [[even number]] of locations.
 
:<math>\langle x, c \rangle = \sum_{i=1}^n x_i {c_i}^p</math>
In [[linear algebra]] terms, the dual code is the [[annihilator]] of ''C'' with respect to the [[bilinear form]] <,>. An important property is that the dual of the dual code is the original code itself. This follows from the fact that the dimensions of ''C'' and its dual always add up to ''n''.
 
and ''p'' is the [[characteristic (algebra)|characteristic]] of '''F'''<sub>''q''</sub>. In [[linear algebra]] terms, the dual code is the [[annihilator]] of ''C'' with respect to the [[bilinear form]] <,>. AnThe important property is that the dual of the dual code is the original code itself. This follows from the fact that the dimensionsdimension of ''C'' and its dual always add up to ''n''.:
A '''self-dual code''' is one which is its own dual.
:<math>\dim C + \dim C^\perp = n.</math>
The dual of the dual code is always the original code.
 
HereFor <,>binary denotes the vector [[dot product]]codes, which is taken over the [[field (mathematics)|field]] <math>\mathbb{F}_q</math>. In simpler language,dual itcode consists of all code words, as [[binary string]]s, that have 1s in places overlapping the 1s in each word from ''C'' always at an [[even number]] of locations.
 
==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. Self-dual codes can be classified into four types:
*'''Type I''' codes are binary self-dual codes which are not [[doubly-even code|doubly-even]]. Type I codes are always [[even code|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 '''F'''<sub>4</sub>. 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.
 
[[Category:Coding theory]]