归约
归约
归约是计算理论中的一个基本概念,它涉及将一个问题转换为另一个问题的过程。在可计算性理论与计算复杂性理论中,归约不仅用于解决问题,还用于定义问题的复杂度类别。如果问题A可以归约到问题B,并且存在解决问题B的有效算法,那么问题A至少和问题B一样容易解决。归约也是一种预序关系,它在自然数的幂集上拥有自反关系传递关系。若在某个复杂度类别上的所有问题都可归约成某问题P,则可称P是完备(complete)的,且P自己也会处于此类别中。
简介
定义
归约是使用解决其他问题的"黑箱"来解决另一个问题。在更正式的定义中,给定两个自然数集合A与B,如果存在一个函数集合F,使得对于所有自然数x,x属于A当且仅当f(x)属于B,那么我们说A可以归约到B。
应用
归约的应用包括但不限于以下两个方面:
1. 如果已知问题Q的算法,那么可以将问题P归约到Q,从而得到解决P的算法。
2. 如果P是一个已知的难题,那么通过归约,可以推断出Q也可能是一个难题。
复杂性类的判别
归约在复杂性类别的判别中扮演着重要角色。例如,如果一个问题可以通过多项式时间归约到已知的NP完备问题,那么这个问题也被认为是NP完备的。复杂度类P、NP与PSPACE具有多项式时间归约的封闭性,而L、NL、P、NP与PSPACE则具有对数空间归约的封闭性。
归约种类与应用
在计算复杂度中,主要有两大类的归约:多一归约与图灵归约。多一归约将一个问题的所有实例对应到另一个问题的实例上,而图灵归约则假设其他问题容易解决,并计算一个问题的解。多一归约在分割问题的种类上效率较高,但它们的威力较弱,使本类归约较难设计。依照复杂度类别使用适当归约符号的学问兴起,例如在钻研复杂度类NP与更难的类别时,我们使用多项式时间多一归约。
参考资料
目录
概述
简介
定义
应用
复杂性类的判别
归约种类与应用
参考资料