Я вже деякий час намагаюся обвести голову навколо відомого (?) Паперового квантового алгоритму для лінійних систем рівнянь (Harrow, Hassidim & Lloyd, 2009) (більш відомий як папір алгоритмів HHL09 ).
На першій сторінці вони кажуть :
Ми прорисуємо тут основну ідею нашого алгоритму, а потім детальніше обговоримо його в наступному розділі. З огляду на ермітовим матриці , а одиничний вектор , припустимо , що ми хотіли б знайти , що задовольняють . (Ми обговорюємо більш пізні питання ефективності, а також те, як можна розслабити припущення, зроблені нами щодо і .) По-перше, алгоритм представляє як квантовий стан . Далі ми використовуємо методи моделювання гамільтонів [3, 4], щоб застосувати до→ x A → x = → b A → b для суперпозиції різних часів . Ця здатність до експоненціації переводить за допомогою відомої методики фазової оцінки [5–7] у здатність розкласти в власній базі і знайти відповідні власні значення Неофіційно, стан система після цього етапу близька до , де - основа власного вектора і .А | б ⟩ λ J Σ J = N J = 1 β J | у J ⟩ | λ J ⟩ у J | б ⟩ = Σ J = N J = 1 β J | у J ⟩
Все йде нормально. Як описано в Nielsen & Chuang у розділі " Квантове перетворення Фур'є та його застосування ", алгоритм оцінки фази використовується для оцінки в e i 2 π φ, що є власним значенням, що відповідає власному вектору | у ⟩ унітарного оператора U .
Ось відповідна порція від Nielsen & Chuang:
Алгоритм оцінки фази використовує два регістри. Перший реєстр містить кубітів, спочатку в державі | 0 ⟩ . Те, як ми виберемо t, залежить від двох речей: від кількості цифр точності, яку ми бажаємо мати в нашій оцінці для φ , і з якою ймовірністю бажаємо, щоб процедура оцінки фази була успішною. Залежність t від цих величин закономірно випливає з наступного аналізу.
Другий реєстр починається у державному і містить стільки ж кубітів , як це необхідно для зберігання | у ⟩ . Фазова оцінка проводиться у два етапи. Спочатку застосуємо схему, показану на рисунку 5.2. Схема починається з застосування перетворення Адамара до першого регістра, після чого застосовується керовані операції U на другому регістрі, з U підняті до послідовних потужностей двох. Кінцевий стан першого регістра легко видно:
Другий етап оцінки фази полягає в застосуванні зворотного квантового перетворення Фур'є на перший регістр. Це отримується шляхом обертання схеми для квантового перетворення Фур'є в попередньому розділі (вправа 5.5) і може бути виконано в кроки. Третій і заключний етап оцінки фази - це зчитування стану першого регістра, шляхом вимірювання в обчислювальній основі. Ми покажемо, що це дає досить хорошу оцінку φ . Загальна схема алгоритму наведена на рисунку 5.3.
Щоб загострити нашу інтуїцію щодо того, чому працює оцінка фаз, припустимо, що може бути виражений саме цілими бітами, як φ = 0. φ 1 . . . φ t . Тоді стан (5.20), отриманий в результаті першого етапу оцінки фази, може бути переписаний
Другий етап оцінки фази полягає в застосуванні зворотного квантового перетворення Фур'є. Але порівнюючи попереднє рівняння з формою добутку для перетворення Фур'є (рівняння (5.4)), ми бачимо, що вихідним станом на другій стадії є стан продукту . Отже, вимірювання в обчислювальній основі дає нам точно φ !
Підводячи підсумок, алгоритм оцінки фаз дозволяє оцінити фазу власного значення унітарного оператора U за даним відповідним власним вектором | у ⟩ . Істотною особливістю в основі цієї процедури є здатність зворотного перетворення Фур'є здійснювати перетворення
Почнемо звідси. Я знайшов хорошу схему для алгоритму HHL09 тут [ ] :
Крок 1 (Оцінка фази):
На першому кроці алгоритму HHL09 використовується та сама концепція (стандартного алгоритму квантової оцінки фаз, як описано у Нільсена та Чуанга). Однак ми маємо пам’ятати, що сам по собі не є унітарним оператором. Однак, якщо припустити, що A є ермітієм, то експонентна e i A t є унітарною (не хвилюйтесь, існує розв'язок у випадку, якщо A не є гермітом!).
Тут ми можемо записати . Тут є ще один тонкий момент. Ми не знаємо власних векторів | у J ⟩ з U заздалегідь (але ми знаємо , що для будь-якої унітарної матриці розміру N × N існує N ортонормованих власних векторів). Крім того, нам потрібно нагадати, що якщо власними значеннями A є λ j, то власними значеннями e i A t будуть e i λ j t. Якщо порівняти це з формою власних значень, наведених у Нільсена та Чуанга для тобто якщо e 2 π i φ ≡ e i λ j t , ми знайдемо φ = λ j t . У цьому випадку ми починаємо в державі| б⟩(яка може бути записана у вигляді суперпозиції власних векторівUтобтоХ J = N J = 1 & betaJ|уJ⟩)а не якийсьабо конкретний власний вектор| уJ⟩зU, наскільки другий регістр кубітів стурбований. Якби ми почали в державі| у⟩⊗(|0⟩)⊗тми б закінчили з т | у J ⟩ ⊗ | ~ λ j t(враховуючищоλJє власним значеннямпов'язаний з власним вектором|UJ⟩зA). Тепер, замість цього, якщо ми почнемо з суперпозиції власних векторів∑j=Nj=1βj| уJ⟩ми повинні закінчити зЕJ=NJ=1βJ| уJ⟩⊗| ~λjt.
Питання:
Частина 1 : У статті HHL09 вони писали про стан системи після цього етапу оцінки фази: . Однак із написаного вище мені здається, що стан системи повинен бути скоріше rather j = N j = 1 β j | у J ⟩ ⊗ | ~ λ j t.
Що я тут пропускаю? Звідки взявся фактор зникають у їхньому алгоритмі?
Edit: Частина 2 було запропоновано тут , щоб зробити окремі питання більш зосередженим.
У мене також є декілька плутанин щодо кроку 2 та кроку 3 алгоритму HHL09, але я вирішив розмістити їх як окремі потокові питання, оскільки ця стає занадто довгою. Я додаю посилання на ці теми запитів, після цього повідомлення, коли вони будуть створені.
[ ]: Експерименти з гомоморфного шифрування на хмарній квантовій обчислювальній платформі IBM Huang та ін. (2016 р.)