### 数学代写|matlab代写|Reed-Solomon Codes

MATLAB是一个编程和数值计算平台，被数百万工程师和科学家用来分析数据、开发算法和创建模型。

statistics-lab™ 为您的留学生涯保驾护航 在代写matlab方面已经树立了自己的口碑, 保证靠谱, 高质且原创的统计Statistics代写服务。我们的专家在代写matlab代写方面经验极为丰富，各种代写matlab相关的作业也就用不着说。

• Statistical Inference 统计推断
• Statistical Computing 统计计算
• (Generalized) Linear Models 广义线性模型
• Statistical Machine Learning 统计机器学习
• Longitudinal Data Analysis 纵向数据分析
• Foundations of Data Science 数据科学基础

## 数学代写|matlab代写|Construction

In this chapter, we will present a type of code called a Reed-Solomon code. Reed-Solomon codes, like BCH codes, have polynomial codewords, are linear, and can be constructed to be multiple-error correcting. However, ReedSolomon codes are significantly better than BCH codes in many situations because they are ideal for correcting error bursts. When a binary codeword is transmitted, the received vector is said to contain an error burst if it contains several bit errors very close together. In data transmitted through space, error bursts are frequently caused by very brief periods of intense solar energy. It was for this reason that a Reed-Solomon code was used in the Voyager 2 satellite when it transmitted photographs of several of the planets in our solar system back to Earth. We will briefly discuss the use of a Reed-Solomon code in the Voyager 2 satellite in Section 5.6. In addition, there are a variety of other reasons why errors in binary codewords often occur naturally in bursts, such as power surges in cable and telephone wires, various types of interference, and scratches on compact discs. As a result, Reed-Solomon codes have a rich assortment of applications, and are claimed to be the most frequently used digital error-correcting codes in the world. They are used extensively in the encoding of music and video on CDs, DVDs, and Blu-ray discs, have played an integral role in the development of high-speed supercomputers, and will be an important tool in the future for dealing with complex communication and information transfer systems.

To construct a Reed-Solomon code, we begin by choosing a primitive polynomial $p(x)$ of degree $n$ in $\mathbb{Z}{2}[x]$, and forming the field $F=\mathbb{Z}{2}[x] /(p(x))$ of order $2^{n}$. As we did in Chapter 4 , throughout this chapter we will denote the element $x$ in our finite fields by $a$. Like BCH codewords, Reed-Solomon codewords are then polynomials of degree less than $2^{n}-1$. However, unlike $\mathrm{BCH}$ codewords, which are elements in $\mathbb{Z}_{2}[x]$, Reed-Solomon codewords are elements in $F[x]$. To construct a $t$-error correcting Reed-Solomon code $C$, we use the generator polynomial $g(x)=(x-a)\left(x-a^{2}\right) \cdots\left(x-a^{2 t}\right)$ in $F[x]$. The codewords in $C$ are then all multiples of $g(x)$ in $F(x)$ of degree less than $2^{n}-1$. Theorem $4.2$ can easily be modified to show that $C$ will be $t$-error correcting. The codewords in $C$ have length $2^{n}-1$ positions, and form a vector space of dimension $2^{n}-1-2 t$. We will describe a Reed-Solomon code using the notation and parameters $R S\left(2^{n}-1, t\right)$ if the codewords in the code have length $2^{n}-1$ positions and the code is $t$-error correcting.

## 数学代写|matlab代写|Error Correction

We should begin by noting that the error correction method for BCH codes that we presented in Chapter 4 yields the same information when it is applied to a received Reed-Solomon polynomial as when it is applied to a received $\mathrm{BCH}$ polynomial. However, the $\mathrm{BCH}$ error correction method cannot generally be used to correct errors in a received Reed-Solomon polynomial. Recall that the last step in the BCH error correction method involves finding the roots of an error locator polynomial, which reveals the error positions in a received polynomial. Because there are only two possible coefficients for each term in a BCH polynomial, knowledge of the error positions alone is sufficient to correct the polynomial. The BCH error correction method can also be used to find the error positions in a received Reed-Solomon polynomial. However, because there is more than one possible coefficient for each term in a Reed-Solomon polynomial, knowledge of the error positions alone is not generally sufficient to correct the polynomial. The specific error present within each error position would also have to be determined.

Rather than combining the BCH error correction method for identifying error positions in received polynomials with a separate method for actually correcting errors, we will present an entirely new method for both identifying and correcting errors in Reed-Solomon polynomials. Before stating this new Reed-Solomon error correction method, we first note the following analogue to Theorem 4.1.

Theorem 5.1 Suppose that $F$ is a field of order $2^{n}$, and let $C$ be an $R S\left(2^{n}-1, t\right)$ code in $F[x]$. Then $c(x) \in F[x]$ of degree less than $2^{\mathrm{n}}-1$ is in $C$ if and only if $c\left(a^{i}\right)=0$ for $i=1,2, \ldots, 2 t$.

## 数学代写|matlab代写|Error Correction Method Proof

In this section, we will verify the Reed-Solomon error correction method that we summarized and illustrated in Section 5.2. ${ }^{2}$

Suppose $F$ is a field of order $2^{n}$, and let $C$ be an $R S\left(2^{n}-1, t\right)$ code in $F[x]$. If $c(x) \in C$ is transmitted and we receive the polynomial $r(x) \in F[x]$ of degree less than $2^{n}-1$, then $r(x)=c(x)+e(x)$ for some error polynomial $e(x)$ in $F[x]$ of degree less than $2^{n}-1$. We will denote this error polynomial by $e(x)=\sum_{j=0}^{m-1} e_{j} x^{j}$, with $m=2^{n}-1$ and $e_{j} \in F$. To determine $e(x)$, we begin by computing the first $2 t$ syndromes of $r(x)$, which we will denote as follows for $i=1,2, \ldots, 2 t$.
$$s_{i}=r\left(a^{i}\right)=e\left(a^{i}\right)=\sum_{j=0}^{m-1} e_{j} a^{i j}$$
Next, we use the preceding syndromes to form the syndrome polynomial $S(z)=\sum_{i=0}^{2 t-1} s_{i+1} z^{i}$. Note then that $S(z)$ can be expressed as follows.
$$S(z)=\sum_{i=0}^{2 t-1} \sum_{j=0}^{m-1} e_{j} a^{(i+1) j} z^{i}=\sum_{j=0}^{m-1} e_{j} a^{j} \sum_{i=0}^{2 t-1} a^{i j} z^{i}$$
Let $M$ be the set of integers that correspond to the error positions in $r(x)$. That is, let $M=\left{0 \leq j \leq m-1 \mid e_{j} \neq 0\right}$. Note also the following.
\begin{aligned} S(z) &=\sum_{j \in M} e_{j} a^{j} \sum_{i=0}^{2 t-1} a^{i j} z^{i} \ &=\sum_{j \in M} e_{j} a^{j}\left(\frac{1-a^{j(2 t)} z^{2 t}}{1-a^{j} z}\right) \ &=\sum_{j \in M} \frac{e_{j} a^{j}}{1-a^{j} z}-\sum_{j \in M} \frac{e_{j} a^{j(2 t+1)} z^{2 t}}{1-a^{j} z} \end{aligned}

## 数学代写|matlab代写|Error Correction Method Proof

s一世=r(一个一世)=和(一个一世)=∑j=0米−1和j一个一世j

## 有限元方法代写

tatistics-lab作为专业的留学生服务机构，多年来已为美国、英国、加拿大、澳洲等留学热门地的学生提供专业的学术服务，包括但不限于Essay代写，Assignment代写，Dissertation代写，Report代写，小组作业代写，Proposal代写，Paper代写，Presentation代写，计算机作业代写，论文修改和润色，网课代做，exam代考等等。写作范围涵盖高中，本科，研究生等海外留学全阶段，辐射金融，经济学，会计学，审计学，管理学等全球99%专业科目。写作团队既有专业英语母语作者，也有海外名校硕博留学生，每位写作老师都拥有过硬的语言能力，专业的学科背景和学术写作经验。我们承诺100%原创，100%专业，100%准时，100%满意。

## MATLAB代写

MATLAB 是一种用于技术计算的高性能语言。它将计算、可视化和编程集成在一个易于使用的环境中，其中问题和解决方案以熟悉的数学符号表示。典型用途包括：数学和计算算法开发建模、仿真和原型制作数据分析、探索和可视化科学和工程图形应用程序开发，包括图形用户界面构建MATLAB 是一个交互式系统，其基本数据元素是一个不需要维度的数组。这使您可以解决许多技术计算问题，尤其是那些具有矩阵和向量公式的问题，而只需用 C 或 Fortran 等标量非交互式语言编写程序所需的时间的一小部分。MATLAB 名称代表矩阵实验室。MATLAB 最初的编写目的是提供对由 LINPACK 和 EISPACK 项目开发的矩阵软件的轻松访问，这两个项目共同代表了矩阵计算软件的最新技术。MATLAB 经过多年的发展，得到了许多用户的投入。在大学环境中，它是数学、工程和科学入门和高级课程的标准教学工具。在工业领域，MATLAB 是高效研究、开发和分析的首选工具。MATLAB 具有一系列称为工具箱的特定于应用程序的解决方案。对于大多数 MATLAB 用户来说非常重要，工具箱允许您学习应用专业技术。工具箱是 MATLAB 函数（M 文件）的综合集合，可扩展 MATLAB 环境以解决特定类别的问题。可用工具箱的领域包括信号处理、控制系统、神经网络、模糊逻辑、小波、仿真等。