### 数学代写|matlab代写|Error-Correcting 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代写|General Properties

In the next three chapters, we will present several types of error-correcting codes. A code is a set of messages, called codewords, which can be transmitted electronically between two parties. An error-correcting code is a code for which it is sometimes possible to detect and correct errors that occur during the transmission of codewords. Some applications of error-correcting codes include correction of errors that occur in information transmitted via the Internet, data stored in a computer, and music or video encoded on a compact disc or DVD. Error-correcting codes can also be used to correct errors that occur in information transmitted through space. For example, in Section 3.3, we will briefly discuss a specific error-correcting code that was used in the Mariner 9 space probe when it transmitted photographs back to Earth after entering into an orbit around Mars.

In this chapter, we will look at some types of codes in which the codewords are vectors of a fixed length over $\mathbb{Z}{2}$, with entries that we will call bits. We will denote the space of vectors of length $n$ over $\mathbb{Z}{2}$ as $\mathbb{Z}{2}^{n}$. Thus, the codes that we will consider in this chapter will be subsets of $\mathbb{Z}{2}^{n}$ for some $n$. A code in $\mathbb{Z}{2}^{n}$ is not required to be a subspace of $\mathbb{Z}{2}^{n}$. If a code is a subspace of $\mathbb{Z}_{2}^{n}$, then the code is called a linear code. We will present linear codes beginning in Section 3.6, and then continuing in Chapters 4 and $5 .$

The way that we will identify in general whether an error has occurred during the transmission of a codeword is to simply check whether the received vector is in the code. As a result, because our goal is to be able to detect and correct errors in received vectors, not all vectors in $\mathbb{Z}_{2}^{n}$ can be codewords in a particular code. If a received vector is in the code, then

we will assume that it was the codeword that was sent. If not, then obviously an error occurred in at least one of the bits during transmission, and provided the received vector is of the correct length (i.e., provided no bits were dropped during transmission), we will attempt to correct the received vector to the codeword that was actually sent.

In general, we will use the “nearest neighbor” policy to correct received vectors, meaning we will assume that the fewest possible number of bit errors occurred, and correct a received vector to the codeword from which it differs in the fewest positions. This method of error correction is limited, of course, for there is not always a unique codeword that differs from a received vector in the fewest positions. Also, even when there is a unique codeword that differs from a received vector in the fewest positions, this codeword might not be the vector that was actually sent. However, since the nearest neighbor policy is usually the best approach to take when correcting errors in actual practice, it is the basis from which we will perform our error correction.

For our first method for constructing codes, we will refer back to block designs, the subject of Chapter 2. The following theorem states that the rows in an incidence matrix for a symmetric block design form the codewords in an error-correcting code.

Theorem 3.2 Suppose $A$ is an incidence matrix for a $(v, v, r, r, \lambda)$ block design. Then the rows of $A$ form $a(v, 2(r-\lambda))$ code with $v$ codewords.
Proof. There are $v$ positions in each of the $v$ rows of $A$. Thus, the rows of $A$ form a code with $v$ codewords, each of length $v$ positions. It remains to be shown only that the minimum distance of this code is $2(r-\lambda)$. Consider any pair of rows $R_{1}$ and $R_{2}$ in $A$. Since every row of $A$ contains ones in $r$ positions, and each pair of rows of $A$ contains ones in common in $\lambda$ positions, there will be $r-\lambda$ positions in which $R_{1}$ contains a one and $R_{2}$ contains a zero, and $r-\lambda$ positions in which $R_{1}$ contains a zero and $R_{2}$ contains a one. This yields $2(r-\lambda)$ positions in which $R_{1}$ and $R_{2}$ differ.
Example 3.3 Theorem 3.2 states that the rows of the incidence matrix $A$ in Example $2.3$ form a $(7,4)$ code with 7 codewords.

In Theorem 2.5, we showed that a normalized Hadamard matrix of order $4 k \geq 8$ can be used to construct an incidence matrix for a

$(4 k-1,4 k-1,2 k-1,2 k-1, k-1)$ symmetric block design. Theorem $3.2$ states that the rows of such an incidence matrix $A$ form codewords of length $4 k-1$ positions in a code with minimum distance $2((2 k-1)-(k-1))=2 k$ and which contains $4 k-1$ codewords. Also, recall that each of the rows of $A$ will contain $2 k$ zeros and $2 k-1$ ones. Thus, there will be $2 k$ positions in which the vector $(11 \cdots 1)$ of length $4 k-1$ positions differs from each of the rows of $A$. So by including the vector ( $1,1 \cdots 1)$ of length $4 k-1$ positions with the rows of $A$, we obtain a $(4 k-1,2 k)$ code with $4 k$ codewords. In addition, as a result of Corollary $3.4$ to the following theorem, no additional vectors can be included in this code without decreasing the minimum distance of the code. Because these $(4 k-1,2 k)$ codes with $4 k$ codewords are constructed from Hadamard matrices, we will call them Hadamard codes.

We will close this section with the following theorem and corollary, which verify the fact that no vectors can be joined to the codewords in a Hadamard code without decreasing the minimum distance of the code.
Theorem 3.3 Suppose $r$ is the number of codewords in an $(n, d)$ code for some $n, d$ with $d>\frac{n}{2}$. Then $r \leq \frac{2 d}{2 d-n}$.

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

In Section 3.2, we showed that a normalized Hadamard matrix can be used to construct an error-correcting code called a Hadamard code. We also showed that the number of codewords in a Hadamard code is maximal in the sense that no additional vectors can be included without decreasing the minimum distance of the code. However, as a consequence of the following theorem, by increasing the length of the codewords in a Hadamard code by only a single position, we can double the number of codewords without decreasing the minimum distance of the code.

Theorem 3.5 Suppose $A$ is the incidence matrix that results from a normalized Hadamard matrix of order $4 k$, and suppose $B$ is the matrix obtained by interchanging all zeros and ones in $A$. Let $\mathcal{A}$ be the matrix obtained by placing a one in front of all of the rows of $A$, and let $\mathcal{B}$ be the matrix obtained by placing a zero in front of all of the rows of $B$. Then the rows of $\mathcal{A}$ and $\mathcal{B}$ taken together form a $(4 k, 2 k)$ code with $8 k-2$ codewords.
Proof. Exercise.
Just as we included the vector ( $11 \cdots 1$ ) with the rows of an incidence matrix when we formed Hadamard codes, we can do the same for the codes defined by Theorem 3.5. In fact, we can even do a little better. Note that each of the rows in the matrices $\mathcal{A}$ and $\mathcal{B}$ in Theorem $3.5$ will contain $2 k$ zeros and $2 k$ ones. Thus, there will be $2 k$ positions in which both of the vectors $\left(\begin{array}{llll}0 & 0 & \cdots & 0\end{array}\right)$ and $\left(\begin{array}{llll}1 & 1 & \cdots & 1\end{array}\right)$ of length $4 k$ positions differ from each of the rows of $\mathcal{A}$ and $\mathcal{B}$. So by including the vectors $(0 \quad 0 \cdots 0)$ and $(11 \cdots 1$ ) of length $4 k$ positions with the rows of $\mathcal{A}$ and $\mathcal{B}$, we obtain a $(4 k, 2 k)$ code with $8 k$ codewords. It is also true that no additional vectors can be included in this code without decreasing the minimum distance of the code, although we will not prove this fact. These $(4 k, 2 k)$ codes with $8 k$ codewords are called Reed-Muller codes, and they have a storied history.
One notable use of a Reed-Muller code was in the Mariner 9 space probe, which transmitted photographs back to Earth after entering into an orbit around Mars in which it remains to this day. The specific code used in the probe was the $(32,16)$ Reed-Muller code with 64 codewords constructed using the normalized Hadamard matrix $H_{32}$. Before being transmitted from the Mariner probe, photographs were broken down into a collection of pixels. Each pixel was assigned one of 64 levels of grayness, and then encoded into one of the 64 codewords in the code. Mariner 9 used this code to transmit a total of 7,329 images of Mars, covering the entire planet. Since transmissions from the probe had to cover such a long distance and were fairly weak, there was a marked potential for bit errors, making the high error correction capability of the code necessary.

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

Reed-Muller 代码的一个显着用途是在水手 9 号太空探测器中，该探测器在进入火星周围的轨道后将照片传回地球，直到今天。探测中使用的特定代码是(32,16)使用归一化 Hadamard 矩阵构造的 64 个码字的 Reed-Muller 码H32. 在从 Mariner 探测器传输之前，照片被分解成一组像素。每个像素被分配 64 级灰度之一，然后编码为代码中的 64 个码字之一。水手 9 号使用此代码传输了总共 7,329 张火星图像，覆盖了整个星球。由于来自探头的传输必须覆盖如此长的距离并且相当微弱，因此存在明显的误码可能性，因此代码的高纠错能力是必要的。

## 有限元方法代写

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 环境以解决特定类别的问题。可用工具箱的领域包括信号处理、控制系统、神经网络、模糊逻辑、小波、仿真等。