Notitie
Voor toegang tot deze pagina is autorisatie vereist. U kunt proberen u aan te melden of de directory te wijzigen.
Voor toegang tot deze pagina is autorisatie vereist. U kunt proberen de mappen te wijzigen.
Enige bekendheid met lineaire algebra is essentieel om kwantumcomputing te begrijpen. In dit artikel worden de basisconcepten van lineaire algebra geïntroduceerd en wordt uitgelegd hoe u werkt met vectoren en matrices in kwantumcomputing.
Vectoren
Een kolomvector, of kortweg vector, $v$ van dimensie (of grootte) $n$ is een verzameling van $n$ complexe getallen $(v_1,v_2,\ldots,v_n)$ gerangschikt als een kolom.
$$v =\begin{bmatrix} v_1\\ v_2\\ \vdots\\ v_n \end{bmatrix}$$
De norm van een vector $v$ wordt gedefinieerd als $\sqrt{\sum_i |v_i|^2}$. Een vector wordt een eenheidsvector genoemd als de norm 1 is.
De adjungeren van een kolomvector $v$ is een rijvector die wordt aangeduid als $v^\dagger$ en wordt gedefinieerd als de geconjugeerde transpose van $v$. Voor een kolomvector $v$ van dimensie $n$ is de aangrenzende rijvector van dimensie $1 \times n$:
$$\begin{bmatrix}v_1 \ \vdots \ v_n \end{bmatrix}^\dagger=\begin{bmatrix}v_1^* & \cdots& v_n^* \end{bmatrix}$$
waarbij $v_i^*$ de complexe geconjugeerde van $v_i$ aangeeft.
Met behulp van lineaire algebra wordt de toestand van een qubit $\psi= een \ket{0} + b \ket{1}$ beschreven als een kwantumtoestandvector$\begin{bmatrix} een \ b \end{bmatrix}$, waarbij $|een|^2 + |b|^2 = 1$. Zie De qubit voor meer informatie.
Scalaire product
Twee vectoren kunnen samen worden vermenigvuldigd via het scalaire product, ook wel puntproduct of inwendig product genoemd. Zoals de naam al aangeeft, is het resultaat van het scalaire product van twee vectoren een scalaire waarde. Het scalaire product geeft de projectie van de ene vector op de andere en wordt gebruikt om één vector uit te drukken als een som van andere eenvoudigere vectoren. Het scalaire product tussen twee kolomvectoren $u$ en $v$ wordt aangeduid als $\left\langle u, v\right\rangle= u^\dagger v $ en wordt gedefinieerd als
\[ \left\langle u, v \right\rangle = u^\dagger v = \begin{bmatrix} u_1^* & \cdots & u_n^* \end{bmatrix} \begin{bmatrix} v_1 \\ \vdots \\ v_n \end{bmatrix} = u_1^* v_1 + \cdots + u_n^* v_n. \] $$
Met het scalaire product kan de norm van een vector $v$ worden geschreven als $\sqrt{\langle v, v\rangle}$.
U kunt een vector vermenigvuldigen met een getal $a$ om een nieuwe vector te vormen waarvan de componenten worden vermenigvuldigd met $a$. U kunt ook twee vectoren u en v optellen om een nieuwe vector te vormen waarvan de elementen de som zijn van de elementen van u en v. Deze bewerkingen zijn als volgt:
$$ au+bv =\begin{bmatrix} au_1+bv_1\\ au_2+bv_2\\ \vdots\\ au_n+bv_n \end{bmatrix}$$
Matrices
Een matrix van grootte $m \times n$ is een verzameling van $m\cdot n$ complexe getallen gerangschikt in $m$ rijen en $n$ kolommen, zoals hieronder wordt weergegeven:
$$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}$$
Notitie
Houd er rekening mee dat een vector van dimensie $n$ simpelweg een matrix van grootte $n \times 1$ is.
Kwantumbewerkingen worden vertegenwoordigd door kwadratische matrices, dat wil gezegd, het aantal rijen en kolommen is gelijk. Zo worden bewerkingen met één qubit weergegeven door 2 bij 2 matrices, zoals de Pauli X-bewerking.
$$X =\begin{bmatrix} 0 & 1 1 \\& 0 \end{bmatrix}$$
Tip
In Q#, de Pauli $X$-bewerking wordt vertegenwoordigd door de X
-bewerking.
Net als bij vectoren kunt u een matrix met een getal $c$ vermenigvuldigen om een nieuwe matrix te verkrijgen waarbij elke vermelding wordt vermenigvuldigd met $c$, en twee matrices van dezelfde grootte kunnen worden toegevoegd om een nieuwe matrix te produceren waarvan de vermeldingen de som zijn van de respectieve vermeldingen van de twee matrices.
Matrixvermeniging
U kunt ook een matrix $M$ van de dimensie $m \times n$ en een matrix $N$ van de dimensie $n \times p$ vermenigvuldigen om een nieuwe matrix $P$ van de dimensie $m \times p$ te krijgen:
$$ \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}$$
waarbij de vermeldingen van $P$ zijn $P_{ik}=\sum_j M_{ij}N_{jk}$. De invoer $P_{11}$ is bijvoorbeeld het scalair product van de eerste rij van $M$ met de eerste kolom van $N$. Aangezien een vector gewoon een speciaal geval van een matrix is, wordt deze definitie uitgebreid tot vermenigvuldiging van matrixvectors.
Speciale soorten matrices
Een speciale vierkante matrix is de identiteitsmatrix, aangeduid met $\mathbb{I}$, waarbij alle diagonale elementen gelijk zijn aan 1 en de overige elementen gelijk aan 0:
$\mathbb{ \mathbb{I}=\begin{bmatrix} 1 0 \cdots 0\\ 0 1 \cdots 0\\\ddots\\ 0 \cdots 1 \end{bmatrix}.$
Voor een vierkante matrix \( A \) is een matrix \( B \) zijn \emph{inverse} als \( AB = BA = I \). Als een matrix $A$ een inverse heeft, is de inverse matrix uniek en wordt deze geschreven als $A^{-1}$.
Voor elke matrix $M$ is de aangrenzende of conjugtransponeren van $M$ een matrix $N$ zodanig dat $N_{ij}= M_{ji}^*$. De toegevoegde van $M$ wordt aangeduid met $M^\dagger$.
Een matrix $U$ is unitair als $UU^\dagger = = I\dagger, of equivalent, =U^\mathbb{I}$$ = I{. Een belangrijke eigenschap van unitaire matrices is dat ze de norm van een vector behouden. Dit gebeurt omdat
$\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.$
Notitie
Kwantumbewerkingen worden vertegenwoordigd door unitaire matrices, die kwadratische matrices zijn waarvan de aangrenzende gelijk is aan hun inverse.
Een matrix M wordt Hermitisch genoemd als M gelijk is aan zijn geconjugeerd getransponeerde, M†.
In kwantumcomputing zijn er in feite slechts twee matrices die u tegenkomt: Hermitian en unitair.
Tensor-product
Een andere belangrijke bewerking is het tensorproduct, ook wel het directe matrixproduct of Kronecker-product genoemd.
Beschouw de twee vectoren $v=\begin{bmatrix}a \\ b\end{bmatrix}$ en $u=\begin{bmatrix} c \\ d \end{bmatrix}$. Hun tensorproduct wordt aangeduid als $v \otimes u$ en resulteert in een blokmatrix.
$$ \begin{bmatrix} een \\ 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}=\begin{bmatrix} a c \\ a d \\ b c \\ b d d \end{bmatrix}$$
Notitie
Houd er rekening mee dat het tensor-product is onderscheiden van matrixvermeniging, wat een volledig andere bewerking is.
Het tensor-product wordt gebruikt om de gecombineerde toestand van meerdere qubits weer te geven. De echte kracht van kwantumcomputing komt door gebruik te maken van meerdere qubits om berekeningen uit te voeren. Voor meer informatie, zie Bewerkingen op meerdere qubits.
Gerelateerde inhoud
- De qubit
- Meerdere qubits
- Dirac notatie
- Pauli metingen