还剩13页未读,继续阅读
本资源只提供10页预览,全部文档请下载后查看!喜欢就下载吧,查找使用更方便
文本内容:
计算机科学与技术方法论*董荣胜古天龙蔡国永谢春光桂林电子工业学院计算机系桂林541004METHODOLOGY OFCOMPUTER SCIENCEAND TECHNOLOGYDONGRong-Sheng GU Tian-Long CAIGou-Yong XIEChun-GuangDepartment ofComputer Scienceand Technology,Guilin instituteof electronictechnology,Guilin541004摘要本文介绍了Computing asa discipline和Computing Curricula1991”报告的重要内容,指出了它们对计算机科学与技术方法论的重要奉献在此基础上,我们以一般科学技术方法论为指导,给出了计算机科学与技术方法论的定义,阐述了计算机科学与技术方法论中的抽象、理论和设计三个学科形态、核心概念、主线问题、数学方法和系统方法的基本内容,指出了计算机科学与技术方法论是计算认知领域的一个理论体系的思想关键词方法论学科形态核心概念主线问题数学方法系统方法本文得到九五国防预研项目和广西科学基金项目的资助以及学科的定义和学科的主线问题给出如下结论:计算机科学和计算机工程之间本质上没有区别,两者是一回事,计算机科学注重理论和抽象,计算机工程注重抽象和设计,计算机科学和工程则居中在统一结识之后,专家组将计算机科学、计算机工程、计算机科学和工程、计算机信息学以及其它类似名称的专业及其研究范畴统称为计算学科计算学科的定义计算学科是对描述和变换信息的算法过程,涉及对其理论、分析、设计、效率、实现和应用进行系统研究的学科计算学科的主线问题是什么能被(有效地)自动进行学科的主线问题讨论的是“能行性”的有关内容而凡是与“能行性”有关的讨论,都是解决离散对象的由于非离散对象,所谓的连续对象,例如处处稠密的对象,是很难能行解决的[14]“能行性”这个学科的主线问题决定了计算机自身的结构和它解决的对象都是离散型的,甚至许多连续型的问题,也必须化为离散型问题以后,才干让计算机解决例如,计算定积分就是把它变成离散量,再用分段求和的方法来解决的正是源于学科的主线问题,以离散型变量为研究对象的离散数学对计算技术的发展起着十分重要的作用同时,又由于计算技术的迅猛发展,使得离散数学越来越受到重视为此,“CC2023”报告特意将它从“CC1991”报告中的预备知识中抽取出来,并列为学科的第一个主领域来结识,以强调计算学科对它的依赖性在弄清学科的主线问题后,我们可以对学科进行更好的理解计算学科涉及计算机和计算过程的理解、设计和使用该学科的广泛性在下面一段来自Computing SciencesAccreditationBoard发布的报告摘录中得到强调计算学科的范围涉及从算法与可计算性研究到根据可计算硬件和软件的实际实现问题的研究这样,计算学科不仅涉及从总体上对算法和信息解决过程的主线理解,也涉及为满足给定的规格规定的有效而可靠的软硬件的实际设计……它涉及所有科目的理论研究,实验方法和工程设计[15]计算运用了科学和工程两者的方法学理论工作已经大大促进了这门艺术的发展同时,计算并没有把新的科学知识的发现与运用这些知识解决实际问题分割开来理论和实践的密切联系给该学科带来了力量和生机然而,同样也是理论与实践的联系,意味着与计算相联系的知识体(body ofknowledge)随着技术的发展而有不久的变化[5]正是由于计算学科理论与实践的密切联系,随着着计算技术的飞速发展,计算学科现已成为一个极为宽广的学科尽管计算学科已成为一个极为宽广的学科,但其主线问题仍然是什么能被(有效地)自动进行甚至还可以更为直率地说,学科所有分支领域的主线任务就是进行计算,其实质就是字符串的变换
4.3学科中的数学方法和系统科学方法文[11]对学科中一些具体的数学方法和系统科学方法做了归纳和整理,并将数学方法中的公理化方法,以递归、归纳和迭代技术为代表的构造性方法,内涵与外延的方法(内涵与外延虽是哲学中的两个基本概念,但它们在计算学科中,重要是以数学方式来表达的,因此,内涵与外延的方法属于学科中的数学方法)以及系统科学方法中的快速原型法、演化方法和展开与归约方法等统称为学科中的典型方法文口1]的整理工作无疑是值得肯定的但是,这种把学科中的数学方法和系统科学方法两种不同性质的方法合为典型方法的提法值得商榷我们更赞成在学科中使用一般科学技术方法论中的数学方法和系统科学方法来阐述学科的有关内容,这样更有助于学科方法论的研究数学方法、系统科学方法与核心概念同样,反映了学科各主领域的内在联系,并具有一般方法论的性质其中,数学方法重要出现在计算学科各领域的抽象和理论形态中,系统科学方法重要出现在抽象和设计形态中
4.
1.1学科中的数学方法数学方法是指以数学为工具进行科学研究的方法,即用数学语言表达事物的状态、关系和过程,经推导、演算和分析,以形成解释、判断和预言的方法数学方法具有以下基本特性
1.高度的抽象性;2,精确性;
3.应用的普遍性数学方法在现代科学技术的发展中已经成为一种必不可少的结识手段,它在科学技术方法论中的作用重要表现在以下三个方面
1.为科学技术研究提供简洁精确的形式化语言;
2.为科学技术研究提供数量分析和计算的方法;
3.为科学技术研究提供了逻辑推理的工具在计算学科中使用的数学方法有很多一般认为数学中的公理化方法,以递归、归纳和迭代技术为代表的构造性方法,内涵与外延的方法,模型化与具体化的方法是计算学科中较有代表的数学方法文[11]已对前三种方法进行了概括,本文仅给出模型化与具体化方法的思想模型化或模型方法是通过抽象、概括和一般化,把研究的对象或问题转化为本质关系或结构相同的另一对象或问题,从而加以解决的方法模型化方法规定所建立的模型能真实反映所研究对象的整体结构、关系或某一过程、某一局部、某一侧面的本质特性和变化规律具体化是把抽象的概念、原理和规律体现于具体的对象或问题的方法具体化有助于加深我们对概念、原理和规律的理解以上介绍的是数学中的模型化与具体化的思想,一般来说,数学模型是静态的,而计算模型则是一种过程性的模型在计算学科中,模型化反映了学科的抽象和理论两个形态,具体化反映了学科的设计形态因此,同样可以用模型化与具体化计算模型与实现来反映计算学科各主领域研究的基本内容然而,抽象、理论和设计三个学科形态较模型化与具体化而言更具有一般方法论的性质、也更易于理解并且,从一般方法论的角度来看,抽象、理论和设计三个学科形态还蕴含了模型化与具体化的思想因此,ACM的专家们最后选择了抽象、理论和设计三个学科形态来划分学科
4.
3.2学科中的系统科学方法1系统科学方法,或简称系统方法,即按照系统科学的观点和理论,把研究对象视为系统来解决结识和实践中的各种问题的方法的总称运用系统科学方法一般应遵循以下原则
2.整体性原则;
3.动态原则;
4.最优化原则;
5.模型化原则其中,前两个原则是基础,第三个是目的,最后一个是手段1系统方法的作用重要有以下三点2系统方法是结识、调控、改造、发明复杂系统的有效手段;3系统方法为人们提供了制定系统最佳方案以实行优化组合和优化管理的手段;4系统科学方法为人们提供了新的思想模式系统科学方法种类很多,如系统分析法、黑箱方法、信息分析方法、功能模拟方法和整体优化方法等在计算学科中最常用的方法是系统分析法系统分析法是为拟定系统的组成、结构、功能、效用,而对系统各种要素、过程和关系进行考察的方法计算学科中常用的结构化方法、原型法以及面向对象的方法均属于系统分析法计算学科中的系统科学方法揭示了计算学科各主领域的内在联系,有助于我们从总体上进行思维,实现复杂系统的设计数学方法和系统科学方法在科学技术方法论中占有重要的地位,如何更好地借鉴其它学科现有的科学方法,是值得我们学科思考的问题计算领域中的三个学科形态、科学问题、核心概念、数学方法以及系统科学方法反映了计算领域各主领域的变化发展规律以及各主领域之间的内在联系,构成了计算机科学与技术方法论的重要内容5结束语综上所述,由抽象、理论和设计三个过程以及学科各主领域组成的计算学科二维定义矩阵,它不仅隐含了学科中的科学问题、核心概念、数学方法以及系统科学方法,其实它还隐含了学科中一些有趣的问题其中一个问题就是计算领域的工作者应当具有什么能力?报告指出有两类能力
1.面向学科的思维能力发现本领域新的特性的能力这些特性将导致新的活动方式和新的工具,以便使这些特性能被其别人所运用
2.使用工具的能力使用本领域的工具有效地进行其他领域实践活动的能力报告建议把面向学科的思维能力作为大学计算专业课程设计的重要目的同时,计算专业工作者必须充足熟悉工具,以便与其他学科的人们有效地合作,进行那些学科的设计活动在面向学科的思维方式这类问题上,世界著名计算机科学家、图灵奖获得者Dijkstra专家在充足的论述后,告诫我们在计算科学的教学过程中不要用拟人化的术语,而是要用数学的形式化方法我国学者赵致琢博士也提出了思维方式的数学化的思想我们认为,面向学科的思维能力应包含两层意思其一是面向学科方法论的思维能力;其二是面向学科的数学思维能力现在,计算学科有了自己的学科方法论,有了一个关于学科认知领域的理论体系为此,我们向学术界推荐这种计算认知领域的理论体系,并认为,随着这种理论体系的不断完善,必将提供应人们一种完全超过自己粗放的想象的结识计算学科的能力参考文献Denning.P.J.e.al.Computin.a..discipline.Communication.o.th.ACM.1989,32⑴.9-
232.董荣胜.计算教育哲学初探.计算机科学,2023,271:93-
973.Turner.A.J.e.aL.Summar.o.th.ACM/IEEE-C.Join.Curriculu.Tas.Fore.Report.Computin.curricul.
1991.Communication.o.th.ACM.1991,
346.68-
844.IEEE-CS/AC.Join.Tas.Force.Computin.curricul.2023draft.
5.Car.K.Chang.Curricul.
2023.Bringin.th.Futur.t.th.Classroom.Computer.1999,
329.85-
886.国家教委社会科学研究与艺术教育司.自然辩证法概论修订版.高等教育出版社.
19917.Denning.P.J..debat.o.teachin,computin.science.Communication,o.th.ACM.1989,
3212.1397-
13978.Dijkstra.E.W.
0.th.cruelt.o.reall.teachin,computin.science.Communication,o.th.ACM.1989,
3212.1397-
14049.Scherlis.W.L,e.al.Colleague,respon.t.di jkstra,.comments.Communication,o.th.ACM.1989,
3212.1405-
141310.Dijkstra.E.W.Dijkstra
1.repl.t.comments.Communication,o.th.ACM.1989,
3212.1414-
141411.赵致琢.关于计算机科学与技术认知问题的研究简报I,II.计算机研究与发展.2023,381:
17512.王浩.数理逻辑通俗发言.科学出版社,
1983.
13.吴允曾选集.北京科学技术出版社,
199114.莫绍揆.递归论.科学出版社,
198715.Computin.Science.Accreditatio.Boar.Inc.Annua.Report.Stamford.Conn..1998Abstrac.Lthi.paper.tw.document.o.Computin.a..discipline.an.uComputin.CurricuI.
1991.ar.briefl.introduced.an.thei.mai.contribution.t.th.methodolog.o.compute.scienc.an.technolog.ar.pointe.out.The.base.o.th.genera.methodolog.o.scienc.an.technology.th.definitio.o.compute.scienc.an.technolog.i.given.an.it.thre.paradigm.abstraction.theory.design.fundamenta.problem.conconcept.mathematica.method.an.syste.approache.ar.presented.Finally.w.conclud.tha.th.methodolog.o.compute.scienc.an.technolog.i..ne.theor.i.th.computin.cognitio.field.Key wordsmethodology,paradigms,fundamental problem,core concept,mathematical method,systematic approach引言1今天,当我们步入新世纪的时候,计算Computing技术作为现代技术的标志,已成为世界许多经济增长的重要动力计算领域也已成为一个极其活跃的领域,计算学科正以令人惊异的速度发展,并大大延伸到传统的计算机科学的边界之外,成为一门范围极为宽广的学科如何理解这个学科,引发了长期以来剧烈的争论为了解决这类争论,学术界进行了大量的工作1984年7月,美国计算机科学与工程博士单位评审部的领导们,在犹他州召开的会议上对计算教学问题进行了讨论,表面上看这类问题是关于计算教学问题,事实上是关于计算学科的认知问题这一讨论以及其他类似讨论推动了ACM和IEEE/CS联手组成攻关组并用新的思维方式来理解计算学科通过近5年的工作,ACM攻关组提交了“Computing asa discipline”的报告,该报告的重要内容刊登在1989年1月的«Communications ofthe ACM》杂志上[1]ACM攻关组提交的报告得到了ACM教育委员会的认可并批准发行,该报告的重要奉献不仅在于它第一次给出了计算学科一个透彻的定义,回答了计算学科中长期以来一直争论的一些问题,更重要的在于,它找到了一个思考我们学科的“知识框架Intellectual framework,而非对策;一个指导方针,而非具体指示对“知识框架”进行研究的思想方法就是报告中所指的“新的思想方法”这个“新的思想方法”是对计算领域几十年来的概括和总结从某种意义上说,该报告是计算领域认知过程中的一个里程碑,它为建立计算认知领域的理论体系奠定了基础该报告所提出的“新的思想方法”其实质就是计算机科学与技术方法论的思想方法[2]1990年,IEEE/CS和ACM联合攻关组提交了aComputing Curricula1991”(以下简称“CC1991”)报告[3],报告将主领域增长到11个,并提取了学科中12个反复出现的核心概念“CC1991”报告与Computing asadiscipline”报告(以下简称“两报告”)密切相关,并使计算学科的方法论研究更加完备然而,正如“Computing asa discipline”报告所介绍的那样在学科的划分问题上,专家们颇费心力,最初专家们偏向于选择“模型(Model)与“实现(Implementation)相对,以及“算法”(Algorithm)与“机器”(Machine)相对,这两种方案无疑都可以反映计算学科各主领域研究的基本内容,但是这两个方案不是太抽象就是彼此的界线太模糊,大多数人无法很好地认同这种划分方法此外,专家们结识到学科的基本原理已被纳入理论、抽象和设计三个过程中,学科的各分支领域正是通过这“三个过程”而实现它们的目的,于是,便选取了“三个过程”这个方案由于,“三个过程”研究的内容就是科学技术方法论研究的重要内容,而从分析该报告中提出的“三个过程”来看,专家们不是自觉的以一般科学技术方法论为指导来建立报告中所说的“新的思想方法”因此,该报告不可避免地忽视了一些重要问题,如缺少对“三个过程”互相作用的透彻分析等,从而在一定限度上影响了人们对报告的理解正在起草之中的“CC2023”已注意到这个问题,并规定任务组对这三个过程(理论、抽象和设计)进行专门评述[4,5]不管评述结果如何,学术界当前一个十分紧迫的任务就是要在前人大量工作的基础上,以一般科学技术方法论为指导完整地建立起计算学科自己的方法论,为理解学科提供方法,为执行新的教学计划做准备下面,我们先给出计算机科学与技术方法论的定义,并简要介绍计算学科二维定义矩阵的基本内容2计算机科学与技术方法论的定义以及学科二维定义矩阵由于“两报告”以及关于计算学科自身认知问题的相关工作[7T3],使我们加深了对学科的结识,并使建立计算机科学与技术方法论的时机成熟下面,我们就以一般科学技术方法论为指导建立计算学科自己的方法论一方面,我们给出计算机科学与技术方法论的定义计算机科学与技术方法论是关于计算领域结识和实践过程中一般方法及其性质、特点、内在联系和变化发展的系统研究它是计算认知领域的一个理论体系,是我们认知计算技术的一个有效工具和方法在计算领域中结识指的是抽象过程(感性结识)和理论过程(理性结识),实践指的是学科中的设计过程抽象、理论和设计是具有方法论意义的三个过程,这三个过程是科学技术方法论中最重要的研究内容从结识论的角度来看,学科的基本内容包含在抽象、理论和设计三个过程(或形态)之中,不仅如此,也正是由于它们之间的互相作用,促进了学科的发展显然,Computing asa discipline”报告遵循了结识论的思想,给出了计算学科二维定义矩阵(以下简称定义矩阵)的概念并细化了其内容定义矩阵的一维是“三个过程”(抽象、理论和设计),另一维是主领域特别当主领域仅为计算学科时,定义矩阵便是本文所指的“知识框架”该“知识框架”反映了计算领域中人们的结识是从感性结识(抽象)到理性结识(理论),再由理性结识(理论)回到实践(设计)中来的辩证唯物主义思想在这里,这个“知识框架”也称作学科的知识内涵,它是稳定的;“知识框架”的内容(值)指的是学科的外延,它涉及主领域以及各主领域“三个过程”的内容,这些内容(值)将随着计算技术的发展而变化就“两报告”而言,ACM和IEEE/CS攻关组对学科本质的研究采用了内涵与外延相结合的方法由于计算学科二维定义矩阵(“知识框架”)是对计算学科的高度概括于是,我们可以将把握计算学科的本质问题归约为把握学科二维定义矩阵的本质问题要把握定义矩阵的本质,就是要分别把握定义矩阵的“横向”(抽象、理论和设计三个过程)以及“纵向”(各主领域)共有的、能反映各主领域内在联系的思想和方法的本质“横向”关系的研究,即抽象、理论和设计三个过程的内在联系与发展规律的研究,是计算机科学与技术方法论研究中最重要的内容由于学科的基本原理不仅已被纳入理论、抽象和设计三个过程中,更重要的在于,“三个过程”的互相作用,推动了计算学科及其分支领域的发展“纵向”关系的研究,既各主领域之间所共有的思想和方法的研究,将揭示各主领域的内在联系与发展规律,是计算机科学与技术方法论中的重要研究内容之一以下我们将分别对定义矩阵的“横向”关系和“纵向”关系进行研究3计算学科中的抽象、理论和设计及其内在联系方法论在层次上有哲学方法论、一般科学技术方法论、具体科学技术方法论之分,它们互相依存、互为作用在一般科学技术方法论中,抽象、理论和设计是其研究的重要内容以下我们以一般科学技术方法论为指导,阐述计算学科中的抽象、理论和设计内容
3.1学科的抽象形态在科学技术方法论中,科学抽象是指在思维中对同类事物去除其现象的、次要的方面,抽取其共同的、重要的方面,从而做到从个别中把握一般,从现象中把握本质的认知过程和思维方法科学抽象的成果有科学概念、科学符号、思想模型等内容[6]1Computing asa discipline”报告认为理论、抽象和设计是我们从事本领域工作的三种重要形态Paradigm,或称文化方式,它提供了我们定义学科的条件第一个学科形态是抽象按方法论研究的习惯,我们将报告中理论和抽象本来的顺序对调,抽象源于实验科学按客观现象的研究过程,抽象形态涉及以下四个环节的内容
2.形成假设;
3.建造模型并做出预测;
4.设计实验并收集数据;
5.对结果进行分析
3.2学科的理论形态科学结识由感性阶段上升为理性阶段,就形成了科学理论,科学理论是通过实践检查的系统化了的科学知识体系,它是由科学概念、科学原理以及对这些概念、原理的理论论证所组成的体系1在计算学科中,第二种学科形态是理论,理论源于数学按统一的合理的理论发展过程,理论形态包含以下四个环节的内容
2.表述研究对象的特性定义和公理;
3.假设对象之间的基本性质和对象之间也许存在的关系定理;4,拟定这些关系是否为真证明;
5.结论和解释
3.3学科的设计形态1在计算学科中,第三个形态是设计,设计源于工程按为解决某个问题而实现系统或装置的过程来看,设计形态包含以下四个环节的内容2,需求分析;
3.建立规格说明;
4.设计并实现该系统;
5.对系统进行测试与分析设计、抽象和理论三个形态针对具体的研究领域均起作用,在具体研究中,就是要在其理论的指导下,运用其抽象工具进行各种设计工作,最终的成果将是计算机的软硬件系统及其相关资料如,需求说明、规格说明和设计与实现方法说明等设计形态技术方法和抽象、理论二个形态科学方法具有许多共同的方面这是由于,设计作为变革、控制和运用自然界的手段,必须以对自然规律的结识为前提可以是科学形态的结识,也可以是经验形态的结识;设计要达成变革、控制和运用自然界的目的,必须发明出相应的人工系统和人工条件,还必须结识自然规律在这些人工系统中和人工条件下的具体表现形式所以,科学结识方法抽象、理论二个形态,对具有设计形态的技术研究和技术开发是有作用的但是设计形态毕竟尚有其不同于抽象形态和理论形态的特点其中最重要的是设计形态有更强的实践性;另一方面,设计形态具有更强的社会性;第三,设计形态具有更强的综合性
3.4,三个学科形态的内在联系理论是数学的主线应用数学家们认为,科学的进展都是建立在数学基础上的抽象建模是自然科学的主线科学家们认为,科学的进展过程重要是通过形成假说,然后系统地按照建模过程对假说进行验证和确认取得的类似地,设计是工程的主线工程师们认为,工程的进展重要是通过提出问题,并系统地按照设计过程,用建立模型而加以解决的许多有关数学、科学和工程相对优劣的争论都隐含的基于抽象、理论和设计三个过程中某一个更为更主线的假设Computing asa discipline”报告认为,更具体的研究揭示出在计算学科中,“三个过程”是错综复杂地缠绕在一起的,以至于把任何一个作为主线都是不合理的当专家们把注意力集中于“三个过程”谁更为主线的时候,学科方法论中的关键问题一抽象、理论和设计三个过程的互相作用被忽视了不仅如此,在一定限度上还转移了我们的视线,削弱了我们对报告本质的理解,以致“CC2023”任务组不得不认可,与报告密切相关的“CC1991”计划的执行并没有达成预期的效果Computing asa discipline报告的实质是学科方法论的思想,其关键问题是一抽象、理论和设计三个过程的互相作用的问题,正是由于它们之间的互相作用,促进了学科的发展文[2]介绍了这方面的有关内容4计算学科各主领域之间的内在联系定义矩阵中的“纵向”关系即各主领域之间存在以下内在联系
1.各主领域中的某些研究内容是一致的,比如数据库中的并发控制、缓冲区管理的思想与操作系统中的并发控制和缓冲区管理的思想是一致的;
2.学科中具有方法论性质的核心概念贯穿于各主领域之中,揭示了学科各主领域的内在联系,使计算学科各主领域结合成一个完整的体系而不是一些互不相关的领域
4.1学科中的核心概念“CC1991”报告的一个重要奉献在于提取了具有方法论性质的12个反复出现的核心概念,并认为掌握和应用这些概念是成熟计算机科学家和工程师的标志之一核心概念是学科中具有普遍性、持久性的重要思想、原则和方法,它具有以下特性
1.在本学科中多处出现
2.在各主领域及抽象、理论和设计的各个层面上都有很多示例
3.在技术上有高度的独立性
4.一般都在数学、科学和工程中出现三个学科形态理论、抽象和设计与核心概念揭示了计算学科的基本规律随着研究的进一步,并受一般科学技术方法论的启发,使我们能以更宽广的视野来结识计算学科我们认为,在计算机科学与技术方法论的研究中,还应涉及计算学科中的科学问题、数学方法以及系统研究方法等内容学科中的科学问题、数学方法以及系统研究方法不仅反映了学科各主领域之间的内在联系,同时也有助于加深我们对学科本质的理解,并促使我们更自觉地运用这些思想和方法来从事计算领域的研究
4.2学科中的科学问题科学研究过程是不断提出问题和解决问题的过程,发现和选定问题是科学研究的起点提出问题和解决问题的过程与抽象、理论和设计三个过程在本质上是统一的,虽然视角不同,但同样具有方法论的性质,并有助于我们从另一个视角来结识学科以下我们介绍这方面的内容科学问题是指一定期期的科学结识主体在当时的知识背景下提出的关于科学结识和科学实践中需要解决而未解决的矛盾,它包含着一定的求解目的和应答域,但无拟定的答案科学问题根据角度的不同有不同的分类方法如按学科的性质可以将问题分为基础理论问题和应用研究问题;根据问题在整个所要达成的目的中的地位可以分为关键问题和一般问题等科学问题有很多,其中有一种是反映学科本质,并在其发展过程中始终追求解决的问题,我们把这种问题定义为学科的主线问题或本质问题学科各主领域正是围绕着学科的主线问题而逐步发展起来的,学科的主线问题有助于我们对学科本质的理解本节以学科的主线问题为主,兼顾与其相关的内容进行分析人们对计算本质的真正结识来源于数学的形式化进程1930年9月哥德尔K.Godel发表的关于形式系统的不完全性定理宣告了著名的希尔伯特D.Hilbert大纲的失败,希尔伯特大纲的失败同时也暴露了形式系统的局限性,它表白形式系统不能穷尽所有数学命题,任何形式系统中都存在着该系统所不能鉴定其真伪的命题这就启发人们,应避免花费大量的精力去证明那些不能鉴定的问题,而应把精力集中于解决具有能行性的问题在数学形式化的影响下,并通过对人的计算过程的哲学分析,1936年图灵(A.M.Turing)描述了计算一个数的过程,得出后来以他名字命名的通用计算机概念根据图灵的分析,直观地说所谓计算就是计算者(人或机器)对一条两端可无限延长的纸带上的一串和1执行指令,一步一步地改变纸带上的或1,通过有限环节,最后得到一个满足预先规定的符号串的变换过程图灵用形式化方法成功地表述了计算这一过程的本质图灵的描述是关于数值计算的,但是,我们知道英文字母表的字母以及汉字均可以用数来表达,因此图灵机同样可以解决非数值计算图灵提出的基本论点是可计算性二图灵可计算性在关于可计算性问题的讨论时,不可避免地要提到一个与计算具有同等地位和意义的基本概念,那就是算法算法也称为能行方法或能行过程,它是对计算过程的一种刻画,是计算过程的一种能行实现方式根据图灵的论点,可以得到这样的结论任一过程是能行的(可以具体表现在一个算法中),当且仅当它可以被一台图灵机实现图灵机与当时提出的用于解决可计算问题的递归函数、入演算和POST规范系统等计算模型在计算能力上是等价的在这一事实的基础上,形成了现在著名的丘奇一图灵论题图灵机等计算模型均是用来解决“能行计算”问题的,理论上的能行性隐含着计算模型的对的性,而实际实现中的能行性还包含时间与空间的有效性在图灵机这个思想模型提出不到2023的时间里,来源于图灵机思想的第一台电子计算机诞生了其实,图灵机反映的是一种具有能行性的用数学方法精拟定义的计算模型,而现代计算机正是这种模型的具体实现正如前面所提到的那样,计算学科各主领域均可以用模型与实现来描述而模型反映的是学科的抽象和理论两个过程,实现反映的是学科的设计过程,模型与实现已蕴含于学科的“三个过程”之中计算学科各主领域中的抽象和理论二个过程关心的是解决具有能行性和有效性的模型问题,设计过程关心的是模型的具体实现问题正由于如此,学科中的三个形态是不可分割的、密切相关的在进行大量分析的基础上,“Computing asa discipline”报告对计算机学科是“工科”还是“理科”的问题。
个人认证
优秀文档
获得点赞 0