Mathematical reasons behind my findings regarding the BCH codes?

111 Views Asked by At

I constructed a non-symmetric BCH code with specifications $\mathcal{C}:=[511, 18, 240]_2$, where $511$, $18$, $240$ represents the length, dimension, and minimum distance of the codebook $\mathcal{C}$, respectively. So, there are a total of $262,144$ codeword in the $\mathcal{C}$. Now, out of these $262,144$ codewords, I found that $69496$ codewords have a weight of $240$; $131327$ codewords have a weight of $256$; $61320$ codewords have a weight $272$, and one codeword has a weight $0$. To remind you, the weight of a codeword is the number of $1's$ in the codeword.

Now, my question is: What is the mathematical reason behind this weight distribution that I saw in my experiment? Can we mathematically predict the weight distribution of BCH codes based on the parameters $[n,k,d]_2$?

2

There are 2 best solutions below

0
On

Your term "non symmetric" is not standard, you need to define it in the question.

In general, BCH weight distributions are unknown. There are some known cases. For example for narrow-sense and primitive BCH codes. Look at this paper and especially its references.

There is a sense in which the weight distributions of BCH codes as well as other codes is asymptotically normal, i.e., actually approximated by the cumulative gaussian distribution. See Section 3 of this paper for an informal discussion.

2
On

The code you have discovered is

either

  • A subcode of the (non-extended, cyclic) 2nd-order Reed-Muller code, which is referred to by people interested in spread-spectrum communications theory as a Gold code (after Robert Gold who published his results in the IEEE Transactions on Information Theory in 1967 and 1968).

or

  • the dual of a 2-error correcting BCH code: the parity-check polynomial of the dual code is $M_1(x)M_3(x)$ where the BCH Code has generator polynomial $M_1(x)M_3(x)$.

The weight enumerators of several such codes (including Gold codes as a special case) were studied by T. Kasami in an unpublished technical report of the Coordinated Science Laboratory of the University of Illinois at Urbana-Champaign, and presented at a small academic conference in 1967 (they appear in the Proceedings of the conference which may be hard to find). Elwyn Berlekamp, who attended the conference, became interested in the problem and extended Kasami's results in several ways. He included all of these results in Chapter 16 of his 1968 book Algebraic Coding Theory (with, of course, proper attribution to Kasami where appropriate). All these results and more can also be found in the 2-volume Theory of Error-Correcting Codes, (1978) by MacWilliams and Sloane. In short, to answer the OP's query, there is a mathematical explanation of why the weight distribution works out to be what the OP found, and this explanation can be found in the references cited above. The more general query re the weight distributions of BCH codes in general has been answered by kodlu, and so I won't say anything about that.

Obligatory disclosure: Elwyn Berlekamp was my Ph.D thesis advisor; my (1973) thesis was on the weight enumeration of Reed-Muller codes and their cosets; and I was with the Coordinated Science Laboratory of the University of Illinois at Urbana-Champaign for more than 35 years (though after the time that T. Kasami was a visiting scholar at CSL in 1966-67).