正确性 (计算机科学)

✍ dations ◷ 2025-11-21 13:02:16 #理论计算机科学

在理论计算机科学中,算法的正确性(英语:correctness)是指一个算法在程序规范下被认定为正确的判定。其中,正确(英语:functional correctness)针对输入输出的行为(例如:对每一个输入,算法都能给出预期的输出)。

人们将正确性分为两类。一类被称为部分正确性(英语:partial correctness),它要求在算法返回结果时这一结果是正确的;另一类被称为完全正确性(英语:total correctness),它在部分正确性的基础之上还要求算法必须能够结束。由于对于停机问题没有通用的解决方案,因此判定完全正确性的断言有着更多需要深层次研究的地方。终止的证明是指一类数学证明,因为完全正确性需要证明一个算法会终止,所以它在程序的形式验证中起着至关重要的作用。

例如考虑这样一个问题:依次搜索整数列1, 2, 3, …来看是否存在某个特定现象——比如说存在一个奇数为完全数。对于这个问题而言,我们很容易写出一个部分正确的程序(直接对于每个数字做长除法判定其是否完全)。然而如果我们想证明这个程序是完全正确的,那就相当于我们在断言一个在数论里目前还未知的结论。

在算法和程序规范都是基于形式化来给出时,对正确性的证明应当为一个数学证明。然而我们并不期待能够给出特定机器上实现的特定程序的正确性断言,因为那样将需要考虑诸如内存限制在内的更多问题。

证明论中有一个结论柯里-霍华德同构。这一结论认为:任意一个在构造性逻辑下的功能正确性的证明都对应了一个λ演算程序。这种转换证明的方式被称为(英文:program extraction)。

霍尔逻辑是一个具体的能够严密验证程序正确性的形式系统。它用一系列的公理来定义程序语言的语义,从而通过称之为霍尔三元组的断言来验证程序的正确性。

软件测试是指验证一个程序或系统的某些属性或能力来判断它是否达到预期目的的行为。尽管软件测试在软件质量方面起着至关重要的作用,并且被程序员和测试员们广泛采用,但由于人们对软件的认识十分有限,它仍旧是一个艰深的领域。软件测试的最大难点在于如何控制其复杂性:我们没有办法在一个合理的复杂度内完整地测试一个程序。测试不只是调试。测试的目的包括但不限于确保软件质量、验证其正确性和估算其稳定性。我们对测试的定义也可以更加一般化,其中正确性测试和稳定性测试是两个最大的研究领域。软件测试是预算、时间和软件质量的一个平衡。

相关

  • 印地文印地语(天城文:हिन्दी或हिंदी,拉丁字母转写:Hindī)又称印度语、印度文,是印欧语系印度-伊朗语族中印度-雅利安语支下的一种语言。印地语以使用国家数量来算是世界排名
  • 宇宙论宇宙学(英文:Cosmology)或宇宙论,这个词源自于希腊文的κοσμολογία(cosmologia, κόσμος (cosmos) order + λογια (logia) discourse)。宇宙学是对宇宙整体的研究,
  • 仇恨仇恨、怨恨、瞋恶、憎恶,是一种感到强烈的敌意与反感、针对性不满的情绪。仇恨是由受伤害或受冒犯的感受所产生。仇恨是人在自己的感情或尊严被损害时产生的正常反应,并寻求反
  • 国际围棋联盟国际围棋联盟(International GO Federation(IGF))是以围棋在国际上普及化作为目的的组织。1982年3月18日创设,有29个加盟国。截至2012年底共有74个加盟国。
  • 伊莱·沃勒克德克萨斯州大学奥斯汀分校纽约市立学院 Neighborhood Playhouse School of the Theatre伊莱·沃勒克(英语:Eli Herschel Wallach,1915年12月7日-2014年6月24日)是一名美国电影
  • 第二高卢军团第二高卢军团(英语:Legio II Gallica)古罗马军队建制名称。约成立于今西欧法国东南的奥朗日附近地区(即古罗马时期的高卢一带)。该军团事迹阙如,约与其建立时间稍晚的第二奥古斯塔
  • 1994年大西洋飓风季1994年大西洋飓风季于1994年6月1日正式开始,同年11月30日结束,传统上这样的日期界定了一年中绝大多数热带气旋在大西洋形成的时间段。整个飓风季一共产生了7个获得命名的热带
  • 周济 (嘉庆进士)周济(1781年-1839年),清朝词人及词论家。字保绪,一字介存,号未斋,晚号止庵。江苏荆溪(今江苏宜兴)人。嘉庆十年(1805年)进士,曾官淮安府府学教授,后辞官归隐。复任,淮安府学教授。周济是董
  • 丹绒武雅丹绒武雅(马来语:Tanjung Bungah),是马来西亚槟城州东北县乔治市的市郊,位于乔治市市中心6.5公里外的槟岛北岸,处于峇都丁宜和丹绒道光之间,也是槟岛市的一个海滩景点。丹绒武雅附
  • 半头帕海胆见内文半头帕海胆(学名:),又名半球海胆,是一属已灭绝的海胆,其化石主要分布在非洲、亚洲及欧洲。它们的介壳从顶部看呈圆形,有很小的顶盘。十条步带区间骨板柱上均长有突出的结节,结