Квантовый аналог NP: класс BQNP
Полные задачи.
В классе BQNP, как и в NP, есть полные задачи относительно той же самой полиномиальной сводимости, которую мы рассматривали раньше. Вот простейший пример.
Задача 0. Зададим функцию следующим образом. Пусть
— множество троек вида
![(\langle\text{описание квантовой схемы } W\rangle, p_0, p_1),](/sites/default/files/tex_cache/8966f4c41902b595b8d89fef4040e4e5.png)
![p_1-p_0=\Omega(n^{-\alpha})](/sites/default/files/tex_cache/4da90d5ce89612b8b4585ebc82616f85.png)
![\alpha>0](/sites/default/files/tex_cache/315c82a57164f0e70880d5170b94a4d4.png)
![n](/sites/default/files/tex_cache/7b8b965ad4bca0e41ab51de7b31363a1.png)
![z\in Z](/sites/default/files/tex_cache/8febb27ce6b24f3319fe119fdb6db822.png)
если существует вектор
, при действии на который мы получим в первом бите 1 с вероятностью, большей
;
если для всех
вероятность получить в первом бите 1 меньше
.
Полнота задачи 0 очевидна. Все, что требуется для построения сведения, содержится в определении 13.2. Вход войдет в описание схемы
вместе со схемой
.
Рассмотрим более интересные примеры. Для начала дадим определение квантового аналога 3-КНФ — локального гамильтониана (локальность является аналогом ограниченности числа переменных, входящих в одну дизъюнкцию).
Определение 13.3. Оператор называется k-локальным гамильтонианом, если он выражается в виде
![H=\sum_{j}^{} H_j[S_j],](/sites/default/files/tex_cache/b36059beeee11344e2fe0fced00e672e.png)
![S_j](/sites/default/files/tex_cache/04c8fd52917642ff9ec6b7e1ad2b711b.png)
![|S_j|\leq k](/sites/default/files/tex_cache/ad2a1ef1a0dcd5883a5a29d8895114d9.png)
При этом выполнено условие нормировки (другими словами, и
, и
— положительно полуопределенные).
Задача 1: локальный гамильтониан. Пусть — множество троек вида
![(\langle\text{описание k-локального гамильтониана } H\rangle, a, b),](/sites/default/files/tex_cache/aec6a043c9c1e0fa363f8ac833a34cc1.png)
![k=O(1)](/sites/default/files/tex_cache/e33b8c79c01d7b6e37408819fdaf4b6e.png)
![0\leq a<b](/sites/default/files/tex_cache/6e8734e2dbebcf04df9b111a40d928dd.png)
![b-a=\Omega(n^{-\alpha})](/sites/default/files/tex_cache/0e436e4b9fa9441fbbfa3a3861f2898d.png)
![\alpha>0](/sites/default/files/tex_cache/315c82a57164f0e70880d5170b94a4d4.png)
![z\in Z](/sites/default/files/tex_cache/8febb27ce6b24f3319fe119fdb6db822.png)
если у
есть собственное число, не большее
,
если все собственные числа
больше
.
Утверждение 13.2. Задача локальный гамильтониан принадлежит BQNP.
Доказательство. Опишем вначале основную идею. Мы построим такую схему , которая использует подсказку из пространства, в котором действует
, и выдает ответ "да" (значение 1) на подсказке
с вероятностью
, где
— число слагаемых в гамильтониане
. Если
— собственный вектор, соответствующий собственному числу
, то вероятность ответа "да" будет
![p=1-r^{-1}\langle \eta|\,H\,|\eta\rangle\geq1-r^{-1}a,](/sites/default/files/tex_cache/6f0e33654c3c9f48544c164e786b87c9.png)
![H](/sites/default/files/tex_cache/c1d9f50f86825a1a2302ec2449c17196.png)
![b](/sites/default/files/tex_cache/92eb5ffee6ae2fec3ad71c777531578f.png)
![p=1-r^{-1}\langle \eta|\,H\,|\eta\rangle\leq1-r^{-1}b.](/sites/default/files/tex_cache/e51457db4600e5043e6fc03748280c11.png)
Сперва построим такую схему для одного слагаемого. Пусть это будет , действующий на множестве q-битов
. Поскольку размерность пространства, на котором действует
, ограничена константой, мы можем реализовать оператор
![W_j\colon \ket{\psi_s,0}\mapsto \ket{\psi_s}\otimes \left(\sqrt{\lambda_s}\ket0 +\sqrt{1-\lambda_s}\ket1\right),](/sites/default/files/tex_cache/cddea72d77c3ea2afa136d78fbf62d48.png)
![S_j\cup\{ \langle\text{ответ}\rangle\}](/sites/default/files/tex_cache/62bdfeb846fa680131acee6fad13134f.png)
![\langle\text{ответ}\rangle](/sites/default/files/tex_cache/cfc26d16a271822abc94fbf6c96896b6.png)
![W_j](/sites/default/files/tex_cache/2c0e21746edf2873e85ac93c14f34edb.png)
Вычислим вероятность 1 в бите результата после применения к состоянию
(бит результата установлен в 0 перед началом работы схемы). Пусть
— разложение
по ортогональной системе собственных векторов
. Имеем, по определению вероятности,
![]() |
( 13.6) |
Общая схема выбирает случайно и равновероятно номер
, после чего применяет оператор
. Такое действие можно реализовать измеряющим оператором вида
, примененным к вектору
![\left(\frac{1}{\sqrt{r}}\sum_{j}^{}\ket{j}\right)\otimes \ket{\eta,0}](/sites/default/files/tex_cache/a854d9ab5667dd47880f8c0f9cd79e5b.png)
![\ket{j}](/sites/default/files/tex_cache/54c6da6d0e6f5dc390a5cd845da79a7e.png)
![r](/sites/default/files/tex_cache/4b43b0aee35624cd95b910189b3dc231.png)
![]() |
( 13.7) |