[算法笔记]NPC问题证明sample

[算法笔记]NPC问题证明sample

    • 前言
    • 一些概念
    • 一些例子
    • Reduction to 3-Coloring
    • NP Basics
    • reduce vertex cover to dominating set
      • 另一个解法:reduce set cover to dominating set
    • partition, subset sum and knapsack
      • 另解
    • Orthogonal vectors
    • reduce vertex cover to set cover
    • 祝大家圣诞快乐,Merry Christmas!!

前言

关于一些具体细节可以看我这篇博文NPC问题证明

一些概念

先问大家几个问题,帮助大家理解一些概念

  1. There exists a polynomial time reduction from 3SAT to Palindrome Checking. Assume that Palindrome Checking is a program that verifies if a given word is a palindrome or not.
    Note: A palindrome is a word that reads the same forwards as well as backwards. For example,
    “CS17071SC” is a palindrome, but “CS170” is not
  2. There exists a polynomial time reduction from any NP hard problem to any other NP hard problem
  3. There exists a polynomial time reduction from Palindrome Checking to 3SAT
    想一下这几个问题的答案,或者说他们在什么情况下是对的,什么情况下是错的。下面我们来揭晓答案

1.首先关于回文检测显然可以在多项式时间内确认,所以回文检测是NP的,3SAT是一个NPC问题。回归到NPC问题的定义,NPC问题是可以在多项式时间内将NP问题归约为的问题。这并不符合NPC问题的定义,显然无法保证。但是这在NP=P的时候是对的,因为NPC问题是NP问题,而NP问题的定义是P问题可以在多项式时间内归约为的问题。所以3SAT是P问题,故3SAT可以在多项式时间内归约为回文检测问题。
为了方便大家理解,给大家一张图
[算法笔记]NPC问题证明sample_第1张图片
下一级可以在多项时间内归约到上一级。除了P问题和NP问题有原始的·定义,NPC和NPH都是从NP和P来的
2.错误,因为这不符合NPH的定义
3.对,因为NP问题可以在多项式时间内归约为NPC问题

一些例子

OK,回到正题,回顾一下我们的证明步骤。1)先证明该问题A的任意一个solution可以在多项式时间内被验证来说明这个问题是是NP问题
2)找一个NPC问题B,将该NPC问题归约为这个问题,所以这个问题是NPH问题
3)证明B有解当前仅当A问题有解
声明:以下问题来自我的作业,解法来自我和我的同学
先给大家讲一些会用到的问题的定义(来自我的cheatsheet)
[算法笔记]NPC问题证明sample_第2张图片

Reduction to 3-Coloring

[算法笔记]NPC问题证明sample_第3张图片
[算法笔记]NPC问题证明sample_第4张图片
[算法笔记]NPC问题证明sample_第5张图片
在这里插入图片描述

NP Basics

[算法笔记]NPC问题证明sample_第6张图片

reduce vertex cover to dominating set

在这里插入图片描述
[算法笔记]NPC问题证明sample_第7张图片
[算法笔记]NPC问题证明sample_第8张图片

另一个解法:reduce set cover to dominating set

[算法笔记]NPC问题证明sample_第9张图片

partition, subset sum and knapsack

[算法笔记]NPC问题证明sample_第10张图片
在这里插入图片描述
[算法笔记]NPC问题证明sample_第11张图片

另解

[算法笔记]NPC问题证明sample_第12张图片

Orthogonal vectors

[算法笔记]NPC问题证明sample_第13张图片

reduce vertex cover to set cover

[算法笔记]NPC问题证明sample_第14张图片

祝大家圣诞快乐,Merry Christmas!!

你可能感兴趣的:(算法,np问题,NPC)