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&Amp; v_n^*\end{bmatrix}$$
gdzie $v_i^*$ oznacza złożony sprzężenie $v_i$.
Korzystając z algebry liniowej, stan kubitu a + b \ket{1}$ jest opisany jako wektor$\begin{bmatrix}\\ stanu kwantowego b \end{bmatrix}$, gdzie $|^|2 + |b|^2 = 1.$\ket{0} $\psi= 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:
$$\mathrm{Jeśli u_1 =\begin{bmatrix} u_2 \vdots\\ u_n \end{bmatrix}~\mathrm{i}~ =\begin{bmatrix} v v_1\\ v_2\\ \vdots v_n,au~\mathrm{}~\end{bmatrix}+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:
${~~{11}M_ =\begin{bmatrix} M_{12}\cdots~~~~ M_1n{{21}{22}}\\{~~\cdots~~~~ M_{ M_ M_{2n}\\\ddots\\ M_{m1}~~ M_{m2 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 wymiaru m n i macierz $N$$ wymiaru $n \times p$, aby uzyskać nową macierz $P wymiaru $m \times$ p$ w następujący sposób:\times $$ $
$$\begin{\begin{align}&Amp;\begin{bmatrix} {{11}~~ M_ M_~~~~\cdots{12} M_{1n~~{21}{22}~~{{\cdots~~}\\ M_ M_ M_{2n}\\{\ddots\\ M_m1{}~~ M_m2~~}\cdots{~~ M_mn\begin{bmatrix}~~~~~~{12}\cdots{11}}{{\end{bmatrix} N_ N_ N_1p{}\\~~{21}\cdots{22}~~~~ N_ N_ N_{2p\ddots\\}\\{ N_n1~~} N_{n2~~\cdots{~~} N_ P_{11}{~~np}\end{bmatrix}=\begin{bmatrix} P_ 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 0\cdots~~~~ 0 ~~\\ 1\cdots~~ ~~0 0\ddots\\~~\\ 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ż
$\langlev,v\rangle=^\dagger = v^ v^\dagger U^{-1} U v=^ U^ U^\dagger\dagger U v =\langle 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 a \begin{bmatrix} c \\ d=\end{bmatrix}\begin{bmatrix} [\end{bmatrix}\\1.5em] b \begin{bmatrix} c \\ d\begin{bmatrix}=\end{bmatrix}\end{bmatrix} a \\ c a b \\ b b \\ d 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.
Produkt tensorowy dwóch kwadratowych macierzy M i N o rozmiarze n n$\times jest większą macierzą $P=M\otimes N$ o rozmiarze $$n^2 n^2.$\times$ $$ $ Na przykład:
$$\begin{bmatrix}a\ b \\ c\ d \end{bmatrix}\otimes\begin{bmatrix} e\ f\\ g\ h \end{bmatrix}\begin{bmatrix}=\begin{bmatrix} e\ f\\\ f\ h \end{bmatrix} b\begin{bmatrix}\ f\\ g\ h \end{bmatrix}\\[1em] c\begin{bmatrix} e\ f\\ g\ h \end{bmatrix}\begin{bmatrix} e\ f\\\ h\ h\end{bmatrix}=\end{bmatrix}\begin{bmatrix} ae\ be\ bf \\ ag\ ah\ bg\ bh\\\ ce\ de\ df \\ cg\ ch\ dg\ dh .\end{bmatrix} $$
Eigenvalues i eigenvectors
Rozważ macierz $kwadratową M$ i wektor $v$. Wektor $v$ jest eigenvectorem$ M$, jeśli $mv = cv$ dla pewnej liczby $c.$ Liczba całkowita $c$ to eigenvalue odpowiadająca eigenvector $v$.
Ogólnie rzecz biorąc, macierz $M$ może przekształcić wektor w dowolny inny wektor. Wektor eigenowy jest specjalny, ponieważ pozostaje niezmieniony, z wyjątkiem mnożonego przez liczbę. Jeśli $v$ jest eigenvector z eigenvalue $c$, av$ $jest również eigenvector (dla każdego nonzero $a$) z tą samą wartością eigenvalue. Na przykład w przypadku macierzy tożsamości każdy wektor $v$ jest eigenvectorem $o wartości 1$.
W innym przykładzie rozważmy macierz$ukośną D$, która ma tylko niezerowe wpisy na przekątnej:
$$\begin{bmatrix}&d_1 amp; 0 & 0 0 &\\ amp; d_2 & 0 amp; 0 \\ amp; 0 && d_3 \end{bmatrix}. $$
Wektory
$$\begin{bmatrix}1 \\ 0 0\\, \begin{bmatrix}0 \end{bmatrix}\\ 1 \\ 0\end{bmatrix}\text{i}\begin{bmatrix}0 1 \\ \\\end{bmatrix}$$
są wektorami eigenów tej macierzy z eigenvalues $d_1$, $d_2$ i $d_3$, odpowiednio. Jeśli $d_1$, $d_2$ i $d_3$ są liczbami odrębnymi, te wektory (i ich wielokrotności) są jedynymi wektorami eigenów macierzy $D$.
Ogólnie rzecz biorąc, w przypadku macierzy ukośnej łatwo jest odczytać wartości eigenów i wektorów eigenowych. Wartości eigenów to wszystkie liczby pojawiające się na przekątnej, a ich odpowiednie wektory eigenowe są wektorami jednostkowymi z jednym wpisem równym $1$ , a pozostałe wpisy są równe $0$.
Zwróć uwagę, że w przykładzie wektory eigenowe D$ tworzą podstawę dla $wektorów $3-wymiarowych$. Podstawą jest zestaw wektorów, tak aby każdy wektor mógł być zapisywany jako liniowa kombinacja. Bardziej jawnie, v_1$, $v_2$ i $v_3$ tworzą podstawę, $jeśli dowolny wektor $v$ v można zapisać jako $=v a_1 v_1 + a_2 v_2 + a_3 v_3$ dla niektórych liczb $a_1$, $a_2$ i $a_3$.