Векторы и матрицы в квантовых вычислениях
Некоторые знания о линейной алгебре важно понимать квантовые вычисления. В этой статье представлены основные понятия линейной алгебры и способы работы с векторами и матрицами в квантовых вычислениях.
Векторы
Вектор столбца или вектор для короткого размера $(или$ размера) $n$ представляет собой коллекцию $$ сложных чисел $(v_1,v_2,\ldots,v_n)$ в виде столбца:
$$v=\begin{bmatrix} v_1\\ v_2\\ \vdots\\ v_n \end{bmatrix}$$
Норма вектора $v$ определяется как $\sqrt{\sum_i |v_i|^2}$. Вектор называется вектором единицы, если его нормой является $1$.
Присоединение вектора $столбца v$ — это вектор строки, обозначаемый как $v^\dagger$, и определяется как конжугейтный транспозик $v$. Для вектора $столбца v$ измерения $n$ примыкает к строке $измерения 1 \times n$:
$$\begin{bmatrix}\\ v_1 \vdots \\ v_n \end{bmatrix}^\dagger=\begin{bmatrix}v_1^* & \cdots&ампер; v_n^*\end{bmatrix}$$
где $v_i^*$ обозначает сложные конъюгаты $v_i$.
Использование линейной алгебры, состояние кубита $=\psia \ket{0} + b \ket{1}$ описывается как вектор \\$\begin{bmatrix} квантового состояния b\end{bmatrix}$, где $|a|^2 + |b|^2 = 1.$ Дополнительные сведения см. в разделе "Кубит".
Скалярный продукт
Два вектора могут быть умножены на скалярный продукт, также известный как dot product или внутренний продукт. Как подразумевает имя, результат скалярного продукта двух векторов является скалярным. Скалярный продукт дает проекцию одного вектора на другой и используется для выражения одного вектора в виде суммы других простых векторов. Скалярный продукт между двумя векторами столбцов u и v обозначается как u, v=\right\rangle u^\dagger v $ и определяется как $\left\langle$ $$ $
$$\left\langleu, v u^\dagger v=\right\rangle=\begin{bmatrix} u_1^* & \cdots&ампер; u_n^* \end{bmatrix}\begin{bmatrix}v_1\\ \vdots\\ v_n u_1^* v_1 \end{bmatrix}= + \cdots + u_n^* v_n. $$
С скалярным продуктом норму вектора $v$ можно записать как $\sqrt{\langle v, v\rangle}$.
Можно умножить вектор с числом $a$ , чтобы сформировать новый вектор, записи которого умножаются на $a$. При сложении двух векторов $u$ и $v$ мы получим новый вектор, все элементы которого являются суммами соответствующих элементов $u$ и $v$. К этим операциям относятся:
$$\mathrm{Если}~u_1 =\begin{bmatrix}\\\\ u_2 \vdots u_n \end{bmatrix}~\mathrm{и}~ v\\ =\begin{bmatrix}\\ v_1 v_2 \vdots\\\\ v_n \end{bmatrix},~\mathrm{то}~ au+bv =\begin{bmatrix} au_1+bv_1\\+au_2+bv_2\\ \vdots\\ au_n+bv_n\end{bmatrix}$$
Матрицы
Матрица размера m n представляет собой коллекцию $сложных чисел m\cdot n$, расположенных в $строках m$ и $n$ столбцах, как показано ниже:$ \times $
$M =\begin{bmatrix} M_~~{12}{\cdots~~{11}~~ M_ M_{1n}\\ M_~~{{21} M_\cdots{22}~~{~~ M_{2n}\\\ddots\\ M_{m1}~~ M_{m2~~\cdots}~~ M_{m2}\\\end{bmatrix}$
Примечание.
Обратите внимание, что вектор с размерностью $n$ полностью идентичен матрице $n \times 1$.
Квантовые операции представлены квадратными матрицами, то есть число строк и столбцов равны. Например, операции с одним кубитом представлены $2 2 \times$ матрицами, такими как операция Pauli X$ $
$$X =\begin{bmatrix} 0 & 1 1 \\ &и 0 \end{bmatrix}$$
Совет
В Q#операции Паули $X$ представлена X
операция.
Как и векторы, можно умножить матрицу с числом $c$ , чтобы получить новую матрицу, в которой каждая запись умножается на $c$, и два матрицы одного размера можно добавить для создания новой матрицы, записи которой являются суммой соответствующих записей двух матриц.
Умножение матриц
Вы также можете умножить матрицу $M измерения $m\times$ n$ и матрицу N измерения n$ \times p$, чтобы получить новую матрицу $$P$ измерения $$m \times p$ следующим образом:
$$\begin{\begin{align}&ампер;\begin{bmatrix} {~~\cdots{11}{{12}~~~~ M_ M_ M_1n M_{22}~~{~~{{{21}\cdots~~ M_ M_2n}\\{}\\\ddots\\ M_m1}{~~ M_m2 M_m2~~\end{bmatrix}\cdots~~~~{~~{\begin{bmatrix}{}\cdots}{11}~~{12} N_ N_ N_1p N_p}\\{21}{~~\cdots~~{22}~~ N_ N_{2p}\\{\ddots\\ N_n1~~}{ N_n2n2~~{~~}\cdots N_np~~}\end{bmatrix}=\begin{bmatrix}{{11} P_ P_ {12}~~\cdots~~ {P_1p P_ P_ P_{2p{~~{22}{21}}\\}\\~~{\ddots\\\cdots~~ P_{m1~~} P_m2}~~~~\cdots P_mp{{}\end{bmatrix}\end{align}$$
где элементы $P$ обозначены как $P_{ik}=\sum_j M_{ij}N_{jk}$. Например, запись $P_{11}$ является скалярным продуктом первой строки $M$ с первым столбцом $N$. Так как вектор является частным случаем матрицы, это определение применимо и к умножению матрицы на вектор.
Специальные типы матриц
Частным случаем квадратной матрицы является единичная матрица, которая обозначается как $\mathbb{\mathbb{I}$. В ней все элементы, расположенные по диагонали, имеют значения $1$, а все остальные элементы — значение $0$:
$\mathbb{\mathbb{I}=\begin{bmatrix} 1 ~~ 0 ~~\cdots~~ 0\\ 0 ~~ 1 ~~\cdots~~ 0\\~~\ddots\\ 0 ~~ 0 ~~\cdots~~ 1 \end{bmatrix}.$
Для квадратной матрицы $A матрица $B$ является обратной, если $AB = BA=\mathbb{\mathbb{I}$.$ Если матрица $A$ имеет обратную, обратная матрица уникальна и записывается как $A^{-1}$.
Для любой матрицы $M$ существует присоединенная (сопряженная) матрица $N$, для которой справедливо $N_{ij}= M_{ji}^*$. Примыкания $M$ обозначается $M^\dagger$.
Матрица $U$ называется унитарной, если $UU^\dagger= U^\dagger U =\mathbb{I}$ или (что эквивалентно) $U^{{-1}= U^\dagger$. Важным свойством унитарных матриц является то, что они сохраняют норму вектора. Это объясняется тем, что
$\langle v,v \rangle=v^\dagger v = v^\dagger U^{-1} U v = v^\dagger U^\dagger U v =\langle U v, U v\rangle.$
Примечание.
Квантовые операции представлены унитарными матрицами, которые являются квадратными матрицами, чей соседство равно их обратному.
Матрица $M$ называется Хермитским , если $M=^\dagger$.
В квантовых вычислениях есть только две матрицы, которые могут вам встретиться: эрмитова и унитарная.
Тензорное произведение
Еще одной важной операцией является тензорный продукт, который также называется матрицей прямого продукта или продукта Kronecker.
Рассмотрим два вектора $v=\begin{bmatrix}a \\ b \end{bmatrix}$ и $u =\begin{bmatrix} c \\ d \end{bmatrix}$. Тензорное произведение этих векторов обозначается как $v \otimes u$, а его результатом является блочная матрица.
$$\begin{bmatrix}a \\ b \end{bmatrix}\begin{bmatrix}\otimesc \\=\begin{bmatrix} \end{bmatrix}\begin{bmatrix} d d \\ \end{bmatrix}\\[1.5em] b \begin{bmatrix} c \\ d\begin{bmatrix}=\end{bmatrix}\end{bmatrix} a c \\ a d \\ b \\ b d d\end{bmatrix}$$
Примечание.
Обратите внимание, что тензорный продукт отличается от умножения матрицы, которая является совершенно другой операцией.
Тензорный продукт используется для представления объединенного состояния нескольких кубитов. Реальная мощность квантовых вычислений исходит от использования нескольких кубитов для выполнения вычислений. Дополнительные сведения см. в разделе "Операции с несколькими кубитами".
Тензорный продукт двух квадратных матриц M и N$ размера $n\times$ является более крупной матрицей $P=M\otimes N$ размера $n^2 \times n^2 n^2$.$$ $ Например:
$$\begin{bmatrix}a\ b \\ c\ d \end{bmatrix}\begin{bmatrix}\otimese\ f\\ g\ h a e\ f\\\begin{bmatrix} \end{bmatrix}\\ g\ h\begin{bmatrix}\begin{bmatrix}=\end{bmatrix} e\ f g\ h \end{bmatrix}\\[1em] c\begin{bmatrix} e\ f\\ g\ h e\ f\begin{bmatrix} \end{bmatrix}\\ e\ f g\ h \end{bmatrix}\begin{bmatrix}\end{bmatrix}=ae\ af\ be\ bf \\ ag\ ah\ bg\ bh \\ ce\ de\ df \\ cg\ ch\ dg\ dh.\end{bmatrix} $$
Собственные значения и собственные векторы
Рассмотрим квадратную матрицу $M$ и вектор $v$. Вектор $v$ — собственный вектор $M$, если $Mv = cv$ для определенного числа $c$. Целое число $c$ — собственное значение, соответствующее собственному вектору $v$.
Как правило, матрица $M$ может преобразовать вектор в любой другой вектор. Эйгенвектор является особенным, так как он не изменяется, за исключением умножения на число. Если $v$ является эйгенвектором с собственным значением c$, то $av$ также является эйгенвектором (для любого ненулевого $a$) с тем же eigenvalue$. Например, для матрицы идентификации каждый вектор $v$ – собственный вектор с собственным значением $1$.
Рассмотрим другой пример — диагональная матрица$D$ содержащая значения, отличные от нуля, только по диагонали:
$$\begin{bmatrix}&d_1 а; 0 &и 0 \\ 0 &а; d_2 &и 0 0 и 0 &\\ &а; d_3 .\end{bmatrix} $$
Векторы
$$\begin{bmatrix}1 \\ 0 \\ 0 \end{bmatrix}, \begin{bmatrix}0 \\ 1 \\ 0\end{bmatrix}\text{и}\begin{bmatrix}0 \\ 0 \\ 1\end{bmatrix}$$
являются собственными векторами этой матрицы с собственными значениями $d_1$, $d_2$ и $d_3$ соответственно. Если $d_1$, $d_2$ и $d_3$ являются отдельными числами, то эти вектора (и кратные им) являются единственными собственными векторами матрицы $D$.
В общем случае для диагональной матрицы легко определить собственные значения и собственные векторы. Собственные значения — это все числа, отображаемые по диагонали, а соответствующие собственные векторы — это векторы единиц с одной записью, равной $1$, и остальными записями, равными $ 0 $.
Обратите внимание, что собственные векторы $D$ образуют основу для $трехмерных$ векторов. Базис — это набор векторов, каждый из которых можно записать в виде их линейной комбинации. Для наглядности: $v_1$, $v_2$ и $v_3$ образуют базис, если каждый из векторов $v$ можно записать как $v=a_1 v_1 + a_2 v_2 + a_3 v_3$ для некоторых чисел $a_1$, $a_2$ и $a_3$.