Алгоритм Шора
Алгоритм Шора — это квантовый алгоритм нахождения простых множителей целого числа. Он был разработан в 1994 году американским математиком Питером Шором . [ 1 ] [ 2 ] Это один из немногих известных квантовых алгоритмов с убедительными потенциальными приложениями и убедительными доказательствами суперполиномиального ускорения по сравнению с наиболее известными классическими (неквантовыми) алгоритмами. [ 3 ] С другой стороны, для факторизации чисел, имеющих практическое значение, требуется гораздо больше кубитов , чем доступно в ближайшем будущем. [ 4 ] Другая проблема заключается в том, что шум в квантовых схемах может подорвать результаты. [ 5 ] требующие дополнительных кубитов для квантовой коррекции ошибок .
Шор предложил несколько подобных алгоритмов для решения задачи факторизации , задачи дискретного логарифма и задачи нахождения периода. «Алгоритм Шора» обычно относится к алгоритму факторинга, но может относиться к любому из трех алгоритмов. Алгоритм дискретного логарифма и алгоритм факторизации являются экземплярами алгоритма поиска периода, и все три являются экземплярами проблемы скрытой подгруппы .
На квантовом компьютере, чтобы факторизовать целое число Алгоритм Шора работает за полиномиальное время , то есть затраченное время полиномиально , где — размер целого числа, заданного в качестве входных данных. [ 6 ] В частности, требуются квантовые вентили порядка используя быстрое умножение, [ 7 ] или даже используя асимптотически самый быстрый алгоритм умножения, известный в настоящее время благодаря Харви и Ван Дер Ховену, [ 8 ] тем самым демонстрируя, что задача целочисленной факторизации может быть эффективно решена на квантовом компьютере и, следовательно, относится к классу сложности BQP . Это значительно быстрее, чем самый эффективный известный классический алгоритм факторизации, решето общего числового поля , которое работает за субэкспоненциальное время : . [ 9 ]
Осуществимость и влияние
[ редактировать ]Если бы квантовый компьютер с достаточным количеством кубитов мог работать, не поддаваясь квантовому шуму и другим явлениям квантовой декогеренции , то алгоритм Шора можно было бы использовать для взлома схем криптографии с открытым ключом , таких как
- Схема RSA
- с конечным полем Диффи-Хеллмана Обмен ключами
- Обмен ключами Диффи-Хеллмана на эллиптической кривой [ 10 ]
RSA основан на предположении, что факторизация больших целых чисел вычислительно сложна. Насколько известно, это предположение справедливо для классических (неквантовых) компьютеров; неизвестен ни один классический алгоритм, который мог бы факторизовать целые числа за полиномиальное время. Однако алгоритм Шора показывает, что факторизация целых чисел эффективна на идеальном квантовом компьютере, поэтому может оказаться возможным победить RSA, построив большой квантовый компьютер. Это также послужило мощным стимулом для проектирования и создания квантовых компьютеров, а также для изучения новых алгоритмов квантовых компьютеров. Это также способствовало исследованиям новых криптосистем, защищенных от квантовых компьютеров, которые в совокупности называются постквантовой криптографией .
Физическая реализация
[ редактировать ]Учитывая высокий уровень ошибок современных квантовых компьютеров и слишком малое количество кубитов для использования квантовой коррекции ошибок , лабораторные демонстрации дают правильные результаты лишь за небольшую часть попыток.
В 2001 году алгоритм Шора был продемонстрирован группой из IBM , которая учла в , используя ЯМР-реализацию квантового компьютера с семью кубитами. [ 11 ] После внедрения IBM две независимые группы реализовали алгоритм Шора с использованием фотонных многокубитная запутанность . кубитов, подчеркнув, что при запуске схем алгоритма Шора наблюдалась [ 12 ] [ 13 ] В 2012 году факторизация было выполнено с использованием твердотельных кубитов. [ 14 ] Позже, в 2012 году, факторизация было достигнуто. [ 15 ] В 2016 году факторизация был выполнен снова с использованием кубитов с захваченными ионами с использованием метода рециркуляции. [ 16 ] В 2019 году была предпринята попытка факторизовать количество используя алгоритм Шора на IBM Q System One , но алгоритм не удался из-за накопления ошибок. [ 17 ] Однако во всех этих демонстрациях алгоритм компилировался с использованием предварительного знания ответа, а некоторые даже упрощали алгоритм до такой степени, что он был эквивалентен подбрасыванию монеты. [ 18 ] Кроме того, были предприняты попытки использовать квантовые компьютеры с другими алгоритмами. [ 19 ] Однако эти алгоритмы подобны классической проверке факторов методом перебора, поэтому, в отличие от алгоритма Шора, от них не ожидается, что они когда-либо будут работать лучше, чем классические алгоритмы факторинга. [ 20 ]
Теоретический анализ алгоритма Шора предполагает, что квантовый компьютер свободен от шума и ошибок. Однако в ближайшем будущем практическим реализациям придется иметь дело с такими нежелательными явлениями (когда будет доступно больше кубитов, квантовая коррекция ошибок может помочь). В 2023 году Джин-И Цай показал, что при наличии шума алгоритм Шора асимптотически почти наверняка дает сбой для больших полупростых чисел, которые являются произведениями двух простых чисел в OEIS последовательности A073024 . [ 5 ] Эти простые числа иметь собственность, которая имеет простой делитель больше, чем , и имеют положительную плотность во множестве всех простых чисел. Следовательно, чтобы иметь возможность факторизовать все числа с помощью алгоритма Шора, потребуется коррекция ошибок.
Алгоритм
[ редактировать ]Проблема, которую мы пытаемся решить: учитывая нечетное составное число , найдите его целые коэффициенты .
Для этого алгоритм Шора состоит из двух частей:
- Классическое сведение задачи факторинга к задаче нахождения порядка . Это сокращение аналогично тому, которое используется для других алгоритмов факторизации , таких как квадратичное сито .
- Квантовый алгоритм для решения задачи нахождения порядка.
Классическая редукция
[ редактировать ]Полный алгоритм факторизации возможен, если мы сможем эффективно факторизовать произвольные всего на два целых числа и больше 1, так как если либо или не являются простыми, то алгоритм факторинга, в свою очередь, может быть запущен на них до тех пор, пока не останутся только простые числа.
Основное наблюдение заключается в том, что, используя алгоритм Евклида , мы всегда можем эффективно вычислить НОД между двумя целыми числами. В частности, это означает, что мы можем эффективно проверить, четно, и в этом случае 2 тривиально является фактором. Предположим, таким образом, что странно для оставшейся части этой дискуссии. После этого мы можем использовать эффективные классические алгоритмы, чтобы проверить, это высшая сила . [ 21 ] Для степеней простых чисел существуют эффективные классические алгоритмы факторизации: [ 22 ] следовательно, остальная часть квантового алгоритма может предполагать, что не является основной силой.
Если эти простые случаи не приводят к нетривиальному множителю , алгоритм переходит к обработке оставшегося случая. Мы выбираем случайное целое число . Возможный нетривиальный делитель можно найти, вычислив , что можно сделать классически и эффективно с помощью алгоритма Евклида . Если это дает нетривиальный фактор (т.е. ), алгоритм закончен, и есть еще один нетривиальный фактор: . Если нетривиальный фактор не был выявлен, то это означает, что и выбор взаимнопросты поэтому , содержится в мультипликативной группе целых чисел по модулю , имеющий мультипликативный обратный модуль . Таким образом, имеет мультипликативный порядок модуль , значение
и — наименьшее положительное целое число, удовлетворяющее этому сравнению.
Квантовая подпрограмма находит . Из сравнения видно, что делит , написано . Это можно факторизовать, используя разность квадратов : Поскольку мы факторизовали выражение таким образом, алгоритм не работает для нечетных чисел. (потому что должно быть целым числом), что означает, что алгоритм придется перезапустить с новым . Поэтому в дальнейшем мы можем предположить четный. Не может быть так, чтобы , поскольку это означало бы , что противоречиво означало бы, что был бы порядок , что уже было . На данный момент это может быть так, а может и не быть . Если это не правда, что , то это означает, что мы можем найти нетривиальный множитель . Мы вычисляем Если , то это означает было правдой, и нетривиальный фактор не может быть достигнуто из , и алгоритм должен перезапуститься с новым . В противном случае мы нашли нетривиальный множитель , а другое существо , и алгоритм закончен. Для этого шага это также эквивалентно вычислению ; это даст нетривиальный фактор, если нетривиален и не будет таковым, если он тривиален (где ).
Вскоре алгоритм будет сформулирован следующим образом: пусть быть нечетной, а не простой степенью. Мы хотим вывести два нетривиальных фактора .
- Выберите случайное число .
- Вычислить , наибольший общий делитель и .
- Если , затем является нетривиальным фактором , а другим фактором является и мы закончили.
- В противном случае используйте квантовую подпрограмму, чтобы найти порядок из .
- Если нечетно, то вернитесь к шагу 1.
- Вычислить . Если нетривиален, другой фактор , и мы закончили. В противном случае вернитесь к шагу 1.
Было показано, что это, скорее всего, удастся после нескольких запусков. [ 2 ] На практике одного вызова подпрограммы поиска квантового порядка достаточно, чтобы полностью факторизовать с очень высокой вероятностью успеха, если использовать более продвинутую редукцию. [ 23 ]
Подпрограмма квантового поиска порядка
[ редактировать ]Цель квантовой подпрограммы алгоритма Шора состоит в том, чтобы для заданных взаимно простых целых чисел и , чтобы найти заказ из модуль , которое является наименьшим положительным целым числом таким, что . Чтобы добиться этого, алгоритм Шора использует квантовую схему, включающую два регистра. Второй регистр использует кубиты, где — наименьшее целое число такое, что , то есть, . Размер первого регистра определяет, насколько точное приближение производит схема. Можно показать, что использование кубиты дают достаточную точность, чтобы найти . Точная квантовая схема зависит от параметров и , которые определяют проблему. В следующем описании алгоритма используется обозначение Бракета , а для обозначения квантовых состояний для обозначения тензорного произведения , а не логического И.
Алгоритм состоит из двух основных шагов:
- Используйте оценку квантовой фазы с унитарным представляет собой операцию умножения на (модуль ) и состояние ввода (где находится второй регистр сделанный из кубиты). Собственные значения этого кодировать информацию о периоде и можно рассматривать как записываемую как сумму собственных векторов. Благодаря этим свойствам этап оценки квантовой фазы выдает на выходе случайное целое число вида для случайного .
- Используйте алгоритм цепных дробей, чтобы извлечь период по результатам измерений, полученных на предыдущем этапе. Это процедура постобработки (с помощью классического компьютера) данных измерений, полученных в результате измерения выходных квантовых состояний, и извлечения периода.
Связь с квантовой оценкой фазы не обсуждалась в исходной формулировке алгоритма Шора, [ 2 ] но позже был предложен Китаевым. [ 24 ]
Оценка квантовой фазы
[ редактировать ]
В общем , алгоритм оценки квантовой фазы для любой унитарной и собственное состояние такой, что , отправляет состояния ввода для вывода состояний, близких к , где целое число, близкое к . Другими словами, он отправляет каждое собственное состояние из в состояние, близкое к соответствующему собственному значению. Для целей нахождения квантового порядка мы используем эту стратегию, используя унитарную единицу, определяемую действием Действие о штатах с не имеет решающего значения для функционирования алгоритма, но его необходимо включить, чтобы гарантировать, что общее преобразование представляет собой четко определенный квантовый вентиль. Реализация схемы оценки квантовой фазы с помощью требует умения эффективно реализовывать ворота . Этого можно добиться с помощью модульного возведения в степень , которое является самой медленной частью алгоритма. Определенные таким образом ворота удовлетворяют , откуда сразу следует, что его собственные значения суть -ые корни единства . При этом каждое собственное значение имеет собственный вектор вида , и эти собственные векторы таковы, что
где последнее тождество следует из формулы геометрической прогрессии , откуда следует .
Использование квантовой оценки фазы входного состояния затем вернет целое число с высокой вероятностью. Точнее, схема оценки квантовой фазы отправляет к такое, что результирующее распределение вероятностей достигает максимума вокруг , с . Эту вероятность можно сделать сколь угодно близкой к 1, используя дополнительные кубиты.
Применение приведенных выше рассуждений к входным данным Таким образом, оценка квантовой фазы приводит к эволюции Измерив первый регистр, мы теперь имеем сбалансированную вероятность найти каждого , каждый из которых дает целочисленное приближение к , который можно разделить на чтобы получить десятичное приближение для .
Алгоритм непрерывной дроби для получения периода
[ редактировать ]Затем мы применяем алгоритм цепных дробей для нахождения целых чисел. и , где дает наилучшее приближение дроби для приближения, измеренного по схеме, для и взаимно простые и . Количество кубитов в первом регистре, , определяющий точность аппроксимации, гарантирует, что с учетом наилучшего приближения из суперпозиции был измерен [ 2 ] (что можно сделать сколь угодно вероятным, используя дополнительные биты и усекая вывод). Однако в то время как и взаимнопросты, то может быть так, что и не являются взаимнопростыми. Из-за этого, и возможно, утратили некоторые факторы, которые были в и . Это можно исправить, перезапустив процедуру поиска квантового порядка произвольное количество раз, чтобы получить список аппроксимаций дробей. где — количество запусков подпрограммы. Каждый из него будут исключены разные коэффициенты, поскольку схема (вероятно) измерит несколько различных возможных значений . Чтобы восстановить фактическое значение, мы можем взять наименьшее общее кратное каждого : Наименьшим общим кратным будет порядок исходного целого числа с высокой вероятностью. На практике одного запуска подпрограммы поиска квантового порядка обычно бывает достаточно, если используется более совершенная постобработка. [ 25 ]
Выбор размера первого регистра
[ редактировать ]Оценка фазы требует выбора размера первого регистра для определения точности алгоритма, а для квантовой подпрограммы алгоритма Шора кубитов достаточно, чтобы гарантировать, что оптимальная битовая строка, измеренная на основе оценки фазы (то есть где является наиболее точной аппроксимацией фазы на основе оценки фазы) позволит получить фактическое значение быть восстановлены.
Каждый перед измерением в алгоритме Шора представляет собой суперпозицию целых чисел, приближающих . Позволять представляют наиболее оптимальное целое число в . Следующая теорема гарантирует, что алгоритм цепных дробей восстановит от :
Теорема — Если и являются битовые целые числа и тогда алгоритм цепных дробей запускается восстановит оба и .
[ 3 ] Как — оптимальная битовая строка, полученная из оценки фазы, является точным для к биты. Таким образом, что означает, что алгоритм цепных дробей восстановит и (или выкинув их наибольший общий делитель).
Узкое место
[ редактировать ]Узким местом времени выполнения алгоритма Шора является квантовое модульное возведение в степень , которое намного медленнее, чем квантовое преобразование Фурье и классическая пред-/пост-обработка. Существует несколько подходов к построению и оптимизации схем модульного возведения в степень. Самый простой и (на данный момент) наиболее практичный подход — имитировать обычные арифметические схемы с обратимыми вентилями , начиная с сумматоров с пульсирующим переносом . Знание базы и модуля возведения в степень облегчает дальнейшую оптимизацию. [ 26 ] [ 27 ] Реверсивные схемы обычно используют порядка ворота для кубиты. Альтернативные методы асимптотически улучшают количество вентилей за счет использования квантовых преобразований Фурье , но не могут конкурировать с кубитами менее 600 из-за высоких констант.
Нахождение периода и дискретные логарифмы
[ редактировать ]Алгоритмы Шора для дискретного логарифма и задач нахождения порядка являются примерами алгоритма, решающего задачу нахождения периода. [ нужна ссылка ] . Все три являются примерами проблемы скрытой подгруппы .
Алгоритм Шора для дискретных логарифмов
[ редактировать ]Учитывая группу с заказом и генератор , предположим, мы это знаем , для некоторых , и мы хотим вычислить , что является дискретным логарифмом : . Рассмотрим абелеву группу , где каждый фактор соответствует модульному сложению значений. Теперь рассмотрим функцию
Это дает нам абелеву задачу о скрытой подгруппе , где соответствует групповому гомоморфизму . Ядро соответствует кратным . Итак, если мы сможем найти ядро, мы сможем найти . Квантовый алгоритм решения этой проблемы существует. Этот алгоритм, как и алгоритм поиска коэффициентов, принадлежит Питеру Шору, и оба они реализованы путем создания суперпозиции с использованием вентилей Адамара с последующей реализацией как квантовое преобразование, за которым, наконец, следует квантовое преобразование Фурье. [ 3 ] В связи с этим квантовый алгоритм вычисления дискретного логарифма также иногда называют «алгоритмом Шора».
Проблему поиска порядка можно также рассматривать как проблему скрытой подгруппы. [ 3 ] Чтобы убедиться в этом, рассмотрим сложенную группу целых чисел и для заданного такой, что: , функция
Для любой конечной абелевой группы , существует квантовый алгоритм для решения скрытой подгруппы для за полиномиальное время. [ 3 ]
См. также
[ редактировать ]- GEECM , алгоритм факторизации, который, как говорят, «часто намного быстрее, чем алгоритм Шора». [ 28 ]
- Алгоритм Гровера
Ссылки
[ редактировать ]- ^ Шор, П.В. (1994). «Алгоритмы квантовых вычислений: дискретные логарифмы и факторинг». Материалы 35-го ежегодного симпозиума по основам информатики . стр. 124–134. дои : 10.1109/sfcs.1994.365700 . ISBN 978-0-8186-6580-6 .
- ^ Jump up to: а б с д Шор, Питер В. (октябрь 1997 г.). «Алгоритмы полиномиального времени для простой факторизации и дискретных логарифмов на квантовом компьютере». SIAM Journal по вычислительной технике . 26 (5): 1484–1509. arXiv : Quant-ph/9508027 . дои : 10.1137/S0097539795293172 . S2CID 2337707 .
- ^ Jump up to: а б с д и Нильсен, Майкл А.; Чуанг, Исаак Л. (9 декабря 2010 г.). Квантовые вычисления и квантовая информация (PDF) (7-е изд.). Издательство Кембриджского университета. ISBN 978-1-107-00217-3 . Архивировано (PDF) из оригинала 11 июля 2019 г. Проверено 24 апреля 2022 г.
- ^ Гидни, Крейг; Экеро, Мартин (2021). «Как разложить 2048-битные целые числа RSA за 8 часов, используя 20 миллионов шумных кубитов». Квантовый . 5 : 433. arXiv : 1905.09749 . Бибкод : 2021Количество...5..433G . doi : 10.22331/q-2021-04-15-433 . S2CID 162183806 .
- ^ Jump up to: а б Цай, Джин-И (2024). «Алгоритм Шора не учитывает большие целые числа при наличии шума». Наука Китай Информационные науки . 67 (7). arXiv : 2306.10072 . дои : 10.1007/s11432-023-3961-3 .
- ^ См. также псевдополиномиальное время .
- ^ Бекман, Дэвид; Чари, Амалавоял Н.; Девабхактуни, Шрикришна; Прескилл, Джон (август 1996 г.). «Эффективные сети для квантового факторинга». Физический обзор А. 54 (2): 1034–1063. arXiv : Quant-ph/9602016 . Бибкод : 1996PhRvA..54.1034B . дои : 10.1103/physreva.54.1034 . ПМИД 9913575 .
- ^ Харви, Дэвид; ван дер Хувен, Йорис (март 2021 г.). «Умножение целых чисел за время O (n log n)» (PDF) . Анналы математики . 193 (2). дои : 10.4007/анналы.2021.193.2.4 .
- ^ «Сито числового поля» . www.wolfram.com . Проверено 23 октября 2015 г.
- ^ Реттелер, Мартин; Наэриг, Майкл; Своре, Криста М .; Лаутер, Кристин Э. (2017). «Оценки квантовых ресурсов для вычисления дискретных логарифмов на эллиптических кривых». В Такаги, Цуёси; Пейрин, Томас (ред.). Достижения в криптологии – ASIACRYPT 2017 – 23-я Международная конференция по теории и применениям криптологии и информационной безопасности, Гонконг, Китай, 3–7 декабря 2017 г., Материалы, Часть II . Конспекты лекций по информатике. Том. 10625. Спрингер. стр. 241–270. arXiv : 1706.06752 . дои : 10.1007/978-3-319-70697-9_9 . ISBN 978-3-319-70696-2 .
- ^ Вандерсипен, Ливен МК; Штеффен, Матиас; Брейта, Грегори; Яннони, Константино С.; Шервуд, Марк Х.; Чуанг, Исаак Л. (декабрь 2001 г.). «Экспериментальная реализация алгоритма квантового факторинга Шора с использованием ядерного магнитного резонанса». Природа . 414 (6866): 883–887. arXiv : Quant-ph/0112176 . Бибкод : 2001Natur.414..883V . дои : 10.1038/414883a . ПМИД 11780055 .
- ^ Лу, Чао-Ян; Браун, Дэниел Э.; Ян, Тао; Пан, Цзянь-Вэй (19 декабря 2007 г.). «Демонстрация скомпилированной версии алгоритма квантового факторинга Шора с использованием фотонных кубитов». Письма о физических отзывах . 99 (25): 250504. arXiv : 0705.1684 . Бибкод : 2007PhRvL..99y0504L . doi : 10.1103/PhysRevLett.99.250504 . ПМИД 18233508 .
- ^ Ланьон, BP; Вейнхольд, Ти Джей; Лэнгфорд, Северная Каролина; Барбьери, М.; Джеймс, DFV; Гилкрист, А.; Уайт, AG (19 декабря 2007 г.). «Экспериментальная демонстрация скомпилированной версии алгоритма Шора с квантовой запутанностью». Письма о физических отзывах . 99 (25): 250505. arXiv : 0705.1398 . Бибкод : 2007PhRvL..99y0505L . doi : 10.1103/PhysRevLett.99.250505 . ПМИД 18233509 .
- ^ Лусеро, Эрик; Барендс, Рами; Чен, Ю; Келли, Джулиан; Мариантони, Маттео; Мегрант, Энтони; О'Мэлли, Питер; Санк, Дэниел; Вайнсенчер, Амит; Веннер, Джеймс; Уайт, Тед; Инь, И; Клеланд, Эндрю Н.; Мартинис, Джон М. (2012). «Вычисление простых множителей с помощью квантового процессора фазового кубита Джозефсона». Физика природы . 8 (10): 719. arXiv : 1202.5707 . Бибкод : 2012NatPh...8..719L . дои : 10.1038/nphys2385 . S2CID 44055700 .
- ^ Мартин-Лопес, Энрике; Мартин-Лопес, Энрике; Лэнг, Энтони; Лоусон, Томас; Альварес, Роберто; Чжоу, Сяо-Ци; О'Брайен, Джереми Л. (12 октября 2012 г.). «Экспериментальная реализация алгоритма квантового факторинга Шора с использованием переработки кубитов». Природная фотоника . 6 (11): 773–776. arXiv : 1111.4147 . Бибкод : 2012NaPho...6..773M . дои : 10.1038/nphoton.2012.259 . S2CID 46546101 .
- ^ Монц, Томас; Нигг, Дэниел; Мартинес, Эстебан А.; Брандл, Матиас Ф.; Шиндлер, Филипп; Райнс, Ричард; Ван, Шеннон X.; Чуанг, Исаак Л.; Блатт, Райнер (4 марта 2016 г.). «Реализация масштабируемого алгоритма Шора». Наука . 351 (6277): 1068–1070. arXiv : 1507.08852 . Бибкод : 2016Sci...351.1068M . дои : 10.1126/science.aad9480 . ПМИД 26941315 . S2CID 17426142 .
- ^ Амико, Мирко; Салим, Зейн Х.; Кумф, Мьюир (8 июля 2019 г.). «Экспериментальное исследование алгоритма факторинга Шора с использованием IBM Q Experience». Физический обзор А. 100 (1): 012305. arXiv : 1903.00768 . Бибкод : 2019PhRvA.100a2305A . дои : 10.1103/PhysRevA.100.012305 . S2CID 92987546 .
- ^ Смолин, Джон А.; Смит, Грэм; Варго, Александр (июль 2013 г.). «Чрезмерное упрощение квантового факторинга». Природа . 499 (7457): 163–165. arXiv : 1301.7007 . Бибкод : 2013Natur.499..163S . дои : 10.1038/nature12290 . ПМИД 23846653 .
- ^ Карамлу, Амир Х.; Саймон, Уильям А.; Катабарва, Амара; Схолтен, Трэвис Л.; Перопадре, Борха; Цао, Юдун (28 октября 2021 г.). «Анализ производительности вариационного квантового факторинга на сверхпроводящем квантовом процессоре». npj Квантовая информация . 7 (1): 156. arXiv : 2012.07825 . Бибкод : 2021npjQI...7..156K . дои : 10.1038/s41534-021-00478-z .
- ^ «Мотт-и-Бейли о квантовых вычислениях» . Shtetl-Оптимизированный . 28 декабря 2019 г. Проверено 15 ноября 2021 г.
- ^ Бернштейн, Дэниел (1998). «Обнаружение совершенных степеней практически за линейное время». Математика вычислений . 67 (223): 1253–1283. дои : 10.1090/S0025-5718-98-00952-1 .
- ^ например, вычисление первого корни , например, с помощью метода Ньютона и проверки каждого целочисленного результата на простоту ( тест простоты AKS ).
- ^ Экеро, Мартин (июнь 2021 г.). «О полной эффективной факторизации любого целого числа за один запуск алгоритма поиска порядка» . Квантовая обработка информации . 20 (6): 205. arXiv : 2007.10044 . Бибкод : 2021QuIP...20..205E . дои : 10.1007/s11128-021-03069-1 .
- ^ Китаев, А. Ю (1995). «Квантовые измерения и проблема абелева стабилизатора». arXiv : Quant-ph/9511026 .
- ^ Экеро, Мартин (май 2024 г.). «О вероятности успеха нахождения квантового порядка» . Транзакции ACM в квантовых вычислениях . 5 (2): 1–40. arXiv : 2201.07791 . дои : 10.1145/3655026 .
- ^ Марков Игорь Л.; Саиди, Мехди (2012). «Квантовые схемы с постоянной оптимизацией для модульного умножения и возведения в степень». Квантовая информация и вычисления . 12 (5–6): 361–394. arXiv : 1202.6614 . Бибкод : 2012arXiv1202.6614M . дои : 10.26421/QIC12.5-6-1 . S2CID 16595181 .
- ^ Марков Игорь Л.; Саиди, Мехди (2013). «Более быстрый факторинг квантовых чисел посредством синтеза цепей». Физ. Преподобный А. 87 (1): 012310. arXiv : 1301.3210 . Бибкод : 2013PhRvA..87a2310M . дои : 10.1103/PhysRevA.87.012310 . S2CID 2246117 .
- ^ Бернштейн, Дэниел Дж.; Хенингер, Надя; Лу, Пол; Валента, Люк (2017). «Постквантовый RSA». Постквантовая криптография . Конспекты лекций по информатике. Том. 10346. стр. 311–329. дои : 10.1007/978-3-319-59879-6_18 . ISBN 978-3-319-59878-9 .
Дальнейшее чтение
[ редактировать ]- Нильсен, Майкл А.; Чуанг, Исаак Л. (2010). Квантовые вычисления и квантовая информация: издание к 10-летию . Издательство Кембриджского университета. ISBN 978-1-107-00217-3 .
- Кэй, Филипп; Лафламм, Раймонд; Моска, Мишель (2006). Введение в квантовые вычисления . дои : 10.1093/oso/9780198570004.001.0001 . ISBN 978-0-19-857000-4 .
- «Объяснение для обывателя» Скотта Ааронсона , « одобренное » Питером Шором. (Шор написал: «Отличная статья, Скотт! Это лучшая работа по объяснению квантовых вычислений обывателю, которую я когда-либо видел»). Альтернативная метафора QFT была представлена в одном из комментариев . Скотт Ааронсон предлагает для дальнейшего чтения следующие 12 ссылок (из «10 10 5000 учебные пособия по квантовым алгоритмам, которые уже есть в сети."):
- Шор, Питер В. (1997), «Алгоритмы полиномиального времени для факторизации простых чисел и дискретных логарифмов на квантовом компьютере», SIAM J. Comput. , 26 (5): 1484–1509, arXiv : quant-ph/9508027v2 , Bibcode : 1999SIAMR..41..303S , doi : 10.1137/S0036144598347011 . Пересмотренная версия оригинальной статьи Питера Шора («28 страниц, LaTeX. Это расширенная версия статьи, опубликованной в Трудах 35-го ежегодного симпозиума по основам компьютерных наук, Санта-Фе, Нью-Мексико, 20 ноября — 22, 1994. Незначительные изменения внесены в январе 1996 г.»).
- Квантовые вычисления и алгоритм Шора Мэтью Хейворда , Страница квантовых алгоритмов , 17 февраля 2005 г., imsa.edu, LaTeX2HTML-версия исходного документа LaTeX , также доступна в формате PDF или Postscript .
- Квантовые вычисления и алгоритм факторизации Шора , Рональд де Вольф, CWI и Амстердамский университет, 12 января 1999 г., 9-страничный постскриптум.
- Алгоритм факторинга Шора , Заметки из лекции 9 Беркли CS 294–2 от 4 октября 2004 г., 7-страничный постскриптум.
- Глава 6 «Квантовые вычисления». Архивировано 30 апреля 2020 г. в Wayback Machine , 91-страничный постскриптум, Калифорнийский технологический институт, Preskill, PH229.
- Квантовые вычисления: учебник Сэмюэля Л. Браунштейна .
- Квантовые состояния алгоритма Шора , Нил Янг, последнее изменение: вторник, 21 мая, 11:47:38 1996 г.
- III. Взлом шифрования RSA с помощью квантового компьютера: алгоритм факторизации Шора , конспекты лекций по квантовым вычислениям, Корнельский университет, физика 481–681, CS 483; Весна 2006 г., Н. Дэвид Мермин. Последняя редакция 28 марта 2006 г., 30-страничный PDF-документ.
- Лавор, К.; Мансур, ЛРУ; Португалия, Р. (2003). «Алгоритм Шора для факторизации больших целых чисел». arXiv : Quant-ph/0303175 .
- Ломонако-младший (2000). «Алгоритм квантового факторинга Шора». arXiv : Quant-ph/0010034 . Эта статья представляет собой письменную версию часовой лекции, посвященной алгоритму квантового факторинга Питера Шора. 22 страницы.
- Глава 20 «Квантовые вычисления» , из книги «Вычислительная сложность: современный подход» , черновик книги: датировано январем 2007 г., Санджив Арора и Боаз Барак, Принстонский университет. Опубликовано в главе 10 «Квантовые вычисления» Санджив Арора, Боаз Барак, «Сложность вычислений: современный подход», Cambridge University Press, 2009 г., ISBN 978-0-521-42426-4
- Шаг к квантовым вычислениям: запутанность 10 миллиардов частиц. Архивировано 20 января 2011 г. в Wayback Machine из журнала Discover Magazine от 19 января 2011 г.
- Йозеф Груска - Проблемы квантовых вычислений также в неограниченной математике: 2001 г. и далее , редакторы Бьёрн Энгквист, Вильфрид Шмид, Springer, 2001 г., ISBN 978-3-540-66913-5
Внешние ссылки
[ редактировать ]- Версия 1.0.0 libquantum : содержит реализацию алгоритма Шора на языке C с их библиотекой моделирования квантовых компьютеров, но переменная ширины в shor.c должна быть установлена на 1, чтобы повысить сложность выполнения.
- PBS Infinite Series создала два видеоролика, объясняющих математические принципы алгоритма Шора: « Как взломать криптографию » и « Взлом на квантовой скорости с помощью алгоритма Шора ».
- Полная реализация алгоритма Шора с помощью Classiq