Содержание книги "Изучаем квантовые вычисления на Python и Q#
"
Вводное слово
Предисловие
Признательности
О книге
Об авторах
Об иллюстрации на обложке
Часть I. ПРИСТУПАЕМ К РАБОТЕ С КВАНТОМ
1. Введение в квантовые вычисления
1.1 Почему квантовые вычисления имеют значение?
1.2 Что такое квантовый компьютер?
1.3 Как мы будем использовать квантовые компьютеры?
1.4 Что такое программа?
Резюме
2. Кубиты: строительные блоки
2.1 Зачем нужны случайные числа?
2.2 Что такое классические биты?
2.3 Кубиты: состояния и операции
2.4 Программирование рабочего QRNG-генератора
Резюме
3. Обмен секретами с помощью квантового распределения ключей
3.1 В любви и шифровании все средства хороши
3.2 Сказка о двух базисах
3.3 Квантовое распределение ключей: BB84
3.4 Использование секретного ключа для отправки секретных сообщений
Резюме
4. Нелокальные игры: работа с несколькими кубитами
4.1 Нелокальные игры
4.2 Работа с многокубитовыми состояниями
Резюме
5. Нелокальные игры: имплементирование многокубитового симулятора
5.1 Квантовые объекты в QuTiP
5.2 Игра CHSH: квантовая стратегия
Резюме
6. Телепортация и запутанность: перемещение квантовых данных с места на место
6.1 Перемещение квантовых данных
6.2 Все одиночные (однокубитовые) повороты
6.3 Телепортация
Резюме
Часть I: заключение
Часть II. ПРОГРАММИРОВАНИЕ КВАНТОВЫХ АЛГОРИТМОВ НА Q#
7. Перевес в другую пользу: введение в язык программирования Q#
7.1 Введение в Комплект инструментов для квантовой разработки
7.2 Функции и операции в Q#
7.3 Передача операций в качестве аргументов
7.4 Игра Морганы на Q#
Резюме
8. Что такое квантовый алгоритм
8.1 Классические и квантовые алгоритмы
8.2 Алгоритм Дойча–Йожи: умеренные улучшения для проведения поиска
8.3 Оракулы: представление классических функций в квантовых алгоритмах
8.4 Симулирование алгоритма Дойча–Йожи на Q#
8.5 Размышления о квантово-алгоритмических техниках
8.6 Фазовая отдача: ключ к нашему успеху
Резюме
9. Квантовая телеметрия: это не просто фаза
9.1 Фазовое оценивание: использование полезных свойств кубитов для измерения
9.2 Пользовательские типы
9.3 Беги, змейка, беги: выполнение Q# из Python
9.4 Собственные состояния и локальные фазы
9.5 Контролируемое применение: превращение глобальных фаз в локальные фазы
9.6 Имплементирование лучшей стратегии Ланселота для игры с оцениванием фазы
Резюме
Часть II: заключение
Часть III. ПРИКЛАДНЫЕ КВАНТОВЫЕ ВЫЧИСЛЕНИЯ
10. Решение химических задач с помощью квантовых компьютеров
10.1 Реальные химические приложения для квантовых вычислений
10.2 Много путей ведут к квантовой механике
10.3 Использование гамильтониан для описания эволюции квантовых систем во времени
10.4 Поворачивание вокруг произвольных осей с помощью операций Паули
10.5 Внесение изменений, которые мы хотим видеть в системе
10.6 Претерпевая (очень малые) изменения
10.7 Окончательная сборка
Резюме
11. Поиск с помощью квантовых компьютеров
11.1 Поиск по неструктурированным данным
11.2 Отражение вокруг состояний
11.3 Имплементирование поискового алгоритма Гровера
11.4 Оценивание ресурсов
Резюме
12. Арифметика с помощью квантовых компьютеров
12.1 Включение квантовых вычислений в обеспечение безопасности
12.2 Подключение модульной математики к факторизации
12.3 Классическая алгебра и факторизация
12.4 Квантовая арифметика
12.5 Окончательная сборка
Резюме
Заключение
Приложение А. Инсталлирование требуемого программно-информационного обеспечения
Приложение В. Глоссарий и краткий справочник
Приложение С. Памятка по линейной алгебре
Приложение D. Разведывательный анализ алгоритма Дойча–Йожи на примере
Предметный указатель