赵致琢 博士 教授 (厦门大学计算机科学系,361005,厦门) zzzhao@xmu.edu.cn August 26,2002 计算机科学与技术导论 赵致琢 博士 教授 (厦门大学计算机科学系,361005,厦门) zzzhao@xmu.edu.cn August 26,2002
第一章 科学哲学的思想方法 1.1 科学哲学与学科方法论简介 演绎逻辑主义 第一章 科学哲学的思想方法 1.1 科学哲学与学科方法论简介 演绎逻辑主义 19世纪中叶前,自然科学的发展一直是依附在哲学之中的,在亚里士多德时代,自然科学的发展主要从古典哲学中获得科学思想方法,演绎逻辑成为科学发展最重要的逻辑基础,三段论成为判断科学知识真理性的主要方法论工具。 逻辑经验主义 17世纪初起,近代自然科学开始形成,科学的发现和科学的发展亟需要拓展科学的思维方式。培根研究了科学方法论,系统地提出了归纳法。
培根主张科学是一个归纳系统: 普遍的原理性和定律性知识是由大量来自经验观察的具体而特殊的知识经归纳得到的,普遍的知识是否可靠依 赖于采用的归纳方法是否正确。以后,由于一些科学家进一步的研究工作,形成了历史上著名的逻辑经验主义。 演绎逻辑主义与逻辑经验主义的局限性 哲学的目的在于帮助人们更好地认识真理。 演绎逻辑主义的局限性: 方法论没有逻辑上的漏洞,演绎逻辑保证了从真的前提通过演绎方法得到的知识的科学性,但问题是作为科学之基础的前提是什么?它们的真理性由谁来保证? 逻辑经验主义的局限性: 其立场有实践上的依据,有自然科学的实证知识作为它的后盾,但在方法论上存在不足,归纳法并非处处有效。
结论: 应该相信科学。认识知识的真理性应该更多地考察科学方法的合理性,因为迄今为止科学方法是我们能够发现 具有真理性知识的最高方法(最有效、最可靠的方法,科学主义的观点),但不能迷信科学研究和科学方法,因为科学不是万能的,许多问题的解决必须有赖于科学之外人文因素(如人的价值观念、精神气质、宗教信仰和文化传统等,人文主义的观点); 无论是谁发现的科学知识,还是得出的科学结论,需要审视其本身的科学性问题。 结果: 自然科学的迅猛发展和关于科学知识真理性问题的讨论,促使科学哲学应运而生,迅速发展成一门学科。
科学哲学 科学哲学既要研究科学理论,也要研究科学活动或科学实践。一般地说,科学哲学包括下列三方面的研究内容: ⑴ 对各门科学的逻辑结构和经验内容的分析,形成专门的科学哲学,如数学哲学等; ⑵ 对科学理论和客观世界的关系进行分析,研究理论对象的“存在”问题和理论陈述的“真伪”问题,这就形成了科学哲学研究对象的本体论的内容; ⑶ 对科学理论和科学家的关系进行分析,研究科学家认知科学理论和真理的活动的合理性问题,形成了科学方法论的内容。
科学的认识论、科学方法论和科学的逻辑基础是科学哲学最主要的研究内容。科学方法论的研究与一个具体学科相结合,就产生了学科方法论。 学科方法论固然需要研究一个学科具体的各种方法,但它的主要任务不是研究如何建立各学科具体的科学方法,而是要研究学科中不同分支学科领域和方向内一类科学概念、原理、方法、技术的特性,相互之间更为抽象的共同特性、特征,相互之间的关系,以及使用这些概念、原理、方法和技术的更一般化的原则、原理、方法、技术及其合理性问题。 学科方法论与学科方法学是完全不同的两个概念。学科方法论属于科学哲学层面和该学科科学哲学的研究范畴。学科方法学则是对该学科范围内一类具体学科方法进行研究的学问,属于这个学科的研究范畴。例如,程序设计方
法学,主要是对软件开发方法学领域内各种程序设计方法进行研究,发现和建立新方法,探讨如何运用这些方法获得高质量的程序。而程序设计方法论则不同,它主要以现 存的程序设计方法作为自己的研究对象,研究各种方法的概念、原理、特点、特性,相互之间的关系,方法的科学性和合理性问题,研究运用这些方法的更一般性的原则、原理、方法、技术、及其合理性问题,等等。
1.2 一般的科学的思想方法 面对一个待解决的问题,有没有什么更一般的方式方法或工作原则来指导和帮助我们较好地解决这个问题? 科学认识事物方式方法的三步曲: 一个科学的认识:建立在对于事物性质、特点和发展变化规律的深入的认识基础之上; 一套科学的方法:基于科学的认识,通过寻找、建立,改进或引用,发展解决这个问题的一套科学的方法; 一套科学的程序:着眼于具体解决这个问题,在科学认识的基础之上,依据确定的一套科学的方法,制定实际解决问题的一个严密的、科学的程序,确定第一步做什么,怎么做,第二步做什么,怎么做,……,确定每一步怎么检验,出了问题怎么处理,等等。
一个人只要善于使用这样一种思想(方式)方法开展工作,那么,他在处理科学问题乃至日常事务的过程中往往会做得比较好。有了这样一种认识与实践的方法学概念, 我们做什么事情就比较容易做好。 问题1. 考虑一般情况下,字应该怎样书写才算写得比较好?请总结一下判别字写得好的一般标准与写字应该遵循的准则。 问题2. “凡是美的,都是简单的。”这句话对吗?如果认为不正确,请给出反例。如果认为正确,请就这句话结合你的生活、学习经验给出自己的解释,并用自己的一段话对它进行概括。 问题3. 数学、逻辑与新闻之间有什么联系? 问题4. 没有深入,就不可能有真正高水平的创新。但是,一个人读的书越多,思想受到的束缚也可能越多,创新也就变得越困难,这似乎是一个矛盾。怎么认识这一点?
问题5. 什么是艺术?请你根据自己的理解和体会给艺术下一个比较准确的定义。 问题6. 如何培养创新人才?教师、学生和社会应该怎么做,才能说我们在培养创新人才方面做得比较好? 问题7. “不识庐山真面目,只缘身在此山中。”请根据这句话的涵义,在你学过的科学知识中寻找一个对应的实例。 问题8. 有人说,20世纪计算机科学是领头学科,21世纪生物学或生命科学是领头学科,此话对吗? 问题9. 一个新的概念、思想、方法、技术或理论,普通人在一时无法通过实验或实践验证的情况下,如何对它做一个初步的判断?
问题10. 在计算机科学中,一般认为求解一个问题往往比较困难,但验证一个问题就比较简单。所以,很多人猜测:证比求易。这个讲法是否正确?请用教材以外的实 例举证。从这个问题可以联想得出什么新的结论吗?
1.3 计算机科学学科教育的指导思想 科学办学,内涵发展。 什么是第一流的人才? 在通才教育观下,第一流的人才应该具备三个条件: ⑴ 具有高尚的品德和良好的人文素养; ⑵ 具有坚实的专业基础和深厚的专业功底; ⑶ 富有创新意识,具有科学的思想方法。 所谓通才教育观在大学教育阶段是指教学内容的重点立足于一级学科的范围内开展工作,在此基础之上,根据学生的兴趣适当拓展其他学科的知识,而且,这种拓展应该是在学习科学哲学的同时,以学科方法论和科学的思想方法作为重要的工具逐步扩大自己的学科知识结构和领域,形成良好的科学素养。因为,一个人在学习其他学科专业知识的时候,完全按照自己学习第一学科专业的方式方法
去学习,并不是一个好方法,既费时,又不易掌握学科专业知识的要领。而运用科学哲学的思想方法去学习一个新的学科专业知识,效果比较好,往往事半功倍。当然,在 学习的方式方法上应该以自主提高、自我完善为主。 作为高素质的理工科专业人才,除了应该具备高素质专业人才应有的内涵和共性特征外,还应该具备良好的理工科专业的实践能力,较好地掌握解决本专业实际工作中提出的理论问题、技术问题和工程问题的方式方法和技能。而作为高素质的计算机科学与技术专业人才,与其他理工科学科高素质专业人才的区别仅仅在于人才所处的学科背景和所具备的专业知识的不同,更多地了解和掌握计算机科学与技术发展的一般规律。 按照高素质、第一流专业人才应该具备的三个条件,如何来学习计算机科学与技术知识,使自己具有坚实的专
业基础和深厚的专业功底,富有创新意识,具有科学的思想方法呢?显然,按照科学的思想方法,读者应该首先建立对整个计算机科学与技术学科科学的认识基础,然后基 于科学的认识来指导自己的学习和研究。也许读者会问: 作为初学者,他既没有经验也不具备专业基础,自然谈不上如何按照对学科的科学认识来学习计算机科学与技术,可是他又需要学习计算机科学与技术,否则他就不是一个初学者了。这似乎是一个先有鸡蛋还是先有鸡的难题。我们说,当一个人在一个系统中无法解决这个系统中的问题时,正确的做法应该考虑跳出这个系统,从系统之外去观察和解决这个问题。既然我们面对的主要是刚刚进入大学的中学毕业生,那么,我们要解决大学一年级学生在很短的时间内对于一个待学习的学科专业的认知难题,就应该考虑从专业层面认知这个学科这样一个系统跳出来,到另
一个能够适合中学生认知这个学科的高级科普系统中去考虑解决这个问题。于是,这个难题便迎刃而解。选择的方式应该是借助科学哲学的观点和高级科普深度定位的计算 机科学导论。 1.4 计算机科学初学者的正确选择(略) 学习中我们不要求低年级的同学广泛借阅图书资料,因为一个初学者不具备同时掌握几个体系的能力和知识基础。一本好的教材也完全能够帮助同学们正确理解书本知识的含义,关键是要多读几遍,多思考。 有空把前言看一遍。 1.5 使用本书应该注意的事项(略)