Задача прихованої підгрупи

Матеріал з testwiki
Версія від 17:14, 15 березня 2025, створена imported>A.sav (clean up, replaced: до до → до за допомогою AWB)
(різн.) ← Попередня версія | Поточна версія (різн.) | Новіша версія → (різн.)
Перейти до навігації Перейти до пошуку

Задача прихованої підгрупи (з англійської Hidden subgroup problem - HSP) є підходом до розв'язку задач в математиці та теоретичній інформатиці. В рамках підходу можна розглядати задачі факторизації, пошуку дискретного логарифму, Шаблон:Нп, та пошуку найкоротшого вектора. Це робить задачу дуже важливою в теорії квантових обчислень, оскільки факторизація за алгоритмом Шора в квантових обчисленнях є прикладом задачі про приховану підгрупу для скінченної абелевої групи, тоді як інші задачі відповідають неабелевим скінченним групам.

Постановка задачі

Нехай група G має підгрупу HG. Також нехай маємо певну функцію f:GX, що відображає елементи групи G в елементи деякої множини X. Говориться, що функція f приховує підгрупу H, якщо для всіх g1,g2G,f(g1)=f(g2) тоді і тільки тоді, коли g1H=g2H. Іншими словами, f є константою на кожному класі суміжності, і водночас є різною для різних класів суміжності підгрупи H.

Задача прихованої підгрупи. Нехай G є групою, X - скінченною множиною, а функція f:GX приховує підгрупу HG. Функція f задається оракулом, який використовує O(log|G|+log|X|) бітів. Задача полягає в тому, щоб, використовуючи інформацію, отриману з обчислень f через оракул, визначити множину генераторів для підгрупи H.

Є також особливий випадок, коли множина X також є групою (функція f є груповим гомоморфізмом), а підгрупа H є ядром функції f.

Мотивація

Задача прихованої підгрупи є особливо важливою в теорії квантових комп'ютерів з нижче перерахованих причин.

Алгоритми

Існує ефективний квантовий алгоритм для розв`язку HSP для скінченних абелевих груп за час поліноміальний від log|G|. Для довільної групи відомо, що задача прихованої підгрупи розв’язується з задіянням поліноміального числа обчислень оракула[3]. Однак складність схеми, яка реалізує цей алгоритм, може бути експоненційною за log|G|, що робить алгоритм неефективним в цілому, адже ефективний алгоритм мусить бути поліноміальним як за кількістю обчислень оракула, так і за часом виконання. Існування такого алгоритму для довільних груп є відкритим питанням. Квантові алгоритми, поліноміальні в часі, існують для певних підкласів груп, таких як напівпрямі добутки деяких абелевих груп.

Алгоритм для абелевих груп

Алгоритм для абелевих груп використовує представлення, тобто гомоморфізми з G на GLk(), які є загальними лінійними групами над кільцем комплексних чисел. Представлення групи G є Шаблон:Нп, якщо воно не може бути виражене як прямий добуток двох або більше представлень G. Для абелевої групи всі незвідні представлення є характерами, які є представленнями порядку 1; іншими словами, для абелевих груп не існує незвідних представлень вищих порядків.

Означення квантового перетворення Фур'є

Шаблон:Нп може бути означене в термінах ZN, адитивної циклічої групи порядку N. Введемо характерχj(k)=ωNjk=e2πijkN, тоді квантове перетворення Фур'є має визначення FN|j=1Nk=0Nχj(k)|k. Далі визначаємо стани |χj=FN|j. Будь-яка абелева група може бути записана як прямий добуток кількох циклічних груп ZN1×ZN2××ZNm. На квантовому комп’ютері це можна представити як тензорний добуток кількох регістрів розмірів N1,N2,,Nm відповідно, а квантове перетворення Фур'є загалом можна представити як FN1FN2FNm.

Процедура

Множина характерів групи G в свою чергу також формують групу G^, що називається дуальною групою до G. Також ми маємо підгрупу HG^ розміру |G|/|H| , що визначається як H={χg:χg(h)=1 for all hH} На кожній ітерації алгоритму квантова схема видає елемент gG, що відповідає характеру χgH, і оскільки χg(h)=1 для всіх hH, це допомагає визначити, якою є H.

Алгоритм наступний:

  1. Почати з стану |0|0, де базові стани лівого реєстру є елементами G, а базові стани правого реєстру є елементами X.
  2. Створити суперпозицію базових станів G в лівому реєстрі, що відповідає повному станові 1|G|gG|g|0.
  3. Задіяти функцію f. Після цього загальний стан буде 1|G|gG|g|f(g).
  4. Зробити вимір на правому реєстрі, результатом якого буде f(s) для деякого sG, а стан колапсує до 1|H|hH|s+h|f(s) , оскільки f має однакове значення для всіх елементів з класу суміжності s+H. Надалі, відкидаючи правий реєстр, маємо стан 1|H|hH|s+h.
  5. Застосовуючи квантове перетворення Фур`є, отримуємо стан 1|H|hH|χs+h.
  6. Цей стан є рівний (деталі нижче) станові |H||G|χgHχg(s)|g, який в свою чергу може бути виміряний для того, щоб отримати інформацію про H.
  7. Повторюємо, допоки не визначимо H (або множини генераторів H).

Стани в кроках 5 і 6 є рівними, оскільки: 1|H|hH|χs+h=1|H||G|hHgGχs+h(g)|g=1|H||G|gGχs(g)hHχh(g)|g=1|H||G|gGχg(s)(hHχg(h))|g=|H||G|χgHχg(s)|g Для встановлення останньої рівності ми використовуємо тотожнсть: hHχg(h)={|H|χgH0χgH яка може бути виведена з ортогональності характерів. Характери групи G формують ортогональний базис: 1|H|hHχg(h)χg(h)={1g=g0gg Ми вважаємо χg тривіальними представленнями, які відображають всі елементи в 1, щоб отримати наступну рівність:hHχg(h)={|H|g is trivial0g is not trivialТак як сумування здійснюється по H, тривіальність χg має значення тільки тоді, коли χg також тривіальна по H; тобто, якщо χgH. Таким чином, ми знаємо, що в результаті сумування ми отримаємо |H|, якщо χgH, і отримаємо 0 , якщо χgH.

Кожне вимірювання остаточного стану дасть додаткову інформацію про H, так як ми знаємо, що χg(h)=1 для всіх hH. H, або множина генераторів для H, буде знайдено після поліноміальної кількості вимірювань. Розмір множини генераторів буде логарифмічно малим, у порівнянні з розміром G. Позначимо через T множину генераторів для H, тобто, T=H. Розмір підгрупи, згенерованої T, подвоюватиметься, коли до неї додаватиметься новий елемент tT, тому що H і t+H є неперетинними і H,t+H{t}T. Таким чином, розмір множини генераторів |T| задовольняє наступне співвідношення|T|log|H|log|G|Отже, множину генераторів для H можна отримати у поліноміальний час, навіть якщо G є експоненційним у розмірі.

Приклади

Багато алгоритмів, для яких можна отримати квантове пришвидшення, є прикладами задачі прихованої підгрупи. У таблиці внизу подано важливі прикладі задачі прихованої підгрупи, та зазначено їхню розв'язність.

Задача Квантовий алгоритм Абелева? Поліноміальний час розв'язання?
Задача Дойча Алгоритм Дойча; алгоритм Дойча — Йожи Так Так
Шаблон:Нп Алгоритм Саймона Так Так
Знаходження порядку Алгоритм знаходження порядку Шора Так Так
Дискретне логарифмування Шаблон:Section link Так Так
Знаходження періоду Алгоритм Шора Так Так
Абелів стабілізатор Алгоритм Китаєва[4] Так Так
Ізоморфізм графів Немає Ні Ні
Задача про найкоротший вектор Немає Ні Ні

Див. також

Примітки

Джерела

Шаблон:Квантовий комп'ютер