Dual Of A Bch Code Is Not Returned As A Cyclic Code Using

Leo Migdal
-
dual of a bch code is not returned as a cyclic code using

There was an error while loading. Please reload this page. There was an error while loading. Please reload this page. One of the properties of BCH codes is that their dual is a cyclic code but sage doesn't return a cyclic code object on call of .dual_code(). Since BCH codes $\subseteq$ cyclic linear codes $\subseteq$ linear codes, I would expect to obtain a cyclic code on which I can call C.dual().generator_polynomial() for example.

And since generator polynomials are not a thing for linear codes, the method is not exposed which makes sense. Let \(F = \GF{q}\) and \(\Phi\) be the splitting field of \(x^{n} - 1\) over \(F\), with \(n\) a positive integer. Let also \(\alpha\) be an element of multiplicative order \(n\) in \(\Phi\). Finally, let \(b, \delta, \ell\) be integers such that \(0 \le b \le n\), \(1 \le \delta \le n\) and \(\alpha^\ell\) generates the multiplicative group \(\Phi^{\times}\). A BCH code over \(F\) with designed distance \(\delta\) is a cyclic code whose codewords \(c(x) \in F[x]\) satisfy \(c(\alpha^{a}) = 0\), for all integers \(a\) in the arithmetic sequence \(b, b + \ell,... Representation of a BCH code seen as a cyclic code.

base_field – the base field for this code designed_distance – the designed minimum distance of the code A not-for-profit organization, IEEE is the world's largest technical professional organization dedicated to advancing technology for the benefit of humanity.© Copyright 2025 IEEE - All rights reserved. Use of this web site signifies your agreement to the terms and conditions. The following represents the notation and conventions used for cyclic codes throughout the library. A code is cyclic if for every $(f_0, \dots, f_{n - 1}) \in \mathcal{C}$ the vector $(f_{n - 1}, f_0, \dots, f_{n - 2})$ is also in $C$.

Consider the polynomial $f = f_0 + f_1 x + \dots + f_{n - 1} x^{n - 1}$. Multiplying by $x$ and setting $x^n = 1$ gives $f_{n - 1} + f_0 x + \dots + f_{n - 2} x^{n - 1}$. Thus, elements of cyclic codes are naturally viewed as coefficient vectors of polynomials in $\mathbb{F}_p[x]/(x^n - 1)$. Cyclic codes are in bijection with ideals of this ring and hence with divisors of $x^n - 1$. Let $x^n - 1 = g(x)h(x)$ for some $g(x), h(x) \in \mathbb{F}_p[x]$. Then $\mathcal{C} = (g(x))$ is a cyclic code with generator polynomial $g(x)$ viewed as an ideal of $\mathbb{F}_p[x]/(x^n - 1)$.

Let $c(x) = a(x) g(x) \in \mathcal{C}$; then $c(x) h(x) = a(x) g(x) h(x) = a(x) (x^n - 1) \equiv 0$. In analogy with $H$, $h(x)$ is called the parity check polynomial. The code $\mathcal{C}$ has parameters $[n, n - \mathrm{deg}(g)]$. Recall that the reciprocal (reverse) of a polynomial $f(x)$ of degree $n$ is $f^r(x) = x^n f(x^{-1})$. An easy argument shows that $\mathcal{C}^\perp = (h^r(x)/h(0))$, where we have introduced a normalization factor to keep the generator polynomial monic. Note that if $h(x) \mid x^n - 1$, then $h^r(x)/h(0) \mid x^n - 1$, so the dual code of a cyclic code is cyclic.

Let $\mathrm{deg}(g) = n - k$. Then the generator and parity check matrices for $\mathcal{C}$ are given by \[G = \begin{pmatrix} g_0 & g_1 & \dots & \dots & \dots & \dots & g_{n - k}& & & \\ & g_0 & g_1 & \dots & \dots & \dots & \dots &... \[H = \begin{pmatrix} h_k & h_{k - 1} & \dots & \dots & \dots & \dots & h_0 & & & \\ & h_k & h_{k - 1} & \dots & \dots & \dots...

People Also Search

There Was An Error While Loading. Please Reload This Page.

There was an error while loading. Please reload this page. There was an error while loading. Please reload this page. One of the properties of BCH codes is that their dual is a cyclic code but sage doesn't return a cyclic code object on call of .dual_code(). Since BCH codes $\subseteq$ cyclic linear codes $\subseteq$ linear codes, I would expect to obtain a cyclic code on which I can call C.dual()...

And Since Generator Polynomials Are Not A Thing For Linear

And since generator polynomials are not a thing for linear codes, the method is not exposed which makes sense. Let \(F = \GF{q}\) and \(\Phi\) be the splitting field of \(x^{n} - 1\) over \(F\), with \(n\) a positive integer. Let also \(\alpha\) be an element of multiplicative order \(n\) in \(\Phi\). Finally, let \(b, \delta, \ell\) be integers such that \(0 \le b \le n\), \(1 \le \delta \le n\) ...

Base_field – The Base Field For This Code Designed_distance –

base_field – the base field for this code designed_distance – the designed minimum distance of the code A not-for-profit organization, IEEE is the world's largest technical professional organization dedicated to advancing technology for the benefit of humanity.© Copyright 2025 IEEE - All rights reserved. Use of this web site signifies your agreement to the terms and conditions. The following repre...

Consider The Polynomial $f = F_0 + F_1 X +

Consider the polynomial $f = f_0 + f_1 x + \dots + f_{n - 1} x^{n - 1}$. Multiplying by $x$ and setting $x^n = 1$ gives $f_{n - 1} + f_0 x + \dots + f_{n - 2} x^{n - 1}$. Thus, elements of cyclic codes are naturally viewed as coefficient vectors of polynomials in $\mathbb{F}_p[x]/(x^n - 1)$. Cyclic codes are in bijection with ideals of this ring and hence with divisors of $x^n - 1$. Let $x^n - 1 =...

Let $c(x) = A(x) G(x) \in \mathcal{C}$; Then $c(x) H(x)

Let $c(x) = a(x) g(x) \in \mathcal{C}$; then $c(x) h(x) = a(x) g(x) h(x) = a(x) (x^n - 1) \equiv 0$. In analogy with $H$, $h(x)$ is called the parity check polynomial. The code $\mathcal{C}$ has parameters $[n, n - \mathrm{deg}(g)]$. Recall that the reciprocal (reverse) of a polynomial $f(x)$ of degree $n$ is $f^r(x) = x^n f(x^{-1})$. An easy argument shows that $\mathcal{C}^\perp = (h^r(x)/h(0))$...