代数系统在计算机科学中的应用(new).ppt
《代数系统在计算机科学中的应用(new).ppt》由会员分享,可在线阅读,更多相关《代数系统在计算机科学中的应用(new).ppt(45页珍藏版)》请在淘文阁 - 分享文档赚钱的网站上搜索。
1、代数系统的应用代数系统的应用1代数系统的应用代数系统的应用2人们研究和考察现实世界中各种现象或过程,人们研究和考察现实世界中各种现象或过程,往往要借助某些数学工具。在代数中,可以用正往往要借助某些数学工具。在代数中,可以用正整数集合上的加法运算来描述企业产品的累计数,整数集合上的加法运算来描述企业产品的累计数,可以用集合之间的可以用集合之间的“并并”、“交交”运算来描述单运算来描述单位与单位之间的关系等。我们所接触过的数学结位与单位之间的关系等。我们所接触过的数学结构,连续的或离散的,常常是对研究对象(自然构,连续的或离散的,常常是对研究对象(自然数、实数、多项式、矩阵、命题、集合乃至图)数、
2、实数、多项式、矩阵、命题、集合乃至图)定义各种运算(加、减、乘,与、或、非,并、定义各种运算(加、减、乘,与、或、非,并、交、补),然后讨论这些对象及运算的有关性质。交、补),然后讨论这些对象及运算的有关性质。代数系统的应用代数系统的应用3针对某个具体问题选用适宜的数学结构去进针对某个具体问题选用适宜的数学结构去进行较为确切的描述,这就是所谓行较为确切的描述,这就是所谓“数学模型数学模型”。可见,数学结构在数学模型中占有极为重要的位可见,数学结构在数学模型中占有极为重要的位置。而代数系统是一类特殊的数学结构置。而代数系统是一类特殊的数学结构由对由对象集合及运算组成的数学结构,我们通常称它为象集
3、合及运算组成的数学结构,我们通常称它为代数结构。它在计算机科学中有着广泛的应用,代数结构。它在计算机科学中有着广泛的应用,对计算机科学的产生和发展有重大影响;反过来,对计算机科学的产生和发展有重大影响;反过来,计算机科学的发展对抽象代数学又提出了新的要计算机科学的发展对抽象代数学又提出了新的要求,促使抽象代数学不断涌现新概念,发展新理求,促使抽象代数学不断涌现新概念,发展新理论。论。代数系统的应用代数系统的应用4格与布尔代数的理论成为电子计算机硬件设格与布尔代数的理论成为电子计算机硬件设计和通讯系统设计中的重要工具。半群理论在自计和通讯系统设计中的重要工具。半群理论在自动机和形式语言研究中发挥
4、了重要作用。关系代动机和形式语言研究中发挥了重要作用。关系代数理论成为最流行的数据库的理论模型。格论是数理论成为最流行的数据库的理论模型。格论是计算机语言的形式语义的理论基础。抽象代数规计算机语言的形式语义的理论基础。抽象代数规范理论和技术广泛应用于计算机软件形式说明和范理论和技术广泛应用于计算机软件形式说明和开发,以及硬件体系结构设计。有限域的理论是开发,以及硬件体系结构设计。有限域的理论是编码理论的数学基础,在通讯中发挥了重要作用。编码理论的数学基础,在通讯中发挥了重要作用。在计算机算法设计与分析中,代数算法研究占有在计算机算法设计与分析中,代数算法研究占有主导地位。主导地位。代数系统的应
5、用代数系统的应用5纠错码纠错码一、纠错码概述一、纠错码概述 我们知道,在计算机中和数据通信中,我们知道,在计算机中和数据通信中,经常需要将二进制数字信号进行传递,这经常需要将二进制数字信号进行传递,这种传递的距离近则数米、数毫米,远则超种传递的距离近则数米、数毫米,远则超过数千公里。在传递住处过程中,由于存过数千公里。在传递住处过程中,由于存在着各种干扰,可能会使二进制信号产生在着各种干扰,可能会使二进制信号产生失真现象,即在传递过程中二进制信号失真现象,即在传递过程中二进制信号0可可能会变成能会变成1,1可能会变成可能会变成0。代数系统的应用代数系统的应用6 图图2.1是一个二进制信号传递的
6、简单模型,它有是一个二进制信号传递的简单模型,它有一个发送端和一个接收端,二进制信号串一个发送端和一个接收端,二进制信号串X=x1x2xn 从发送端发出经传输介质而至接收端。由从发送端发出经传输介质而至接收端。由于存在着干扰对传输介质的影响,因而接收端收到于存在着干扰对传输介质的影响,因而接收端收到的二进制信号串的二进制信号串 中的中的 可能不一定可能不一定就与就与xi相等,从而产生了二进制信号的传递错误。相等,从而产生了二进制信号的传递错误。发送端发送端接收端接收端X=x1x2 xn干扰干扰图图2.1代数系统的应用代数系统的应用7 由于在计算机中和数据通信系统中的由于在计算机中和数据通信系统
7、中的信号传递是非常的频繁与广泛,因此,如何信号传递是非常的频繁与广泛,因此,如何防止传输错误就变得相当重要了,当然,要防止传输错误就变得相当重要了,当然,要解决这个问题可以有不同的途径。人们所想解决这个问题可以有不同的途径。人们所想到的第一个途径是提高设备的抗干扰能力和到的第一个途径是提高设备的抗干扰能力和信号的抗干扰能力。但是,大家都知道,这信号的抗干扰能力。但是,大家都知道,这种从物理角度去提高抗干扰能力并不能完全种从物理角度去提高抗干扰能力并不能完全消除错误的出现。消除错误的出现。代数系统的应用代数系统的应用8 第二个途径就是我们所要谈到的采用采用纠第二个途径就是我们所要谈到的采用采用纠
8、错码(错码(Error Correcting Code)的方法以提高抗)的方法以提高抗干扰能力。这种纠错码的方法是从编码上下功夫,干扰能力。这种纠错码的方法是从编码上下功夫,使得二进制数码在传递过程中一旦出错,在接收使得二进制数码在传递过程中一旦出错,在接收端的纠错码装置就能立刻发现错误,并将其纠正。端的纠错码装置就能立刻发现错误,并将其纠正。由于这种方法简单易行,因此目前在计算机中和由于这种方法简单易行,因此目前在计算机中和数据通信系统中被广泛采用。采用这种方法后,数据通信系统中被广泛采用。采用这种方法后,二进制信号传递模型就可以变为图二进制信号传递模型就可以变为图2.2所示的模型所示的模型
9、了。了。代数系统的应用代数系统的应用9图图2.2通信系统模型通信系统模型信信源源信信源源编编码码加加密密信信道道编编码码信道信道信信道道译译码码解解密密信信源源译译码码信信宿宿密密钥钥源源噪声噪声密密钥钥源源该模型按功能分为信源、编码器、信道、译码器、信宿该模型按功能分为信源、编码器、信道、译码器、信宿代数系统的应用代数系统的应用10 但是,为什么纠错码具有发现错误、纠但是,为什么纠错码具有发现错误、纠正错误的能力呢?纠错码又是按什么样的原正错误的能力呢?纠错码又是按什么样的原理去编的呢?为了说明这些问题,我们首先理去编的呢?为了说明这些问题,我们首先介绍一些基本概念。介绍一些基本概念。代数系
10、统的应用代数系统的应用11定义定义2.1 由由0和和1组成的串称为字(组成的串称为字(Word),一),一些字的集合称为码(些字的集合称为码(Code)。码中的字称)。码中的字称为码字(为码字(Code Word)。不在码中的字称为)。不在码中的字称为废码(废码(Invalid Code)。码中的每个二进制)。码中的每个二进制信号信号0或或1称为码元(称为码元(Code Letter)。)。我们下面举出几个关于纠错码例子。我们下面举出几个关于纠错码例子。代数系统的应用代数系统的应用12例例2.12.1 设有长度为设有长度为2的字,它们一共可有的字,它们一共可有22=4个,它们所组成的字集个,它
11、们所组成的字集S2=00,01,10,11。当选取编码为。当选取编码为S2时,这种编码不具有时,这种编码不具有抗干扰能力。因为当抗干扰能力。因为当S2中的一个字如中的一个字如10,在,在传递过程中其第一个码元传递过程中其第一个码元1变为变为0,因而整个,因而整个字成为字成为00时,由于时,由于00也是也是S2中的字,故我们中的字,故我们不能发现传递中是否出错。不能发现传递中是否出错。代数系统的应用代数系统的应用13 当我们选取当我们选取S2的一个子集如的一个子集如C2=01,10作为作为编码时就会发生另一种完全不同的情况。编码时就会发生另一种完全不同的情况。因为此时因为此时00和和11均为废码
12、,而当均为废码,而当01在传递过在传递过程中第一个码元由程中第一个码元由0变为变为1,即整个字成为,即整个字成为11时,时,由于由于11是废码,因而我们发现传递过程中出现了是废码,因而我们发现传递过程中出现了错误。对错误。对10也有同样的情况。也有同样的情况。01第一个码元错成第一个码元错成11第二个码元错成第二个码元错成0010第一个码元错成第一个码元错成00第二个码元错成第二个码元错成11代数系统的应用代数系统的应用14 可见,这种编码有一个缺点,即它只能可见,这种编码有一个缺点,即它只能发现错误而不能纠正错误,因此我们还需要发现错误而不能纠正错误,因此我们还需要选择另一种能纠错的编码。选
13、择另一种能纠错的编码。代数系统的应用代数系统的应用15例例2.2 2.2 考虑长度为考虑长度为3的字的字 它们一共可有它们一共可有23=8个,它们所组成的字集个,它们所组成的字集S3=000,001,010,011,100,101,110,111 选取编码选取编码C3=101,010。利用此编码我们不。利用此编码我们不仅能发现错误而且能纠正错误。仅能发现错误而且能纠正错误。因为码字因为码字101出现单个错误后将变为:出现单个错误后将变为:001,111,100;而码字;而码字010出现错误后将变为出现错误后将变为110,000,011。故如码字。故如码字101在传递过程中任何一个码元出在传递过
14、程中任何一个码元出现了错误,整个码字只会变为现了错误,整个码字只会变为111、100或或001,但,但是都可知其原码为是都可知其原码为101。对于码字。对于码字010也有类似的情也有类似的情况。故对编码况。故对编码C3,我们不仅能发现错误而且能纠,我们不仅能发现错误而且能纠正错误。正错误。代数系统的应用代数系统的应用16 当然,上述编码还有一个缺点,就是当然,上述编码还有一个缺点,就是它只能发现并纠正单个错误。当错误超过两它只能发现并纠正单个错误。当错误超过两个码元时,它就既不能发现错误,更无法纠个码元时,它就既不能发现错误,更无法纠正了。正了。代数系统的应用代数系统的应用17二、纠错码的纠错
15、能力二、纠错码的纠错能力 前面例子中我们发现前面例子中我们发现C2编码仅能发现编码仅能发现错误,按错误,按C3编码可发现并纠正单个错误。可编码可发现并纠正单个错误。可见,不能的编码具有不同的纠错能力。下面见,不能的编码具有不同的纠错能力。下面介绍编码方式与纠错能力之间的联系。介绍编码方式与纠错能力之间的联系。代数系统的应用代数系统的应用18设设Sn是长度为是长度为n的字集,即的字集,即 Sn=x1x2xn|xi=0或或1,i=1,2,n在在Sn上定义二元运算上定义二元运算为:为:X,YSn,X=x1x2xn,Y=y1y2yn,Z=X Y=z1z2zn其中,其中,zi=xi+2 yi(i=1,2
16、,n)而运算符而运算符+2为模为模2加运加运算算(即即0+21=1+20=1,0+20=1+21=0),我们称运算我们称运算为按为按位加。位加。显然,显然,是一个代数系统,且运算是一个代数系统,且运算满足满足结合律,它的幺元为结合律,它的幺元为000,每个元素的逆元都是它,每个元素的逆元都是它自身。因此,自身。因此,是一个群。是一个群。代数系统的应用代数系统的应用19定义定义2.22.2 Sn的任一非空子集的任一非空子集C,如果是,如果是群,群,即即C是是Sn的子群,则称码的子群,则称码C是群码是群码(Group Code)。定义定义2.32.3 设设X=x1x2 xn 和和Y=y1y2 yn
17、 是是Sn中的两个中的两个元素,称元素,称为为X与与Y的的汉明距离汉明距离(Hamming Distance)。)。代数系统的应用代数系统的应用20 从定义可以看出,从定义可以看出,X和和Y的汉明距离是的汉明距离是X和和Y中对应位码元不同的个数。设中对应位码元不同的个数。设S3中两个中两个码字为:码字为:000和和011,这两个码字的汉明距离,这两个码字的汉明距离为为2。而。而000和和111的汉明距离为的汉明距离为3。关于汉明。关于汉明距离,我们有以下结论:距离,我们有以下结论:(1)H(X,X)=0;(2)H(X,Y)=H(Y,X);(3)H(X,Y)+H(Y,Z)H(X,Z)。代数系统的
18、应用代数系统的应用21(3)H(X,Y)+H(Y,Z)H(X,Z)的的证证明明证明:定义证明:定义H(xi,yi)=则则H(xi,zi)H(xi,yi)+H(yi,zi)从而从而0 xi=yi1 xiyi代数系统的应用代数系统的应用22定义定义2.42.4一个码一个码C中所有不同码字的汉明距中所有不同码字的汉明距离的极小值称为码离的极小值称为码C的最小距离(的最小距离(Minimum Distance),记为记为dmin(C)。即。即例如,例如,dmin(S2)=dmin(S3)=1,dmin(C2)=2,dmin(C3)=3。利用编码利用编码C的最小距离,可以刻画编码方式与纠的最小距离,可以
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 代数 系统 计算机科学 中的 应用 new
限制150内