• Nenhum resultado encontrado

4.2 Modelos de computação quântica

4.2.1 Máquinas de Turing quânticas

O modelo de MTQ é uma generalização natural do modelo de MTs, definido mediante a suposição de que os elementos da máquina correspondem a observáveis de um

6Em princípio, as variáveis ocultas introduzidas no cálculo de anéis de polinômios (Seção 3.2) são

diferentes das variáveis ocultas da interpretação da mecânica quântica. Contudo, o uso de variáveis ocultas no cálculo de anéis de polinômios foi inspirado nas teorias quânticas de variáveis ocultas. De fato, essas variáveis foram inicialmente chamadas de variáveis quânticas em [Car05].

sistema físico microscópico.

Na generalização vamos considerar Q = {q1, . . . , qn} como sendo o conjunto de estados da máquina e Σ = {s1, . . . , sm} como sendo o alfabeto de entrada/saída, vamos definir uma configuração de fita T como uma seqüência infinita de símbolos em Σ, que representa o conteúdo da fita num determinado instante de tempo (portanto deve conter um número finito de símbolos diferentes de s1, que por convenção é o símbolo vazio), e vamos denotar por T (j) o símbolo na posição j da fita.

Pelo Postulado 1, o estado de uma MTQ M, no instante de tempo t, é represen- tado por um vetor unitário | ψ(t) i, no espaço de Hilbert H(Q, Σ) gerado pelo espaço de configurações C(Q, Σ) = Q × Σ#× Z, onde Σ#é o conjunto de todas as possíveis configurações de fita T . Cada elemento | qi, T, ni de C(Q, Σ) representa uma possível configuração de uma MT clássica, sendo qi o estado atual, T o conteúdo da fita e n a posição atual da máquina. Portanto, o estado de uma MTQ pode ser considerado como uma superposição de configurações de uma MT clássica.

Pelo Postulado 3 e a discussão subseqüente, os observáveis correspondentes ao estado atual da máquina, à posição atual da máquina e ao símbolo na posição j da fita são representados, respectivamente, pelos operadores:

ˆ q = n X i=1 i| qiih qi|, ˆp = X p∈Z p| p ih p |, ˆT (j) = m X i=1 i| siih si|. (4.17) Uma computação numa MTQ M começa no instante de tempo t = 0; nesse instante, M é preparada (através de alguma ação experimental) num estado inicial, que segundo o Postulado 4 é representado pelo produto tensorial:

| ψ(0) i = | q0, Tinicial, 0i. (4.18) A computação é realizada em passos de duração fixa τ. Portanto, como estabelecido pelo Postulado 2, a evolução de M em cada passo de computação é descrita por um operador unitário U em H(Q, Σ). Assim, depois de n passos de computação o estado de M é descrito por:

| ψ(nτ) i = Un| ψ(0) i, (4.19)

acima, pode ser representado como uma matriz M, onde o elemento na fila i e coluna j representa a amplitude de transição da configuração Cj à configuração Ci.

As transições de configurações no processo de computação de uma MTQ, de maneira similar a como se faz para as MTs probabilísticas, podem ser representadas por meio de uma árvore (Figura 4.1), onde os nós correspondem a configurações (de MT clássicas) Ci, e as aresta entre os nós Ci e Cj são assinaladas com αij, indicando a amplitude de probabilidade de passar da configuração Ci à configuração Cj. A raiz da árvore corresponde à configuração inicial C0 = (q0, Tinicial, 0).

C0 α011 vvlllll llllll lllll α01n (( Q Q Q Q Q Q Q Q Q Q Q Q Q Q Q Q C11 α1121   α112m > > > > > > > > . . . C1n α1n2k α1n2l = = = = = = = = = C21 ... . . . C2...m . . . C...2k . . . C...2l Figura 4.1: Árvore de computação numa MTQ

Diferentemente de uma MT probabilística, onde cada computação particular per- corre somente um caminho da árvore (de acordo com as probabilidades dadas), nas MTQs a computação percorre todos os possíveis caminhos simultaneamente. Como o número de nós vai crescendo exponencialmente em cada nível da árvore, isso sig- nifica que a MTQ pode estar, num momento da computação, numa superposição de um número exponencial de configurações, de acordo com o número de passos da computação. Dessa maneira, as MTQs expressam um tipo de paralelismo no pro- cesso de computação, o que é chamado de paralelismo quântico. Porém, para se obter o resultado da computação deve se realizar uma medição ao final do processo e, devido ao Postulado 3, somente uma configuração da superposição é obtida de maneira probabilística, perdendo irreversivelmente as outras configurações.8 Por-

8Para determinar quando termina o processo de computação numa MTQ, para realizar a medição

tanto, o paralelismo deve ser aproveitado, através da interferência quântica, antes da computação terminar, de maneira a aumentar a amplitude de probabilidade dos resultados desejados e diminuir a dos não desejados. Alguns cominhos da arvore podem desaparecer devido à interferência destrutiva.

É importante indicar que a interpretação das computações em MTQs, como pro- posta em [Deu85], é realizada através da interpretação de múltiplos mundos da mecâ- nica quântica. Esse tipo de interpretação permite pensar os estados superpostos das MTQs como a coexistência de configurações de MTs clássicas, e o paralelismo quân- tico como a execução simultânea das diferentes possíveis computações. Em [Deu85], Deutsch chega a afirma que não é possível explicar a computação quântica através de qualquer outra interpretação da mecânica quântica sem se perder totalmente o poder explicativo. No Capítulo 5 (Seção 5.2) vamos apresentar alguns argumentos contra esta afirmação de Deutsch.

Além de substituir os elementos da MT por observáveis de um sistema micros- cópico, Deutsch, na sua definição do modelo de MTQs, exige condições de ‘finitude’ similares às impostas por Turing para suas máquinas abstratas. Assim, as operações de uma MTQ estão restritas pelas seguintes condições:

1. Somente uma parte finita do sistema pode mudar durante cada passo de com- putação.

2. A mudança deve depender somente do estado de um subsistema finito. 3. As regras que especificam a mudança devem ser dadas finitamente.

Para satisfazer estas condições, os elementos da matriz que representa o operador de evolução U devem ser da forma:

h q′, T′, p′|U| q, T, p i =            δ (q, T (p), q′, T′(p), 1) se p′ = p + 1 δ (q, T (p), q′, T′(p), 0) se p′ = p δ (q, T (p), q′, T′(p),−1) se p′ = p− 1 (4.20)

qubit deve ser modificado adequadamente pelo operador de evolução e é medido em todo instante de tempo, até se obter o valor 1 como saída, o que indica que a computação terminou (cf. [Oza98]).

sempre que T′(m) = T (m) para todo m 6= p, e h q, T, p|U| q, T, p i = 0 em outro caso. A função δ é da forma δ: Q × Σ × Q × Σ × {−1, 0, 1} → ˜C, e é chamada função de transição local. Os valores em{−1, 0, 1} representam os movimentos da cabeça de leitura/escrita (à esquerda, não movimento e à direita, respectivamente) e ˜C repre- senta o conjunto dos números complexos computáveis. Portanto, δ(q, s, q′, s, d) = c é interpretado assim: se M está no estado q, lendo o símbolo s, então, com uma amplitude de probabilidade c, a máquina M escreve o símbolo s′, faz o movimento d′ e passa ao estado q′.

Para assegurar que o operador U seja unitário, e portanto M seja reversível, δ deve validar as seguintes condições:

1. Para toda (q, s) ∈ Q × Σ: X q′,s,d

|δ(q, s, q′, s′, d′)|2= 1. (4.21)

2. Para toda (q, s), (t, r) ∈ Q × Σ, com (q, s) 6= (t, r): X q′,s,d′ δ(q, s, q′, s′, d′)· δ(t, r, q′, s′, d′) = 0. (4.22) 3. Para toda (q, s, r′), (t, r, s)∈ Q × Σ2: X q′∈Q,d∈{0,1} δ(t, r, q′, s′, d′− 1) · δ(q, s, q′, r′, d′) = 0. (4.23) 4. Para toda (q, s, r′), (t, r, s)∈ Q × Σ2: X q′∈Q δ(t, r, q′, s′,−1) · δ(q, s, q′, r′, 1) = 0. (4.24)

O operador de evolução U é totalmente determinado pela função de transição local, conseqüentemente, as MTQs podem ser definidas por meio dessa função de transição sem fazer referência ao operador de evolução como noção primitiva.