簡體   English   中英

顯示NP,NP-完整性或NP-硬度

[英]Showing NP, NP-Completeness, or NP-Hardness

我對這三個類別的理解是否正確?

為了表明問題X是NP:

  1. 表明可以在多項式時間內確定性地驗證X(或者X可以使用NTM求解)

要顯示問題,X是NP-Complete:

  1. 表明可以在多項式時間內確定性地驗證X(或者X可以使用NTM求解)
  2. 表明給定已知的NP-C問題L,L≤pX
  3. 證明給定一個已知的NP-C問題L,X≤pL(這一步是否必要?如果是這樣,這是區分純NP-Hard問題與NP-C問題的原因嗎?)

為了表明問題X是NP-Hard:

  1. 表明給定已知的NP-C問題L,L≤pX

你幾乎得到了它。

給定問題X ,為了顯示它是NPC,對於某些NPC問題L ,您不需要顯示X ≤p L

事實上,這是有保證的,因為你已經證明X是NP(1),你知道L是NP-Complete。 根據NP-Complete的定義,這意味着從NP到L所有問題都有一個多項式時間減少,包括來自X ,因此基本上證明NPC的步驟(3)是多余的。


一種更優雅的方式來顯示證明每個屬性需要做什么的陳述:

要顯示X是NP:

  1. 表明可以在多項式時間內確定性地驗證X(或者X可以使用NTM求解)

要顯示X是NP-Hard:

  1. 表明給定已知的NP-Hard問題L,L≤pX

要么

  1. 顯示對於NP中的任何問題L ,L≤pX(對於SAT,這實際上只執行一次,並且是NP-Hard的定義)。

要顯示問題,X是NP-Complete:

  1. 顯示X是NP-Hard
  2. 顯示X在NP中

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM