NP完全问题证明试题.pptxVIP

  • 63
  • 0
  • 约 35页
  • 2016-08-05 发布于湖北
  • 举报
几个NP完全问题 什么是NP完全问题 NP完全问题,是世界七大数学难题之一。 NP的英文全称是Non-deterministic Polynomial的问题,即多项式复杂程度的非确定性问题。简单的写法是 NP=P?,问题就在这个问号上,到底是NP等于P,还是NP不等于P 七大数学难题 这七个“千年大奖问题”是: NP完全问题、霍奇猜想、庞加莱猜想、黎曼假设、杨-米尔斯理论、纳卫尔-斯托可方程、BSD猜想 千年大奖问题   美国麻州的克雷(Clay)数学研究所于2000年5月24日在巴黎法兰西学院宣布了一件被媒体炒得火热的大事:对七个“千年数学难题”的每一个悬赏一百万美元。   其中有一个已被解决(庞加莱猜想),还剩六个.(庞加莱猜想,已由俄罗斯数学家格里戈里·佩雷尔曼破解。我国中山大学朱熹平教授和旅美数学家、清华大学兼职教授曹怀东做了证明的封顶工作。) 什么是NP完全问题 NP完全问题排在百万美元大奖的首位,足见他的显赫地位和无穷魅力。 在一个周六的晚上,你参加了一个盛大的晚会。由于感到局促不安,你想知道这一大厅中是否有你已经认识的人。你的主人向你提议说,你一定认识那位正在甜点盘附近角落的女士罗丝。不费一秒钟,你就能向那里扫视,并且发现你的主人是正确的。然而,如果没有这样的暗示,你就必须环顾整个大厅,一个个地审视每一个人,看是否有你认识的人。生成问题的一个解通常比验证一个给定的解时间花费要多得多。这是这种一般现象的一个例子。与此类似的是,如果某人告诉你,数13,717,421可以写成两个较小的数的乘积,你可能不知道是否应该相信他,但是如果他告诉你它可以因式分解为3607乘上3803,那么你就可以用一个袖珍计算器容易验证这是对的。人们发现,所有的完全多项式非确定性问题,都可以转换为一类叫做满足性问题的逻辑运算问题。既然这类问题的所有可能答案,都可以在多项式时间内计算,人们于是就猜想,是否这类问题,存在一个确定性算法,可以在多项式时间内,直接算出或是搜寻出正确的答案呢?这就是著名的NP=P?的猜想。 不管我们编写程序是否灵巧,判定一个答案是可以很快利用内部知识来验证,还是没有这样的提示而需要花费大量时间来求解,被看作逻辑和计算机科学中最突出的问题之一(斯蒂文·考克于1971年陈述) 8.5 一些典型的NP完全问题 5 8.5.1 合取范式的可满足性问题 (CNF-SAT) 6 要证明CNF-SAT∈NPC,只要证明在Cook定理中定义的布尔表达式A,…,G或者已是合取范式,或者有的虽然不是合取范式,但可以用布尔代数中的变换方法将它们化成合取范式,而且合取范式的长度与原表达式的长度只差一个常数因子。 问题描述:给定一个合取范式α,判定它是否可满足。 8.5.2 3元合取范式的可满足性问题 (3-SAT) 7 证明思路: 3-SAT∈NP是显而易见的。为了证明3-SAT∈NPC,只要证明CNF-SAT∝p 3-SAT,即合取范式的可满足性问题可在多项式时间内变换为3-SAT。 问题描述:给定一个3元合取范式α,判定它是否可满足。 对于一个合取范式, 若每个子句有且仅有3个变元时, 它的可满足性问题便称为3SAT问题。 定理 3SAT问题属于NPC。下证 8.5.3 团问题CLIQUE 9 证明思路: 已经知道CLIQUE∈NP。通过3-SAT∝pCLIQUE来证明CLIQUE是NP难的,从而证明团问题是NP完全的。 问题描述:给定一个无向图G=(V,E)和一个正整数k,判定图G是否包含一个k团,即是否存在,V’?V,|V’|=k,且对任意u,w∈V’有(u,w)∈E。 8.5.4 顶点覆盖问题 (VERTEX-COVER) 10 证明思路: 首先,VERTEX-COVER∈NP。因为对于给定的图G和正整数k以及一个“证书”V’,验证|V’|=k,然后对每条边(u,v)∈E,检查是否有u∈V’或v∈V’,显然可在多项式时间内完成。 其次,通过CLIQUE∝pVERTEX-COVER来证明顶点覆盖问题是NP难的。 问题描述:给定一个无向图G=(V,E)和一个正整数k,判定是否存在V’?V,|V’|=k,使得对于任意(u,v)∈E有u∈V’或v∈V’。如果存在这样的V’,就称V’为图G的一个大小为k顶点覆盖。 证 将3SAT变换到VC. 设U={u1,u2,...,un}, C={c1,c2,...,cm}是3SAT的实例. 如下构造图G, 分量设计法. 真值安排分量: Ti=(Vi,Ei), 1?i?n, 其中Vi={ui,ūi}, Ei={{ui,ūi}} 任意覆盖必至少包含ui或ūi

文档评论(0)

1亿VIP精品文档

相关文档