Dual code

From Wikipedia, the free encyclopedia

In coding theory, the dual code of a linear code

C\subset\mathbb{F}_2^n

is the linear code defined by

C^\perp = \{x \in \mathbb{F}_2^n \mid \langle x,c\rangle = 0\;\forall c \in C \}

Here <,> denotes the vector dot product, which is taken over the field \mathbb{F}_2. In simpler language, it consists of all code words, as binary strings, that have 1s in places overlapping the 1s in each word from C always at an even number of locations.

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.

A self-dual code is one which is its own dual.