Чи скорочення Карпа ідентичне зменшенню Левіна


12

Визначення: Зменшення Карпа

Мова - Карп, приведена до мови B, якщо є функція, що обчислюється в поліномі-часі f : { 0 , 1 } { 0 , 1 } така, що для кожного x , x A тоді і лише тоді, коли f ( x ) B .ABf:{0,1}{0,1}xxAf(x)B

Визначення: Зниження Левіна

Проблема пошуку Левіна зводиться до задачі пошуку V B, якщо є функція часу полінома f, що Карп зменшує L ( V A ) до L ( V B ), і є функції, що обчислюються в поліномії, g і h такі, щоVAVBfL(VA)L(VB)gh

  1. ,x,yVAf(x),g(x,y)VB

  2. f(x),zVBx,h(x,z)VA

Чи ці скорочення рівноцінні?


Я думаю, що два визначення є рівнозначними. Для будь-яких двох мовах A і B , якщо є Короп зводиться до B , то є Левін зводиться до B .NPABABAB

Ось мій доказ:

Нехай і ¯ х довільні екземпляри А , а х ' в тому , що з B . Нехай V і V B є випробувачі A і B . Нехай у і ¯ г довільні сертифікати х і ¯ х в відповідно до V A . Нехай г бути , що з ї ' в відповідно до V B .xx¯AxBVAVBAByy¯xx¯VAzxVB

Побудуйте нові верифікатори і V ' B з новими сертифікатами y ' і z ' :VAVByz

VA(x,y):

  1. : Якщо F ( х ) F ( ¯ х ) , відкидають. В іншому випадку виведіть V A ( ¯ x , ¯ y ) .y=0,x¯,y¯f(x)f(x¯)VA(x¯,y¯)
  2. : Вихід V B ( F ( х ) , г ) .y=1,zVB(f(x),z)

VB(x,z):

  1. : Вихід В В ( х ' , г ) .z=0,zVB(x,z)

  2. : Якщо х 'F ( х ) , відкидають. В іншому випадку виведіть V A ( x , y ) .z=1,x,yxf(x)VA(x,y)

Функції, що обчислюються в поліномі-часі і h , визначаються як нижче:gh

g(x,y)

  1. : Вихід1 , ¯ х , ¯ у .y=0,x¯,y¯1,x¯,y¯

  2. : Вихід0 , г .y=1,z0,z

h(x,z)

  1. : Вихід1 , г .z=0,z1,z

  2. : Вихід0 , х , у .z=1,x,y0,x,y

Нехай безліч всіх сертифікатів х в відповідно до V A і Z х ' безліч всіх сертифікатів х ' в відповідно до V B . Тоді множина всіх сертифікатів x відповідно до V ' A дорівнює 0 ¯ x Y ¯ x + 1 Z f ( x ) така, що f ( x ) = f ( ¯ x )YxxVAZxxVBxVA0x¯Yx¯+1Zf(x)f(x)=f(x¯), а набір усіх сертифікатів згідно V B дорівнює 0 Z x + 1 ¯ x Y ¯ x таким, що x = f ( ¯ x ) .xVB0Zx+1x¯Yx¯x=f(x¯)

(Це походить від мови прийняття та V B. )VAVB

Тепер нехай , решту частину легко перевірити.x=f(x)


Перш ніж доводити свою претензію, слід визначити, що вона означає, якою мовою Левін може бути зворотний до іншої.
Цуйосі Іто

Відповіді:


14

Ні. Спочатку зауважте, що зменшення Левіна має сенс лише стосовно класів, сертифікат яких має значення, наприклад, тоді як скорочення Карпа є загальним. Слово "сертифікат" для проблеми має сенс лише тоді, коли фіксований верифікатор. Скорочення Левіна передбачає, що верифікатори виправлені. Ви не можете змінити верифікатори. (Далі я припускаю, що перевіряючі сертифікати фіксуються, як того вимагає визначення скорочення Левіна.)NP

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

Якщо ми можемо зменшити випадки проблеми до проблеми B, це не означає, що ми маємо спосіб обчислити сертифікат для одного з сертифіката для іншого.AB

Щоб це було правдою, нам потрібен той факт, що проблема пошуку сертифікатів, що відповідає проблемі рішення, є поліномним часом, зведеним до проблеми рішення. Це справедливо для проблем але невідомо, як правило, навіть для N P проблем.NP-completeNP


L1L2NPL1L2L1L2

L1L2NPM1M2xL1YxTM1ZxxL2L1L2fяк визначено.
cc

M1M2xL10Yx+1Zf(x)f(x)L20Zf(x)+1xYxM1M2gh

xL2xL1x=f(x)

@cc, здається, ти все ще вважаєш, що ти можеш змінити верифікатори, ти не можеш. Визначення скорочення Левіна призначене для проблем пошуку, тобто верифікатори виправлені.
Kaveh

5

x1,x2L1f(x1)=f(x2)L2wx1x2

M1(x1,0,w)=M1(x1,w)=1

M1(x2,0,w)=M1(x2,w)=0

g(x1,0,w)=1,x1,w

f(x1)=f(x2)M2(f(x2),1,x1,w))=M1(x1,w)=11,x1,wf(x2) але

h(f(x2),1,x1,w)=0,wx2


Дуже дякую за вказівку на контрприклад. Я змінив конструкцію і, думаю, вона працює зараз. Не могли б ви подивитись на це?
cc
Використовуючи наш веб-сайт, ви визнаєте, що прочитали та зрозуміли наші Політику щодо файлів cookie та Політику конфіденційності.
Licensed under cc by-sa 3.0 with attribution required.