Partilhar via


Vetores e matrizes em computação quântica

Alguma familiaridade com álgebra linear é essencial para entender a computação quântica. Este artigo apresenta os conceitos básicos de álgebra linear e como trabalhar com vetores e matrizes na computação quântica.

Vetores

Um vetor de coluna, ou vetor para abreviar, $v$ de dimensão (ou tamanho) $n$ é uma coleção de $n$ números $complexos (v_1,v_2,\ldots,v_n)$ organizados como uma coluna:

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

A norma de um vetor v é definida como $\sqrt{\sum_i |v_i|^2}$.$$ Um vetor é chamado de vetor unitário se sua norma for $1$.

O adjunto de um vetor $de coluna v$ é um vetor de linha denotado como $v^\dagger$ e é definido como a transposição conjugada de $v$. Para um vetor $de coluna v$ de dimensão $n$, o adjunto é um vetor de linha de dimensão $1 \times n$:

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

onde $v_i^*$ denota o conjugado complexo de $v_i$.

Usando álgebra linear, o estado de um qubit $\psi= um \ket{1}$\ket{0} + b é descrito como um vetor de estado quântico $\begin{bmatrix} a \ b \end{bmatrix}$, onde $|um|^2 + |b|^2 = 1$. Para obter mais informações, consulte O qubit.

Produto escalar

Dois vetores podem ser multiplicados juntos através do produto escalar, também conhecido como produto ponto ou produto interno. Como o nome indica, o resultado do produto escalar de dois vetores é um escalar. O produto escalar dá a projeção de um vetor em outro e é usado para expressar um vetor como uma soma de outros vetores mais simples. O produto escalar entre dois vetores de coluna u$ e $v$ é denotado $como $\left\langle u, v=\right\rangle u^\dagger v $ e é definido como

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

Com o produto escalar, a norma de um vetor $v$ pode ser escrita como $\sqrt{\langle v, v\rangle}$.

Você pode multiplicar um vetor por um número $a$ para formar um novo vetor cujas entradas são multiplicadas por $a$. Você também pode adicionar dois vetores $u$ e $v$ para formar um novo vetor cujas entradas são a soma das entradas de $u$ e $v$. Estas operações são as seguintes:

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

Matrizes

Uma matriz de tamanho $m \times n$ é uma coleção de $números complexos m\cdot n$ dispostos em $m$ linhas e $n$ colunas, como mostrado abaixo:

$$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}$$

Nota

Note que um vetor de dimensão $n$ é simplesmente uma matriz de tamanho $n \times 1$.

As operações quânticas são representadas por matrizes quadradas, ou seja, o número de linhas e colunas é igual. Por exemplo, operações de qubit único são representadas por $2 \times 2$ matrizes, como a operação Pauli $X$

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

Gorjeta

Na Q#, a operação Pauli $X$ é representada pela X operação.

Tal como acontece com os vetores, você pode multiplicar uma matriz com um número $c$ para obter uma nova matriz onde cada entrada é multiplicada por $c$, e duas matrizes do mesmo tamanho podem ser adicionadas para produzir uma nova matriz cujas entradas são a soma das respetivas entradas das duas matrizes.

Multiplicação matricial

Você também pode multiplicar uma matriz $M$ de dimensão $m \times n$ e uma matriz $N$ de dimensão $n \times p$ para obter uma nova matriz $P$ de dimensão $m \times p$ da seguinte forma:

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

onde as entradas de $P$ são $P_{ik}\sum=_j M_{ij}N_{jk.}$ Por exemplo, a entrada $P_{11}$ é o produto escalar da primeira linha de $M$ com a primeira coluna de $N$. Note que, uma vez que um vetor é simplesmente um caso especial de uma matriz, esta definição se estende à multiplicação matriz-vetor.

Tipos especiais de matrizes

Uma matriz quadrada especial é a matriz de identidade, denotada\mathbb{I}$$\mathbb{ , que tem todos os seus elementos diagonais iguais a $1$ e os restantes elementos iguais a $0$:

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

Para uma matriz quadrada A$, uma matriz $B$ é o seu inverso se $AB = BA\mathbb{I}$=\mathbb{ .$ Se uma matriz $A$ tem um inverso, a matriz inversa é única e é escrita como $A^{-1}$.

Para qualquer matriz $M$, a transposição adjunta ou conjugada de $M$ é uma matriz $N$ tal que $N_{ij}= M_{ji}^*$. O adjunto de M$ é denotado $$M^\dagger$.

Uma matriz U é unitária se $UU^=\dagger U^\dagger U =\mathbb{I}$ ou equivalentemente, $U^{{-1}= U^.\dagger$$$ Uma propriedade importante das matrizes unitárias é que elas preservam a norma de um vetor. Isto acontece porque

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

Nota

As operações quânticas são representadas por matrizes unitárias, que são matrizes quadradas cujo adjunto é igual ao seu inverso.

Uma matriz $M$ é chamada Hermitiana se $M=M^\dagger$.

Na computação quântica, existem essencialmente apenas duas matrizes que você encontra: Hermitiana e unitária.

Produto tensor

Outra operação importante é o produto tensor, também chamado de produto direto da matriz ou produto Kronecker.

Considere os dois vetores $v=\begin{bmatrix}a \\ b \end{bmatrix}$ e $u =\begin{bmatrix} c \\ d \end{bmatrix}$. Seu produto tensor é denotado como $v \otimes u$ e resulta em uma matriz de bloco.

$$ \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}=\begin{bmatrix} a c \\ a d \\ b c \\ b d \end{bmatrix}$$

Nota

Note que o produto tensor é distinguido da multiplicação matricial, que é uma operação totalmente diferente.

O produto tensor é usado para representar o estado combinado de vários qubits. O verdadeiro poder da computação quântica vem da alavancagem de vários qubits para realizar cálculos. Para saber mais, consulte Operações em vários qubits.