正确性 (计算机科学)

✍ dations ◷ 2025-12-03 06:44:37 #理论计算机科学

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

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

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

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

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

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

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

相关

  • CXe有机氙化合物(英语:Organoxenon compound)是指含有碳—氙键的有机化合物。最早制得有机氙化合物都是二氟化氙的衍生物,例如(C6F5)2Xe。第一种正四价的有机氙化合物于2000年制得
  • N-末端N端(亦作N-端,英语:N-terminus),又称氮端、氨基端,指多肽链具有游离的α氨基的末端。在转译过程中,多肽链是从N端往C端合成的,因而在书写表示多肽序列时,从N端开始书写,从左到右写到C
  • 东盟政府间人权委员会东盟政府间人权委员会(简称:AICHR),于2009年10月成立,是东南亚国家联盟的一个协商机构。在《东盟宪章》(第1.7条、第2.2条和第14条)以及其他东盟重要文献中都提及了人权,而该委员
  • 国家情报中心国家情报中心(西班牙语:Centro Nacional de Inteligencia,缩写CNI)是西班牙政府对内和对外情报机构。它由阿斯纳尔政府于2002年组建,前身是国家高级防御情报中心。国家情报中心在
  • 睢县睢县 (汉语拼音:Suī Xiàn) 在中华人民共和国河南省东部、惠济河中游,是商丘市下辖的一个县。面积926平方公里,2010年人口80万。县政府驻城郊乡。位于商丘市西部,与民权县,杞县,
  • 超几何函数在数学中,高斯超几何函数或普通超几何函数2F1(a,b;c;z)是一个用超几何级数定义的函数,很多特殊函数都是它的特例或极限。所有具有三个正则奇点(英语:Regular singular point)的二
  • 氮化钠氮化钠 (Na3N)是一种非常不稳定的碱金属氮化物。氮化钠是2002年由马克斯-普朗克学会的Dieter Fischer及Martin Jansen所合成。合成时,用钠及氮的原子束在低温的蓝宝石上沉积出
  • 穆塔雷穆塔雷(英语:Mutare),又译作谬达尔,是津巴布韦第三大城市,2012年人口约260,567,是马尼卡兰省的首府。虽然位处于热带,城市的气候却属于温带热候。全年平均气候为19 °C,比其他同纬度
  • 里奇·摩尔里奇·摩尔(Rich Moore,1963年5月10日-),是一名美国动画导演,也是动画公司Rough Draft Studios的商业合伙人,该公司最知名的作品是《辛普森一家》。他毕业于加州艺术学院动画专业。
  • 维利卜维利卜(Willy Puchner,1952年3月15日-),下奥地利州米斯特尔巴赫出生,是一位摄影家、插画家与作家。 双亲皆是摄影师。1967年至1974年就读于维也纳艺术学院(Höhere Graphische Lehr