I understood that for BCH codes the native approach to get a generator polynomial over $\text{GF}(q)$ with root $\alpha$ and ability of correcting $t$ errors $$g(x) = (x - \alpha)...(x-\alpha^{2t})$$ does not work because this leads to $g(x) \notin \text{GF}(2)[X]$. Instead, we construct minimal polynomials of $\text{GF}(q)$ for the roots $\alpha, \alpha^2, ..., \alpha^{2t}$ and take the lcm of this minimal polynomials.
- If understood right, a minimal polynomial of $\text{GF}(q)[X]$ would always lead to a polynomial of the form $x + a_0$ and over different roots, we just write the polynomial as product of this linear-combinations, right?
- Why does taking the lcm of $\text{GF}(q)[X]$ polynomials results in a polynomial of $\text{GF}(2)[X]$? Why is this the generator polynomial?
- Contains this generator polynomial every root?
To construct a binary BCH code, we should work on the field $\mathrm{GF}(2^m)$. Let $n=2^m-1$, $\alpha$ be the primitive element of $\mathrm{GF}(2^m)$, i.e. $\alpha^{2^m-1}=1$ and $$ \{0\}\cup\{1,\alpha,\alpha^2,\ldots,\alpha^{2^m-2}\}=\mathrm{GF}(2^m). $$ Now we calculate the l.c.m of the minimal polynomials $f_1,f_2,\ldots,f_{2t}$ of $\alpha,\alpha^2,\ldots,\alpha^{2t}$ over $\mathrm{GF}(2)$. So: