Про обчислювальну корисність загалом
Не розуміючи цього, ви ставите версію одного з найскладніших питань, які ви, можливо, можете задати про теоретичну інформатику. Ви можете задати те саме питання щодо класичних комп'ютерів, тільки замість того, щоб додати "квантовість", корисно, ви можете запитати:
Чи є стисле твердження про те, де рандомізовані алгоритми можуть допомогти?
Тут можна сказати щось дуже розпливчасте - якщо ви вважаєте, що рішень вдосталь (або що кількість рішень якоїсь підпроблеми є вдосталь), але систематично це може бути важко побудувати, то корисно мати змогу зробити вибір навмання, щоб подолати проблему систематичної побудови. Але будьте обережні, іноді причина, чому ви знаєте, що існує достатня кількість рішень для субпроблеми, полягає в тому, що існує доказ з використанням ймовірнісного методу . У такому випадку ви знаєте, що кількість рішень вдосталь, зменшуючи до того, що насправді є корисним рандомізованим алгоритмом!
Якщо у вас немає іншого способу виправдати той факт, що кількість рішень є достатньою для цих випадків, не існує простого опису, коли випадковий алгоритм може допомогти. І якщо у вас є досить високі вимоги «корисності» (суперполіномальна перевага), тоді ви запитуєте, чи , що є невирішеною проблемою в теорії складності. P≠BPP
Чи є стисле твердження про те, де паралелізовані алгоритми можуть допомогти?
Тут справи можуть бути дещо кращими. Якщо проблема виглядає так, ніби вона може бути розбита на безліч незалежних підпроблем, то її можна паралелізувати - хоча це невиразно, "ви це дізнаєтесь, коли побачите" свого роду критерій. Головне питання - чи дізнаєтесь ви це, коли побачите? Ви могли б здогадатися, що тестування доцільності систем лінійних рівнянь над раціональними не тільки паралельно можливим, але може бути вирішено за допомогою схем 2 n ) -глобин [cf Comput. Складні. 8(с. 99--126), 1999]?O(log2n)
Один із способів, за допомогою якого люди намагаються намалювати інтуїцію великої картини, - це підійти до питання в протилежному напрямку і сказати, коли відомо, що паралелізований алгоритм не допоможе. Зокрема, це не допоможе, якщо проблема має для неї суттєвий послідовний аспект. Але це є круговим, оскільки "послідовний" просто означає, що структура, яку ви можете бачити для проблеми, така, яка не паралельна.
Знову ж таки, немає простого, вичерпного опису, коли паралельний алгоритм може допомогти. І якщо у вас є досить високі вимоги «корисності» (полі-логарифмічна верхня межа часу, припускаючи паралелізацію поліномів), то ви запитуєте, чи P≠NC , що знову є невирішеною проблемою в теорії складності .
На даний момент перспективи "стислого і правильного опису, коли [X] корисний", не надто великі. Хоча ви можете протестувати, що ми тут занадто суворі: мотивуючи більш високу поліноміальну перевагу, ми навіть не могли стверджувати, що недетерміновані машини Тьюрінга були "корисними" (що явно абсурдно). Ми не повинні вимагати такої високої планки - за відсутності методик для ефективного вирішення задоволення, ми повинні принаймні погодитись, що якби ми якось могли отримати недетерміновану машину Тьюрінга, ми дійсно вважали б її дуже корисною . Але це відрізняється від того, щоб ми могли точно охарактеризувати, для яких проблем ми б вважали його корисним.
Про корисність квантових комп'ютерів
Зробивши крок назад, чи можна щось сказати про корисність квантових комп'ютерів?
Можна сказати так: квантовий комп'ютер може зробити щось цікаве лише тоді, коли він скористається структурою проблеми, недоступною для класичного комп’ютера. (На це натякають зауваження щодо "глобальної властивості" проблеми, як ви згадуєте). Але ми можемо сказати більше, ніж це: проблеми, вирішені квантовими комп’ютерами в моделі унітарних схем, дозволять створити деякі особливості цієї проблеми як унітарні оператори . Особливостями проблеми, недоступної класичним комп’ютерам, будуть всі ті, які не мають (імовірно) статистично значущого відношення до стандартної бази.
- У випадку алгоритму Шора ця властивість є власними значеннями оператора перестановки, який визначається через множення на кільце.
- У випадку алгоритму Гровера ця властивість полягає в тому, чи відображається відображення про множину позначених станів з відображенням про рівномірну суперпозицію - це визначає, чи має ітератор Гровера будь-які власні значення, які не є ± 1 .
Не особливо дивно бачити, що в обох випадках інформація стосується власних значень та власних векторів. Це відмінний приклад властивості оператора, який не повинен мати жодного змістовного відношення до стандартної бази. Але немає жодної конкретної причини, чому інформація повинна бути власним значенням. Все, що потрібно - це вміти описати унітарний оператор, кодуючи якусь релевантну особливість проблеми, яка не очевидна з огляду стандартної бази, але є доступ до якого - небудь іншим легко описаному способу.
Зрештою, все це говорить про те, що квантовий комп'ютер корисний, коли можна знайти квантовий алгоритм для вирішення проблеми. Але принаймні це широкий контур стратегії пошуку квантових алгоритмів, який не гірший, ніж широкі контури стратегій, які я описав вище для рандомізованих або паралельних алгоритмів.
Зауваження про те, коли квантовий комп'ютер є "корисним"
Як зазначали інші люди, "де квантові обчислення можуть допомогти" залежить від того, що ви маєте на увазі під "допомогою".
Алгоритм Шора часто вимальовується в таких дискусіях, і раз у раз люди зазначають, що ми не знаємо, що факторизація не вирішується в поліноміальне час. Тож ми насправді знаємо, що "квантові обчислення були б корисні для факторизації чисел"?
Окрім труднощів у реалізації квантових комп'ютерів, я думаю, що тут розумною відповіддю є «так»; не тому, що ми знаємо, що ви не можете ефективно використовувати фабрику за допомогою звичайних комп'ютерів, а тому, що ми не знаємо, як би ви це зробили за допомогою звичайних комп’ютерів. Якщо квантові комп'ютери допомагають вам зробити щось, до чого ви не маєте кращого підходу, мені здається, що це "допомога".
О ( 20,386н)
Можливо, алгоритм Гровера як такий не особливо корисний. Однак це може бути корисно, якщо ви використовуєте його для розробки більш розумних класичних стратегій поза грубої формою пошуку: використовуючи амплітудну амплітуду , природне узагальнення алгоритму Гровера до більш загальних параметрів, ми можемо покращити ефективність багатьох нетривіальних алгоритмів для SAT (див., Наприклад, [ACM SIGACT News 36 (pp.103--108), 2005 р. - посилання у форматі PDF ); підказка шапки до Мартіна Шварца, який вказав мені на це посилання у коментарях).
Як і в алгоритмі Гровера, амплітудне посилення дає лише поліномічні прискорення: але, кажучи практично, навіть полінома прискорення може бути цікавою, якщо її не вимиє накладні витрати, пов'язані із захистом квантової інформації від шуму.