吝啬SAT问题是NP完全问题

思路

要证明吝啬SAT问题是一个NP完全问题,可以通过尝试将一个已知的NP完全问题归约到吝啬SAT问题。
从问题的形式上来看,可以通过尝试将SAT问题归约到吝啬SAT问题
SAT问题的定义如下:

The Boolean satisfiability problem (SAT) is, given a formula, to check whether it is satisfiable.
A formula is said to be satisfiable if it can be made TRUE by assigning appropriate logical values (i.e. TRUE, FALSE) to its variables.

可以看到,SAT问题就是:对于一个布尔表达式,判断其是否是可满足的,可满足的定义就是通过对布尔表达式中的每个变量赋值为True或者False,最终使得布尔表达式的值为True。

要将SAT问题归约到吝啬SAT问题,即是证明对于使得SAT满足的任一组变量实例,同时可以使得吝啬SAT问题满足,而使得SAT不能满足的任一组变量实例,同时使得吝啬SAT问题不满足。

首先,对于任何一个SAT问题,设其变量的个数为N,那么对应的吝啬SAT问题即是含有N个变量的吝啬SAT问题。

  1. 首先是证明使得SAT问题实例满足的变量序列能使得吝啬SAT实例也满足:
    如果有某个解使得含有K个变量的SAT问题实例满足,那么此时,这个解中的变量的值是true的变量数不超过K,那么也能使相应的吝啬SAT问题实例满足。
  2. 其次是证明不能使SAT问题实例满足的变量序列不能使吝啬SAT问题实例满足:
    这个的证明很直观,一组变量序列不能使含有K个变量的SAT问题实例满足,由于上面提到的要归约的SAT问题实例对应的吝啬SAT问题实例,可知,此时这个变量序列也不能使该吝啬SAT问题实例满足。

得证!

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值