Book a Demo!
CoCalc Logo Icon
StoreFeaturesDocsShareSupportNewsAboutPoliciesSign UpSign In
Download

📚 The CoCalc Library - books, templates and other resources

132928 views
License: OTHER
Kernel:
%%html <link href="http://mathbook.pugetsound.edu/beta/mathbook-content.css" rel="stylesheet" type="text/css" /> <link href="https://aimath.org/mathbook/mathbook-add-on.css" rel="stylesheet" type="text/css" /> <style>.subtitle {font-size:medium; display:block}</style> <link href="https://fonts.googleapis.com/css?family=Open+Sans:400,400italic,600,600italic" rel="stylesheet" type="text/css" /> <link href="https://fonts.googleapis.com/css?family=Inconsolata:400,700&subset=latin,latin-ext" rel="stylesheet" type="text/css" /><!-- Hide this cell. --> <script> var cell = $(".container .cell").eq(0), ia = cell.find(".input_area") if (cell.find(".toggle-button").length == 0) { ia.after( $('<button class="toggle-button">Toggle hidden code</button>').click( function (){ ia.toggle() } ) ) ia.hide() } </script>

Important: to view this notebook properly you will need to execute the cell above, which assumes you have an Internet connection. It should already be selected, or place your cursor anywhere above to select. Then press the "Run" button in the menu bar above (the right-pointing arrowhead), or press Shift-Enter on your keyboard.

ParseError: KaTeX parse error: \newcommand{\lt} attempting to redefine \lt; use \renewcommand

Section22.4Additional Exercises: Error Correction for BCH Codes

¶

BCH codes have very attractive error correction algorithms. Let CC be a BCH code in Rn,R_n\text{,} and suppose that a code polynomial c(t)=c0+c1t+⋯+cn−1tn−1c(t) = c_0 + c_1 t + \cdots + c_{n-1} t^{n-1} is transmitted. Let w(t)=w0+w1t+⋯wn−1tn−1w(t) = w_0 + w_1 t + \cdots w_{n-1} t^{n-1} be the polynomial in RnR_n that is received. If errors have occurred in bits a1,…,ak,a_1, \ldots, a_k\text{,} then w(t)=c(t)+e(t),w(t) = c(t) + e(t)\text{,} where e(t)=ta1+ta2+⋯+take(t) = t^{a_1} + t^{a_2} + \cdots + t^{a_k} is the . The decoder must determine the integers aia_i and then recover c(t)c(t) from w(t)w(t) by flipping the aia_ith bit. From w(t)w(t) we can compute w(ωi)=siw( \omega^i ) = s_i for i=1,…,2r,i = 1, \ldots, 2r\text{,} where ω\omega is a primitive nnth root of unity over Z2.{\mathbb Z}_2\text{.} We say the of w(t)w(t) is s1,…,s2r.s_1, \ldots, s_{2r}\text{.}

1

Show that w(t)w(t) is a code polynomial if and only if si=0s_i = 0 for all i.i\text{.}

2

Show that

si=w(ωi)=e(ωi)=ωia1+ωia2+⋯+ωiak\begin{equation*} s_i = w( \omega^i) = e( \omega^i) = \omega^{i a_1} + \omega^{i a_2} + \cdots + \omega^{i a_k} \end{equation*}

for i=1,…,2r.i = 1, \ldots, 2r\text{.} The is defined to be

s(x)=(x+ωa1)(x+ωa2)⋯(x+ωak).\begin{equation*} s(x) = (x + \omega^{a_1})(x + \omega^{a_2}) \cdots (x + \omega^{a_k}). \end{equation*}
3

Recall the (15,7)(15,7)-block BCH code in Example 22.19. By Theorem 8.13, this code is capable of correcting two errors. Suppose that these errors occur in bits a1a_1 and a2.a_2\text{.} The error-locator polynomial is s(x)=(x+ωa1)(x+ωa2).s(x) = (x + \omega^{a_1})(x + \omega^{a_2})\text{.} Show that

s(x)=x2+s1x+(s12+s3s1).\begin{equation*} s(x) = x^2 + s_1 x + \left( s_1^2 + \frac{s_3}{s_1} \right). \end{equation*}
4

Let w(t)=1+t2+t4+t5+t7+t12+t13.w(t) = 1 + t^2 +t^4 + t^5 + t^7 + t^{12} + t^{13}\text{.} Determine what the originally transmitted code polynomial was.