NP-повний варіант факторингу.


45

У книзі Арори та Барака факторинг представлений як наступна проблема:

FACTORING={L,U,N|( a prime p{L,,U})[p|N]}

Далі в главі 2 вони додають, що усунення факту, що є простим, робить цю проблему NP повною, хоча це не пов'язано із труднощами множення чисел. Здається, може бути зменшення від SUBSETSUM, але я застряг у пошуку. Будь-яка удача тут?p

EDIT 1 березня: Бандіт є доказом неповноти за допомогою детермінованого зменшення Карпа (або Кука).NP


5
@turkistany: FWIW, я вважаю поганим стилем ставити NP курсивом, і як поганий стиль, так і поганий LaTeX, щоб перевести його в математичний режим (оскільки відстані між літерами відрізняються).
Michaël Cadilhac

@ Michaël, Вибачте, повернувся до початкового стилю. Я схвильований вашим питанням :)
Мохаммед Аль-Туркстані

7
Дещо більш повний опис: На сторінці 63 книги вони пишуть: Алон та Кіліан (в особистому спілкуванні) показали, що у визначенні мови Факторинг у Прикладі 2.3 умова, що фактор p є простим, необхідний для фіксації проблема факторингу, оскільки без цієї умови ця мова не є повною NP (з причин, що не мають нічого спільного з твердістю цілочислових чисел).
MS Dousti

2
Природно, я шукав папір Алона та Кіліана, що містив "факторинг" та "NP-завершений". Я не знайшов жодної (я думаю, що це теж природно в певному сенсі). :(
Цуйосі Іто

5
@Michael Мені більше подобаються класи рендерингу як NP а не NP. Немає ?
Суреш Венкат

Відповіді:


35

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

Існує очевидне відношення до суми підмножини: припустимо, ви знаєте коефіцієнти : p 1 , p 2 , , p k . Тепер ви хочете , щоб знайти підмножина S з р 1 ... р до таким чином, щоNp1p2pkSp1 pk

logLpiSlogpilogU.

Проблема спроби використати цю ідею, щоб показати проблему, є NP-складною є те, що якщо у вас є проблема підмноженої суми з числами , t 2 , , t k , ви не обов’язково можете знайти праймери в поліноміальний час, такий що log p it i (де під , я маю на увазі приблизно пропорційний). Це справжня проблема, оскільки, оскільки підмножина суттєво не є повною NP, вам потрібно знайти ці журнали p i для великих цілих чисел t i .t1t2tklogpitilogpiti

Тепер, припустимо, нам потрібно, щоб усі цілі числа t k в задачі про підмножину знаходилися між x і x ( 1 + 1 / k ) , і що сума дорівнює приблизно 1t1 tkxx(1+1/k). Проблема суми підмножини все ще буде NP-повною, і будь-яке рішення буде сумоюk/2цілих чисел. Ми можемо змінити задачу з цілих чисел на цифри, якщо дозволитиt ' я знаходитись міжtiтаti+112itik/2titi , і замість того, щоб вимагати, щоб сума була рівноюs, ми вимагаємо, щоб вона була міжsтаs+1ti+110kss . Нам потрібно лише вказати наші цифри приблизно на4logkбільше біт точності для цього. Таким чином, якщо ми почнемо з чисел зBбітів і зможемо задати реальні числаlogpiприблизноB+4logkбіт точності, ми можемо здійснити наше скорочення.s+1104logkBlogpiB+4logk

Тепер з вікіпедії (через коментар Сянь-Чжи нижче), кількість простих чисел між і Т + Т 5 / 8 є θ ( T 5 / +8 / увійти T ) , так що якщо ви просто вибрати номери випадковим чином в цьому діапазоні, і перевірити їх на первинність, з великою часткою ймовірності отримати розквіт у поліноміальний час.TT+T5/8θ(T5/8/logT)

Тепер спробуємо зменшити. Скажімо, наші всі B біти. Якщо ми візьмемо T I довжини 3 B біти, то можна знайти простий р я поблизу Т я з 9 / 8 B битами точності. Таким чином, ми можемо вибрати Т я так , що лог - Т я а т I з точністю 9 / 8tiBTi3BpiTi9/8BTilogTiti біт. Це дозволяє нам знайти р яT я такщо лог р я а т я з точністю 9 / 89/8BpiTilogpiti біт. Якщо підмножина цих простих чисел множиться на щось близьке до цільового значення, існує рішення вихідних задач на суму підмножини. Таким чином, нехай N = Π i p i , вибираємо L і U належним чином, і ми маємо рандомізоване зменшення від сукупності підмножини.9/8BN=ΠipiLU


3
Я не розумію скорочення. Щоб проблема суми підмножини була заповнена NP, число повинно бути вказане у двійковій формі. Якщо ми хочемо цілі числа, логарифми яких близькі до чисел, в екземплярі заданої суми підмножини, нам потрібно експоненціально багато цифр. Як ти це долаєш?
Цуйосі Іто

2
@Peter: Припущення в теорії чисел називається гіпотеза Крамера , в якому говориться , що , де р п є п-е просте число. Дивіться основний розрив статті також для довідки. pn+1pn=O(log2n)pn
Сісен-Чі Чанг 8 之

2
@ Peeter: Так, ця версія припущення була доведена для досить великою. Перший результат подібного роду показав Хохейзель, а найкращим результатом завдяки Вікіпедії є робота Бейкера, Хармана та Пінца , з α = 0,525 , c 1 = (оскільки це справедливо для ймовірності 1) і c 2 = 1 . Tα=0.525c1=c2=1
Hsien-Chih Chang 張顯 之

2
Щойно натрапив на це. Слід зазначити, що я не знаю, яким був оригінальний доказ Кіліана-Алона. Моє єдине знання про доказ - це спілкування з Ногою, який не пам’ятав деталей оригінального доказу, а реконструйоване ним реконструкція було саме таким. Зауважимо, що це також може бути описане як детерміноване зменшення за деякими теоретичними припущеннями сильного числа (наприклад, що в будь-якому інтервалі форми [x, x + polylog (x)]) є простим.
Боаз Барак

4
Я щойно говорив з Джо Кіліаном. Він сказав, що доказ того, що він і Алон придумали, пов'язаний з рандомізованими скороченнями з нульовою помилкою. Наскільки йому відомо, детерміновані скорочення все ще є відкритими, якщо ви не зробите певного теоретичного припущення, як уже сказав Боаз Барак.
Тимофі Чоу

8

Я думаю, що вона пов'язана з теоремою PCP (зокрема ).NP=PCP[O(logn),O(1)]

Уривок з статті Мадху :

... Поняття про те, що перевіряючий може виконати будь-які обчислення поліномів часу, значно збагачує клас теорем і доказів і починає пропонувати дуже нетривіальні методи доведення теорем. (Одним з негайних наслідків є те, що ми можемо вважати, що теореми / докази / твердження / аргументи є бінарними послідовностями, і ми будемо робити це відтепер.) Наприклад, припустимо, що у нас є твердження (скажімо, Гіпотеза Рімана), і ми говоримо, що ми вважаємо, що воно має доказ, який би вміщувався в статті на 10000 сторінок. Обчислювальна перспектива говорить про те, що з урахуванням A і цього зв'язаного (10 000 сторінок) можна ефективно обчислити три натуральних числа N , L , U з L U NAAN,L,ULUNтаким чином, що істинно тоді і тільки тоді , коли N має дільник між L і U . Цілі числа N , L і U будуть досить довгими (можливо, їх написання займе мільйон сторінок), але вони можуть бути створені надзвичайно ефективно (за менший проміжок часу, щоб принтер роздрукував усі ці цілі числа, що, безумовно, щонайбільше день чи два). (Цей конкретний приклад ґрунтується на результаті завдяки Джо Кіліану , особистому спілкуванню) ...ANLUNLU

... що набагато перевищує мої навички теорії складності :-)


2
Це лише ще одна постановка, що ця проблема не є повною.
Марк Бері

@Marc ... ммм ... Я думаю , що це означає: є NP-завершеним, тому що існує поліноміальне зменшення проблеми NP-повногоКОРОТКА ДОКАЗАННЯ...{L,U,N|(p{L,,U})[p|N]}
Marzio De Biasi

2
Проблема КОРОТКОГО ДОКАЗАННЯ в роботі майже така сама, як проблема обмеження зупинки. Скорочення проблеми КОРОТКОГО ДОКАЗАННЯ буде, швидше за все, таким же брудним, як типовим доказом NP-повноти SAT, і тому малоймовірно, що доказ NP-повноти цієї проблеми пошуку фактора Кіліаном будує скорочення від КРАТКА ДОКАЗАННЯ проблема безпосередньо.
Цуйосі Іто

0

Це неформальна ефективна детермінована ідея зменшення (і може бути неповною):

Fractran є повною мовою програмування Тьюрінга. Відповідним чином визначається обмежено-версія програм Fractran повинна бути приводиться до мови {L,U,M|( a positive integer p{L,,U})[p|M]}

MM=NjFi

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