Skip to main content
Contents
Embed
Dark Mode Prev Up Next
\(\require{mathtools}\setcounter{MaxMatrixCols}{15}
\newcommand{\N}{\mathbb N}
\newcommand{\Z}{\mathbb Z}
\newcommand{\Q}{\mathbb Q}
\newcommand{\R}{\mathbb R}
\newcommand{\cC}{\mathcal{C}}
\newcommand{\F}{\mathbb{F}}
\newcommand{\GF}{\mathrm{GF}}
\DeclareMathOperator{\Span}{Span}
\DeclareMathOperator{\rank}{rank}
\DeclareMathOperator{\rk}{rk}
\DeclareMathOperator{\wt}{wt}
\DeclareMathOperator{\im}{im}
\DeclareMathOperator{\char}{char}
\DeclareMathOperator{\GRS}{GRS}
\DeclareMathOperator{\RS}{RS}
\newcommand{\transpose}[1]{#1^{\top}}
\newcommand{\by}{\mathbf{y}}
\newcommand{\bc}{\mathbf{c}}
\newcommand{\bx}{\mathbf{x}}
\newcommand{\bm}{\mathbf{m}}
\newcommand{\bs}{\mathbf{s}}
\newcommand{\be}{\mathbf{e}}
\newcommand{\bu}{\mathbf{u}}
\newcommand{\bv}{\mathbf{v}}
\newcommand{\bh}{\mathbf{h}}
\newcommand{\bzero}{\mathbf{0}}
\newcommand{\balpha}{\boldsymbol{\alpha}}
\DeclarePairedDelimiter\floor{\lfloor}{\rfloor}
\newcommand{\lt}{<}
\newcommand{\gt}{>}
\newcommand{\amp}{&}
\newcommand{\fillinmath}[1]{\mathchoice{\underline{\displaystyle \phantom{\ \,#1\ \,}}}{\underline{\textstyle \phantom{\ \,#1\ \,}}}{\underline{\scriptstyle \phantom{\ \,#1\ \,}}}{\underline{\scriptscriptstyle\phantom{\ \,#1\ \,}}}}
\)
Worksheet GRS and RS Codes
Today weβll look at generalized Reed-Solomon (GRS) and Reed-Solomon (RS) codes in more detail. Weβll see that their duals are also GRS/RS codes respectively, and talk about a different encoding perspective from the one we discussed in the previous activity.
1.
Show that when a GRS code
\(\GRS_{n,k}(\balpha,\bv)\) is primitive, then a set of column multipliers of its dual code are
\(u_i=-\alpha_i/v_i\text{.}\)
Hint .
Recall from
Daily Prep 13 that when
\(\{\alpha_i\}_i=F^*\) we have
\(L_i(\alpha_i)=-\alpha_i^{-1}\)
2.
Last time we considered the (singly-extended) \(\RS_{8,3}\) code over \(F=\GF(8)\) with \(p(x)\in F_3[x]\mapsto (p(0),p(\alpha),\ldots,p(\alpha^7)) \text{.}\) Give a set of code locators and column multipliers for the non-extended version of this code, i.e.
\begin{equation*}
p(x) \mapsto (p(1),p(\alpha), p(\alpha^2),\ldots, p(\alpha^6))\text{.}
\end{equation*}
3.
Give the canonical generator and parity check matrices for the code in the last exercise.
4.
Is this code primitive? Narrow-sense? Normalized?
5.
Compute the generator polynomial
\(g(x)\) for the code in the last exercise.
6.
Encode the message polynomial
\(m(x)=1+\alpha x^2\) by multiplication by
\(g(x)\text{.}\)
7.
Encode the message polynomial \(m(x)=1+\alpha x^2\) by remaindering:
\begin{equation*}
m(x)\mapsto x^{n-k}m(x)-r_m(x)
\end{equation*}
where \(r_m(x)\) is the remainder on division of \(x^{n-k}m(x)\) by \(g(x)\text{.}\)
8.
What do you notice about the second encoding?
Table 66. Representation of \(\GF(2^3)\) as \(\mathbb{F}_2[\alpha]/(\alpha^3+\alpha+1)\)
\(-\infty\)
\(0\)
000
\(\alpha^0\)
\(1\)
100
\(\alpha^1\)
\(\alpha\)
010
\(\alpha^2\)
\(\alpha^2\)
001
\(\alpha^3\)
\(1+\alpha \)
110
\(\alpha^4\)
\(\alpha + \alpha^2\)
011
\(\alpha^5\)
\(1 + \alpha + \alpha^2\)
111
\(\alpha^6\)
\(1+\alpha^2 \)
101