Алгоритмическое и программное обеспечение для моделирования квантового компьютера тема диссертации и автореферата по ВАК РФ 05.13.11, кандидат технических наук Ключарёв, Пётр Георгиевич

  • Ключарёв, Пётр Георгиевич
  • кандидат технических науккандидат технических наук
  • 2009, Москва
  • Специальность ВАК РФ05.13.11
  • Количество страниц 153
Ключарёв, Пётр Георгиевич. Алгоритмическое и программное обеспечение для моделирования квантового компьютера: дис. кандидат технических наук: 05.13.11 - Математическое и программное обеспечение вычислительных машин, комплексов и компьютерных сетей. Москва. 2009. 153 с.

Оглавление диссертации кандидат технических наук Ключарёв, Пётр Георгиевич

ВВЕДЕНИЕ.

ГЛАВА 1. КВАНТОВЫЕ ВЫЧИСЛЕНИЯ.

1.1. Квантовые вычисления.

1.1.1. Краткая история теории квантовых вычислений.

1.1.2. Общая информация о квантовых вычислениях.

1.2. Квантовые алгоритмы.

1.2.1. Общие сведения.

1.2.2. Алгоритм поиска Гровера.

1.2.3. Квантовое преобразование Фурье.

1.2.4. Квантовый алгоритм нахождения периода функции

1.2.5. Алгоритм разложения числа на простые множители (Алгоритм Шора).

1.2.6. Квантовый алгоритм вычисления дискретного логарифма

1.2.7. Другие квантовые алгоритмы.

1.3. Способы описания квантовых алгоритмов.

1.3.1. Квантовые схемы.

1.3.2. Квантовая машина Тьюринга.

1.3.3. Сложность квантовых вычислений.

1.3.4. Языки квантового программирования.

1.4. Организация квантового компьютера.

1.5. Реализация квантовых компьютеров.

1.6. Квантовые компьютеры и информационная безопасность

1.7. Моделирование квантовых компьютеров.

1.8. Выводы.

ГЛАВА 2. АЛГОРИТМЫ ДЛЯ ИМИТАЦИИ КВАНТОВОГО КОМПЬЮТЕРА

2.1. Квантовые регистры.

2.2. Использование линейного массива для хранения вектора состояния квантового регистра.

2.3. Использование связного списка для хранения вектора состояния квантового регистра.

2.4. Использование структуры данных, основанной на графах для хранения вектора состояния квантового регистра.

2.4.1. Алгебраические решающие диаграммы.

2.4.2. Алгоритм построения алгебраических решающих диаграмм

2.4.3. Кодирование матриц и векторов.

2.4.4. Квантовые преобразования.

2.5. Алгоритмы для имитации квантового компьютера.74 г

2.5.1. Способ имитации квантового компьютера.

2.5.2. Имитация квантовых преобразований.

2.5.3. Имитация измерений квантовых регистров.

2.6. Выводы.

ГЛАВА 3. РЕАЛИЗАЦИЯ БИБЛИОТЕКИ ФУНКЦИЙ.

3.1. Выбор языка программирования.

3.2. Реализация библиотеки функций для работы с алгебраическими решающими диаграммами.

3.3. Реализация библиотеки функций для работы с векторами

3.4. Примеры эффективного применения алгебраических решающих диаграмм.

3.5. Реализация библиотеки функций для моделирования квантового компьютера.

3.6. выводы.

ГЛАВА 4. ЯЗЫК ДЛЯ ПРЕДСТАВЛЕНИЯ КВАНТОВЫХ АЛГОРИТМОВ

4.1. постановка задачи.

4.2. Требования к языку.

4.3. Описание языка.

4.3.1. Структура языка.

4.3.2. Стандартные преобразования.

4.4. Примеры программ.

4.4.1. Программа факторизации натурального числа с помощью квантового алгоритма Шора.

4.5. Программа, реализующая алгоритм Гровера.103г.

4.6. Интерпретатор.

4.6.1. Общие сведения.

4.6.2. Использование интерпретатора.

4.7. Тестирование производительности.

4.8. Выводы.

Рекомендованный список диссертаций по специальности «Математическое и программное обеспечение вычислительных машин, комплексов и компьютерных сетей», 05.13.11 шифр ВАК

Введение диссертации (часть автореферата) на тему «Алгоритмическое и программное обеспечение для моделирования квантового компьютера»

В настоящее время активно развивается теория квантовых вычислений. Несмотря на то, что идея квантового компьютера была высказана еще Р. Фейнманом в 1982 г. и с тех пор проводятся научные исследования по этой тематике, квантовые компьютеры еще не созданы. Однако, уже сейчас ясно, что теоретических ограничений для этого нет. Кроме того, имеются определенные достижения в области теории квантовых вычислений.

Несмотря на то, что квантовому компьютеру присущи некоторые особенности (например, вычисления на квантовом компьютере могут быть только обратимыми), любой алгоритм, предназначенный для классического компьютера, можно реализовать и для квантового. Кроме того, квантовый компьютер обладает серьезными преимуществами, по сравнению с классическим компьютером - квантовым параллелизмом, который позволяет одновременно производить вычисления с различными исходными данными. Существуют так называемые квантовые алгоритмы, то есть алгоритмы, использующие преимущества квантового компьютера. Квантовые алгоритмы позволяют решать некоторые задачи значительно более эффективно по сравнению с классическими алгоритмами.

Квантовых алгоритмов на настоящий момент известно мало. Наиболее важные - это квантовый алгоритм факторизации натуральных чисел и квантовой алгоритм дискретного логарифмирования, разработанные П. Шором (1994 г.), а также алгоритм поиска, разработанный Л. Гровером (1996 г.). Кроме того, существуют квантовые алгоритмы для решения некоторых математических задач, практическая ценность которых пока не ясна. Такое положение вещей, по-видимому, обусловлено в частности отсутствием возможности запуска и отладки сколь-нибудь сложных квантовых алгоритмов.

Существующие квантовые алгоритмы имеют значительно меньшую вычислительную сложность, по сравнению классическими аналогами. Так, квантовые алгоритмы факторизации натуральных чисел и дискретного логарифмирования имеет полиномиальную сложность, в то время как классические аналоги имеют надполиномиальную сложность. Это позволяет надеяться на то, что возможно построение эффективных квантовых алгоритмов для решения каких-либо других задач.

В связи с наличием эффективных квантовых алгоритмов факторизации целых чисел и вычисления дискретного логарифма, можно утверждать, что разработка практических образцов квантовых компьютеров приведет к тому, что основные ассиметричные криптографические алгоритмы окажутся нестойкими. Такие криптоалгоритмы используются для шифрования данных, для электронных цифровых подписей, а также для распределения криптографических ключей. Нестойкость этих криптоалгоритмов повлечет за собой, нарушение секретности больших объемов информации во всем мире, что приведет к серьезным и труднопредсказуемым последствиям для информационной безопасности государств, различных предприятий, в том числе банков, а также физических лиц.

В условиях отсутствия практических квантовых компьютеров, встает задача разработки комплекса программ для моделирования квантового компьютера. Следует заметить, что такой комплекс программ ни коем образом не может заменить квантового компьютера. Его возможности сильно ограничены, однако он позволит запускать и отлаживать квантовые программы, что очень ценно как для разработки новых квантовых алгоритмов, так и для целей обучения студентов основам квантовых вычислений. Курсы, посвященные квантовым вычислениям, в настоящее время читаются во многих высших учебных заведениях России, Европы и США. В ряде ВУЗов, например в Калифорнийском Техническом Университете и в МГУ им. Ломоносова, открыты кафедры квантовых вычислений.

Вместе с тем, возникает задача разработки языка для описания алгоритмов для квантового компьютера. Несмотря на то, что в настоящее время разработано уже несколько таких языков, только для одного из них создан интерпретатор, позволяющий выполнять программы, написанные на этом языке. Эти языки имеют ряд недостатков, которые затрудняют их практическое использование, а интерпретатор имеет ряд ограничений, также затрудняющих его практическое использование.

Целью диссертационной работы является разработка алгоритмов для имитации квантового компьютера, разработка программного обеспечения на основе этих алгоритмов и создание языка описания квантовых алгоритмов.

Для достижения этой цели в диссертации необходимо решить следующие задачи:

1. Разработать метод представления состояний квантовых регист-, V ров.

2. Разработать алгоритм обработки информации о состоянии квантового регистра.

3. Разработать способ моделирования квантовых вычислений.

4. Разработать библиотеку функций, реализующих операции над' квантовыми регистрами.

5. Разработать язык описания квантовых алгоритмов.

6. Разработать интерпретатор языка описания квантовых алгоритмов.

Объектом исследования является математическая модель квантового компьютера.

Предметом исследования выступают методы моделирования работы квантового компьютера.

Методы исследования. Для решения поставленных задач в работе использовались методы дискретной математики, теории сложности алгоритмов, функционального программирования.

Научная новизна.

• Разработан новый способ представления матриц и векторов. Особенностью способа является то, что матрицы и вектора представляются в виде графов специального вида - алгебраических решающих диаграмм. Разработаны новые алгоритмы для действий над матрицами и векторами, представленными в виде алгебраических решающих диаграмм.

• Разработан новый способ имитации квантовых вычислений. Особенностью этого способа является использование представления состояния кванто- ^ вого регистра в виде алгебраической решающей диаграммы. Этот способ позволяет получить большую производительность по сравнению с существующими способами в ряде задач.

• Разработан новый язык для описания квантовых алгоритмов и интерпретатор для него.

На защиту выносится:

• Алгоритмы для действий над матрицами и векторами, представленными в виде алгебраических решающих диаграмм.

• Способ имитации квантовых вычислений, основанный на использовании алгебраических решающих диаграмм.

• Язык для описания квантовых алгоритмов.

• Программное обеспечение для имитации квантового компьютера.

Практическая значимость. Разработана библиотека функций для имитации квантового компьютера. На основе этой библиотеки разработан интерпретатор языка описания квантовых алгоритмов. Разработанное программное обеспечение может быть использовано как в качестве инструмента для отладки квантовых алгоритмов, так и в качестве средства для обучения студентов основам квантовых вычислений.

Апробация и внедрение результатов работы. Результаты диссертационной работы внедрены в Ракетно-космической корпорации «Энергия» им. С.П. Королева, а также в учебный процесс кафедры информационной безопасности МГТУ им. Н.Э. Баумана.

Основные результаты работы докладывались и обсуждались на ряде научных конференций, проводимых в МГТУ им. Н.Э. Баумана, а также на научных семинарах кафедры информационной безопасности МГТУ им. Н.Э. Баумана.

Публикации по теме диссертации. Основные результаты данной работы опубликованы в восьми печатных трудах. В том числе две статьи опубликованы в изданиях, рекомендованных ВАК.

Структура и объем диссертации. Диссертация состоит из введения, четырех глав, заключения, библиографического списка и приложения. Библиографический список состоит из 99 наименований.

Похожие диссертационные работы по специальности «Математическое и программное обеспечение вычислительных машин, комплексов и компьютерных сетей», 05.13.11 шифр ВАК

Заключение диссертации по теме «Математическое и программное обеспечение вычислительных машин, комплексов и компьютерных сетей», Ключарёв, Пётр Георгиевич

4.8. Выводы

Разработан язык программирования для квантового компьютера. Этот язык предназначен для описания части квантовых алгоритмов, выполняющейся на квантовом компьютере. Программы, написанные на этом языке, генерируются динамически с помощью управляющей программы, написанной на любом языке программирования и выполняющейся на обычном компьютере, который управляет квантовым компьютером.

Основными объектами, с которыми оперирует разработанный язык, являются: классическая переменная, представляющая целое неотрицательное число, квантовый регистр, преобразование.

Основными операциями, которые поддерживает разработанный язык, являются следующие: создание квантового регистра, измерение состояния квантового регистра, линейное преобразование, тензорное произведение квантовых регистров, вычисление классической функции от квантового регистра.

В программы, написанные на разрабатываемом языке, передаются параметры, являющиеся классическими переменными, а из программ возвращаются результаты вычислений, являющиеся также классическими переменными.

Разработан интерпретатор этого языка. Этот интерпретатор является имитатором квантового компьютера. Интерпретатор разработан на языке функционального программирования Haskell.

Произведено тестирование производительности интерпретатора, которое показала его превосходство по быстродействию и требованиям к памяти, над имитатором С2С8нп, разработанным в М8Т, на ряде квантовых алгоритмов.

Заключение и общие выводы

В диссертации получен ряд важных результатов, таких как:

• Разработаны алгоритмы для хранения векторов и матриц над произвольными линейно упорядоченными полями в виде алгебраических решающих диаграмм и алгоритмы для действий над ними.

• Разработаны алгоритмы для имитации квантового компьютера.

• Разработана библиотека функций, на языке функционального программирования Haskell, для работы с алгебраическими решающими диаграммами, а также с векторами и матрицами, хранимыми в виде алгебраических решающих диаграмм

• Разработана библиотека функций для имитации квантовых вычислений.

• Разработан язык для представления квантовых алгоритмов и интерпретатор этого языка.

Таким образом, разработаны новые алгоритмы и программное обеспечение, предназначенное для имитации квантового компьютера. Разработанные средства имитации квантового компьютера существенно превосходят по быстродействию и требованиям к памяти имеющиеся средства.

Результаты настоящей работы будут способствовать разработке новых квантовых алгоритмов.

Список литературы диссертационного исследования кандидат технических наук Ключарёв, Пётр Георгиевич, 2009 год

1. Алферов А.П. Основы криптографии. — М.: Гелиос АРВ, 2002. - 480 с.

2. Валиев К.А., Кокин К.А. Квантовые компьютеры: надежды и реальность. — М.: Регулярная и хаотическая динамика, 2001. 352 с.

3. Вирт Н. Библиотека программиста. Алгоритмы и структуры данных. — СПб.: Нев. диалект, 2001. 351 с.

4. Душкин Р.В. Справочник по языку Haskell. М.: ДМК, 2008. - 544 с.

5. Душкин Р.В. Функциональное программирование на языке Haskell. -М.: ДВК, 2006.-608 с.

6. Иванов М.А. Криптографические методы защиты информации в компьютерных системах и сетях. М.: Кудиц-образ, 2001. - 363 с.

7. Китаев А., Шень А., Вялый М. Классические и квантовые вычисления. М.: МЦНМО, 1999. - 192 с.

8. Ключарев П.Г. Алгебраический подход к диагностике отказов вычислительной системы специального назначения // Компыолог. 2002. -№2. - С. 25-28.

9. Ключарев П.Г. Информационные и телекоммуникационные системы, их воздействие на общественное и индивидуальное сознание // Студенческая научная весна 2000: Тез. докл. научно-технической конференции. - М.: МГТУ им. Н.Э. Баумана, 2001. - С. 57-58.

10. Ключарев П.Г. Квантовый компьютер и криптографическая стойкость современных систем шифрования // Вестник МГТУ им. Н.Э. Баумана. Серия Естественные науки. 2007. — №2. — С. 113-120.

11. Ключарев П.Г. Криптоаналитические возможности квантового компьютера // Прикаспийский журнал: управление и высокие технологии. — 2008.- №2.-С. 7-13.

12. Ключарев П.Г. Основы квантовых вычислений и квантовой криптографии // Вестник МГТУ им. Н.Э. Баумана. Серия Приборостроение. -2006. №2. - С. 36-46.

13. Ключарев П.Г. Программная реализация двоичных регистров сдвига с обратной связью // Студенческая научная весна: Тез. докл. научно-технической конференции. М.: МГТУ им. Н.Э. Баумана, 2002 -С. 125126.

14. Ключарев П.Г. Свобода и безопасность личности в условиях информационного общества // Тезисы Второго Международного конгресса Молодежь и наука третье тысячелетие, 2001. - С. 125-126.

15. Ландау Л.Д., Лифшиц Е.М. Квантовая механика. М.: Мир, 1982. - 342 с.

16. Нильсен М., Чанг И. Квантовые вычисления и квантовая информация. — М.: Мир, 2006.-824 с.

17. Ожигов Ю.И. Квантовые вычисления. М.: Фак. Вычисл. математики и кибернетики МГУ им. М.В. Ломоносова, 2003. - 151 с.

18. Савельев И.В. Квантовая механика. М.: Наука, 1996. - 430 с.

19. Стин Э. Квантовые вычисления. Ижевск: Регулярная и хаотическая динамика, 2000. - 111 с.

20. Фомичев В.М. Дискретная математика и криптология. М.: Диалог-МИФИ, 2003.-400 с.

21. Шнайер Б. Прикладная криптография. М.: Триумф, 2002. - 815 с.

22. Abrams D.S., Lloyd S. Simulation of Many-Body Fermi Systems on a Universal Quantum Computer // Physical Review Letters. 1997. - Vol. 79, №13.-P. 2586-2589.

23. ACM Special Interest Group on Programming Languages., Association for Computing Machinery. Haskell '04: proceedings of the ACM SIGPLAN 2004 Haskell Workshop. New York: ACM Press, 2004. - 117 p.

24. ACM Spécial Interest Group on Programming Languages. Haskell '05: proceedings of the ACM SIGPLAN 2005 Haskell Workshop. New York: ACM Press, 2005.- 117 p.

25. ACM Special Interest Group on Programming Languages. Haskell '06: proceedings of the ACM SIGPLAN 2006 Haskell workshop. New York: Association for Computing Machinery, 2006. - 123 p.

26. Adleman L.M., DeMarrais J., Huang M.D.A. Quantum Computability // SIAM Journal on Computing. 1997. - Vol. 26, №5. - P. 1524-1540.

27. Andersen H.R., Hulgaard H. Boolean Expression Diagrams // Information and Computation. 2002. - Vol. 179, №2. - P. 194-212.

28. Association for Computing Machinery., ACM Special Interest Group on Programming Languages. Proceedings of the ACM SIGPLAN 2003 Haskell Workshop. New York, N.Y.: ACM Press, 2003. - 108 p.

29. Bahar R.I., Frohm E.A., Gaona C.M. Algebric Decision Diagrams and Their Applications // Formal Methods in System Design. 1997. - Vol. 10, №2. — P. 171-206.

30. Barenko A. Elementary gates for quantum computation // Physical Review.- 1995. Vol. A52, №5. - P. 3457-3467.

31. Beatty D.L., Bryant R.E. Formally verifying a microprocessor using a simulation methodology // Proceedings of the 31 st annual conference on Design automation. 1994. - P. 596-602.

32. Benioff P. Models of Quantum Turing machines // Fortschritte der Physik. — 1998. Vol. 46, №4-5. - P. 135-149.

33. Bennett C.H., Bessette F., Brassard G. Experimental quantum cryptography // Journal of Crypto logy. 1992. - Vol. 5, №1. - p. 3-28.

34. Bernstein E., Vazirani U. Quantum complexity theory // Proceedings of the twenty-fifth annual ACM symposium on Theory of computing. 1993. - P. 11-20.

35. Bernstein E., Vazirani U. Quantum Complexity Theory // SIAM J. Comput. 1997. - Vol. 26, №5. - P. 1411-1473.

36. Betelli S., Calarco T., Serafini L. Toward an architecture for quantum programming // The European Physical Journal D. 2003. - Vol. 25, P. 181200.

37. Bird R. Introduction to functional programming, Haskell 1.3. — London: Prentice Hall Europe, 1998. 433 p.

38. Black P.E., Lane A.W. Modeling Quantum Information Systems // Proc. of The Interational Society for Optical Engineering. 2004. - №5436. - P. 340-347.

39. Blaha S. Quantum Computers and Quantum Computer Languages // Cosmos and consciousness. Bloomington: 1st Books Library, 2000. - P. 57-93.

40. Boghosian B.M., Taylor W. Simulating quantum mechanics on a quantum computer // Physica D: Nonlinear Phenomena. 1998. - Vol. 120, №1-2. -P. 30-42.

41. Boneh D., Lipton R.J. Quantum Cryptanalysis of Hidden Linear Functions (Extended Abstract) // Proceedings of the 15th Annual International Cryp-tology Conference on Advances in Cryptology. 1995. - P. 424-437.

42. Brace K.S., Rudell R.L., Bryant R.E. Efficient implementation of a BDD package // Design Automation Conference, 1990. Proceedings. 27th ACM/IEEE. 1990. - P. 40-45.

43. Brassard G., Salvail L. Secret-key reconciliation by public discussion // Advances in Cryptology: EUROCRYPT 93. - 1993. - P. 410-423.

44. Bryant R.E. Binary decision diagrams and beyond: Enabling technologies for formal verification // Proceedings of the International Conference on Computer-Aided Design. 1995. - P. 236-243.

45. Bryant R.E. Graph-based algorithms for Boolean function manipulation // IEEE Transactions on Computers. 1986. - Vol. 35, №8. - P. 677-691.

46. Bryant R.E. Symbolic Boolean manipulation with ordered binary-decision diagrams // ACM Computing Surveys (CSUR). 1992. - Vol. 24, №3. - P. 293-318.

47. Brylinski R.K., Chen G. Mathematics of quantum computation. Boca Raton: CRC Press, 2002. - 429 p.

48. Burch J.R., h jvp. Sequential circuit verification using symbolic model checking // Design Automation Conference, 1990. Proceedings. 27th ACM/IEEE. 1990. - P. 46-51.

49. Chau H.F. Practical scheme to share a secret key through a quantum channel with a 27.6% bit error rate // Physical Review A. 2002. - Vol. 66, №6. - P. 603-622.

50. Chen G., Kauffman L.H., Lomonaco S.J. Mathematics of quantum computation and quantum technology. Boca Raton: Chapman & Hall/CRC, 2008. -605 p.

51. Cirac J., Zoller P. Quantum Computation with Cold Trapped Ions // Physycal Review Letters. 1995. - Vol. 74, №20. - P. 4091-4094.

52. Clarke E., Fujita M., McGeer P. Multi-terminal binary decision diagrams: An efficient data structure for matrix representation // Formal Methods in System Design. 1997. - Vol. 10, №2-3. - P. 149-169.

53. Clarke E.M., Fujita M., Zhao X. Hybrid decision diagrams // Proceedings of the 1995 IEEE/ACM international conference on Computer-aided design. — 1995.- P. 159-163.

54. Clarke E.M., Grumberg O., Peled D.A. Model Checking. Cambridge, MA: MIT Press, 2000.-330 p.

55. Cleve R. An introduction to quantum complexity theory // Collected Papers on Quantum Computation and Quantum Information Theory, World Scientific. 2000. - P. 103-127.

56. Cleve R. The query complexity of order-finding // Proceedings of 15th IEEE Conference on Computational Complexity. 2000. — P. 54-59.

57. Cousineau G., Mauny M. The functional approach to programming. Cambridge, U.K. ; New York, NY, USA: Cambridge University Press, 1998. -445 p.

58. Crandall R.E., Pomerance C. Prime Numbers a Computational Perspective. Springer, 2005. 597 p.

59. Deutsch D. Quantum theory, the Church-Turing principle and the universal quantum computer // Proceedings of the Royal Society of London. 1985. -Vol. A400,№1818.-P. 97-117.

60. Diffie W., Hellman M. New directions in cryptography // Information Theory, IEEE Transactions on. 1976. - Vol. 22, №6. - P. 644-654.

61. Ekert A. Quantum algorithms: entanglement-enhanced information processing // Philosophical Transactions: Mathematical, Physical and Engineering Sciences. 1998. - Vol. 356, №1743. -P. 1769-1782.

62. Elliott C., Colvin A., Pearson D. Current status of the DARPA quantum network // Enabling Photonics Technologies for Defense, Security, and Aerospace Applications. Proceedings of the SPIE. 2005. - №5815. - P. 138149.

63. Elliott C., Pearson D., Troxel G. Quantum cryptography in practice // Proceedings of the 2003 conference on Applications, technologies, architectures, and protocols for computer communications. 2003. - P. 227-238.

64. Feynman R. Quantum Mechanical Computers // Foundations of Phisycs. — 1986.-Vol. 16, №6.-P. 507-531.

65. Feynman R. Simulating Physics with Computers // International Journal of Theoretical Physics. 1982. - Vol. 21, №6. - P. 467-488.

66. Fortnow L. One complexity theorist's view of quantum computing // Theoretical Computer Science. 2003. - Vol. 292, P. 597-610.

67. Glendinning I., Omer B. Parallelization of the QC-lib Quantum Computer Simulator Library // Parallel processing and applied mathematics: 5th International Conference, PPAM 2003, LNCS -2003. Vol. 3019, P. 461-468.

68. Grover L.K. A fast quantum mechanical algorithm for database search // Proceedings, 28th Annual ACM Symposium on the Theory of Computing.- 1996.- P. 212-232.

69. Grover L.K. Quantum Mechanics Help in Searching for a Needle in a Haystack // Phys. Rev. Lett. 1997. - Vol. 78, №2. - P. 325-328.

70. Hankerson D.R., Vanstone S.A., Menezes A.J. Guide to elliptic curve cryptography. New York: Springer, 2003. - 311 p.

71. Hopcroft J.E., Motwani R., Ullman J.D. Introduction to automata theory, languages, and computation. Boston: Addison-Wesley, 2001. - 521 p.

72. Hudak P. The Haskell school of expression : learning functional programming through multimedia. New York: Cambridge University Press, 2000.363 p.

73. Hutton G. Programming in Haskell. Cambridge, UK ; New York: Cambridge University Press, 2007. - 171 p.

74. Massar S., h Classical simulation of quantum entanglement without local hidden variables // Physical Review. 2001. - Vol. 63, №5. - P. 78-86.

75. Michielsen K., Raedt H. QCE: A Simulator for Quantum Computer Hardware // Turkish Journal of Physics. 2003. - Vol. 27, №5. - P. 343-370.

76. Michielsen K., Raedt K., Raedt H. Simulation of Quantum Computation: A Deterministic Event-Based Approach // Journal of Computational and Theoretical Nanoscience. 2005. - Vol. 2, №2. - P. 227-239.

77. Michielsen K., Raedt H., Raedt K. A simulator for quantuim computer hardware // Nanotechnology. 2002. - Vol. 13, №1. - P. 23-28.

78. Niwa J., Matsumoto K., Imai H. General-purpose parallel simulator for quantum computing // Physical Review A. 2002. - Vol. 66, №6 -P. 64-72.

79. Obenland K., Despain A. A Parallel Quantum Computer Simulator // High Performance Computing. 1998. - P. 73-98.

80. Okasaki C. Purely functional data structures. Cambridge, U.K. ; New York: Cambridge University Press, 1998. - 220 p.

81. Omer B. Classical Concepts in Quantum Programming // International Journal of Theoretical Physics. 2005. - №44/7. - P. 943-955.

82. Omer B. Procedural Quantum Programming // CASYS 2001 5th International Conference, AIP Conference Proceedings. - 2001. - №627. - P. 276285.

83. Peyton Jones S.L. Haskell 98 language and libraries : the revised report. -Cambridge, U.K. ; New York: Cambridge University Press, 2003. 255 p.

84. Pomerance C. A Tale of Two Sieves // Not. Amer. Math. Soc. 1996. - Vol. 43, P. 1473-1485.

85. Proos J.A. Shor's discrete logarithm quantum algorithm for elliptic curves. -Waterloo, Ont.: Faculty of Mathematics University of Waterloo, 2003. 351. P

86. Rabhi F., Lapalme G. Algorithms: a functional programming approach. -Harlow, England: Addison-Wesley, 1999. 235 p.

87. Runciman C., Wakeling D. Applications of functional programming. — London: UCL Press, 1995. 240 p.

88. Sanders J.W., Zuliani P. Quantum Programming // Mathematics of Program Construction, Springer LNCS. 2000. - №1837. - P. 127-139.

89. Sasao T. Representations of Discrete Functions. Kluwer Academic Publishers, 1996.-353 p.

90. Schmitt-Manderbach T., Weier H., Ursin R. Experimental Demonstration of Free-Space Decoy-State Quantum Key Distribution over 144 km // Physical Review Letters. 2007. - Vol. 98, №1. - P. 105-124.

91. Shor P. Polynomial-Time Algorithms for Prime Factorization and Discrete Logarithms on a Quantum Computer // Proceedings of the 35th Annual Symposium on Foundations of Computer Science. 1994. — P. 11-20.

92. Sornborger A.T., Stewart E.D. Higher-order methods for simulations on quantum computers // Physical Review A. 1999. - Vol. 60, №3. - P. 19561965.

93. Thompson S. Haskell: the craft of functional programming. Harlow, Eng.: Addison Wesley, 1999. - 487 p.

94. Yao A. Quantum circuit complexity // Proceedings of the 34th Annual Symposium on Foundations of Computer Science. 1993. - P. 352-361.

95. Zalka C. Simulating quantum systems on a quantum computer // Royal Society of London Proceedings: Mathematical, Physical and Engineering Sciences. 1998. - Vol. 454, №1969. - P. 313-322.

Обратите внимание, представленные выше научные тексты размещены для ознакомления и получены посредством распознавания оригинальных текстов диссертаций (OCR). В связи с чем, в них могут содержаться ошибки, связанные с несовершенством алгоритмов распознавания. В PDF файлах диссертаций и авторефератов, которые мы доставляем, подобных ошибок нет.