Enumerator polynomial

From HandWiki
Short description: Specifies the number of words of a binary linear code of each possible Hamming weight

In coding theory, the weight enumerator polynomial of a binary linear code specifies the number of words of each possible Hamming weight.

Let [math]\displaystyle{ C \subset \mathbb{F}_2^n }[/math] be a binary linear code length [math]\displaystyle{ n }[/math]. The weight distribution is the sequence of numbers

[math]\displaystyle{ A_t = \#\{c \in C \mid w(c) = t \} }[/math]

giving the number of codewords c in C having weight t as t ranges from 0 to n. The weight enumerator is the bivariate polynomial

[math]\displaystyle{ W(C;x,y) = \sum_{w=0}^n A_w x^w y^{n-w}. }[/math]

Basic properties

  1. [math]\displaystyle{ W(C;0,1) = A_{0}=1 }[/math]
  2. [math]\displaystyle{ W(C;1,1) = \sum_{w=0}^{n}A_{w}=|C| }[/math]
  3. [math]\displaystyle{ W(C;1,0) = A_{n}= 1 \mbox{ if } (1,\ldots,1)\in C\ \mbox{ and } 0 \mbox{ otherwise} }[/math]
  4. [math]\displaystyle{ W(C;1,-1) = \sum_{w=0}^{n}A_{w}(-1)^{n-w} = A_{n}+(-1)^{1}A_{n-1}+\ldots+(-1)^{n-1}A_{1}+(-1)^{n}A_{0} }[/math]

MacWilliams identity

Denote the dual code of [math]\displaystyle{ C \subset \mathbb{F}_2^n }[/math] by

[math]\displaystyle{ C^\perp = \{x \in \mathbb{F}_2^n \,\mid\, \langle x,c\rangle = 0 \mbox{ }\forall c \in C \} }[/math]

(where [math]\displaystyle{ \langle\ ,\ \rangle }[/math] denotes the vector dot product and which is taken over [math]\displaystyle{ \mathbb{F}_2 }[/math]).

The MacWilliams identity states that

[math]\displaystyle{ W(C^\perp;x,y) = \frac{1}{\mid C \mid} W(C;y-x,y+x). }[/math]

The identity is named after Jessie MacWilliams.

Distance enumerator

The distance distribution or inner distribution of a code C of size M and length n is the sequence of numbers

[math]\displaystyle{ A_i = \frac{1}{M} \# \left\lbrace (c_1,c_2) \in C \times C \mid d(c_1,c_2) = i \right\rbrace }[/math]

where i ranges from 0 to n. The distance enumerator polynomial is

[math]\displaystyle{ A(C;x,y) = \sum_{i=0}^n A_i x^i y^{n-i} }[/math]

and when C is linear this is equal to the weight enumerator.

The outer distribution of C is the 2n-by-n+1 matrix B with rows indexed by elements of GF(2)n and columns indexed by integers 0...n, and entries

[math]\displaystyle{ B_{x,i} = \# \left\lbrace c \in C \mid d(c,x) = i \right\rbrace . }[/math]

The sum of the rows of B is M times the inner distribution vector (A0,...,An).

A code C is regular if the rows of B corresponding to the codewords of C are all equal.

References