Чи встановлені класи складності з реальними числами?


14

Нещодавно студент попросив мене перевірити рівень твердості на них. Вони виконували скорочення за лініями:

Я знижую цю проблему P яка, як відомо, є NP-повною для моєї проблеми P (з багаторазовим скороченням багато-один), так щоP є NP-важким.

Моя відповідь була в основному:

Оскільки P має екземпляри зі значеннями від R , це тривіально не обчислюється Тюрінгом, так що ви можете пропустити зменшення.

Хоча формально це правда, я не вважаю, що цей підхід є проникливим: ми, безумовно, хотіли б мати змогу зафіксувати "властиву складність" проблеми, що реально оцінюється (або оптимізувати), ігноруючи обмеження, з якими ми стикаємося у реальній справі числа; розслідування цих питань - ще один день.

Звичайно, не завжди так просто, як сказати, "дискретна версія Subset Sum є NP-повною, тому безперервна версія" NP-hard "також". У цьому випадку зменшення легко, але відомі випадки, коли безперервна версія простіша, наприклад, лінійне проти цілочисельного програмування.

Мені прийшло в голову, що модель ОЗУ природно поширюється на реальні числа; нехай кожен реєстр зберігає реальне число і відповідно розширює основні операції. Уніфікована модель вартості все-таки має сенс - настільки ж, як і в дискретному випадку, все одно - в той час як логарифмічна - ні.

Отже, моє запитання зводиться до того: чи існують усталені уявлення про складність проблем, що мають цінність? Як вони ставляться до «стандартних» дискретних класів?

Пошуки Google дають певні результати, наприклад, це , але я не можу сказати, що встановлено та / або корисно, а що ні.


1
Можливо, ви знайдете цікаве "Складність та реальні обчислення" amazon.com/Complexity-Real-Computation-Lenore-Blum/dp/…
Kurt Mueller

Мені здається, що ваша відповідь вашому студенту була необґрунтована з однієї простої причини: Незалежно від обчислень, які ми звикли розглядати як основані на результатах, можна також проводити обчислювальні реали . Я не знаю, чи це відповідь, яка може бути використана для вашого учня, але вона повинна принаймні усунути відсутність аргументації Тюрінга. На жаль, я недостатньо досвідчений з цих питань, щоб це розвивати далі.
babou

@babou Що стосується обчислюваності, це може бути розумним обмеженням (але таке, про яке вони все-таки повинні зазначити!). Однак, що відбувається зі складністю?
Рафаель

@Raphael Моя думка насправді, що це навіть не обмеження, і його не потрібно заявляти. Це просто неминуче. Єдиними результатами, які ви можете врахувати в обчисленні, є обчислювальні цифри (дисертація Церкви Тюрінга). Приємна частина, мабуть, в тому, що вона не змінює жодної відповідної математики, при належному догляді. Вихід за рамки обчислювальних дій - це, як використання вищих рівнів ієрархії Тьюрінга, захоплююча спекуляція, мабуть, мало впливає на щось реальне (каламбур неминучий).
babou

Відповіді:


8

Так. Існує.

Існує модель реальної RAM / BSS, згадана в іншій відповіді. У моделі є деякі проблеми, і AFAIK щодо цього не має великої дослідницької діяльності. Можливо, це не реальна модель обчислення .

Більш активне поняття реальної обчислюваності - це обчислювальна модель вищого типу. Основна ідея полягає в тому, що ви визначаєте складність для функцій вищого типу, а потім використовуєте функції вищого типу для представлення реальних чисел.

Дослідження складності функцій вищого типу сходить щонайменше до [1]. Для останньої перевірки роботи документи Akitoshi Kawamura про складність реальних операторів.

Класичним посиланням на складність реальних функцій є книга Кер-І Ко [2]. У шостому розділі найновіша книга Клауза Вайхрауха [3] також обговорює складність реального обчислення (але вона більше зосереджена на обчислюваності, ніж на складності).

  • [1] Стівен Кук та Брюс Капрон, "Характеристика основних можливих функціоналів кінцевого типу", 1990.

  • [2] Кер-І Ко, "Обчислювальна складність реальних функцій", 1991.

  • [3] Клаус Вайхраух "Обчислювальний аналіз", 2000.


Що робить функціональну модель вищого типу більш реалістичною, ніж реальна модель ОЗУ?
Рафаель

1
@Raphael, я думаю, я пояснив це у пов'язаному питанні. Якщо ви хочете отримати більше лікування, їх декілька - це глава 9 Вайро. IIRC, ще одна хороша - стаття Тукера та Столенберга-Хансена.
Каве

1
На мій погляд, модель реальної оперативної пам’яті має дві основні проблеми: з одного боку, їй не вистачає поняття довільної точності, раціонального наближення реальних чисел, що, можливо, є їхньою основною властивістю, а з іншого боку, вона дозволяє порівняти дійсні числа, про які AFAIK ніхто не знає як це зробити на практиці. В результаті деякі реальні функції, які ми вважаємо ефективно обчислюваними на практиці, не піддаються обчислюванню в моделі, тоді як деякі ефективно обчислювані реальні функції в моделі взагалі не обчислюються на практиці.
Каве

@Kaveh Мене турбує неточність усієї дискусії, у питанні та у відповідях. Ми говоримо про традиційні незлічувані факти, або про обчислювані. З вашого останнього коментаря ви говорите про "реальні функції, які ми вважаємо ефективно обчислюваними на практиці", тому я схильний вважати, що мова йде про обчислювані реальності. Що ти насправді маєш на увазі?
babou

8

Описана вами модель відома як Blum-Shub-Smale (BSS) (також реальна модель RAM) і справді використовується для визначення класів складності.

Деякі цікаві проблеми в цій галузі є класи , N P R , і, звичайно , питання про те , P R = N P R . Під P R ми маємо на увазі, що проблема є поліноміально вирішальною, N P R - це проблема поліноміально перевіряється. Є твердість / Повнота питання про клас N P R . Прикладом повної задачі N P R є проблема Q P SПRNПRПRNПRПRNПRNПRNПRQПS , квадратичної багаточленної системи, де входом є реальні многочлени в змінні і р 1 , . . . , Р пR [ х 1 , . . . , x n ] ступеня максимум 2, і кожен многочлен має щонайбільше 3 змінних. Питаннятеіснує спільне дійсне рішення R п , такещо р 1 ( ) , р 2 ( ) , . . . p n ( a ) = 0мp1,...,pn R[x1,...,xn]Rnp1(a),p2(a),...pn(a)=0. Це повна проблема NPR

Але ще цікавіше, що там було проведено певну роботу щодо взаємозв'язку між , (Probalistically Checkable Proofs) над Reals, тобто класом P C P R , і тим, як це стосується алгебраїчних моделей обчислень. Модель BSS переходить на всі N P через реальні показники. Це є стандартним у літературі, і те, що ми знаємо сьогодні, - це те, що N P R має "прозорі довгі докази" та "прозорі короткі докази". Під "прозорими довгими доказами" мається на увазі наступне: N P R міститься в P C P R ( p o l yPCPPCPRNPNPRNPR . Існує також розширення, яке говорить, що "Практично (приблизна) коротка версія" є правдивою. Чи можемо ми стабілізувати доказ і виявити несправності, перевіривши значно менше (реальних) компонентів, ніж n ? Це призводить до питань існування нулів для (системи) одновимірних многочленів, заданих прямою програмою. Також під "прозорими довгими доказами" ми маємо на увазіPCPR(poly,O(1))n

  1. "прозорий" - Тільки для читання,O(1)

  2. long - суперполіноміальна кількість реальних компонентів.

Доказ прив’язаний до , і впевнений, що один із способів розгляду справжніх цінних проблем полягає в тому, як це може бути пов’язано з сукупністю підмножини - навіть алгоритми наближення справжніх оцінених проблем були б цікаві - як для оптимізації - лінійне програмування, яке ми знаємо в класі F P , але так , було б цікаво подивитися , як approximatability може вплинути на повноту / твердість для випадку N P R проблем. Крім того , ще одне питання буде одним з Н Р Р = з Про - Н Р Р ? 3SATFPNPRNPR = co-NPR

Розмірковуючи про клас , існують також класи підрахунку, які дозволяють міркувати про поліноміальну арифметику. Тоді як # P - клас функцій f, визначений на { 0 , 1 } N, для якого існує поліноміальна машина Тьюрінга M і поліном p зі властивістю n N , а x { 0 , 1 } n , f ( x )NPR#Pf{0,1} NMpnNx{0,1}nf(x)підраховує кількість рядків { 0 , 1 } p ( n ), які машина Тьюрінга M приймає { x , y } . Для реальної міри ми поширюємо цю ідею: є додаткові машини BSS - машини BSS, які роблять лише додавання, і множення (не ділення, віднімання). За допомогою аддитивних машин BSS (вузли в обчисленні дозволяють лише додавання та множення) модель для # P стає такою, в якій кількість перераховується над векторами, які приймає добавка BSS-машин. Отже, клас підрахунку - # P a d dy{0,1}p(n)M{x,y}#P#Padd цей клас корисний для вивчення чисел Бетті, а також характеристики Ейлера.


Реальна ОЗУ (машина з випадковим доступом) або BSS (Blum-Shub-Smale) є моделлю, згадана раніше широко прийнята як норма для міркувань щодо цих класів.
користувач3483902

Ні, це твердження абсолютно помилкове. Наприклад, подивіться на CCA-Net і подивіться, скільки дослідників використовує цю модель.
Каве

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