1、1. 目的了解有关的背景,加深对计算机学科的全面了解,特别是理论方面的了解,而不限于将计算机看成是一门技术或工程性的学科。通过重要的历史事件,了解计算机科学中的一些基本思维方式和一些基本问题。2. 数理逻辑的发展前期前史时期古典形式逻辑时期:亚里斯多德的直言三段论理论初创时期逻辑代数时期(17世纪末)资本主义生产力大发展,自然科学取得了长足的进步,数学在认识自然、发展技术方面起到了相当重要的作用。人们希望使用数学的方法来研究思维,把思维过程转换为数学的计算。莱布尼兹(Leibniz, 16461716)完善三段论,提出了建立数理逻辑或者说理性演算的思想:提出将推理的正确性化归于计算,这种演算能
2、使人们的推理不依赖于对推理过程中的命题的含义内容的思考,将推理的规则变为演算的规则。使用一种符号语言来代替自然语言对演算进行描述,将符号的形式和其含义分开。使得演算从很大程度上取决与符号的组合规律,而与其含义无关。布尔(G. Boole, 18151864)代数:将有关数学运算的研究的代数系统推广到逻辑领域,布尔代数既是一种代数系统,也是一种逻辑演算。3. 数理逻辑的奠基时期弗雷格(G. Frege, 18481925):概念语言一种按算术的公式语言构成的纯思维公式语言(1879)的出版标志着数理逻辑的基础部分命题演算和谓词演算的正式建立。皮亚诺(Giuseppe Peano, 1858193
3、2):用一种新的方法陈述的算术原理(1889)提出了自然数算术的一个公理系统。罗素(Bertrand Russell, 18721970):数学原理(与怀特黑合著,1910, 1912, 1913)从命题演算和谓词演算开始,然后通过一元和二元命题函项定义了类和关系的概念,建立了抽象的类演算和关系演算。由此出发,在类型论的基础上用连续定义和证明的方式引出了数学(主要是算术)中的主要概念和定理。逻辑演算的发展:甘岑(G. Gentzen)的自然推理系统(Natural Deduction System),逻辑演算的元理论:公理的独立性、一致性、完全性等。各种各样的非经典逻辑的发展:路易斯(Lewi
4、s, 18831964)的模态逻辑,实质蕴涵怪论和严格蕴涵、相干逻辑等,卢卡西维茨的多值逻辑等。4. 集合论的发展看待无穷集合的两种观点:实无穷与潜无穷康托尔(G. Cantor, 18451918):以实无穷的思想为指导,建立了朴素集合论 外延原则(集合由它的元素决定)和概括原则(每一性质产生一集合)。可数集和不可数集,确定无穷集合的本质在于集合本身能与其子集一一对应。能与正整数集合对应的集合是可数的,否则是不可数的。证明了有理数集是可数的,使用对角线法证明了实数集合是不可数的。超穷基数和超穷序数朴素集合论的悖论:罗素悖论公理集合论的建立:ZFC系统6. 第三次数学危机与逻辑主义、直觉主义与
5、形式主义集合论的悖论使得人们觉得数学产生了第三次危机,提出了数学的基础到底是什么这样的问题。罗素等的逻辑主义:数学的基础是逻辑,倡导一切数学可从逻辑符号推出,数学原理一书是他们这一思想的体现。为解决悖论产生了逻辑类型论。布劳维尔(Brouwer, 18811966)的直觉主义:数学是心灵的构造,只承认可构造的数学,强调构造的能行性,与计算机科学有重要的联系。坚持潜无穷,强调排中律不能用于无穷集合。海丁(Heyting)的直觉主义逻辑。希尔伯特(D. Hilbert)的形式主义:公理化方法与形式化方法,元数学和证明论,提倡将逻辑演算和数学证明本身形式化,把用普通的语言传达的内容上的数学科学变为用
6、数学符号和逻辑符号按一定法则排列的一堆公式。为了消除悖论,要数学建立在公理化基础上,将各门数学形式化,构成形式系统,并证明其一致性,这是希尔伯特的数学纲领。7. 数理逻辑的发展初期哥德尔(Godel, 19061978)不完全性定理:一个足够强大的形式系统,如果是一致的则不是完全的,即有的判断在其中是不可证的,既不能断定其为假,也不能证明其为真。各种计算模型:哥德尔的递归函数理论,邱吉尔的 演算,图灵机模型这些计算模型是计算机科学的理论基础,是计算机的理论模型。三、预备知识1. 集合的基本概念集合(set):集合是数学中最基本的概念之一,不能以更简单的概念来定义(define),只能给出它的描
7、述(description)。一些对象的整体就称为一个集合,这个整体的每个对象称为该集合的一个元素(member或element)。用大写字母A, B, C等表示集合,用小写字母a, b, c等表示集合的元素a A表示:a是集合A的元素,或说a属于集合Aa不是集合A的元素,或说a不属于集合A集合中的元素是无序的,不重复的。通常使用两种方法来给出一个集合:列元素法:列出某集合的所有元素,如:A = 0, 1, 2, 3, 4, 5, 6, 7, 8, 9表示所有小于10的自然数所构成的集合B = a, b, , z 表示所有小写英文字母所构成的集合性质概括法:使用某个性质来概括集合中的元素,如:
8、 A = n | n 是小于10的自然数C = n | n 是质数 表示所有质数所构成的集合集合由它的元素所决定,换句话说,两个集合A和B相等,记为A = B,如果A和B具有相同的元素,即a属于集合A当且仅当a属于集合B。子集(subset):说集合A是集合B的子集,记为A B,如果a属于集合A则a也属于集合B。因此A=B当且仅当A B且B A。说集合A是集合B的真子集(proper subset),如果A B且A不等于B(A B)。空集(empty set):约定存在一个没有任何元素的集合,称为空集,记为 ,有时也用来表示。按子集的定义,空集是任何集合的子集(为什么?)。幂集(power s
9、et):集合A的幂集,记为P(A),是A的所有子集所构成的集合,即:P(A) = B | B A 例如,A = 0, 1,则P(A) = , 0, 1, 0, 1 显然,对任意集合A,有 P(A)和A P(A)补集(complement set):集合A的补集,记为A,是那些不属于集合A的元素所构成的集合,即A = x | x A。通常来说,是在存在一个全集U的情况下讨论集合的补集。全集U是所讨论的问题域中所有元素所构成的集合。集合的并(union):集合A和B的并A B定义为:A B = x | x A或者x B,集合的并可推广到多个集合,设A1, A2, , An都是集合,它们的并定义为:
10、 A1 A2 An = x | 存在某个i,使得x Ai集合的交(intersection):A B = x | x A而且x B,集合的交也可推广到多个集合,设A1, A2, , An都是集合,它们的交定义为: A1 A2 An = x | 对所有的i,都有x Ai集合的差(difference):集合A和B的差A B定义为:A B = x | x A而且x B。2. 关系和函数的基本概念有序对(ordered pair):设A和B是两个集合,a A, b B是两个元素,a和b的有序对,记为,定义为集合a, a, b。设和是两个有序对,可以证明 = 当且仅当a1 = a2且b1 = b2。(
11、如何证?)有序对可推广到n个元素,设A1, A2, , An是集合,a1 A1, a2 A2, , an An是元素,定义有序n元组(ordered n-tuple)为, an,注意这是一个归纳(inductive)定义,将有序n元组的定义归结为有序n-1元组的定义。显然有当且仅当a1 = b1且a2 = b2且且an = bn。集合的笛卡尔积(cartesian product):两个集合A和B的笛卡尔积A B定义为: A B = | a A且b B例如,设A = a, b, c,B = 1, 2,则:A B = , b, 1b, 2c, 1c, 2笛卡尔积可推广到多个集合的情况,集合A1,
12、 A2, , An的笛卡尔积定义为: A1 A2 An = | a1 A1且a2 A2且且an An集合之间的关系(relation):定义n个集合A1, A2, , An之间的一个n元关系R为集合A1, A2, , An的笛卡尔积A1 A2 An的一个子集。 A1 A2 An,若 R,则称a1, a2, , an间具有关系R,否则称它们不具有关系R。特别地:当A1 = A2 = = An = A时,称R为A上的n元关系。当n = 2时,有R A1 A2,称R为A1与A2间的一个二元关系(binary relation)。这时若 R则简记为a1Ra2,否则(即 R)记为a1Ra2。通常研究得最
13、多的是二元关系,n元关系的许多性质可从二元关系的性质扩充而得到。如果没有特别指明的话,说R是一个关系则是指R是一个二元关系。当n = 1时,这时可认为R是集合A上满足某种性质的子集。关系的一些性质:设R是A上的二元关系:说R是自反的(reflexive),如果对任意的a A有aRa。说R是反自反的(irreflexive),如果对任意的a A有aRa。说R是对称的(symmetric),如果对任意的a, b A有若aRb则bRa。 说R是反对称的(antisymmetric),如果对任意的a, b A有若aRb且bRa则a = b。说R是传递的(transitive),如果对任意的a, b, c A有若aRb
copyright@ 2008-2022 冰豆网网站版权所有
经营许可证编号:鄂ICP备2022015515号-1