Udostępnij za pośrednictwem


Wektory i macierze w obliczeniach kwantowych

Znajomość algebry liniowej jest niezbędna do zrozumienia obliczeń kwantowych. W tym artykule przedstawiono podstawowe pojęcia algebry liniowej oraz sposób pracy z wektorami i macierzami w obliczeniach kwantowych.

Wektory

Wektor kolumny lub wektor krótki, $v$ wymiaru (lub rozmiaru) $n$ to kolekcja $n$ liczb $zespolonych (v_1,v_2,\ldots,v_n)$ rozmieszczona jako kolumna:

$$v =\begin{bmatrix} v_1\\ v_2\\ \vdots\\ v_n \end{bmatrix}$$

Normą wektora $v$ jest zdefiniowana jako $\sqrt{\sum_i v_i||^2}$. Wektor jest nazywany wektorem jednostkowym, jeśli jego normą jest $1$.

Przyleganie wektora kolumny v$ jest wektorem $wiersza oznaczonym jako $v^\dagger$ i jest definiowany jako transponacja konjugate v$$. Dla wektora kolumny v wymiaru n, adjoint jest wektorem $wiersza wymiaru $1 \times n$:$$$

$$\begin{bmatrix}v_1 \ \vdots \ v_n \end{bmatrix}^\dagger=\begin{bmatrix}v_1^* & \cdots& v_n^* \end{bmatrix}$$

gdzie $v_i^*$ oznacza złożony sprzężenie $v_i$.

Korzystając z algebry liniowej, stan kubitu $\psi=\ket{0} + b \ket{1}$ jest opisany jako wektor stanu kwantowego $\begin{bmatrix} \ b \end{bmatrix}$, gdzie $||^2 + |b|^2 = 1$. Aby uzyskać więcej informacji, zobacz Kubit.

Iloczyn skalarny

Dwa wektory można mnożyć razem przez produkt skalarny, znany również jako produkt kropkowy lub produkt wewnętrzny. Jak wskazuje nazwa, wynik skalarnego iloczynu dwóch wektorów jest skalarny. Produkt skalarny daje projekcję jednego wektora na inny i służy do wyrażania jednego wektora jako sumy innych prostszych wektorów. Produkt skalarny między dwoma wektorami $kolumn u$ i $v$ jest oznaczony jako $\left\langle u, v\right\rangle= u^\dagger v $ i jest zdefiniowany jako

$$\left\langleu, v\right\rangle= u^\dagger v=\begin{bmatrix}u_1^* & \cdots&Amp; u_n^* \end{bmatrix}v_1 \vdots\\ v_n=\end{bmatrix}u_1^* v_1 + + \cdots u_n^* v_n.\\\begin{bmatrix} $$

W przypadku produktu skalarnego norma wektora $v$ może być zapisywana jako $\sqrt{\langle v, v\rangle}$.

Można pomnożyć wektor z liczbą $a$, aby utworzyć nowy wektor, którego wpisy są mnożone przez $element .$ Można również dodać dwa wektory $u$ i $v$ , aby utworzyć nowy wektor, którego wpisy są sumą wpisów $u$ i $v$. Te operacje są następujące:

$$ au+bv =\begin{bmatrix} au_1+bv_1\\ au_2+bv_2\\ \vdots\\ au_n+bv_n \end{bmatrix}$$

Macierzy

Macierz o rozmiarze $m \times n$ jest kolekcją $m\cdot n$ liczb zespolonych rozmieszczonych w $wierszach m$ i $n$ kolumnach, jak pokazano poniżej:

$$M =\begin{bmatrix} M_{11} M_{12}\cdots M_{1n}\\ M_{{21} M_{22}\cdots M_{2n}\\\ddots\\ M_{m1} M_{m2}\cdots M_{mn}\\\end{bmatrix}$$

Uwaga

Należy pamiętać, że wektor wymiaru $n$ jest po prostu macierzą o rozmiarze $n \times 1$.

Operacje kwantowe są reprezentowane przez macierze kwadratowe, czyli liczbę wierszy i kolumn są równe. Na przykład operacje pojedynczego kubitu są reprezentowane przez $2 macierze 2$\times, takie jak operacja Pauli X $$

$$X =\begin{bmatrix} 0 & 1 \\ 1 & 0 \end{bmatrix}$$

Napiwek

W Q#systemie operacja Pauli $X$ jest reprezentowana przez operację X .

Podobnie jak w przypadku wektorów, można pomnożyć macierz z liczbą $c$ , aby uzyskać nową macierz, w której każdy wpis jest mnożony za pomocą $języka c$, a dwie macierze o tym samym rozmiarze można dodać, aby utworzyć nową macierz, której wpisy są sumą odpowiednich wpisów dwóch macierzy.

Mnożenie macierzy

Można również pomnożyć macierz $M$ o wymiarach $m \times n$ i macierz $N$ o wymiarach $n \times p$, aby otrzymać nową macierz $P$ o wymiarach $m \times p$ w następujący sposób:

$$ \begin{ \begin{align} &\begin{bmatrix} M_{{11} M_{12}\cdots M_{1n}\\ M_{{21} M_{22}\cdots M_{2n}\\\ddots\\ M_{m1} M_{m2}\cdots M_{mn}\end{bmatrix}\begin{bmatrix} N_{{11} N_{{12}\cdots N_{1p}\\ N_{{21} N_{22}\cdots N_{2p}\\\ddots\\ N_{n1} N_{n2}\cdots N_{np}\end{bmatrix}=\begin{bmatrix} P_{{11} P_{12}\cdots P_{1p}\\ P_{21} P_{{22}\cdots P_{2p}\\\ddots\\ P_{m1} P_{m2}\cdots P_{mp}\end{bmatrix}\end{align}$$

gdzie wpisy $P$ są $P_{ik}\sum=_j M_{ij}N_{jk.}$ Na przykład wpis $P_{11}$ to skalarny iloczyn pierwszego wiersza $języka M$ z pierwszą kolumną $N$. Należy pamiętać, że ponieważ wektor jest po prostu specjalnym przypadkiem macierzy, ta definicja rozszerza się na mnożenie wektorów macierzy.

Specjalne typy macierzy

Jedna specjalna macierz kwadratowa to macierz tożsamości, oznaczona $\mathbb{\mathbb{I}$jako , która ma wszystkie jego elementy ukośne równe $1$ i pozostałe elementy równe $0$:

$\mathbb{ \mathbb{I}=\begin{bmatrix} 1 0 \cdots 0\\ 0 1 \cdots 0\\\ddots\\ 0 0 \cdots 1 \end{bmatrix}.$

W przypadku macierzy $kwadratowej A$ macierz $B$ jest odwrotna, jeśli $AB = BA =\mathbb{\mathbb{I}$. Jeśli macierz A$ ma odwrotność, odwrotna macierz $jest unikatowa i jest zapisywana jako $A^{-1}$.

W przypadku każdej macierzy $M adjoint lub transponacja $sprzężenia M$ jest macierzą $N$, tak aby $N_ij=} M_{{ji}^*$.$ Adjotka $języka M$ jest oznaczona $m^\dagger$.

Macierz U jest jednostkowa, jeśli $UU^\dagger= U^ U={{-1}$\mathbb{I}$=^.\dagger\dagger$$$ Jedną z ważnych właściwości macierzy jednostkowych jest zachowanie normy wektora. Dzieje się tak, ponieważ

$\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.$

Uwaga

Operacje kwantowe są reprezentowane przez macierze jednostkowe, które są macierzami kwadratowymi, których przyleganie jest równe ich odwrotności.

Macierz $M$ jest nazywana Hermitian , jeśli $M=^\dagger$.

W obliczeniach kwantowych istnieją zasadniczo tylko dwie macierze, które napotykasz: Hermitian i unitary.

Produkt Tensor

Kolejną ważną operacją jest produkt tensor, nazywany również produktem bezpośrednim macierzy lub produktem Kronecker.

Rozważmy dwa wektory $v=\begin{bmatrix}a \\ b \end{bmatrix}$ i $u =\begin{bmatrix} c \\ d \end{bmatrix}$. Ich produkt tensor jest oznaczony jako $v \otimes u$ i powoduje macierz blokową.

$$ \begin{bmatrix} a \\ b \end{bmatrix}\otimes\begin{bmatrix} c \\ d \end{bmatrix}=\begin{bmatrix} a \begin{bmatrix} c \\ d \end{bmatrix} b \begin{bmatrix} c \\ d \end{bmatrix}\end{bmatrix}=a c\begin{bmatrix} a d \\ a d \\ b c \\ b d \end{bmatrix}$$

Uwaga

Należy pamiętać, że produkt tensor różni się od mnożenia macierzy, co jest zupełnie inną operacją.

Produkt tensor jest używany do reprezentowania połączonego stanu wielu kubitów. Rzeczywiste możliwości obliczeń kwantowych wynikają z wykorzystania wielu kubitów do wykonywania obliczeń. Aby uzyskać więcej informacji, zobacz Operacje na wielu kubitach.