add notes on maximal and minimal cyclic codes, Hamming cyclic codes, idempotents
arnaucube git@arnaucube.com
Sun, 19 Apr 2026 18:21:39 +0200
2 files changed,
158 insertions(+),
0 deletions(-)
M
algebraic-coding-theory-notes.tex
→
algebraic-coding-theory-notes.tex
@@ -1702,6 +1702,7 @@
\vspace{1.0cm} \section{Cyclic Codes} +This section contains notes both from Hill \cite{hill} and Lint \cite{lint} books. Hill's notes are enumerated as $X.Y$ while Lint's notes as $X.Y.Z$. \subsection{Recap on ideals} More about ideals at the \emph{Commutative Algebra notes} \cite{commutativealgebranotes}.@@ -1837,6 +1838,45 @@ \item Every ideal in $R_n$ is a \emph{principal ideal}.\\
ie. $R_n$ is a PID. \end{enumerate} \end{remark} + +\vspace{0.5cm} +\begin{thm}{6.1.3} + a linear code $C$ in $\mathbb{F}_q^n$ is cyclic iff $C$ is an ideal in $\mathbb{F}_q[x]/(x^n -1)$. +\end{thm} +\begin{proof} + If $C$ ideal in $\mathbb{F}[x]/(x^n -1)$ and $c(x)=c_0 + c_1 x + \ldots + c_{n-1}x^{n-1} \in C$, then + \begin{align*} + x \cdot c(x) &= c_0 x + c_1 x \cdot x + \ldots + \underbrace{c_{n-1} x^{n-1} \cdot x}_{=c_{n-1} \cdot 1 \pmod{x^n-1}}\\ + &= c_{n-1} + c_0 x + c_1 x^2 + \ldots + c_{n-2} x^{n-1} \in C\\ + \Longrightarrow&~ (c_{n-1}, c_0, c_1, \ldots, c_{n-2}) \in C + \end{align*} + + \vspace{0.5cm} + Conversely, if $C$ cyclic, then $\forall c(x) \in C,~ x \cdot c(x) \in C$. + + Therefore $x^i \cdot c(x) \in C ~\forall i \in [n]$ + + and since $C$ is linear, $a(x) \cdot c(x) \in C$ + + ie. + $$a_0 \cdot c(x) + a_1 \cdot x \cdot c(x) + a_2 \cdot x^2 \cdot c(x) + \ldots + a_{n-1} \cdot x^{n-1} \cdot c(x) \in C$$ + $\forall a(x) \in \mathbb{F}_q[x]/(x^n-1)$. +\end{proof} + +\begin{cor}{} + $\matbb{F}_q[x]/(x^n -1)$ is a PID (Principal Ideal Domain). + + Thus $C$ consists of the multiples of $g(x) \in C$ monic and of lowest degree. + + Therefore, + \begin{itemize} + \item[$\Longrightarrow$] $g(x)$ is the \emph{generator polynomial} (more at \ref{12.9}) of $C$: $C= \langle g(x) \rangle$. + \item[$\Longrightarrow$] $g(x)$ is divisor of $x^n -1$, ie. $g(x) | (x^n-1)$.\\ + since otherwise $gcd(x^n-1, g(x))$ would be a polynomial in $C$ with degree $< deg(g(x))$, a contradiction. + + \end{itemize} +\end{cor} +\vspace{0.5cm} \vspace{1.0cm} Let $f(x) \in R_n$, $\langle f(x) \rangle$ the subset of $R_n$ consisting of all multiples of $f(x)$ (reduced modulo $x^n-1$). ie.@@ -2029,6 +2069,124 @@ \end{align*}
since $C$ is an ideal of $R_n$ and $g(x) \in C$ and $q(x) \in R_n$. \end{proof} + +\subsection{Maximal and minimal cyclic codes} + +Let $x^n-1 = f_1(x) \cdot f_2(x) \cdot \ldots \cdot f_t(x)$, with $f_i(x)$ irreducible polynomials. + +\begin{defn}{6.1.6}[maximal and minimal cyclic codes] + the cyclic code generated by $f_i(x)$ is called a \emph{maximal cyclic code} (since it's a maximal ideal), denoted $M_i^+$. + + The code generated by $(x^n-1)/f_i(x)$ is called a \emph{minimal cyclic code}, denoted $M_i^-$. Also named \emph{irreducible code}. +\end{defn} + +\vspace{0.5cm} + +\begin{defn}{}[Zeros of a cyclic code] + Let $x^n-1= f_1(x) \cdot \ldots \cdot f_t(x)$. Let $\beta_i$ be a zero of $f_i(x)$ in some extension field of $\mathbb{F}_q$\\ + ie. $f_i(\beta)=0$, and $f_i(x)$ is the minimal polynomial of $\beta_i$. +\end{defn} + +$\Longrightarrow~ M_i^+$ is the set of polynomials $c(x)$ for which $c(\beta_i)=0$. + +In general, a cyclic code can be specified by requiring that all codewords have certain zeros: require that all codewords have $\beta_i$ points as zeros. For example: + +Start by any set $\alpha_1, \alpha_2, \ldots, \alpha_s$. Define the code $C$ by +$$c(x) \in C ~\text{iff}~ c(\alpha_i)=0 ~\forall i=1,2, \ldots, s$$ +then $C$ is cyclic, and the generator polynomial is the least common multiple (lcm) of the minimal polynomials of $\alpha_1, \alpha_2, \ldots, \alpha_s$. + +\subsection{Hamming cyclic codes} +\begin{thm}{6.3.1} + let $n := (q^m - 1)/(q-1)$, let $\beta$ a primitive $n$-th root of unity in $\mathbb{F}_{q^m}$. Let $(m, q-1)=1$. + + The cyclic code $C:= \{ c(x) | c(\beta)=0 \}$ is equivalent to the $[, n-m]$ Hamming code over $\mathbb{F}_q$. +\end{thm} +\begin{proof} + since $n=(q-1) \cdot (q^{m-2} + 2 q^{m-3} + \ldots + m-1) + m$ have $(n, q-1) = (m, q-1) = 1$. + + Therefore $\beta^{i(q-1)} \neq 1 ~\forall i \in [n]$, ie. $\beta^i \neq \mathbb{F}_q ~\forall i \in [n]$. + + Columns of $H$, which are the representations of $1, \beta, \beta^2, \ldots, \beta^{n-1}$ as vectors in $\mathbb{F}_{q^m}$, are pairwise linearly independent over $\mathbb{F}_q$. + + So $H$ is the PCM of an $[n, n-m]$ Hamming code. +\end{proof} + +\begin{eg}{6.3.2} + smallest extension of $\mathbb{F}_2$ which contains a primitive 9-th root of unity is $\mathbb{F}_{2^6}$. + + Let $\alpha$ a primitive element of the field, then $\alpha^63=1$ ,and $\beta := \alpha^7$ is a primitive 9-th root of unity. + + Then, the minimal polynomial of $\beta$ has the zeros $\beta, \beta^2, \beta^4, \beta^8, \beta^{16}=\beta^7, \beta^{14}=\beta^5$. + + $\Longrightarrow$ min. polynomial: $(x^9 - 1)/(x^3 -1) = x^6 + x^3 + 1$. + + So $(x^9-1) = \underbrace{(x-1)}_{f_1(x)} \underbrace{(x^2+x+1)}_{f_2(x)} \underbrace{(x^6+x^3 + 1)}_{f_3(x)}$. + + The code $M_3^+$ has pairwise independent columns in $H$, ie. min.distance $\geq 3$. + + $M_3^+$ consists of codewords $(c_0 c_1 c_2 ~~ c_0 c_1 c_2 ~~ c_0 c_1 c_2)$, so $d=3$. + + The code $M_3^-$ has check polynomial $x^6 + x^3 + 1$, so it's a $[9, 6]$-code. + + Since $x^3-1 \in M_3^-$ (is a codeword), the distance is $2$. +\end{eg} + + +\subsection{Idempotent of a cyclic code} + +\begin{thm}{6.4.1} + $\exists!~ c(x) \in C$ which is an identity element for $C$. +\end{thm} +\begin{proof} + let $g(x)$ generator polynomial, $h(x)$ check polynomial. + + ie. $g(x) \cdot h(x) = x^n -1$ in $\mathbb{F}_q[x]$. + + Since $x^n -1$ has no multiple zeros (ie. has simple zeros), we have $(g(x), h(x))=1$, hence by the Bezout identity: + $$\exists~ a(x), b(x) \in \mahtbb{F}_q[x] ~\text{s.th.}~ a(x) g(x) + b(x) h(x) = gcd(g, h)=1$$ + + Define $c(x) := a(x) g(x) = 1-b(x) h(x)$. + + Clearly $c(x) \in C$. Furthermore, if $p(x) g(x) \in C$ (ie. $p(x)\cdot g(x)$ is any codeword in $C$), then + \begin{align*} + c(x) p(x) g(x) &= \underbrace{(1-b(x)h(x))}_{c(x)} p(x) g(x)\\ + &= p(x)g(x) - b(x)h(x)p(x)g(x)\\ + &(recall: g(x)h(x)=x^n-1)\\ + &= p(x) g(x) - b(x) p(x) \underbrace{g(x) h(x)}_{=x^n-1}\\ + &= p(x) g(x) \pmod{x^n -1} + \end{align*} + + So $c(x)$ is an identity element for $C$, and hence is unique. +\end{proof} + +Recall: +\begin{itemize} + \item[nilpotent] $a \in A$ s.th. $a^n=0$ for $n>0$ + \item[idempotent] $e \in A$ s.th. $e^2 = e$ +\end{itemize} + +\begin{defn}{6.4.2}[primitive idempotent] + the idempotent of an irreducible cyclic code $M_i^-$ is called a \emph{primitive idempotent}, denoted by $\theta_i(x)$. +\end{defn} + +\begin{thm}{6.4.3} + if $C_1, C_2$ are cyclic codes with idempotents $c_1(x), c_2(x)$, then + \begin{enumerate}[i.] + \item $C_1 \cap C_2$ has idempotent $c_1(x) \cdot c_2(x)$ + \item $C_1 + C_2$, ie. the set of all words $a+b$ with $a \in C_1,~ b \in C_2$, has idempotent $c_1(x) + c_2(x) + c_1(x) \cdot c_2(x) \in C_1+C_2$. + \end{enumerate} +\end{thm} + +\begin{thm}{6.4.4} + for the primitive idempotent we have: + \begin{enumerate}[i.] + \item $\theta_i(x) \theta_j(x)=0$ if $i \neq j$ + \item $\sum_{i=1}^t \theta_i(x) = 1$ + \item $1+ \theta_{i_1}(x) + \theta_{i_2}(x) + \ldots + \theta_{i_r}(x)$ is the idempotent of the code with generator $f_{i_1}(x) \cdot f_{i_2}(x) \cdot \ldots \cdot f_{i_r}(x)$. + \end{enumerate} +\end{thm} + +\subsection{Trace representation} \bibliographystyle{unsrt} \bibliography{algebraic-coding-theory-notes.bib}