离散数学
构进行描述。
离散数学结构化问题描述往往注重讨论支持问题求解的环境(论域)的结构,特别是离散结构,因为连续结构的环境(论域)不能提供结构化问题描述的支持。因此离散数学所关心的是满足计算机科学思维的离散结构,关心的是求解对象在结构中的相对位置,能够构成子结构的的条件,以及从对象类生成离散结构的方法和算法等。在离散数学中确定离散结构有两种方法:一是首先提出一系列用来表示结构中表示事物个体的性质和个体与个体之间的关系的形式表达式,它们往往是关于结构中性质和关系的断言,形式表达式往往是命题(谓词)公式,结构是满足这些命题公式的那些个体构成,结构就表现在这些性质和关系上。二是先提出一个结构的初型,然后指出一些从结构中的个体出发生成新的个体的操作及操作所需要满足的规则,结构是由初型和操作确定的。
离散数学的这种确定描述问题的结构化语言的方法是计算机科学中的主要方法。
㈢构造性的思维方法。学科的思维特点是由学科的本体论、认识论、方法论和表达语言所决定的。我们不去讨论这些概念的精确定义和在计算机科学中的含义,但在计算机科学中,任何的思维都应该问题的求解在计算机上实现。在计算机科学的表达语言(至少在符号处理层面和在逻辑层面)上,求解问题如何操作,也就是说任何称得上适合于计算机科学的思维都应该是可操作的。所以在数学中的存在性和唯一性问题,在计算机科学中是可构造性和构造的复杂性问题。另外,目前人们让计算机解题,不仅要(用程序的方式)告诉计算机做什么,而且还要(用程序的方式)告诉计算机如何做,因此在结构化问题描述的基础上,还要指出问题求解的整个构造过程。在计算机科学的整个解决实际问题的思维过程中,非常注重解题的可操作性和操作的过程。
离散数学的整个思维训练就是这种构造性思维的训练。在离散数学的整个学习过程中不仅要注重解题(或论证)的结果,而更重要是注重解题(或论证)过程的可构造性,以及可构造过程的复杂性。
从数学的角度来看,离散数学的内容并不复杂,但从计算机科学的角度来看离散数学引导了人们进入计算机科学的思维领域,在通用层面上表现了计算机科学的学科特点。
离散数学课程内容的结构。根据离散数学的思维特点安排整个内容:有三种方式描述离散结构:
㈠用性质和关系确定离散结构:它们具有这个结构是由于这些成员都具有某些性质和它们之间具有某些关系。用符号体系表示。
①由于计算机面对的是最基本、最一般的的对象,只有集合才是最基本、最一般的的对象,因为关于它的认识不需要附加许多“人为”的条件,只需最自然的的可区分性就行了。而且用最自然的方式去陈述所满足的自然性质和最自然的操作方式去构造就可以形式地表示出来。
②用为什么属于某集合和以怎样方式属于某集合形式地描述性质和关系。
③用符号的方法论证满足某性质和具有某关系来确定一种结构。
④利用最简单的离散结构—线性结构的问题求解的构造性思维方法。
㈡用简单几何图形表示离散结构
①怎样用简单几何图形表示离散结构。
②怎样利用这种表示方式进行问题求解的构造性思维。
㈢在最通用的符号层面上的问题求解。
①用符号体系描述推理。
②在通用层面推理操作。
㈣用满足某些规律的操作(运算)来确定离散结构。
①关于操作所确定的结构。