文章目录

  • 一、3-SAT 是 NP 完全问题
  • 二、团问题是 NP 完全问题
  • 三、团问题是 NP 完全问题 证明思路

一、3-SAT 是 NP 完全问题


布尔可满足性问题 ( Boolean Satisfiability Problem , SAT ) , 是 NP\rm NPNP 完全的 ;

3-SAT 问题 也是 NP\rm NPNP 完全问题 ;

3-SAT 问题 的逻辑公式 , 是由一些合取范式 , 这些合取范式中 , 每个子项中 , 所包含的 原子逻辑命题 或其否定命题 的 个数一定为 3\rm 33 ;

合取范式概念参考 【数理逻辑】范式 ( 合取范式 | 析取范式 | 大项 | 小项 | 极大项 | 极小项 | 主合取范式 | 主析取范式 | 等值演算方法求主析/合取范式 | 真值表法求主析/合取范式 ) ;

如下逻辑公式就是 3-SAT 问题逻辑公式 : 举例说明 :

(a1∨a2∨z1)∧(z1‾∨a3∨z2)∧(z2‾∨a4∨z3)∧⋯∧(zl−3‾∨al−1∨al)\rm ( a_1 \lor a_2 \lor z_1 ) \land ( \overline{z_1} \lor a_3 \lor z_2 ) \land ( \overline{z_2} \lor a_4 \lor z_3 ) \land \cdots \land ( \overline{z_{l-3}} \lor a_{l-1} \lor a_l )(a1​∨a2​∨z1​)∧(z1​​∨a3​∨z2​)∧(z2​​∨a4​∨z3​)∧⋯∧(zl−3​​∨al−1​∨al​)

SAT 与 3-SAT 问题是相互等价的 , 如果一般的命题逻辑公式 (a1∨a2∨⋯∨al)\rm ( a_1 \lor a_2 \lor \cdots \lor a_l )(a1​∨a2​∨⋯∨al​) 是可以满足的 , 当且仅当 (a1∨a2∨z1)∧(z1‾∨a3∨z2)∧(z2‾∨a4∨z3)∧⋯∧(zl−3‾∨al−1∨al)\rm ( a_1 \lor a_2 \lor z_1 ) \land ( \overline{z_1} \lor a_3 \lor z_2 ) \land ( \overline{z_2} \lor a_4 \lor z_3 ) \land \cdots \land ( \overline{z_{l-3}} \lor a_{l-1} \lor a_l )(a1​∨a2​∨z1​)∧(z1​​∨a3​∨z2​)∧(z2​​∨a4​∨z3​)∧⋯∧(zl−3​​∨al−1​∨al​) 逻辑公式也是可以满足的 ;

二、团问题是 NP 完全问题


团问题是 NP 完全问题

团 是一个无向图 点集 的 子集 , 使得 该点集子集 中 任何两个节点之间都有边相连 ;

团问题 就是 判定无向图中 , 是否包含有 k\rm kk 个节点的 团 ;

上述团问题 , 是 NP\rm NPNP 问题 ;

给定一个无向图 , 其中有一个 n\rm nn 个节点组成的集合 , 验证该 n\rm nn 集合是否是团 ;

验证的方法就是看这 n\rm nn 元集中的节点之间两两之间是否有边相连即可 ;

验证所花的时间是多项式时间 , 该计算问题在 NP\rm NPNP 中 ;

三、团问题是 NP 完全问题 证明思路


证明一个命题是 NP\rm NPNP 完全问题 :

① 证明是 NP\rm NPNP 问题 : 首先证明该问题是 NP\rm NPNP 问题 ;

② 证明是最难的 NP\rm NPNP 问题 : 然后证明所有的 NP\rm NPNP 问题 , 可以在多项式时间内规约到 该命题中 ; 也可以使用一个已经证明的 NP\rm NPNP 完全问题 , 在多项式时间内规约到 需要被证明的命题 ;

证明 团问题 是 NP\rm NPNP 完全的 , 从已知的 NP\rm NPNP 完全问题出发 , 已知的 NP\rm NPNP 完全问题就是 3-SAT 问题 ,

如果 3-SAT 问题是 NP\rm NPNP 完全的话 ,

只要证明 3-SAT 问题 可以在 多项式时间内规约 到 团问题 中 , 3-SAT ≤\leq≤ 团问题 ,

就可以证明 团问题 是 NP\rm NPNP 完全问题 ;

将 3-SAT 问题 可以在 多项式时间内规约 到 团问题 中 ,

给定一个 3-SAT 问题 的 布尔逻辑公式 ,

ϕ=(x1∨x1∨x2)∧(x1‾∨x2‾∨x2‾)∧(x1‾∨x2∨x2)\rm \phi = ( x_1 \lor x_1 \lor x_2 ) \land ( \overline{x_1} \lor \overline{x_2} \lor \overline{x_2} ) \land ( \overline{x_1} \lor x_2 \lor x_2 )ϕ=(x1​∨x1​∨x2​)∧(x1​​∨x2​​∨x2​​)∧(x1​​∨x2​∨x2​)

构造一个 无向图 ,

使得 布尔逻辑公式 是可满足的 , 当且仅当 , 无向图中有一个 k\rm kk 团 ;

k\rm kk 团就是无向图中 k\rm kk 个节点子集 , 每两个节点之间都有边相连 ;

证明过程 : 从 给定的 3-SAT 布尔逻辑公式 ϕ=(x1∨x1∨x2)∧(x1‾∨x2‾∨x2‾)∧(x1‾∨x2∨x2)\rm \phi = ( x_1 \lor x_1 \lor x_2 ) \land ( \overline{x_1} \lor \overline{x_2} \lor \overline{x_2} ) \land ( \overline{x_1} \lor x_2 \lor x_2 )ϕ=(x1​∨x1​∨x2​)∧(x1​​∨x2​​∨x2​​)∧(x1​​∨x2​∨x2​) 中 , 构造出一个无向图 出来 , 使得该无向图可以满足 " 布尔逻辑公式 是可满足的 , 当且仅当 , 无向图中有一个 k\rm kk 团 "

【计算理论】计算复杂性 ( 3-SAT 是 NP 完全问题 | 团问题是 NP 完全问题 | 团问题是 NP 完全问题证明思路 )相关推荐

  1. 【计算理论】计算复杂性 ( NP 完全问题 | 顶点覆盖问题 | 哈密顿路径问题 | 旅行商问题 | 子集和问题 )

    文章目录 一.顶点覆盖问题 二.哈密顿路径问题 三.旅行商问题 四.子集和问题 五.NP 完全问题 一.顶点覆盖问题 顶点覆盖 ( Vertex Cover ) : 给定一个 无向图 G\rm GG ...

  2. 【计算理论】计算复杂性 ( 证明团问题是 NP 完全问题 )

    文章目录 一.团问题是 NP 完全问题 证明思路 二.证明团问题是 NP 完全问题 一.团问题是 NP 完全问题 证明思路 证明一个命题是 NP\rm NPNP 完全问题 : ① 证明是 NP\rm ...

  3. 【计算理论】计算复杂性 ( NP 完全问题 - 布尔可满足性问题 ★ | 布尔可满足性问题是 NP 完全问题证明思路 ) ★

    文章目录 一.NP 完全问题 - 布尔可满足性问题 ★ 二.布尔可满足性问题是 NP 完全问题证明思路 一.NP 完全问题 - 布尔可满足性问题 ★ 布尔可满足性问题 ( Boolean Satisf ...

  4. 【计算理论】计算复杂性 ( 无向图独立集问题 | 独立集问题是 NP 完全问题证明思路 | 证明独立集问题是 NP 完全问题 )

    文章目录 一.独立集问题 二.独立集问题是 NP 完全问题证明思路 二.证明独立集问题是 NP 完全问题 一.独立集问题 无向图的独立集 , 指的是在无向图中找到点集的子集 , 使得它们两两之间 , ...

  5. 【计算理论】计算复杂性 ( 多项式时间规约 | NP 完全 ★ | 布尔可满足性问题 ) ★

    文章目录 一.多项式时间规约 分析 二.NP 完全 ★ ( 计算理论最重要的概念 ) 一.多项式时间规约 分析 多项式时间规约概念 : [计算理论]计算复杂性 ( 多项式等价引入 | 多项式时间规约 ...

  6. 【计算理论】计算复杂性 ( NP 类不同表述 | 团问题 | P 对 NP 问题 )

    文章目录 一.NP 类不同表述 二.团问题 三.P 对 NP 问题 ( P vs NP ) 一.NP 类不同表述 NP\rm NPNP 对应的 确定性图灵机 表述 : NP\rm NPNP 类就是有 ...

  7. 【计算理论】计算复杂性 ( coNP 问题 | coNP 完全 | P、NP、coNP 相互关系 )

    文章目录 一.coNP 类 二.coNP 完全 三.P.NP.coNP 相互关系 一.coNP 类 如果 语言 L\rm LL 在 coNP\rm coNPcoNP 中 , 那么 该语言的补集在 NP ...

  8. 【计算理论】计算复杂性 ( P 类 | 有效算法函数 | NP 直觉 | NP 简介 | NP 类严格数学定义 )

    文章目录 一.P 类 二.有效算法函数 三.NP 直觉 四.NP 简介 五.NP 严格数学定义 一.P 类 时间复杂度类 : 定义 时间复杂度类 TIME(t(n))\rm TIME( t(n) )T ...

  9. 【计算理论】计算理论总结 ( P 、NP 、NPC 总结 ) ★★

    文章目录 一.P 类 二.NP 类 三.NPC 类 ( NP 完全 ) 四.P .NP .NPC 三者关系 一.P 类 P\rm PP 类 : ★ 所有 能够被 确定性 单个带子图灵机 , 在 多项式 ...

最新文章

  1. [吴恩达机器学习笔记]12支持向量机2 SVM的正则化参数和决策间距
  2. 操作系统 VS 编程语言 UNIX VS C语言
  3. 爱情,是我一生中最虔诚的信仰
  4. linux服务器磁盘扩容的方法
  5. Elasticsearch2.3.2创建索引java代码及异常处理
  6. PHP array_merge()函数与示例
  7. Linux基础(3)--搭建最小的Linux系统
  8. 常用的分布式唯一ID生成方案
  9. 会真香吗?周某表示不会签约直播打工,想在老家种地
  10. CodeForces Round #290 Div.2
  11. 回文数问题,两数互换位置问题(不用第三个变量)
  12. bzoj 4289 TAX —— 点边转化
  13. 滴滴巨亏109亿后,裁员2000人,补偿方案已出,员工争着被裁
  14. PHP 大括号{} 的使用
  15. 如何去掉腾讯网址安全中心提醒
  16. 支付宝第三方在线支付接口详解
  17. 一阶线性偏微分方程通解法和特征线法(一)| 两个自变量情况 | 偏微分方程(七)
  18. 欢迎来到地狱(隐写术)
  19. 华为harmonyos2.0哪里下载,华为HarmonyOS最新官方版-华为HarmonyOS2.0最新下载地址-游侠软件下载...
  20. 如何看待大数据「杀熟」?

热门文章

  1. 看一遍那些网络上晦涩的名词都弄明白了!
  2. [深入理解MySQL系列] - sort_buffer
  3. Odoo10 启动选项
  4. Python之列表方法
  5. Springmvc与Struts2不同
  6. 红黑树(一)之 原理和算法详细介绍---转帖
  7. [git]通过commit_id找回文件
  8. 海信信号机与铭达倒计时通信对接配置
  9. 自然语言处理之jieba分词
  10. Centos下使用Docker部署asp.net core项目