property galois.ReedSolomon.alpha : FieldArray

A primitive \(n\)-th root of unity \(\alpha\) in \(\mathrm{GF}(q)\) whose consecutive powers \(\alpha^c, \dots, \alpha^{c+d-2}\) are roots of the generator polynomial \(g(x)\).

Examples

Construct a primitive \(\textrm{RS}(255, 223)\) code over \(\mathrm{GF}(2^8)\).

In [1]: rs = galois.ReedSolomon(255, 223); rs
Out[1]: <Reed-Solomon Code: [255, 223, 33] over GF(2^8)>

In [2]: rs.alpha
Out[2]: GF(2, order=2^8)

In [3]: rs.roots[0] == rs.alpha ** rs.c
Out[3]: True

In [4]: rs.alpha.multiplicative_order() == rs.n
Out[4]: True

Construct a non-primitive \(\textrm{RS}(85, 65)\) code over \(\mathrm{GF}(2^8)\).

In [5]: rs = galois.ReedSolomon(85, 65, field=galois.GF(2**8)); rs
Out[5]: <Reed-Solomon Code: [85, 65, 21] over GF(2^8)>

In [6]: rs.alpha
Out[6]: GF(8, order=2^8)

In [7]: rs.roots[0] == rs.alpha ** rs.c
Out[7]: True

In [8]: rs.alpha.multiplicative_order() == rs.n
Out[8]: True