算法概论第八章练习题 8.3
来源:互联网 发布:mac死机自动重启 编辑:程序博客网 时间:2024/06/05 12:48
题目:
STINGY SAT is the following problem: given a set of clauses (each a disjunction of literals) and an integer k, find a satisfying assignment in which at most k variables are true, if such an assignment exists. Prove that STINGY SAT is NP-complete
吝啬SAT问题是这样的:给定一组子句(每个子句都是其中文字的析取)和整数k,求一个最多有k个变量为true的满足赋值——如果该赋值存在。证明吝啬SAT是NP-完全问题。
证明:
首先,SAT问题也称为合取范式的可满足问题,一个合取范式形如:A1∧A2∧…∧An,子句Ai(1≤i≤n)形如:a1∨a2∨…∨ak,其中ai为文字,为某一布尔变量或该布尔变量的非。SAT问题是指是否存在一组对所有布尔变量的赋值(TRUE或FALSE),使得整个合取范式取指为真。
另外,给定一组解{x1, x2, …, xn},我们是可以在多项式时间内验证其正确性的,因此STINGY SAT属于NP问题。
接下来我们把SAT规约到STINGY SAT:
1) SAT是STINGY SAT的一个特例,假设SAT的函数为f,给定n个变量x1, x2, …, xn,最多有n个变量为真,那么(f, n)可以看成是STINGY SAT的实例。
2) 假设STINGY SAT的实例是(f, n),那么(f, n)的一个真值指派,也一定是SAT函数f的一个真值指派,即f是SAT的实例
以上可把SAT规约到STINGY SAT,由于SAT是NP完全问题,所以STINGY SAT也是NP完全问题。
- 算法概论第八章练习题8.3
- 算法概论第八章练习题 8.3
- 算法概论第八章练习题 8.19
- 算法概论第八章练习题 8.14
- 算法概论第八章练习题 8.10
- 算法概论 第八章课后题8.3
- 算法概论第八章课后习题8.3
- 算法第八章练习题20
- 《算法概论》第八章习题 8-15
- 算法概论第八章课后习题
- 算法概论第八章课后习题
- 《算法概论》第八章课后题
- 算法概论第八章课后习题8.8
- 算法概论第八章部分习题解答
- 算法设计 《算法概论》第八章 8.10 习题解答
- 算法概论 第八章NP-完全问题 8.8题
- 算法概论第八章 NP完全问题 习题证明
- 《算法概论》第八章NP完全问题部分习题解
- BZOJ 1145 图腾totem [算术计数][树状数组]
- SimpleDataFormat的parse和format
- windows下配置OpenGL环境(glut、freeglut、glew等工具)
- TCP/IP协议栈的基本工作原理
- 获取JAVA当前进程PID的两种方法
- 算法概论第八章练习题 8.3
- javascript深拷贝和浅拷贝
- Uva10655 Contemplation! Algebra矩阵快速幂
- AOE网上的关键路径——spfa+前向星
- 我要通过!
- k-近邻算法
- zoj 1610 Count the Colors(线段树)(成段更新染色)
- 面试题:合并两个有序链表
- jozj. 3511. 【NOIP2013模拟11.5A组】cza的蛋糕(cake)