• Nenhum resultado encontrado

4.2 Modelos de computação quântica

4.2.2 Circuitos quânticos

O modelo de CQs é uma generalização, também natural, do modelo de circuitos lógi- cos clássicos (ou circuitos booleanos), definido mediante a suposição de que o circuito é implementado através de um sistema microscópico e, portanto, condicionado pelas leis da mecânica quântica.

Um CQ é então uma coleção finita de variáveis de entrada e portas conectadas de maneira acíclica e direcionada, onde as variáveis de entrada, em lugar de bits clássicos, são qubits (de acordo com o Postulado 1), e onde as portas (chamadas portas quânticas), em lugar de realizar operações booleanas, realizam transformações unitárias (de acordo com o Postulado 2).

Devido a propriedades da mecânica quântica, diferentemente dos circuitos lógi- cos clássicos, onde as operações de fanin e fanout são permitidas,9 nos CQs estas operações não são possíveis. A primeira é impossível por se tratar de uma operação não reversível, o que vai em contradição com a reversibilidade da evolução dos siste- mas quânticos (enquanto não são realizadas medições), e a segunda é impedida pelo Teorema de Não-clonagem:

Teorema 4.1. Não existe uma transformação unitária que copie ou clone qubits arbitrários; i.e., não existe transformação unitária U tal que U| a, 0 i = | a, a i para qualquer qubit | a i.

Demonstração. Suponha que exista uma transformação unitária U tal que U| a, 0 i = | a, a i para todo | a i. Sejam | a i e | b i dois estados ortogonais (portanto podem ser tomados como base para o espaço dos qubits). Pela definição de U, tem-se que U| a, 0 i = | a, a i e U| b, 0 i = | b, b i. Considere | c i = √1

2(| a i + | b i); pela linearidade de U:

U| c, 0 i = √1

2(U| a, 0 i + U| b, 0 i) = √1

2(| a, a i + | b, b i). (4.25)

9A operação de fanin consiste na união de duas conexões em uma só, contendo a disjunção do

conteúdo das duas conexões; enquanto a operação de fanout consiste na divisão de uma conexão em várias, cada uma contendo uma cópia do conteúdo da conexão inicial.

Mas, por outro lado, pela definição de U tem-se que: U| c, 0 i = | c, c i = 1

2(| a, a i + | a, b i + | b, a i + | b, b i), (4.26) o que contradiz o resultado obtido acima.

Nos CQs o número de saídas das portas deve ser igual ao número de entradas, de forma a assegurar a reversibilidade das operações. Porém na saída do circuito podem ser descartados alguns valores, de maneira que o resultado da computação corresponde aos valores obtidos na medição de um subconjunto específico de qubits de saída.

As medições num CQ são realizadas ao final do circuíto.10 Tais medições são regidas pelo Postulado 3, e portanto obtém-se um valor de maneira probabilística, dependendo das amplitudes de probabilidade do estado do sistema ao momento de realizar a medição; nesse momento, como consequência desse postulado, o estado do sistema colapsa ao autovetor correspondente ao autovalor obtido na medição.

De maneira análoga ao que acontece nas MTQs, nos CQs os estados superpos- tos e a linearidade dos operadores unitários permitem realizar processamento em paralelo, o que corresponde ao paralelismo quântico neste modelo (que também é ex- plicado através da interpretação de múltiplos mundos da mecânica quântica). Esse paralelismo, tal como no caso das MTQs, deve ser aproveitado antes de se realizar a medição e perder-se irreversivelmente a superposição de estados.

Como já foi mencionado no começo deste capítulo, Yao demonstrou em [Yao93] que qualquer função computável em tempo polinomial numa MTQ pode ser com- putada por um CQ de tamanho polinomial (usando somente portas quânticas ‘ele- mentares’, que correspondem a um conjunto de portas quânticas ‘universais’, o que será descrito adiante). Esse resultado legitima a definição de algoritmos quânticos através de CQs, ao invés de MTQs, o que parece facilitar o trabalho. Na próxima seção vamos descrever alguns algoritmos, definidos através de CQs, que ilustrarão

10Medições em passos intermédios dos CQs são às vezes realizadas, e os resultados são usados

para controlar outras portas. Contudo, estas medições podem ser substituídas por portas quânticas controladas (que serão descritas adiante), postergando a medição para o final do circuito e obtendo o mesmo resultado (cf. [NC00, p. 186]).

como funciona o paralelismo nesse modelo; mas antes disso vamos apresentar al- gumas portas quânticas que são de uso comum e vamos descrever um conjunto de portas quânticas universais.

As matrizes de Pauli (Equação 4.4) e o operador H (Equação 4.8) são exemplos de portas quânticas que operam sobre um qubit. A matriz X de Pauli é chamada de porta de negação, pois inverte os valores base | 0 i e | 1 i. O operador H é cha- mado de porta de Hadamard e é comumente usado no começo do circuito para gerar superposições perfeitas de estados (i.e. superposições onde todas as amplitudes de probabilidade são iguais), para depois, aproveitando a linearidade dos operadores quânticos, realizar processamento em paralelo sobre todos os elementos da base.

Outras portas comuns, que operam sobre um qubit, são as chamadas porta de fase (denotada por S) e porta π/8 (denotada por T )11:

S =  1 0 0 i  , T =  1 0 0 eiπ/4  . (4.27)

Um tipo especial de portas quânticas são as chamadas portas controladas; nessas portas tem-se um qubit de controle que determina se a operação sobre os outros qubits é ou não realizada. Um exemplo destas portas é a chamada porta de negação controlada: Xc =        1 0 0 0 0 1 0 0 0 0 0 1 0 0 1 0        . (4.28)

Esta porta opera sobre um 2-qubit, realizando as transformações: Xc:| 0, 0 i 7→ | 0, 0 i

| 0, 1 i 7→ | 0, 1 i | 1, 0 i 7→ | 1, 1 i

| 1, 1 i 7→ | 1, 0 i. (4.29)

11Esta porta é denominada π/

8, embora na definição apareça o exponente π/4, devido a que

anteriormente esta porta era expressa por uma matriz equivalente onde aparecia o exponenteπ/8

Note que o segundo qubit é negado somente se o primeiro qubit é | 1 i (se o primeiro qubit é | 0 i não se realiza nenhuma operação). A representação gráfica da porta Xc num CQ é: | y i | x i | x ⊕ y i | x i b ⊕

Figura 4.2: Representação gráfica da porta Xc

Em geral, a representação gráfica das portas U-controladas é:

| x i b | x i | ψni | ψ1i ... U | Sni | S1i ...

Figura 4.3: Representação gráfica de uma porta U-controlada

De maneira similar à existência de conjuntos de portas clássicas universais, os quais são conjuntos de portas booleanas através das quais qualquer função f :{0, 1}n→ {0, 1}m pode ser calculada, existem também conjuntos de portas quân-

ticas universais, os quais são conjuntos de portas quânticas tais que qualquer trans- formação unitária pode ser aproximada, com precisão arbitrária, por um circuito quântico contendo somente portas desse conjunto. No caso dos circuitos quânticos é exigida somente uma ‘aproximação’ com precisão arbitrária, pelo fato do conjunto de transformações ser continuo. Existem múltiplos conjuntos de portas quânticas universais, um deles consiste nas portas H, S, Xc e π/8 apresentadas acima (cf. [NC00, Seção 4.5.2]). Outro conjunto´de portas universais consiste da porta de Tof- foli T (que é uma negação duplamente controlada) e da porta H, este conjunto é interessante por mostrar, de certa maneira, o mínimo que deve ser acrescentado à computação clássica para obter todas as potencialidades da computação quântica

(cf. [Aha03]).