Если вы только начинаете изучать AI/ML, ознакомьтесь с моими книгами ниже:
Мы живем в интересное время!
Исследователи из Google создали Sycamore, квантовый компьютер с 53 кубитами, чтобы менее чем за 200 секунд решить задачу, на решение которой у классического суперкомпьютера ушло бы примерно 10 000 лет.
Если это недостаточно впечатляет, то в 2022 году тот же процессор Sycamore использовался для моделирования проходимой червоточины!
Чтобы улучшить ситуацию, теперь вы можете выполнять вычисления на реальном квантовом компьютере, используя библиотеки Python Qiskit от IBM и Cirq от Google.
Итак, вы хотите начать изучать квантовые вычисления?
Если да, то вы будете одним из первых, кто это сделает.
Квантовые вычисления сегодня — это то, чем был ИИ в 2000-х годах.
Я чувствую, что в ближайшие 10 лет квантовые вычисления станут модным трендом среди разработчиков программного обеспечения (точно так же, как ИИ сегодня).
Что такое квантовые компьютеры?
Квантовые компьютеры — это машины, использующие свойства квантовой физики для хранения данных и выполнения вычислений.
Кубиты (квантовые биты) вместо классических битов используются для представления информации в квантовых компьютерах.
Эти компьютеры работают на принципах квантовой механики, и чтобы начать работу с квантовыми вычислениями, необходимо знать ее основы.
Чем это отличается от классической физики?
Все мы, должно быть, читали законы движения Ньютона и применяли их в повседневной жизни.
Классическая физика/Классическая механика очень интуитивно понятна. Имеет смысл бросить мяч и посмотреть, как он движется по параболической траектории.
Квантовая механика сильно отличается от этого.
Когда мы уменьшаем размер интересующих нас объектов до уровня размера электрона, мы вступаем в интересную неинтуитивную область реальности.
Чтобы понять, как здесь все устроено, нам нужно изучить совершенно новый способ мыслительных процессов и логики.
Это то, к чему стремится квантовая механика.
Чтобы понять феномен, «наблюдаемый» (такова классическая механика!) в квантовом мире, этот раздел физики использует абстрактную математику.
Эта серия представляет собой введение во всю математику, которую вам нужно будет понять и начать заниматься квантовой механикой и квантовыми вычислениями.
Урок 1: Мнимые и комплексные числа
Состояние кубита представлено комплексными числами. Поэтому мы начинаем здесь.
Воображаемое число – это действительное число (R), умноженное на i
(мнимая единица или йота).
i² = -1
ori = √-1
Также,
i³ = -i
i⁴ = +1
i^(4n-1)= -i
Не пытайтесь вычислить квадратный корень из -1
, это не просто так!
Примеры мнимых чисел: 2i, -5i, 0.3i, (4/5)i
Комплексное число (z
) – это сумма действительного и мнимого чисел.
z = x + iy
где x
и y
— действительные числа.
Сопряжение комплексного числа
Каждое комплексное число имеет уникальное сопряженное (или комплексно-сопряженное, поскольку это комплексное число), представленное z*
.
Это исходное комплексное число, мнимая часть которого имеет ту же величину, но противоположный знак.
Для z = x + iy
:
z* = x — iy
Добавление комплексных чисел
Два комплексных числа можно просто сложить, следуя правилам арифметики.
Для x = a+ib
и y = c+id
:
x + y = (a+c) + i(b+d)
Вычитание комплексных чисел
Два комплексных числа можно вычесть, следуя правилам арифметики, как показано ниже.
x — y = (a-c) + i(b-d)
Умножение комплексных чисел
Эта операция выполняется с использованием идентификатора (a+b)*(c+d) = a*c + a*d + b*c + b*d
x * y
or (a+ib) * (c+id) = ac + ibc + iad + i2bd
Поэтому,
x * y = (ac — bd) + i(bc + ad)
Умножение комплексных чисел на сопряженные
Эта операция, то есть z * (z*)
, всегда приводит к положительному вещественному числу.
Для x = a + ib
и его сопряженного x* = a — ib
,
x * (x*) = a*a — b*(-b) + i(b*a + a*(-b))
x * (x*) = a² + b²
Деление комплексных чисел
Для x
и y
, как указано выше, x/y
выполняется путем умножения числителя и знаменателя на сопряженное число y
.
x/y = (a + ib) / (c + id) = (a + ib)(c — id) / (c+id)(c-id)
Это приводит к:
x/y = [(ac+bd)+ i(bc-ad)] /c² + d²
Представление комплексных чисел
Мы научимся графически представлять комплексные числа в двух формах:
- на Декартовой плоскости (также называемой Диаграммой Аргана/Комплексной плоскости/S-плоскости/Плоскости Гаусса)
- используя полярные координаты
Представление на декартовой/комплексной плоскости
Когда комплексное число представлено на двумерной декартовой плоскости,
- ось вертикальная (y) соответствует мнимой части комплексного числа
- ось горизонтальная (x) соответствует действительной части комплексного числа
Представление с использованием полярных координат на комплексной полярной плоскости
Полярная система координат представляет собой двухмерную плоскость, в которой положение точки определяется расстоянием (называемым радиусом) от контрольной точки (называемой полюс) и уголот исходного направления (называемый полярной осью).
Углы в полярной системе обозначений выражаются в градусах или радианах.
Обратите внимание, что
2π radians = 360°
Комплексное число может быть представлено в полярной комплексной плоскости, где ось x представляет действительную часть, а ось Y представляет мнимую часть комплексного числа.
Комплексное число z
можно записать с использованием полярной записи как:
где:
e
число Эйлераφ
называется аргументом комплексного числаz
.r
называется абсолютным значением/модулем/величинойкомплексного числаz
Используя теорему Пифагора,
Если вы немного запутались, обратите внимание, что приведенная выше запись представления комплексного числа использует формулу Эйлера, которая утверждает, что для любого действительного числа x
:
Давайте изучим несколько математических операций над комплексными числами, записанными в полярной форме.
Обратите внимание, что проще выполнять сложение и вычитание в неполярной/компонентной/прямоугольной форме, но легче умножать и делить в полярной записи.
Умножение комплексных чисел в полярном представлении
Для двух чисел z(1)
и z(2)
где:
Операция умножения выполняется следующим образом:
or,
Деление комплексных чисел в полярном представлении
Аналогично, операция деления выполняется следующим образом:
or,
Я надеюсь, что эта статья помогла вам получить представление о комплексных числах, поскольку мы будем широко использовать их в квантовых вычислениях.
Другие части этой серии смотрите здесь:
Это все, что нужно для этой статьи. Спасибо большое за чтение!
Повышение уровня кодирования
Спасибо, что являетесь частью нашего сообщества! Перед тем, как ты уйдешь:
- 👏 Хлопайте за историю и подписывайтесь на автора 👉
- 📰 Смотрите больше контента в публикации Level Up Coding
- 🔔 Подписывайтесь на нас: Twitter | ЛинкедИн | "Новостная рассылка"
🚀👉 Присоединяйтесь к коллективу талантов Level Up и найдите прекрасную работу