Если вы только начинаете изучать AI/ML, ознакомьтесь с моими книгами ниже:





Мы живем в интересное время!

Исследователи из Google создали Sycamore, квантовый компьютер с 53 кубитами, чтобы менее чем за 200 секунд решить задачу, на решение которой у классического суперкомпьютера ушло бы примерно 10 000 лет.



Если это недостаточно впечатляет, то в 2022 году тот же процессор Sycamore использовался для моделирования проходимой червоточины!



Чтобы улучшить ситуацию, теперь вы можете выполнять вычисления на реальном квантовом компьютере, используя библиотеки Python Qiskit от IBM и Cirq от Google.

Итак, вы хотите начать изучать квантовые вычисления?

Если да, то вы будете одним из первых, кто это сделает.

Квантовые вычисления сегодня — это то, чем был ИИ в 2000-х годах.

Я чувствую, что в ближайшие 10 лет квантовые вычисления станут модным трендом среди разработчиков программного обеспечения (точно так же, как ИИ сегодня).

Что такое квантовые компьютеры?

Квантовые компьютеры — это машины, использующие свойства квантовой физики для хранения данных и выполнения вычислений.

Кубиты (квантовые биты) вместо классических битов используются для представления информации в квантовых компьютерах.

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

Чем это отличается от классической физики?

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

Классическая физика/Классическая механика очень интуитивно понятна. Имеет смысл бросить мяч и посмотреть, как он движется по параболической траектории.

Квантовая механика сильно отличается от этого.

Когда мы уменьшаем размер интересующих нас объектов до уровня размера электрона, мы вступаем в интересную неинтуитивную область реальности.

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

Это то, к чему стремится квантовая механика.

Чтобы понять феномен, «наблюдаемый» (такова классическая механика!) в квантовом мире, этот раздел физики использует абстрактную математику.

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

Урок 1: Мнимые и комплексные числа

Состояние кубита представлено комплексными числами. Поэтому мы начинаем здесь.

Воображаемое число – это действительное число (R), умноженное на i (мнимая единица или йота).

i² = -1 or i = √-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²

Представление комплексных чисел

Мы научимся графически представлять комплексные числа в двух формах:

Представление на декартовой/комплексной плоскости

Когда комплексное число представлено на двумерной декартовой плоскости,

  • ось вертикальная (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 и найдите прекрасную работу