Учи Кванты!Курс → Алгоритм Саймона

Саймон: скрытая строка

После Дойча и Бернштейна–Вазирани — задача Саймона: функция склеивает входы парами по секретной строке, и квантовая схема вытаскивает эту строку из интерференции.

Функция-близнец

Сначала сама задача, без схемы. И чем она отличается от предыдущих уроков.

Дойч за один запрос узнавал один факт о чёрном ящике: постоянный он или сбалансированный. Бернштейн–Вазирани за один запрос вытаскивал целую секретную строку s, но его чёрный ящик на каждый вход отвечал всего одним битом (0 или 1).

Саймон снова ищет секретную строку s — в нашем примере s = 110. Но чёрный ящик устроен по-другому, и алгоритм тоже другой: за один прогон вы получаете не весь секрет, а одно уравнение на него. Полную строку s собирают из нескольких прогонов.

Что делает чёрный ящик

Вы подаёте на вход строку из трёх бит (например, 000 или 101). Чёрный ящик отвечает строкой из двух бит, не одним, как у Бернштейна–Вазирани.

Разных входов восемь, а разных ответов только четыре. Значит, разные входы обязаны иногда давать один и тот же ответ, иначе все восемь не уместились бы в четыре значения.

Правило устроено так. Внутри спрятана строка s. Если к любому входу x «прибавить» s побитово без переноса (XOR, символ ⊕), получится второй вход x⊕s, и у этой пары всегда один и тот же ответ.

Проще на примере при s = 110: - вход 000 и вход 110 — пара; - вход 001 и вход 111 — пара; - вход 010 и вход 100 — пара; - вход 011 и вход 101 — пара.

У каждой пары свой общий ответ из двух бит. Чёрный ящик не говорит, угадали вы s или нет: он просто по правилу отвечает на конкретный вход.

Задача: узнать s, не заглядывая внутрь. Классически пришлось бы подавать входы наугад и ждать, пока два разных входа случайно дадут одинаковый ответ. Таких попыток нужно очень много: число растёт по экспоненте.

Алгоритм Саймона — квантовый способ обойти этот перебор. Скелет схемы тот же, что у Дойча: суперпозиция всех входов, один запрос к чёрному ящику, гейты Адамара, измерение. Но на выходе не сам секрет, а строка-уравнение, которое сужает варианты для s. Как именно — в следующем уроке; сейчас разберём, как чёрный ящик связывает входы в пары на схеме.

Это платный урок курса. Дальше — интерактив: виджеты, схемы и контрольные вопросы. Продолжение — в полном курсе «Учи Кванты!»: открыть полный курс.

Состояние

Измерение

Нажмите «Выполнить» — появится гистограмма исходов.

Сфера Блоха