Зменшення полінома від будь-якої задачі, що завершується NP, до обмеженої PCP


18

У текстових книгах скрізь припущено, що проблема обмеженої поштової кореспонденції повна NP (не більше індексів допускається з повтореннями). Однак ніде не показано просте (як, наприклад, те, що недоступний може зрозуміти) скорочення поліномного часу з іншої проблеми, повного NP.N

Однак кожне зменшення, про яке я можу припустити, є експоненціальним (на або за розміром серії) під час виконання. Можливо, може бути показано, що це SAT?N

Відповіді:


10

Як це часто трапляється зі зменшенням NP, є сенс шукати подібні проблеми. Зокрема, важко кодувати глобальні умови, такі що "побачили деякі вузли" в PCP (з поліноміально багатьма плитками), що протипоказано проблеми з графіком, проблеми з упаковкою вимагатимуть, щоб ми кодували одинакові числа в PCP (створюючи експоненціально великий екземпляр), і так далі. Тому, можливо, очікується, що строкова проблема з лише локальними обмеженнями працює найкраще.

Розглянемо варіант рішення найкоротшої поширеної проблеми із наслідками :

Дано два рядки з | а | = n і | б | = m і k N , вирішіть, чи існує рядок c Σ + з | c | k такі, що a і b є підрядками c .a,bΣ+|a|=n|b|=mkNcΣ+|c|kabc

Ідея полягає в тому, щоб PCP створював надлишки і b зліва направо, кодуючи перекриття плиток, в якому положенні ми знаходимося в a і b відповідно. Він використовуватиме одну плитку на символ у c , тому k відповідає границі BPCP: якщо ми можемо розв’язати цю PCP з плитками k , ви можете прочитати загальну послідовність однакової довжини і навпаки.ababckk

Конструкція плитки трохи втомлива, але цілком чітка. Зауважте, що ми не будемо створювати плитки, які не пересилають або b ; такі ніколи не можуть бути частиною найкоротшого загального наслідку, тому вони є зайвими. Їх легко можна додати, не порушуючи властивостей редукції.ab

Числа в перекриттях кодуються у двійковій формі , але використовуючи символи поза та додаючи їх до загального журналу довжини max ( m , n ) . Таким чином, ми гарантуємо, що плитки використовуються як графічна пропозиція (тетрис), тобто символи, а перекриття, що кодують індекс, не змішуються (PCP не запобігає цьому як такому). Нам потрібно:Σlogmax(m,n)

  • Починаючи плитки: може почати з більш 1 , б 1 або обидва , якщо вони рівні.ca1b1
  • Проміжні плитки: може продовжувати наступний символ у a , в b або обох, якщо вони рівні.cab
  • Закінчення плитки: закінчується останнім символом a (якщо останній з b вже було помічено), аналогічним b , або останнім символом обох.cabb

Це схеми плитки. Зауважте, що проміжні плитки повинні бути встановлені для всіх пар . Як було сказано вище, створюйте плитки без ∗, лише якщо відповідні символи в a і b збігаються.(i,j)[n]×[m]ab

введіть тут опис зображення
[ джерело ]

Символічні для «Не все одно»; у фактичних плитках інший символ доведеться скопіювати туди. Зауважте, що кількість плиток знаходиться в Θ ( m n ), і кожна плитка має довжину 4 log max ( m , n ) + 1 , тому побудований екземпляр BPCP (над алфавітом Σ { 0 , 1 }Θ(mn)4logmax(m,n)+1Σ{0,1}плюс розділові символи) має поліноміальний розмір. Крім того, конструкція кожної плитки очевидно можлива за багаточлен. Отже, запропоноване скорочення дійсно є дійсною поліноміальною трансформацією, яка зменшує NP-повну найкоротшу загальну проблему надмірності до BPCP.


Гарна відповідь. Я здогадуюсь найпростішого відомого скорочення.
Мохаммед Аль-Туркстані

8

Я думаю, що ви можете довести, що BPCP є NP-завершеним, скориставшись скороченням, аналогічним тому, яке використовується для доведення його невідповідності. Ми безпосередньо докажемо, що BPCP є NP-завершеним, показавши, як зменшити будь-яку проблему в NP до нього за полиномний час.

Стандартне скорочення, що використовується для доведення того, що PCP не визначається ( накреслено тут ), працює, будуючи ряд плиток таким чином, що існує рішення PCP, якщо є прийняття обчислення даного TM на рядку w . Кількість плиток, створених при цьому скороченні, поліноміально велика - конкретно, кількість побудованих доміно є деякою функцією від розміру стрічкового алфавіту та кількості станів у ТМ. Єдине доміно, розмір якого може бути великим, - це початкове доміно, яке має wMwwнаписані на ній. Якщо узагальнити це скорочення від роботи над детермінованими ТМ до роботи над недетермінованими ТМ, то це вводить щонайменше деяку постійну кількість доміно, оскільки кількість переходів обмежена. Отже, ми можемо побудувати стандартний набір доміно для нормального скорочення нерозбірливості в поліномному часі.

Враховуючи це, ми можемо звести будь-яку задачу NP до BPCP наступним чином - враховуючи будь-яку задачу NP, вона має деяку поліноміальну NTM яка працює в часі p ( n ) . Тоді ми можемо звести цю проблему до BPCP у поліноміальний час наступним чином - побудувати стандартний набір доміно з M , а потім запитати, чи є рішення, яке використовує f ( p ( n ) ) доміно, де f - деяка поліноміальна функція, яка виражає кількість доміно, необхідне для існування рішення (це, мабуть, щось на зразок n 2Mp(n)Mf(p(n))fn2, і, звичайно, не є експоненціальним). Потім, використовуючи той самий доказ, який ви використовуєте, щоб показати, що PCP не можна визначити, ви можете довести, що існує рішення цього екземпляра BPCP, який використовує не більше плиток, якщо оригінальний NTM M приймає m в межах p ( n ) кроки. Отже, ми маємо скорочення поліноміального часу від кожної проблеми в NP до BPCP, тому BPCP є NP-жорстким.f(p(n))Mmp(n)

(Ми також повинні показати, що BPCP знаходиться в НП, але це просто; просто недетерміновано здогадуйтесь, які доміно навести, а потім детерміновано перевірити це).

Сподіваюся, це допомагає!


Це допомагає певним чином, хоча я все-таки віддаю перевагу зменшенню безпосередньо з іншої проблеми.
Джон

@ john - Чи є певна причина, щоб ви хотіли зменшити відому проблему, повну NP-програму, до BPCP? Вищенаведений доказ показує, що проблема не є повною NP та підкреслює зв'язок між невідчутністю PCP та NP-повнотою BPCP.
templatetypedef

Цілком зрозуміла причина, оскільки зазвичай більшість підручників використовують метод прямого скорочення, щоб довести повноту NP і зрозуміти, що ця проблема не відрізняється від решти в цьому плані.
Джон

1
@john: Звичайно, ви можете скористатися скороченням templatetypedef для будь-якої проблеми, повного NP (яка є прямою), але це не змусить використовувати структуру обраної проблеми. Для освітніх цілей це геніально, тому що зазвичай ви бачите лише один доказ про зменшення, що проблема не є повною.
Рафаель
Використовуючи наш веб-сайт, ви визнаєте, що прочитали та зрозуміли наші Політику щодо файлів cookie та Політику конфіденційності.
Licensed under cc by-sa 3.0 with attribution required.