离散数学
上QQ阅读APP看书,第一时间看更新

§1.2 离散数学的地位与作用

离散数学课程所涉及的概念、方法和理论,大量地应用在数据结构、数据库系统、编译原理、数字逻辑、人工智能、信息安全等计算机课程.

(1)数据结构描述的对象有四种,分别是线形结构、集合、树形结构和图结构.线形结构中的线性表、栈、队列等都是根据数据元素之间关系的不同而建立的对象,离散数学中的关系研究有关元素之间不同关系的内容;集合对象及集合的各种运算都是离散数学中集合论研究的内容;离散数学中的树和图论的内容为树形结构对象和图结构对象的研究提供了很好的知识基础.

(2)数据库系统目前主要研究的数据库类型是关系数据库.关系数据库的关系演算和关系模型需要用到离散数学中谓词逻辑的知识;关系数据库的逻辑结构是由行和列构成的二维表,表之间的连接操作需要用到离散数学中笛卡儿积的知识,表数据的查询、插入、删除和修改等操作需要用到离散数学中关系代数和数理逻辑的知识.

(3)编译原理和技术是软件工程技术人员很重要的基础知识,编译程序是非常复杂的系统程序,包括词法分析、语法分析、语义分析、中间代码生成、代码优化、目标代码生成、依赖机器的代码优化七个阶段.离散数学中计算模型中的语言和文化、有限状态机、语言的识别和图灵机等知识为编译程序中的词法分析和语法分析提供了基础.

(4)数字逻辑为计算机硬件中的电路设计提供了重要理论,而离散数学中命题逻辑中的联结词运算可以解决电路设计中由高低电平表示的各信号之间的运算以及二进制数的位运算等问题.

(5)离散数学中数学推理和布尔代数的知识为早期人工智能研究领域打下了良好的数学基础.谓词逻辑演算为人工智能学科提供了一种重要的知识表示方法和推理方法.另外,模糊逻辑的概念也可以用于人工智能.

(6)信息安全与离散数学也关系密切,离散数学中的代数系统和初等数论为密码学提供了重要的数学基础.例如,恺撒密码的本质就是使用了代数系统中群的知识,初等数论中欧拉定理和费马小定理为著名的RSA公钥密码体系提供了最直接的数学基础.

(7)计算机图形学用到离散数学中图论的知识;计算机网络用到离散数学中图论和树的知识;软件工程用到离散数学中数理逻辑和图论的知识;计算机体系结构用到离散数学中代数系统和哈夫曼编码的知识.

离散数学不但为后续课程提供了必需的理论基础,还可以培养学生的抽象思维能力和解决问题的能力.因此,离散数学已经成为计算机专业学生必须掌握的理论基础和数学工具.