将正确性分为两类。一类被称为部分正确性（英语：partial correctness），它要求在算法返回结果时这一结果是正确的；另一类被称为完全正确性（英语：total correctness），它在部分正确性的基础之上还要求算法必须能够结束。由于对于停机问题没有通用的解决方案，因此判定完全正确性的断言有着更多需要深层次研究的地方。终止的证明是指一类数学证明，因为完全正确性需要证明一个算法会终止，所以它在程序的形式验证中起着至关重要的作用。例如考虑这样一个问题：依次搜索整数列1, 2, 3, …来看是否