codigos qu anticos coloridos em superf^ icies … · a minha m~ae iria mazetto brizola e meu pai...
TRANSCRIPT
UNIVERSIDADE ESTADUAL DE MARINGA
CENTRO DE CIENCIAS EXATAS
DEPARTAMENTO DE MATEMATICA
PROGRAMA DE POS-GRADUACAO EM MATEMATICA
(Mestrado)
EVANDRO MAZETTO BRIZOLA
CODIGOS QUANTICOS COLORIDOS EM SUPERFICIES
COMPACTAS COM GENERO g ≥ 2
Maringa-PR
2019
EVANDRO MAZETTO BRIZOLA
Dissertacao apresentada ao Programa de Pos-
Graduacao em Matematica do Departamento de
Matematica, Centro de Ciencias Exatas da Uni-
versidade Estadual de Maringa, como parte dos
requisitos necessarios para obtencao do tıtulo de
Mestre em Matematica.
Area de concentracao: Matematica Aplicada.
Orientador: Dr. Eduardo Brandani da Silva.
Maringa
2019
Dados Internacionais de Catalogação na Publicação (CIP)
(Biblioteca Setorial BSE-DMA-UEM, Maringá, PR, Brasil) Brizola, Evandro Mazetto B862c Códigos quânticos coloridos em superfícies
compactas com gênero g ≥ 2 / Evandro Mazetto Brizola. -- Maringá, 2019.
83 f. : il. color. Orientador: Profº. Drº. Eduardo Brandani da
Silva. Dissertação (mestrado) - Universidade Estadual de
Maringá, Centro de Ciências Exatas, Programa de Pós-Graduação em Matemática - Área de Concentração: Matemática Aplicada, 2019.
1. Códigos quânticos corretores de erros. 2.
Códigos coloridos em superfícies compactas. 3. Mecânica quântica. 4. Geometria hiperbólica. I. Silva, Eduardo Brandani da, orient. II. Universidade Estadual de Maringá. Centro de Ciências Exatas. Programa de Pós-Graduação em Matemática - Área de Concentração: Matemática Aplicada. III. Título.
CDD 22.ed. 003.54
Edilson Damasio CRB9-1.123
Agradecimentos
Primeiramente, agradeco a Deus e a Nossa Senhora da Conceicao Aparecida por todas as
bencaos recebidas e por me darem forcas para realizar com muito empenho e dedicacao mais
essa etapa de meus estudos.
Agradeco a minha famılia por todo o suporte dado nesse perıodo do mestrado, em especial
a minha mae Iria Mazetto Brizola e meu pai Valter Brizola. A minha namorada Patrine
Kieling de Lima por sempre estar ao meu lado me apoiando em todos os momentos.
Aos meus professores da UTFPR-PB por todos os ensinamentos durante a minha gra-
duacao, em especial ao professor Dr. Carlos Alexandre Ribeiro Martins que foi muito im-
portante para que eu escolhesse e ingressasse no PMA da UEM e por ter me apresentado ao
meu orientador.
Aos meus professores do PMA por todos os ensinamentos durante o mestrado.
Ao meu orientador, professor Dr. Eduardo Brandani da Silva, por ter me aceito como
orientando e por todos os ensinamentos compartilhados e ajudas durante esse perıodo. Por
ter me apresentado a essa area de estudo e pela confianca que depositou em mim.
Aos colegas feitos durante o mestrado que de uma maneira ou de outra, contribuıram
para o exito obtido.
A CNPq pelo auxılio financeiro nesses dois anos de mestrado, que foi fundamental para
a conclusao do mesmo.
Resumo
O objetivo principal deste trabalho e apresentar a construcao dos codigos quanticos colori-
dos em superfıcies compactas com genero g maior ou igual a dois. Para isso, apresentamos
alguns elementos da mecanica quantica, essenciais para a compreensao dos mesmos. Abor-
damos varios codigos quanticos corretores de erros, com um maior destaque para os codigos
quanticos topologicos, onde se encontra os codigos quanticos coloridos. Por fim, apresenta-
mos varios elementos da geometria hiperbolica e fazemos detalhadamente a construcao dos
codigos quanticos coloridos em superfıcies compactas com g maior ou igual a dois, apresen-
tando os parametros dos codigos obtidos para g variando de dois a nove, e apresentamos uma
famılia de codigos quanticos que construımos fixando a distancia mınima do codigo.
Palavras-chave: mecanica quantica, geometria hiperbolica, codigos quanticos corretores
de erros, codigos quanticos topologicos, codigos coloridos, codigos coloridos em superfıcies
compactas.
Abstract
The main goal of this work is to present the construction of color quantum codes on compact
surfaces with genus g greater than or equal to two. For this, we present some elements
of quantum mechanics essential for their understanding. We introduced several quantum
error-correction codes, with a greater emphasis on the topological quantum codes, where
the quantum color codes are inserted. Finally, we present several elements of hyperbolic
geometry and we made the construction of color quantum codes on compact surfaces with g
greater than or equal to two, giving the parameters of the codes obtained for 2 ≤ g ≤ 9, and
we present a family of quantum codes that we constructed by fixing the minimum distance
of the code.
Keywords: quantum mechanics, hyperbolic geometry, quantum error-correction codes, to-
pological quantum codes, color codes, color codes on compact surfaces.
Sumario
Introducao 1
1 Preliminares 3
1.1 Notacoes . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3
1.2 Qubit . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4
1.3 Algebra Linear . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 5
1.4 Matrizes de Pauli . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 11
1.5 Os Postulados da Mecanica Quantica e Medicoes . . . . . . . . . . . . . . . . 13
1.6 Fase . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 20
2 Codigos Quanticos Corretores de Erros 23
2.1 Codigo Bit Flip de Tres Qubits . . . . . . . . . . . . . . . . . . . . . . . . . 24
2.2 Codigo Phase Flip de Tres Qubits . . . . . . . . . . . . . . . . . . . . . . . . 27
2.3 Codigo de Shor . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 29
2.4 Codigos CSS . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 30
2.5 Codigos Estabilizadores . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 36
3 Codigos Quanticos Topologicos 42
3.1 Homologia . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 42
3.2 Codigos de Superfıcie . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 45
3.2.1 Estabilizadores . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 47
3.2.2 Tesselacao Dual . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 49
SUMARIO ix
3.2.3 Operadores Strings . . . . . . . . . . . . . . . . . . . . . . . . . . . . 50
3.2.4 Codigo Torico de Kitaev . . . . . . . . . . . . . . . . . . . . . . . . . 52
3.3 Codigos Quanticos Coloridos . . . . . . . . . . . . . . . . . . . . . . . . . . . 52
4 Construcao dos Codigos Quanticos Coloridos em Superfıcies Compactas
com g ≥ 2 57
4.1 Geometria Hiperbolica . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 57
4.1.1 Tesselacoes Regulares . . . . . . . . . . . . . . . . . . . . . . . . . . . 62
4.1.2 Emparelhamento de Lados . . . . . . . . . . . . . . . . . . . . . . . . 63
4.2 Construcao dos Codigos . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 66
4.2.1 Determinando os Parametros dos Codigos . . . . . . . . . . . . . . . 68
4.2.2 Codigos Gerados . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 73
4.2.3 Uma Famılia Obtida Fixando d Par . . . . . . . . . . . . . . . . . . . 78
Consideracoes Finais 80
Referencias 81
Introducao
Da mesma forma que a mecanica classica, a mecanica quantica descreve como os objetos
fısicos se movem em funcao do tempo, porem utilizando estruturas matematicas diferentes
das utilizadas na mecanica classica. No caso da classica, o estado de um sistema em um
dado momento e representado por um ponto em um espaco de fase. Por exemplo, para uma
unica partıcula movendo-se em uma dimensao, o espaco de fase e o plano x, p, consistindo de
pares de numeros (x, p) que representam a posicao e o momento. Ja na mecanica quantica,
o estado dessa partıcula e dado por uma funcao de onda de valor complexo ψ(x), e , todas
as funcoes possıveis estao em um espaco vetorial linear complexo com produto interno, ou
seja, um espaco de Hilbert. Para mais informacoes sobre mecanica quantica, recomendamos
ao leitor [18], [22], [25].
Ja na questao da computacao quantica, um computador baseado nos princıpios da teoria
quantica foi proposto primeiro por Richard Feynman em 1982 [13]. Um grande avanco nessa
area ocorreu com David Deutsch [11], que descreveu uma versao quantica da maquina de
Turing.
Em 1994, Peter Shor [27] mostrou, usando propriedades quanticas, que diferentemente
de um computador convencional, que fatora um numero com n dıgitos em uma quantidade
de passos que cresce de maneira exponencial, um computador quantico faz isso com uma
quantidade de passos que cresce de maneira polinomial.
Existem muitas dificuldades em se realizar computacao quantica e uma das maiores difi-
culdades esta na decoerencia quantica, que e o decaimento de estados em superposicao, como
pode ser visto em [32].
Em 1948, Claude Shannon introduziu os codigos corretores de erros classicos [26], os quais
Introducao 2
serviram de inspiracao para a criacao de codigos quanticos corretores de erros.
Em 1995, Peter Shor [28] exibiu o primeiro codigo quantico corretor de erro, o qual foi
uma mistura de dois codigos de 3 qubits, protegendo o estado contra erros bit flip e phase
flip.
Robert Calderbank, Peter Shor e Andrew Steane desenvolveram em 1996 os codigos
quanticos CSS [8], [30], que geraram uma grande classe de codigos conhecida como codigos
quanticos estabilizadores [16]. Ja em 1997, Alexei Yu Kitaev [21] desenvolveu um novo codigo
conhecido como codigo torico de Kitaev, que agora e visto como um exemplo dos codigos
quanticos topologicos. Os geradores estabilizadores desses codigos sao geometricamente lo-
cais, ou seja, agem em uma quantidade pequena de qubits em sua vizinhanca, fazendo com
que as palavras quanticas se tornem resistentes aos ruıdos locais [5].
Em 2009, Clarice Albuquerque, Reginaldo Pallazo e Eduardo B. Silva [1] desenvolveram
uma extensao dos codigos de Kitaev para superfıcies compactas com genero g ≥ 2, onde se fez
necessario o uso de geometria hiperbolica. Os codigos topologicos obtidos, conhecidos como
codigos de superfıcie, foram os codigos com os melhores parametros ate aquele momento.
Hector Bombın e Miguel A. Martin-Delgado [6] desenvolveram os codigos quanticos colo-
ridos, que sao uma subclasse dos codigos quanticos estabilizadores. Esses codigos codificam
o dobro de qubits em relacao aos codigos de superfıcie, para uma mesma superfıcie.
Inspirados em [1], Waldir Silva Soares e Eduardo B. Silva desenvolveram em 2018, os
codigos quanticos coloridos em superfıcies compactas com genero g ≥ 2 [29], que foi utilizado
como principal referencia para a elaboracao dessa dissertacao.
Este trabalho esta organizado da seguinte maneira: No Capıtulo 1, apresentaremos alguns
elementos da mecanica quantica para a compreensao dos codigos quanticos. Em seguida, no
Capıtulo 2, abordaremos varios codigos quanticos corretores de erros, como por exemplo, os
codigos CSS e os codigos estabilizadores. No Capıtulo 3, falaremos sobre os codigos quanticos
topologicos, onde faremos a construcao dos codigos de superfıcie e dos codigos quanticos
coloridos. Por fim, no Capıtulo 4, introduzimos varios conceitos de geometria hiperbolica,
apresentaremos a construcao dos codigos quanticos coloridos em superfıcies compactas com
genero g ≥ 2 e mostraremos uma famılia de codigos que nos construımos.
Capıtulo 1
Preliminares
Antes de falarmos sobre os codigos quanticos iremos apresentar alguns elementos que sao
indispensaveis para a compreensao desses codigos, desde as notacoes que iremos utilizar
ate elementos basicos da mecanica quantica, como por exemplo, os postulados e algumas
medicoes quanticas.
Este capıtulo esta dividido da seguinte maneira. Na Secao 1.1, apresentaremos algumas
notacoes da mecanica quantica que serao utilizadas em praticamente todo o nosso trabalho.
Em seguida, na Secao 1.2, explicaremos o que e um qubit, fazendo um comparativo com o
conhecido bit classico. Seguiremos o capıtulo na Secao 1.3, onde relembraremos varios concei-
tos de algebra linear, conceitos esses os quais utilizaremos a notacao de Dirac apresentada na
primeira secao. Apos, na Secao 1.4, falaremos das matrizes de Pauli, que sao os operadores
mais importantes que aparecerao no decorrer do trabalho. Na Secao 1.5, abordaremos os
postulados em que a mecanica quantica esta sustentada, juntamente com as medicoes proje-
tivas e medicoes POVM. Por fim, na Secao 1.6, falaremos brevemente sobre o termo “fase”.
Para mais detalhes recomendamos ao leitor [18], [23], [24].
1.1 Notacoes
Na tabela 1.1 apresentamos algumas notacoes de algebra linear na notacao de Dirac que sao
utilizadas na literatura de mecanica quantica e irao aparecer em nosso trabalho.
1.2 Qubit 4
Notacao Descricao
z∗ Complexo conjugado do numero complexo z.
|ψ〉 Vetor. Tambem chamado de ket.
〈ψ| Vetor dual a |ψ〉. Tambem chamado de bra.
〈ϕ|ψ〉 Produto interno entre os vetores |ϕ〉 e |ψ〉.
|ϕ〉 ⊗ |ψ〉 ou |ϕψ〉 ou |ϕ〉|ψ〉 Produto tensorial entre os vetores |ϕ〉 e |ψ〉.
A† Adjunta da matriz A.
〈ϕ|A|ψ〉 Produto interno entre os vetores |ϕ〉 e A|ψ〉
ou entre os vetores A†|ϕ〉 e |ψ〉.
|ϕ〉〈ψ| Operador produto externo ou tambem chamado de “dyad”.
Tabela 1.1: Notacoes utilizadas em mecanica quantica, conhecidas como notacao de Dirac.
1.2 Qubit
Falaremos agora sobre o qubit (ou bit quantico) que e o sistema mecanico quantico funda-
mental, o qual usaremos em todo o nosso trabalho, e e o sistema mecanico quantico mais
simples possıvel.
Do mesmo modo que um bit classico tem um estado (0 ou 1), um qubit tambem tem.
Uma das coisas que distingue bit e qubit e que um qubit pode estar no estado |0〉 ou |1〉,
onde
|0〉 =
1
0
e |1〉 =
0
1
,ou, ainda, podemos ter combinacoes lineares desses estados (chamadas de superposicao) da
seguinte forma:
|ψ〉 = α|0〉+ β|1〉, (1.1)
onde α, β ∈ C. O estado de um qubit nada mais e que um vetor em um espaco vetorial com-
plexo bidimensional C2, que e um espaco de Hilbert. Qualquer combinacao linear∑
i αi|ψi〉
e uma superposicao de estados |ψi〉 com amplitude αi para o estado |ψi〉.
Os estados |0〉 e |1〉 sao conhecidos como estados na base computacional, os quais for-
1.3 Algebra Linear 5
mam uma base ortonormal para o espaco vetorial, tambem chamado de espaco de estados.
Utilizaremos sempre o fato de |ψ〉 ser unitario, ou seja, 〈ψ|ψ〉 = 1, o que e equivalente a
|α|2 + |β|2 = 1. Assim, quando medirmos um qubit a probabilidade de obtermos o resultado
|0〉 sera de |α|2 e a probabilidade de obtermos o resultado |1〉 sera de |β|2.
Por exemplo, considere o qubit |ϕ〉 = 1√2|0〉 + 1√
2|1〉. A probabilidade de obtermos o
resultado |0〉 ao medirmos esse qubit sera de∣∣∣ 1√
2
∣∣∣2 , que e a mesma probabilidade de obtermos
o resultado |1〉. Observe que as probabilidades somam um. De fato,∣∣∣∣ 1√2
∣∣∣∣2 +
∣∣∣∣ 1√2
∣∣∣∣2 =1
2+
1
2= 1.
No caso dos bits, podemos ter quatro estados formados por dois bits classicos, 00, 01,
10 e 11. Ja para o sistema de dois qubits, temos os estados |00〉, |01〉, |10〉 e |11〉 que sao
chamados de estados na base computacional. Esses estados pertencem ao espaco de Hilbert
C2 ⊗ C2 = C4.
A superposicao desses quatro estados e dado da seguinte forma:
|ψ〉 = α00|00〉+ α01|01〉+ α10|10〉+ α11|11〉. (1.2)
A probabilidade da medicao resultar em, por exemplo, |00〉 sera de |α00|2. Analogamente
para os demais qubits.
A condicao de que as probabilidades somam um devera ser satisfeita, ou seja, dado W =
{00, 01, 10, 11} temos que, ∑x∈W
|αx|2 = 1. (1.3)
Para n qubits, podemos definir uma base {|jn−1jn−2 · · · j0〉}, onde jk = 0, 1 e essa base
contem 2n vetores.
1.3 Algebra Linear
Nesta secao faremos um apanhado de varios conceitos de algebra linear na notacao de Dirac,
os quais iremos utilizar com frequencia em nosso trabalho. Daremos essa atencao especial a
algebra linear, pois ela e a linguagem matematica fundamental da mecanica quantica.
1.3 Algebra Linear 6
Definicao 1.1. Seja W um espaco vetorial e C o conjunto dos numeros complexos. Uma
funcao (· , · ) : W ×W → C e um produto interno se satisfaz as seguintes condicoes:
(i) (· , · ) satisfaz (|v〉,
∑i
λi|wi〉
)=∑i
λi (|v〉, |wi〉) ;
(ii) (|v〉, |w〉) = (|w〉, |v〉)∗ ;
(iii) (|v〉, |v〉) ≥ 0 valendo a igualdade se, e somente se, |v〉 = 0.
Dizemos que um espaco com produto interno e um espaco vetorial W com um produto interno
definido em W .
Essa notacao (· , · ) que usamos para o produto interno, nao e a notacao de Dirac apresen-
tada na Secao 1.1. Mas sera usada para que possamos introduzir a notacao 〈· , · 〉 sem causar
confusao.
Os estados quanticos que trabalharemos sempre estarao em algum espaco vetorial com-
plexo de dimensao finita, e, em espacos vetoriais dessa forma, um espaco de Hilbert e exa-
tamente a mesma coisa que um espaco com produto interno. Assim, diremos que os estados
quanticos estao em algum espaco de Hilbert, e quando o fizermos, estaremos nos referindo a
algum Cn. Por isso, vamos definir um produto interno em Cn, o qual sempre sera utilizado
quando quisermos calcular o produto interno entre os estados quanticos. Vamos representar
por um momento os vetores coluna em Cn,
|v〉 =
v1
...
vn
,como |v〉 = (v1, . . . , vn). Sejam |v〉 = (v1, . . . , vn) , |w〉 = (w1, . . . , wn) ∈ Cn. O produto
interno entre |v〉 e |w〉 e definido como:
(|v〉, |w〉) = ((v1, . . . , vn) , (w1, . . . , wn)) ≡∑i
vi∗wi =
[v1∗ · · · vn
∗]
w1
...
wn
. (1.4)
1.3 Algebra Linear 7
Definindo 〈v| ≡ |v〉†, temos que
〈v| = |v〉† =
v1
...
vn
†
=[v1∗ · · · vn
∗].
Logo,
〈v|w〉 =[v1∗ · · · vn
∗]
w1
...
wn
. (1.5)
Note que, como representamos um vetor |v〉 como matriz coluna, o seu dual 〈v| sera uma
matriz linha, onde essa matriz e a transposta conjugada da matriz coluna que representa |v〉.
E como definimos 〈v| ≡ |v〉†, temos que (A|v〉)† = 〈v|A†.
E facil verificar que o produto interno definido acima e realmente um produto interno em
Cn.
Definicao 1.2. Sejam |v〉, |w〉 e |u〉 vetores. Dizemos que os vetores |v〉 e |w〉 sao ortogonais
se o produto interno entre eles for zero. E dizemos que |u〉 e um vetor unitario se a sua
norma for igual a um, onde a norma de um vetor |u〉 e definido por
|||u〉|| ≡√〈u|u〉. (1.6)
Exemplo 1.3. Considere os vetores |0〉 e |1〉. Veja que |0〉 e |1〉 sao ortogonais e ambos sao
unitarios. De fato,
〈0|1〉 =[
1∗ 0∗] 0
1
=[
1 0] 0
1
= 0
e
〈0|0〉 =[
1∗ 0∗] 1
0
=[
1 0] 1
0
= 1,
〈1|1〉 =[
0∗ 1∗] 0
1
=[
0 1] 0
1
= 1.
1.3 Algebra Linear 8
Definicao 1.4. Um conjunto de vetores |i〉 com i ındice, e um conjunto ortonormal se cada
vetor for um vetor unitario, e vetores distintos no conjunto sao ortogonais, ou seja, 〈i|j〉 =
δij, onde
δij =
1 se i = j
0 se i 6= j
e conhecido como delta de Kronecker.
Como exemplo, basta pegar o conjunto W = {|0〉, |1〉}. Pelas contas feitas no exemplo
1.3 temos que W e um conjunto ortonormal.
Quando aplicarmos algum operador A em um vetor |v〉, ou seja, A|v〉, estaremos conside-
rando uma representacao matricial do operador A em relacao a bases ortonormais de saıda
e entrada desse operador. Caso a entrada e saıda forem as mesmas, consideramos a mesma
base ortonormal para ambas.
Definicao 1.5. Seja |v〉 um vetor em um espaco vetorial com produto interno V e seja |w〉
um vetor em um espaco vetorial com produto interno W . Definimos |w〉〈v| como sendo o
operador linear de V em W cuja acao e definida por
(|w〉〈v|)(|v′〉) ≡ |w〉〈v|v′〉 = 〈v|v′〉|w〉,
onde 〈v|v′〉 e o produto interno de |v〉 por |v′〉 em V , logo 〈v|v′〉|w〉 e um multiplo de |w〉. O
operador linear |w〉〈v| e conhecido como produto externo ou dyad.
Uma aplicacao de produto externo e a seguinte:
Dada uma base ortonormal qualquer |i〉 para o espaco vetorial V e dado um vetor qualquer
|v〉 ∈ V , sabemos que |v〉 pode ser escrito na base |i〉 como
|v〉 =∑i
vi|i〉, (1.7)
para algum conjunto de numeros complexos vi. E facil ver que 〈i|v〉 = vi. Logo(∑i
|i〉〈i|
)|v〉 =
∑i
|i〉〈i|v〉
=∑i
vi|i〉
= |v〉.
1.3 Algebra Linear 9
Como tomamos um vetor |v〉 ∈ V qualquer, temos que∑i
|i〉〈i| = I. (1.8)
A equacao (1.8) e conhecida como relacao de completude e e extremamente util em varios
calculos.
Definicao 1.6. Sejam V um espaco de Hilbert e A um operador linear em V . Entao o
operador linear A† em V tal que, para todos os vetores |v〉, |w〉 ∈ V temos que
(|v〉, A|w〉) =(A†|v〉, |w〉
), (1.9)
e chamado de operador linear adjunto ou conjugado Hermitiano. Quando A = A† dizemos
que A e um operador Hermitiano ou auto-adjunto.
Observacao: Para nao causar confusao, novamente usamos parenteses para representar o
produto interno entre os vetores |v〉 e A|w〉 e entre os vetores A†|v〉 e |w〉.
Definicao 1.7. Seja W um subespaco vetorial de dimensao d do espaco vetorial V de di-
mensao n. Considere {|1〉, . . . , |n〉} uma base ortonormal para V tal que {|1〉, . . . , |d〉} e uma
base ortonormal para W . O operador
P ≡d∑i=1
|i〉〈i| (1.10)
e chamado de projetor do subespaco W .
Para qualquer projetor P temos que P 2 = P .
De fato, sejam W um subespaco vetorial de algum espaco vetorial, {|1〉, . . . , |d〉} uma base
ortonormal qualquer para W e |v〉 um vetor qualquer do espaco vetorial. Temos que
P ≡d∑i=1
|i〉〈i|
1.3 Algebra Linear 10
e o projetor do subespaco W . Note que
P 2 (|v〉) = P (P |v〉)
= P (〈1|v〉|1〉+ 〈2|v〉|2〉+ · · ·+ 〈d|v〉|d〉)
= 〈1|v〉P |1〉+ 〈2|v〉P |2〉+ · · ·+ 〈d|v〉P |d〉
= 〈1|v〉d∑i
|i〉〈i| (|1〉) + 〈2|v〉d∑i
|i〉〈i| (|2〉) + · · ·+ 〈d|v〉d∑i
|i〉〈i| (|d〉)
= 〈1|v〉|1〉+ 〈2|v〉|2〉+ · · ·+ 〈d|v〉|d〉
= |1〉〈1| (|v〉) + |2〉〈2| (|v〉) + · · ·+ |d〉〈d| (|v〉)
=d∑i
|i〉〈i| (|v〉)
= P |v〉.
Como tomamos um vetor |v〉 qualquer, temos que P 2 = P .
Definicao 1.8. Dizemos que uma matriz U e unitaria se U †U = I. Do mesmo modo,
dizemos que um operador U e unitario se U †U = I.
Observacao 1.9. Um operador e unitario se, e somente se, cada uma de suas representacoes
matricias sao unitarias. Alem disso, se U e um operador unitario, entao tambem satisfaz
UU † = I.
Definicao 1.10. Seja A um operador linear em um espaco vetorial V . Dizemos que A e um
operador positivo se para todo |v〉 ∈ V , 〈v|A|v〉 for um numero real nao negativo.
Definicao 1.11. Sejam V e W espacos vetoriais de dimensao m e n, respectivamente. Con-
sidere V e W espacos de Hilbert. Entao V ⊗ W (V tensor W ) e um espaco vetorial de
dimensao m · n. Os elementos de V ⊗W sao combinacoes lineares de produtos tensoriais
|v〉 ⊗ |w〉 de elementos |v〉 ∈ V e |w〉 ∈ W .
Usaremos muitas vezes as notacoes |vw〉 ou |v〉|w〉 para o produto tensorial |v〉 ⊗ |w〉. E
o produto tensorial de |v〉 por ele mesmo k vezes, sera denotado por |v〉⊗k.
Definicao 1.12. Sejam |v〉 ∈ V e |w〉 ∈ W vetores. Considere A e B operadores lineares
em V e W , respectivamente. Definimos o operador linear A⊗B em V ⊗W pela equacao
(A⊗B) (|v〉 ⊗ |w〉) ≡ A|v〉 ⊗B|w〉. (1.11)
1.4 Matrizes de Pauli 11
Uma representacao matricial para o produto tensorial, a qual sera dada agora, e conhecida
como produto de Kronecker. Sejam A uma matriz de ordem m×n e B uma matriz de ordem
p× q. A representacao matricial de A⊗B fica da seguinte forma:
A⊗B =
A11B A12B . . . A1nB
A21B A22B . . . A2nB...
.... . .
...
Am1B Am2B . . . AmnB
mp×nq
. (1.12)
Exemplo 1.13. Considere A =
2 0
0 −1
2×2
e B =[
1 4]
1×2. Assim,
A⊗B =
2B 0B
0B −1B
=
2 · 1 2 · 4 0 · 1 0 · 4
0 · 1 0 · 4 −1 · 1 −1 · 4
=
2 8 0 0
0 0 −1 −4
2×4
.
Definicao 1.14. O comutador entre dois operadores A e B e definido como
[A,B] ≡ AB −BA. (1.13)
Se [A,B] = 0, entao AB = BA e assim, dizemos que A comuta com B.
Definicao 1.15. O anticomutador entre dois operadores A e B e definido como
{A,B} ≡ AB +BA. (1.14)
Se {A,B} = 0, entao AB = −BA e assim, dizemos que A anticomuta com B.
1.4 Matrizes de Pauli
Apresentaremos agora as matrizes de Pauli e algumas de suas propriedades. Muitas vezes
iremos nos referir a elas como operadores, pois representam operadores na base {|0〉, |1〉}.
Esses serao os operadores mais importantes que se farao presentes nos proximos capıtulos
desse trabalho.
As matrizes
I ≡
1 0
0 1
, X ≡ 0 1
1 0
, Y ≡ 0 −i
i 0
e Z ≡
1 0
0 −1
, (1.15)
1.4 Matrizes de Pauli 12
sao chamadas de matrizes de Pauli. Alguns textos chamam apenas as matrizes X, Y e Z
de matrizes de Pauli e acrescentam a matriz I para os calculos. Porem, em nosso trabalho,
quando nos referirmos as matrizes de Pauli estaremos falando das quatro matrizes.
Veja que,
X|0〉 =
0 1
1 0
1
0
=
0
1
= |1〉
e
X|1〉 =
0 1
1 0
0
1
=
1
0
= |0〉.
Por esse motivo a matriz X tambem leva o nome de matriz bit flip.
Veja tambem que,
Z|0〉 =
1 0
0 −1
1
0
=
1
0
= |0〉
e
Z|1〉 =
1 0
0 −1
0
1
= −
0
1
= −|1〉.
onde −1 e conhecido como fator fase. Por esse motivo a matriz Z tambem leva o nome de
matriz phase flip.
Essas quatro matrizes sao Hermitianas e unitarias. De fato,
X† = (X∗)> =
0 1
1 0
∗> =
0 1
1 0
> =
0 1
1 0
= X
e
XX† = XX =
0 1
1 0
0 1
1 0
=
1 0
0 1
= I.
Analogamente mostra-se que I, Y e Z sao Hermitianas e unitarias.
Temos tambem que as matrizes X e Y , X e Z e ainda, Y e Z anticomutam. De fato,
XY =
0 1
1 0
0 −i
i 0
=
i 0
0 −i
= i
1 0
0 −1
= iZ
1.5 Os Postulados da Mecanica Quantica e Medicoes 13
e
Y X =
0 −i
i 0
0 1
1 0
=
−i 0
0 i
= −i
1 0
0 −1
= −iZ.
Do mesmo modo, pode-se mostrar que XZ = −iY e ZX = iY, e tambem que Y Z = iX e
ZY = −iX.
E, e claro, cada uma dessas matrizes comutam consigo mesma e I comuta com X, Y e Z.
Logo, as matrizes de Pauli comutam ou anticomutam. Esse fato e de crucial importancia e
sera utilizado mais adiante.
1.5 Os Postulados da Mecanica Quantica e Medicoes
Nesta secao, falaremos brevemente sobre os postulados da mecanica quantica, os quais foram
obtidos atraves de tentativa e erro. Falaremos tambem sobre medicoes quanticas conhecidas
como medicoes projetivas e medicoes POVM, dando formulas para a probabilidade de um
possıvel resultado ocorrer e como ficara o estado apos ser realizada uma medicao no mesmo.
Postulado 1: Associado a qualquer sistema fısico isolado esta um espaco vetorial com
produto interno, nesse caso um espaco de Hilbert, conhecido como o espaco de estados do
sistema. O sistema e completamente descrito por seu vetor de estado, que e um vetor unitario
no espaco de estados do sistema.
Dado um sistema fısico qualquer, infelizmente, a mecanica quantica nao nos diz qual e
o seu espaco de estado e nao nos diz tambem qual e o seu vetor de estado. Descobrir isso
para um sistema especıfico e um problema difıcil para o qual os fısicos desenvolveram muitas
regras [24].
Fazendo uso de estruturas matematicas, o postulado 2 nos diz como o estado de um
sistema quantico muda com o tempo.
Postulado 2: A evolucao de um sistema quantico fechado e descrita por uma transformacao
unitaria. Isto e, o estado |ψ〉 do sistema no tempo t1 esta relacionado ao estado |ψ′〉 do
sistema no tempo t2 por um operador unitario U que depende apenas dos tempos t1 e t2,
|ψ′〉 = U |ψ〉. (1.16)
1.5 Os Postulados da Mecanica Quantica e Medicoes 14
A mecanica quantica nos garante que a evolucao ocorre dessa forma, porem nao nos diz
quais operadores unitarios U descrevem a dinamica quantica do mundo real. As matrizes de
Pauli sao exemplos de operadores unitarios agindo em um unico qubit.
Por fechado, o postulado quer dizer que o sistema nao esta interagindo de forma alguma
com outros sistemas. Um fato muito importante e que, ao olharmos para um sistema quantico,
ele nao mais sera fechado, pois estaremos interagindo com ele, logo, possivelmente nao sera
mais descrito por uma evolucao unitaria.
O postulado 3 descreve as estatısticas de medicao e descreve qual sera o estado do sistema
quantico apos realizarmos a medicao.
Postulado 3: As medicoes quanticas sao descritas por uma colecao {Mm} de operadores de
medicao. Esses sao operadores que atuam no espaco de estados do sistema que esta sendo me-
dido. O ındice m refere-se aos resultados de medicao que podem ocorrer no experimento. Se
o estado do sistema quantico for |ψ〉 imediatamente antes da medicao, entao a probabilidade
de que o resultado m ocorra sera
p(m) = 〈ψ|M †mMm|ψ〉, (1.17)
e o estado do sistema apos a medicao sera
Mm|ψ〉√〈ψ|M †
mMm|ψ〉. (1.18)
Os operadores de medicao satisfazem a equacao de completude∑m
Mm†Mm = I. (1.19)
Como as probabilidades devem sempre somar um, exigimos que a relacao de completude
seja satisfeita. Desse modo, as probabilidades irao somar um. De fato,∑m
p(m) =∑m
〈ψ|Mm†Mm|ψ〉
= 〈ψ|∑m
Mm†Mm|ψ〉
= 〈ψ|I|ψ〉
= 〈ψ|ψ〉
= 1.
1.5 Os Postulados da Mecanica Quantica e Medicoes 15
Exemplo 1.16. Vamos medir o qubit |ψ〉 = a|0〉+ b|1〉, onde os operadores de medicao sao
M0 = |0〉〈0| e M1 = |1〉〈1|. O ındice m = 0 representa o estado |0〉 e o ındice m = 1
representa o estado |1〉. E facil ver que ambos sao Hermitianos e M2i = Mi para i = 0, 1. A
relacao de completude tambem e satisfeita. Com efeito,
1∑m=0
Mm†Mm = M0
†M0 +M1†M1
= M02 +M1
2
= M0 +M1
= |0〉〈0|+ |1〉〈1|
=1∑i=0
|i〉〈i|
= I.
Pelo postulado 3, ao realizarmos a medicao de |ψ〉, a probabilidade de obtermos 0 como
resultado da medicao, ou seja, de |ψ〉 estar no estado |0〉 e
p(0) = 〈ψ|M0†M0|ψ〉
= 〈ψ|M02|ψ〉
= 〈ψ|M0|ψ〉
= 〈ψ|0〉〈0|ψ〉
= (a∗〈0|0〉+ b∗〈1|0〉) (a〈0|0〉+ b〈1|0〉)
= a∗a
= |a|2.
A probabilidade de obtermos 1 como resultado da medicao de |ψ〉, ou seja, de |ψ〉 estar
no estado |1〉 e de p(1) = |b|2. Basta trocar M0 por M1 na conta anterior que sera verificado
esse resultado.
Segundo o postulado 3, o estado apos a medicao sera:
• Se ocorrer o resultado 0 na medicao, teremos
M0|ψ〉√〈ψ|M †
0M0|ψ〉=|0〉〈0| (a|0〉+ b|1〉)√
|a|2=
a
|a||0〉.
1.5 Os Postulados da Mecanica Quantica e Medicoes 16
• Se ocorrer o resultado 1 na medicao, teremos
M1|ψ〉√〈ψ|M †
1M1|ψ〉=|1〉〈1| (a|0〉+ b|1〉)√
|b|2=
b
|b||1〉.
Como veremos mais adiante, os estados a|a| |0〉 e b
|b| |1〉 sao fisicamente equivalentes aos
estados |0〉 e |1〉, respectivamente. Assim, os fatores a|a| e b
|b| podem ser ignorados. Desse
modo, os estados apos a medicao serao |0〉 e |1〉, respectivamente.
Um caso especial do postulado 3, o qual abordaremos agora, sao as medicoes projetivas.
Quando essas medicoes projetivas realizam transformacoes unitarias como no postulado 2,
elas se tornam equivalentes ao postulado 3.
Medicoes projetivas: Uma medicao projetiva e descrita por um observavel M , onde M
e um operador Hermitiano no espaco de estados do sistema sendo observado. O observavel
tem uma decomposicao espectral,
M =∑m
mPm, (1.20)
onde Pm e o projetor sobre o autoespaco de M com autovalor m. Os resultados possıveis da
medicao correspondem aos autovalores, m, do observavel. Apos a medicao do estado |ψ〉, a
probabilidade de obtermos o resultado m e dado por
p(m) = 〈ψ|Pm|ψ〉. (1.21)
Se o resultado m ocorreu, entao o estado de um sistema quantico imediatamente apos a
medicao seraPm|ψ〉√p(m)
. (1.22)
Se os operadores de medicao Mm do postulado 3 sao projetores ortogonais, ou seja, sao
Hermitianos, e MmMm′ = δmm′Mm, entao o postulado 3 se reduz a uma medicao projetiva.
Exemplo 1.17. Considere a medicao do observavel Z, cujos autovalores sao +1 e −1 com
autovetores |0〉 e |1〉, respectivamente. A decomposicao espectral de Z e dada por
Z = |0〉〈0| − |1〉〈1|,
1.5 Os Postulados da Mecanica Quantica e Medicoes 17
onde P+1 = |0〉〈0| e P−1 = |1〉〈1|.
Seja |ψ〉 = |0〉+|1〉√2
o estado que desejamos medir. A probabilidade de obtermos o resultado
m = +1 e:
p(+1) = 〈ψ|P+1|ψ〉 = 〈ψ|0〉〈0|ψ〉 =1√2
(〈0|0〉+ 〈1|0〉) 1√2
(〈0|0〉+ 〈0|1〉) =1
2.
Ja a probabilidade de obtermos o resultado m = −1 e:
p(−1) = 〈ψ|P−1|ψ〉 = 〈ψ|1〉〈1|ψ〉 =1√2
(〈0|1〉+ 〈1|1〉) 1√2
(〈1|0〉+ 〈1|1〉) =1
2.
Se o resultado m = +1 ocorrer, o estado |ψ〉 apos a medicao fica da seguinte forma:
P+1|ψ〉√p(+1)
=|0〉〈0|
(|0〉+|1〉√
2
)√
12
=
|0〉〈0|0〉+|0〉〈0|1〉√2
1√2
= |0〉.
Se o resultado m = −1 ocorrer, o estado |ψ〉 apos a medicao fica da seguinte forma:
P−1|ψ〉√p(−1)
=|1〉〈1|
(|0〉+|1〉√
2
)√
12
=
|1〉〈1|0〉+|1〉〈1|1〉√2
1√2
= |1〉.
Agora definiremos o valor medio e o desvio padrao de uma medicao da seguinte forma:
Definicao 1.18. Considere a medicao projetiva descrita pelo observavel M , onde M =∑mmPm e a sua decomposicao espectral. O valor medio dessa medicao e definido como
E (M) =∑m
mp(m)
=∑m
m〈ψ|Pm|ψ〉
= 〈ψ|
(∑m
mPm
)|ψ〉
= 〈ψ|M |ψ〉.
Normalmente o valor medio de M e denotado por:
〈M〉 ≡ 〈ψ|M |ψ〉. (1.23)
1.5 Os Postulados da Mecanica Quantica e Medicoes 18
Definicao 1.19. Considere a medicao projetiva descrita pelo observavel M , onde M =∑mmPm e a sua decomposicao espectral. O desvio padrao associado a medicao de M e
definido como
[∆ (M)]2 = 〈(M − 〈M〉I)2〉
= 〈M2 − 2M〈M〉+ 〈M〉2I〉
= 〈M2〉 − 2〈M〉2 + 〈M〉2
= 〈M2〉 − 〈M〉2.
Logo,
∆ (M) =
√〈M2〉 − 〈M〉2. (1.24)
Exemplo 1.20. Considere o qubit no estado |0〉, o qual medimos com o observavel X. Assim,
o valor medio de X e:
〈X〉 = 〈0|X|0〉 = 〈0|1〉 = 0.
Como
〈X2〉 = 〈0|X2|0〉 = 〈0|I|0〉 = 〈0|0〉 = 1,
temos que, o desvio padrao de X e:
∆ (X) =
√〈X2〉 − 〈X〉2 =
√1− 0 = 1.
Como vimos, o postulado 3 descreve a probabilidade dos diferentes resultados de medicoes
e descreve o estado apos a medicao do sistema. Porem, quando medimos o sistema uma unica
vez, o estado apos a medicao nao e de grande interesse. Desse modo, apenas a probabilidade
nos interessa. Quando isso acontece e utilizado o formalismo POVM (Positive Operator-
Valued Measure) que e uma consequencia do postulado 3.
Sejam |ψ〉 um estado qualquer e Mm operadores de medicao. Pelo postulado 3, a proba-
bilidade de ocorrer o resultado m sera p(m) = 〈ψ|Mm†Mm|ψ〉.
Definindo Em ≡ Mm†Mm, temos que p(m) = 〈ψ|Em|ψ〉 e Em e um operador positivo,
pois
〈ψ|Em|ψ〉 = 〈ψ|Mm†Mm|ψ〉 = p(m) ≥ 0.
1.5 Os Postulados da Mecanica Quantica e Medicoes 19
Pela relacao de completude do postulado 3, teremos que∑
mEm =∑
mMm†Mm = I. Note
que, a probabilidade do resultado m ocorrer depende apenas de Em.
Definicao 1.21. Os operadores Em ≡ Mm†Mm, onde Mm sao os operadores de medicao,
sao chamados de elementos do POVM associados com a medicao. O conjunto de todos os
operadores Em, denotado por {Em} e chamado um POVM.
Na sequencia daremos uma definicao melhor de um POVM. Mas para isso precisaremos
do seguinte resultado.
Seja {Em} um conjunto qualquer de operadores positivos tais que∑
mEm = I. Entao,
existe um conjunto de operadores de medicao Mm, de modo que, esses operadores definem
uma medicao descrita pelo POVM {Em}.
De fato, defina Mm ≡√Em e note que,∑
m
Mm†Mm =
∑m
√Em†√
Em
=∑m
√Em√Em
=∑m
√Em
2
=∑m
Em
= I.
Pelo postulado 3, o conjunto {Mm} descreve uma medicao, e, alem disso, essa medicao tem
como POVM {Em}.
Definicao 1.22. Um POVM e um conjunto qualquer de operadores {Em} tais que:
(i) Cada operador Em e positivo;
(ii) Os operadores Em satisfazem a relacao de completude, ou seja,∑
mEm = I. Desse
modo, as probabilidades somam um.
Por fim, temos o postulado 4, o qual, como veremos, nos garante que com os espacos
de estados dos sistemas componentes podemos construir o espaco de estados de um sistema
composto.
1.6 Fase 20
Postulado 4: O espaco de estados de um sistema fısico composto e o produto tensorial
dos espacos de estados dos sistemas fısicos componentes. Mais ainda, se tivermos sistemas
enumerados de 1 a n, e o sistema de numero i esta preparado no estado |ψi〉, entao o estado
conjunto do sistema total e |ψ1〉 ⊗ |ψ2〉 ⊗ · · · ⊗ |ψn〉.
Uma notacao que usaremos e, por exemplo, dado um sistema de tres qubits, X2 e o
operador de Pauli X agindo no segundo qubit. Iremos escrever apenas X2 ao inves de
I ⊗X ⊗ I.
O postulado 4 nos permite definir o que e um estado emaranhado.
Definicao 1.23. Um estado de um sistema composto que nao pode ser escrito como um
produto de estados de seus sistemas componentes e chamado de estado emaranhado.
Exemplo 1.24. Considere o estado de dois qubits
|ψ〉 =|00〉+ |11〉√
2.
Afirmamos que |ψ〉 e um estado emaranhado, isto e, nao existe estados de um unico qubit
|a〉 e |b〉 tais que |ψ〉 = |a〉|b〉.
De fato, suponha que existam estados de um unico qubit |a〉 e |b〉 tais que |ψ〉 = |a〉|b〉,
onde |a〉 = α|0〉+ β|1〉 e |b〉 = γ|0〉+ λ|1〉, com α, β, γ, λ ∈ C. Dessa forma,
|a〉|b〉 = (α|0〉+ β|1〉) (γ|0〉+ λ|1〉)
= αγ|00〉+ αλ|01〉+ βγ|10〉+ βλ|11〉.
Assim,
|ψ〉 =|00〉+ |11〉√
2= αγ|00〉+ αλ|01〉+ βγ|10〉+ βλ|11〉.
Logo,
αλ = 0, implicando que α = 0 ou λ = 0, o que e um absurdo, pois αγ = 1√2
= βλ.
Assim, αλ 6= 0 e βγ 6= 0. Portanto, |ψ〉 e emaranhado.
1.6 Fase
Esta ultima secao ira abordar o termo “fase”e ira explicar o porque dos estados a|a| |0〉 e b
|b| |1〉
serem fisicamente equivalentes aos estados |0〉 e |1〉, respectivamente.
1.6 Fase 21
Na mecanica quantica o termo “fase”possui significados distintos que dependem do nosso
contexto. Por exemplo, dado os estados eiθ|ψ〉 e |ψ〉, onde θ e um numero real. Dizemos que
eiθ|ψ〉 e igual a |ψ〉, a menos de um fator de fase global eiθ.
Note que, as probabilidades de ambos os estados e a mesma. Com efeito, seja Mm um
operador de medicao. Sabemos pelo postulado 3 que, para |ψ〉,
p(m) = 〈ψ|Mm†Mm|ψ〉
e para eiθ|ψ〉,
p(m) = 〈ψ|e−iθMm†Mme
iθ|ψ〉
= 〈ψ|e−iθeiθMm†Mm|ψ〉
= 〈ψ|Mm†Mm|ψ〉.
Foi isso que ocorreu em a|a| |0〉 e b
|b| |1〉, pois ambos, a|a| e b
|b| , sao numeros complexos de
modulo unitario, logo, existem θ e ϕ tais que a|a| = eiθ e b
|b| = eiϕ, assim, a|a| |0〉 = eiθ|0〉 e
b|b| |1〉 = eiϕ|1〉. Desse modo, o estado eiθ|0〉 e igual ao estado |0〉 e o estado eiϕ|1〉 e igual ao
estado |1〉, a menos de um fator de fase global.
Outro exemplo onde o termo “fase”e usado, e como fase relativa, que e definido da seguinte
forma:
Definicao 1.25. Dado duas amplitudes, a e b, se existe um numero real θ tal que a = eiθb,
entao dizemos que a e b diferem por um fator de fase relativa eiθ. Mais ainda, dados dois
estados em uma mesma base, se cada uma das amplitudes nessa base diferem por uma fase
relativa, entao dizemos que os estados diferem por uma fase relativa nessa base.
Exemplo 1.26. Sejam |+〉 = |0〉+|1〉√2
e |−〉 = |0〉−|1〉√2
estados quanticos. Veja que a amplitude
de |1〉 em |+〉 e 1√2
e em |−〉 e − 1√2, onde a magnitude e a mesma, mas o sinal e diferente.
Para |0〉, ambos possuem a mesma magnitude e o mesmo sinal. Logo, como os estados |+〉 e
|−〉 estao na mesma base, e para |0〉 as amplitudes sao identicas, onde o fator de fase relativa
e 1 e para |1〉 as amplitudes diferem por um fator de fase relativa de −1, entao |+〉 e |−〉
diferem por uma fase relativa na base {|0〉, |1〉}.
1.6 Fase 22
A diferenca entre os dois fatores de fase e que o fator de fase relativa depende da base,
ja que os fatores nao sao necessariamente os mesmos em cada amplitude. Por outro lado, o
fator de fase global nao depende da base.
Os estados que diferem por um fator de fase relativa nao sao considerados fisicamente
os mesmos, pois as probabilidades de medicao nao sao necessariamente as mesmas, diferente
dos estados que diferem por um fator de fase global.
Capıtulo 2
Codigos Quanticos Corretores de
Erros
Neste capıtulo discutiremos alguns codigos quanticos corretores de erros (QECC), os quais
codificam os estados quanticos a fim de torna-los resistentes a acao do ruıdo e decodificam os
estados quando se deseja recupera-los. Em sua essencia, os QECC sao construıdos seguindo
ideias semelhantes aos codigos classicos corretores de erros. No entanto, existem algumas
diferencas relevantes entre a informacao quantica e a informacao classica que deverao ser
contornadas.
Destacamos agora algumas dessas diferencas.
• Nao-clonagem: Nao podemos copiar o estado quantico como fazemos no caso classico,
pois isso e proibido pelo Teorema da Nao-Clonagem [15], [24], [33], o qual afirma ser
impossıvel fazer uma copia de um estado quantico arbitrario desconhecido.
• Os erros sao contınuos: Determinar um erro em um qubit e corrigi-lo nao e uma
tarefa facil. Para uma sequencia de erros distintos em um mesmo qubit isso se tornaria
ainda mais difıcil e necessitarıamos de recursos infinitos para obter essa precisao infinita.
Por exemplo, um erro no estado |ψ〉 = a|0〉+b|1〉 pode alterar a e b por uma quantidade
ξ, onde esses pequenos erros podem ir se acumulando ao longo do tempo [24],[32].
• A medida destroi a informacao quantica: O ato de medir destroi o estado quantico
como vimos no Postulado 3, tornando a recuperacao impossıvel. Na correcao de erros
classica nao temos esse problema.
Felizmente, como veremos, nenhum desses problemas sao fatais.
2.1 Codigo Bit Flip de Tres Qubits 24
Este capıtulo esta dividido da seguinte maneira. Na Secao 2.1, apresentaremos o codigo
bit flip de tres qubits que e o codigo quantico mais simples que veremos. Ja na Secao 2.2,
abordaremos o codigo phase flip de tres qubits. Em seguida, na Secao 2.3, iremos apresentar
o codigo de Shor, que e uma juncao dos codigos phase flip e bit flip de tres qubits. Apos
isso, na Secao 2.4, introduziremos os codigos CSS e, por fim, na Secao 2.5, finalizaremos este
capıtulo definindo os codigos estabilizadores.
2.1 Codigo Bit Flip de Tres Qubits
O primeiro codigo quantico que iremos apresentar e o codigo bit flip de tres qubits, o qual foi
baseado no codigo classico conhecido como codigo de repeticao.
O exemplo a seguir e um exemplo do codigo de repeticao.
Exemplo 2.1. Considere o canal binario simetrico que tem probabilidade p > 0 de inverter o
bit que estamos transmitindo e tem probabilidade 1− p de transmitir o bit sem erros. Vamos
enviar um bit de um local para o outro atraves desse canal. Porem, ao inves de enviarmos
apenas um bit, iremos adicionar redundancia fazendo tres copias do bit que desejamos enviar,
ou seja,
0→ 000
1→ 111.
Apos enviarmos os tres bits atraves do canal, o receptor recebe tres bits e deve decidir
qual o valor do bit original que foi enviado. Suponha que o receptor tenha recebido 101 e
a probabilidade de ocorrer uma inversao de bit seja menor do que a probabilidade de nao
ocorrer. Entao, a probabilidade de ter ocorrido uma inversao no segundo bit e maior do que
ter ocorrido nos outros bits. Portanto, e provavel que o bit 1 tenha sido enviado.
Esse tipo de codificacao falhara caso mais que um bit dos tres enviados seja invertido.
A probabilidade disso acontecer e de 3p2 − 2p3. A probabilidade de erro sem adicionarmos
redundancia era p, logo, o codigo faz com que a transmissao seja mais confiavel caso p < 12.
De maneira praticamente analoga ao exemplo 2.1, vamos enviar o qubit |ψ〉 = a|0〉+ b|1〉
atraves do canal bit flip, onde esse canal tem uma probabilidade 1− p de transmitir o qubit
2.1 Codigo Bit Flip de Tres Qubits 25
sem erros e uma probabilidade p de inverter o qubit, ou seja, do operador X agir sobre o
qubit |ψ〉, transmitindo X|ψ〉 = b|0〉+ a|1〉.
Descreveremos agora o processo realizado pelo codigo bit flip para protecao, identificacao
e correcao dos erros do canal bit flip.
A maneira de protegermos o qubit |ψ〉 = a|0〉 + b|1〉 e codificando em tres qubits como
a|000〉+ b|111〉, ou seja,
|0〉 → |0L〉 ≡ |000〉
|1〉 → |1L〉 ≡ |111〉,
onde os estados |0L〉 e |1L〉 sao chamados de estados logicos.
Note que a superposicao de estados base esta sendo levada a uma superposicao corres-
pondente de estados codificados.
Ao codificarmos |ψ〉 para a|000〉+b|111〉, cada qubit e codificado de maneira independente,
ou seja, se ocorrer erro em um deles durante a codificacao, isso nao influenciara a codificacao
dos demais.
Da mesma forma que no caso classico, conseguimos identificar e corrigir erros, caso tenham
ocorridos em no maximo um qubit. Desse modo, suponha que tenha ocorrido um bit flip em
no maximo um qubit.
Primeiramente, queremos detectar se ocorreu erro em algum qubit do nosso estado quantico.
Para isso, devemos realizar uma medicao, a qual ira nos dizer se houve algum erro e onde foi
que ocorreu o erro. O resultado obtido pela medicao e chamado de sındrome do erro.
Considere os operadores de projecao
P0 = |000〉〈000|+ |111〉〈111|, (2.1)
P1 = |100〉〈100|+ |011〉〈011|, (2.2)
P2 = |010〉〈010|+ |101〉〈101|, (2.3)
P3 = |001〉〈001|+ |110〉〈110|. (2.4)
Esses quatro operadores correspondem a quatro sındromes de erro. O operador P0 cor-
responde a erro em nenhum qubit; O operador P1 corresponde a erro no primeiro qubit;
2.1 Codigo Bit Flip de Tres Qubits 26
O operador P2 corresponde a erro no segundo qubit; O operador P3 corresponde a erro no
terceiro qubit.
Ao realizarmos uma medicao, os resultados possıveis sao 0 ou 1. Se o resultado for 0,
entao podemos afirmar que o erro apontado pelo operador nao ocorreu naquele qubit. Ja se
o resultado for 1, entao ocorreu o erro apontado pelo operador.
Exemplo 2.2. Suponha que ocorreu um bit flip no terceiro qubit, logo, o estado ficou da
seguinte forma:
|ϕ〉 = a|001〉+ b|110〉.
Fazendo as contas, obtemos que 〈ϕ|P0|ϕ〉 = 〈ϕ|P1|ϕ〉 = 〈ϕ|P2|ϕ〉 = 0. Logo, podemos afirmar
que ocorreu um bit flip e nao foi no primeiro e nem no segundo qubit, pois o resultado da
sındrome de erro deu 0 para esses operadores. Veja que 〈ϕ|P3|ϕ〉 = 1, ou seja, o resultado
da sındrome deu 1, assim, afirmamos que ocorreu um bit flip no terceiro qubit.
Observe que a medicao da sındrome nao ira destruir o estado, pois ele permanecera o
mesmo. Para ver isso, basta lembrar que o estado apos a medicao e
Pm|ψ〉√〈ψ|Pm|ψ〉
,
dado que o resultado m ocorreu. Como no exemplo 2.2, m = 3 ocorreu, o estado apos a
medicao sera:
P3|ϕ〉√〈ϕ|P3|ϕ〉
=P3 (a|001〉+ b|110〉)√
1
= a|001〉+ b|110〉
= |ϕ〉.
A sındrome de erro serve apenas para nos dizer se ocorreu erro e caso ocorreu, onde ele
ocorreu. Nao nos diz nada sobre o estado quantico, ou seja, sobre os valores de a e b.
Apos detectar se ocorreu erro em algum qubit, a recuperacao e feita de maneira muito
simples. Basta inverter o qubit que a sındrome apontou ter sido alterado. No exemplo 2.2, a
sındrome de erro deu 1 para o operador P3, indicando um bit flip no terceiro qubit. Assim,
para corrigir o erro basta inverter o terceiro qubit aplicando o operador X3 e, desse modo,
recuperamos o estado |ψ〉 = a|000〉+ b|111〉 com precisao perfeita.
2.2 Codigo Phase Flip de Tres Qubits 27
De forma analoga farıamos o mesmo caso tivesse sido invertido outro qubit no lugar do
terceiro, mas e claro, invertendo o qubit apontado pelo operador projecao. E nao farıamos
nada, caso tivesse ocorrido m = 0, pois P0 indica que nao houve erro.
Caso ocorra mais que um erro, esse processo que descrevemos nao conseguira corrigi-los.
A probabilidade de permanecer o erro e, portanto, 3p2 − 2p3. Se p < 12
o codigo bit flip sera
mais confiavel do que enviarmos um unico qubit.
O processo utilizando os operadores P0, P1, P2 e P3 e eficiente na correcao de erros bit
flip em no maximo um qubit, porem existe uma forma mais rapida onde fazemos apenas
duas medicoes utilizando os observaveis Z1Z2 e Z2Z3. Esses observaveis tem o papel de
comparacao, onde Z1Z2 compara os dois primeiros qubits e Z2Z3 compara o segundo e o
terceiro qubit.
Os autovalores de cada um desses observaveis sao ±1, fornecendo um bit de informacao
para um total de dois bits de informacao.
Ao realizarmos a medicao utilizando Z1Z2, caso Z1Z2|ψ〉 = |ψ〉, entao afirmamos que
os dois primeiros qubits sao iguais, e caso Z1Z2|ψ〉 = −|ψ〉, entao afirmamos que os dois
primeiros qubits sao diferentes. Analogamente comparamos o segundo e o terceiro qubit.
Combinando os dois resultados saberemos se ocorreu erro e caso ocorreu, onde ocorreu.
Se Z1Z2|ψ〉 = +|ψ〉 e Z2Z3|ψ〉 = +|ψ〉, entao afirmamos que ocorreu nenhum erro;
Se Z1Z2|ψ〉 = +|ψ〉 e Z2Z3|ψ〉 = −|ψ〉, entao ocorreu um bit flip no terceiro qubit;
Se Z1Z2|ψ〉 = −|ψ〉 e Z2Z3|ψ〉 = +|ψ〉, entao ocorreu um bit flip no primeiro qubit;
Se Z1Z2|ψ〉 = −|ψ〉 e Z2Z3|ψ〉 = −|ψ〉, entao ocorreu um bit flip no segundo qubit.
A correcao e feita do mesmo modo que no caso dos projetores Pj, com j = 0, 1, 2, 3.
Esse metodo de comparacao sera usado em outros codigos que apresentaremos a seguir.
2.2 Codigo Phase Flip de Tres Qubits
Nesta secao apresentaremos mais um codigo quantico envolvendo tres qubits. Esse codigo,
chamado de codigo phase flip, nao tem nenhum equivalente nos codigos classicos como tem
2.2 Codigo Phase Flip de Tres Qubits 28
o codigo bit flip.
Da mesma forma que para o codigo bit flip, queremos enviar o qubit |ψ〉 = a|0〉 + b|1〉
atraves do canal phase flip. Este canal tambem tem probabilidade 1−p de transmitir o qubit
sem erros e probabilidade p de ocorrer um erro phase flip, ou seja, do operador Z ser aplicado
ao qubit |ψ〉 = a|0〉+ b|1〉, levando-o ao estado a|0〉 − b|1〉.
Descreveremos agora o processo realizado pelo codigo phase flip para protecao, identi-
ficacao e correcao dos erros do canal phase flip.
O operador Z age na base {|+〉, |−〉}, onde
|+〉 =|0〉+ |1〉√
2e |−〉 =
|0〉 − |1〉√2
, (2.5)
como um operador bit flip, pois Z|+〉 = |−〉 e Z|−〉 = |+〉. Como ja sabemos proceder
com erros bit flip, entao passaremos o qubit |ψ〉 para a base {|+〉, |−〉}, passando os estados
logicos para |0L〉 ≡ | + ++〉 e |1L〉 ≡ | − −−〉. Desse modo, transformaremos o canal phase
flip em um canal bit flip.
Considere a matriz
H =1√2
1 1
1 −1
, (2.6)
chamada de porta de Hadamard. E facil verificar que H e Hermitiana e unitaria, e tambem
que H|0〉 = |+〉, H|1〉 = |−〉, H|+〉 = |0〉 e H|−〉 = |1〉, ou seja, ela realiza a mudanca
de base entre as bases {|0〉, |1〉} e {|+〉, |−〉}. Por isso, devemos utiliza-la para fazermos a
mudanca entre os canais.
Mas antes disso, codificamos |ψ〉 utilizando o codigo bit flip o transformando em a|000〉+
b|111〉. Em seguida, utilizamos a porta de Hadamard em cada um dos tres qubits, H⊗3,
transformando a|000〉+ b|111〉 em a|+ ++〉+ b| − −−〉.
A identificacao e correcao de erros se dara de maneira analoga ao canal bit flip. Porem,
tambem devemos mudar a base dos operadores projecao P0, P1, P2 e P3, e fazemos isso
levando Pj → Pj′ = H⊗3PjH
⊗3. Ou ainda, se quisermos utilizar os observaveis para realizar
a medicao usaremos H⊗3Z1Z2H⊗3 = X1X2 e H⊗3Z2Z3H
⊗3 = X2X3.
2.3 Codigo de Shor 29
2.3 Codigo de Shor
Nesta secao apresentaremos o codigo de Shor, criado por Peter Shor em 1995 [28]. Esse
codigo e um codigo de nove qubits que protege contra os erros bit flip e phase flip em um
unico qubit. Ele foi obtido da combinacao dos codigos de 3 qubits, phase flip e bit flip.
Comecamos codificando |ψ〉 = a|0〉+ b|1〉 utilizando o codigo phase flip, que como vimos,
codifica |0〉 → | + ++〉 e |1〉 → | − −−〉. Em seguida, codificamos cada um dos qubits
utilizando o codigo bit flip, levando
|+〉 → |000〉+ |111〉√2
e |−〉 → |000〉 − |111〉√2
.
Desse modo, obtemos um codigo de nove qubits, onde os estados logicos sao:
|0〉 → |0L〉 ≡ 12√
2[(|000〉+ |111〉)(|000〉+ |111〉)(|000〉+ |111〉)]
|1〉 → |1L〉 ≡ 12√
2[(|000〉 − |111〉)(|000〉 − |111〉)(|000〉 − |111〉)].
Esse codigo protege contra um unico erro bit flip, um unico erro phase flip ou um unico
erro de cada, podendo ser os dois erros no mesmo qubit ou em qubits distintos.
Para verificar se ocorreu um erro de bit flip em algum qubit, iremos aplicar os observaveis
Z1Z2, Z2Z3, Z4Z5, Z5Z6, Z7Z8 e Z8Z9 fazendo a comparacao entre os qubits como fizemos no
codigo bit flip, porem agora fazemos a comparacao pelos blocos de tres qubits. Caso ocorreu
um bit flip, recuperamos o estado invertendo o qubit que sofreu o erro.
Para verificar se ocorreu um erro de phase flip em algum qubit, iremos aplicar os ob-
servaveis X1X2X3X4X5X6 e X4X5X6X7X8X9 para comparar o sinal dos blocos, pois o qubit
que sofreu o phase flip fara com que o bloco ao qual ele pertenca tenha o sinal alterado. Por
exemplo, se ocorrer um unico phase flip em qualquer um dos tres primeiros qubits, o primeiro
bloco mudara o sinal fazendo com que o primeiro e o segundo bloco tenham sinais diferentes,
e o segundo e terceiro, sinais iguais. Se ocorrer um phase flip em um dos qubits do segundo
bloco, esse bloco mudara de sinal, fazendo com que o primeiro e o segundo bloco tenham
sinais diferentes, e o segundo e terceiro tambem tenham sinais diferentes. Se ocorrer um
phase flip em um dos qubits do terceiro bloco, esse bloco mudara de sinal, fazendo com que
o primeiro e o segundo bloco tenham sinais iguais, e o segundo e terceiro, sinais diferentes.
Se nao ocorrer erros de phase flip, o sinal dos tres blocos sera igual. Independente de qual
2.4 Codigos CSS 30
qubit do bloco sofreu o phase flip, conseguiremos recuperar o estado do erro simplesmente
invertendo o sinal do bloco onde foi apontado o erro.
Vale destacar que, no caso de ter ocorrido um erro de phase flip, nao saberemos em qual
dos qubits ocorreu esse erro. Saberemos apenas em qual dos blocos ocorreu.
Para recuperar o estado sempre sera realizado os dois processos que acabamos de descre-
ver, independente de ter ocorrido bit flip, phase flip ou os dois.
2.4 Codigos CSS
Nesta secao apresentaremos os codigos Calderbank-Shor-Steane, conhecidos como codigos
CSS. Essa famılia de codigos foi desenvolvida por Calderbank e Shor [8] e Steane [30] em
1996. Como veremos, esses codigos sao construıdos a partir dos codigos classicos lineares.
Por isso, antes de apresentarmos os codigos CSS, abordaremos os codigos lineares classicos.
Definicao 2.3. Um codigo linear C codificando k bits de informacao em um espaco de
codigos de n bits e descrito por uma matriz G de ordem n× k, chamada de matriz geradora,
onde todas as suas entradas sao elementos de Z2. Denotamos esse codigo por [n, k].
Seja x a mensagem de k bits que desejamos codificar. O produto Gx e a mensagem
codificada pelo codigo C, chamado de palavra codigo. As colunas de G devem ser L.I, pois o
conjunto de todas as palavras codigo e igual ao espaco vetorial gerado por elas. Assim, todas
as palavras serao codificadas de forma unica. Vale destacar que todos os calculos sao feitos
modulo 2 e um codigo codificando k bits tem 2k palavras codigo possıveis.
Exemplo 2.4. Queremos codificar dois bits usando tres repeticoes de cada bit, ou seja, um
codigo [6, 2]. Considere
G =
1 0
1 0
1 0
0 1
0 1
0 1
, x1 =
0
0
, x2 =
0
1
, x3 =
1
0
e x4 =
1
1
,
2.4 Codigos CSS 31
onde G e a matriz geradora do codigo e xi, i = 1, 2, 3, 4 sao as mensagens que podemos co-
dificar. As mensagens codificadas sao: Gx1 = (0, 0, 0, 0, 0, 0) , Gx2 = (0, 0, 0, 1, 1, 1) , Gx3 =
(1, 1, 1, 0, 0, 0) e Gx4 = (1, 1, 1, 1, 1, 1) .
O processo de correcao de erros sera feito utilizando matrizes de verificacao de paridade.
Definicao 2.5. Seja C um codigo [n, k] contendo todos os vetores x de n elementos sobre Z2
tal que Hx = 0, onde H e uma matriz de ordem n−k×n, chamada de matriz de verificacao
de paridade, cujas entradas estao em Z2.
Sendo C um codigo de dimensao k, o posto de H e n− k. Assim, a matriz H deve ter ao
menos n− k linhas linearmente independentes (L.I).
Tendo uma das matrizes G ou H conseguimos determinar a outra.
Com H em maos, como o nucleo de H tem dimensao k, escolhemos k vetores L.I, y1, . . . , yk
que geram o nucleo. Em seguida, definimos G tendo y1, . . . , yk como colunas.
Com G em maos, escolhemos n−k vetores L.I, y1, . . . , yn−k de tal forma que esses vetores
sejam ortogonais as colunas de G. Definimos H como tendo y1>, . . . , yn−k
> como linhas da
matriz.
Exemplo 2.6. Considere o codigo [6, 2] cuja matriz geradora G foi dada no exemplo 2.4.
Para construırmos H, devemos escolher 6 − 2 = 4 vetores L.I ortogonais as colunas de G.
Digamos (1, 1, 0, 0, 0, 0), (0, 1, 1, 0, 0, 0), (0, 0, 0, 1, 1, 0) e (0, 0, 0, 0, 1, 1). Logo,
H =
1 1 0 0 0 0
0 1 1 0 0 0
0 0 0 1 1 0
0 0 0 0 1 1
.
Fazendo Hx = 0, veremos que as palavras codigo sao as obtidas no exemplo 2.4.
Para a deteccao e a recuperacao de erros, considere y = Gx a mensagem codificada e
suponha que ocorreu um erro e dando a palavra codigo y′ = y + e. Temos que Hy′ =
H (y + e) = Hy + He = 0 + He = He, onde Hy′ e a sındrome do erro. Como Hy′ = He,
ela contem informacoes sobre qual erro ocorreu. Com efeito, se nenhum erro ocorreu, entao
2.4 Codigos CSS 32
Hy′ = 0. Caso ocorreu algum erro no j-esimo bit, entao Hy′ = Hej, onde ej e o vetor
com 1 na j-esima linha e 0 nas outras. Da mesma forma que nos outros codigos, supondo
que ocorreu no maximo um erro em um unico bit, ao calcularmos a sındrome do erro e
compararmos com os Hej, descobriremos onde ocorreu o erro, podendo assim corrigir o bit
afetado.
Para comparar Hy′ e Hej, usamos a seguinte definicao de distancia.
Definicao 2.7. Sejam x e y palavras de n bits cada. A distancia entre x e y e definida
como o numero de coordenadas em que x e y diferem e e chamada de distancia de Hamming.
Denotamos a distancia de Hamming por d(x, y).
Definicao 2.8. Sejam x uma palavra de n bits e 0 a palavra que possui zeros em todos os n
bits. A distancia de Hamming entre x e 0, denotado por wt(x) ≡ d(x, 0), e chamado de peso
(de Hamming), isto e, e o numero de coordenadas em que x e nao nulo.
Se a probabilidade de um bit flip ocorrer for menor que 12, entao a palavra y minimiza o
numero de bit flips necessarios para ir de y para y′, ou seja, wt(ej) = d(y, y′), logo a palavra
codificada, provavelmente foi y.
Agora definiremos a distancia de um codigo C.
Definicao 2.9. Seja C um codigo. A distancia de C e a distancia mınima entre qualquer
palavra codigo x e 0, ou seja,
d (C) = minx∈C, x6=0
wt(x). (2.7)
Com o conceito de distancia d ≡ d (C), dizemos que o codigo C e um codigo [n, k, d] .
Proposicao 2.10. Seja C um codigo [n, k, d] com distancia d de pelo menos 2t+1 para algum
t inteiro positivo. Entao C e capaz de corrigir erros em ate t bits, simplesmente decodificando
a mensagem codificada corrompida y′ como a unica palavra codigo y satisfazendo d(y, y′) ≤ t.
Demonstracao. Com efeito, suponha que o codigo tenha distancia d ≥ 2t+1. Se u e enviado e
v e recebido tendo nao mais do que t erros, entao d(u, v) ≤ t. Temos tambem que d(u, u′) ≥ d
para qualquer palavra codigo u′ 6= u.
2.4 Codigos CSS 33
Pela desigualdade triangular
d(u, v) + d(v, u′) ≥ d(u, u′)⇔
d(v, u′) ≥ d(u, u′)− d(u, v)
≥ d− t
≥ 2t+ 1− t
= t+ 1.
Assim, conseguimos corrigir para u, pois sera a unica palavra codigo tal que d(u, v) ≤ t.
Caso d(u, v) > t, suponha sem perda de generalidade que d(u, v) = t+ 1, entao
d(v, u′) ≥ d(u, u′)− d(u, v)
≥ d− t− 1
≥ 2t+ 1− t− 1
= t.
Logo, d(v, u′) ≥ t, ou seja, podemos ter u′ 6= u dando o valor t e, assim, nao conseguiremos
recuperar o erro.
Portanto, conseguimos recuperar no maximo erros em ate t bits.
Uma classe de codigos classicos que usaremos no exemplo 2.14 sao os codigos de Hamming,
os quais definiremos agora.
Definicao 2.11. Seja r ≥ 2 um inteiro e seja H uma matriz de verificacao de paridade,
cujas 2r − 1 colunas sao todas cadeias de bits de comprimento r que nao sao identicamente
0. Essa matriz define um codigo [2r − 1, 2r − r − 1, 3] conhecido como codigo de Hamming.
Por fim, antes de definirmos os codigos CSS, definiremos o codigo dual de um codigo
classico, o qual e utilizado na definicao dos codigos CSS.
Definicao 2.12. Seja C um codigo [n, k] com matriz geradora G e matriz de verificacao de
paridade H. Entao, definimos o codigo dual de C, denotado por C⊥, como sendo o codigo
com matriz geradora H> e matriz de verificacao de paridade G>. Se C ⊆ C⊥, entao C e
dito fracamente auto-dual e estritamente auto-dual se C = C⊥.
2.4 Codigos CSS 34
Com todos esses elementos em maos estamos aptos a definir os codigos CSS.
Definicao 2.13. Sejam C1 e C2 codigos lineares classicos [n, k1] e [n, k2], respectivamente,
tais que C2 ⊂ C1 e, C1 e C2⊥ corrigem t erros. Seja x ∈ C1 uma palavra codigo qualquer e
defina o estado quantico
|x+ C2〉 ≡1√|C2|
∑y∈C2
|x+ y〉, (2.8)
onde |C2| e a cardinalidade do codigo C2 e + e a adicao modulo 2, coordenada a coordenada.
O espaco vetorial gerado pelos estados quanticos |x+C2〉 ∀x ∈ C1, e chamado de codigo CSS
de C1 sobre C2 e denotado por CSS (C1, C2).
O estado |x + C2〉 depende unicamente do coset C1/C2, pois, pode-se mostrar que dado
x′ ∈ C1 tal que x − x′ ∈ C2, temos que |x + C2〉 = |x′ + C2〉. E, os estados |x + C2〉 sao
ortonormais.
O codigo CSS (C1, C2) e um codigo [n, k1 − k2], pois como o numero de cosets de C2
em C1 e [C1 : C2] = |C1||C2| = 2k1
2k2= 2k1−k2 , entao a dimensao do espaco codigo sera 2k1−k2 , e
portanto, CSS (C1, C2) e um codigo quantico [n, k1−k2]. E, como C1 e C2⊥ corrigem t erros,
entao o codigo CSS (C1, C2) corrige erros em t qubits. Isto e, podemos corrigir erros de ate
t bit flip e phase flip.
Para entender a identificacao e recuperacao de erros, recomendamos ao leitor [23], [24].
Exemplo 2.14. (Codigo de Steane) Vamos construir um codigo CSS usando o codigo de
Hamming (definicao 2.11). Considere r = 3, logo, temos um codigo de Hamming [7, 4, 3],
denotado por C.
Defina C1 ≡ C e C2 ≡ C⊥, e seja
HC1 =
0 0 0 1 1 1 1
0 1 1 0 0 1 1
1 0 1 0 1 0 1
3×7
a matriz de verificacao de paridade de C1. Entao, a matriz geradora de C2 ≡ C⊥ sera
GC2 = HC1
>. Seguindo o processo que ja apresentamos, e possıvel determinar a partir de
HC1 a matriz geradora de C1 e a partir de GC2 = HC1
> a matriz de verificacao de paridade
de C2.
2.4 Codigos CSS 35
Queremos mostrar que C2 ⊂ C1. Utilizando as matrizes geradoras ou de verificacao de
paridade, determinamos que
C1 = {(0, 0, 0, 0, 0, 0, 0) , (1, 0, 1, 0, 1, 0, 1) , (0, 1, 1, 0, 0, 1, 1) , (1, 1, 0, 0, 1, 1, 0) ,
(0, 0, 0, 1, 1, 1, 1) , (1, 0, 1, 1, 0, 1, 0) , (0, 1, 1, 1, 1, 0, 0) , (1, 1, 0, 1, 0, 0, 1) ,
(1, 1, 1, 1, 1, 1, 1) , (1, 1, 1, 0, 0, 0, 0) , (0, 0, 1, 1, 0, 0, 1) , (0, 1, 0, 1, 0, 1, 0) ,
(1, 0, 0, 1, 1, 0, 0) , (1, 0, 0, 0, 0, 1, 1) , (0, 1, 0, 0, 1, 0, 1) , (0, 0, 1, 0, 1, 1, 0)}
e
C2 = {(0, 0, 0, 0, 0, 0, 0) , (1, 0, 1, 0, 1, 0, 1) , (0, 1, 1, 0, 0, 1, 1) , (1, 1, 0, 0, 1, 1, 0) ,
(0, 0, 0, 1, 1, 1, 1) , (1, 0, 1, 1, 0, 1, 0) , (0, 1, 1, 1, 1, 0, 0) , (1, 1, 0, 1, 0, 0, 1)}.
Portanto, C2 ⊂ C1. Veja tambem que C2⊥ =
(C⊥)⊥
= C, logo, ambos os codigos C1 e C2⊥
tem distancia 3 e assim, podem corrigir erros em ate 1 bit.
Como C1 e um codigo [7, 4] e C2 e um codigo [7, 3], o codigo quantico CSS (C1, C2) e
um codigo [7, 1] que pode corrigir erros em 1 unico qubit, e e definido como sendo o espaco
vetorial gerado pelos estados |x+C2〉 ∀x ∈ C1. Note que temos apenas dois estados, os quais
serao denotados pelos logicos |0L〉 e |1L〉.
|0L〉 = |0 + C2〉
=1√|C2|
∑y∈C2
|0 + y〉
=1√8
[|0000000〉+ |1010101〉+ |0110011〉+ |1100110〉+
|0001111〉+ |1011010〉+ |0111100〉+ |1101001〉]
e
|1L〉 = |1 + C2〉
=1√|C2|
∑y∈C2
|1 + y〉
=1√8
[|1111111〉+ |0101010〉+ |1001100〉+ |0011001〉+
|1110000〉+ |0100101〉+ |1000011〉+ |0010110〉],
2.5 Codigos Estabilizadores 36
onde 0 = (0, 0, 0, 0, 0, 0, 0) e 1 = (1, 1, 1, 1, 1, 1, 1). Temos que 0 ∈ C2 e se escolhermos qual-
quer outro x ∈ C2 teremos o mesmo estado |0L〉. Do mesmo modo, 1 ∈ C1 e se escolhermos
qualquer outro x ∈ C1 − C2 teremos o mesmo estado |1L〉. O espaco vetorial gerado por |0L〉
e |1L〉 e chamado de codigo de Steane.
2.5 Codigos Estabilizadores
Apresentaremos agora os codigos estabilizadores, desenvolvido por Gottesman em 1996 [16],
o qual unificou em uma unica classe todos os codigos que iremos trabalhar. A construcao dos
codigos estabilizadores esta baseada na teoria de grupos, e por isso, antes de definirmos esses
codigos quanticos apresentaremos alguns conceitos e propriedades de grande importancia para
a sua compreensao. Para maiores informacoes dos conceitos de teoria de grupos recomenda-
mos ao leitor [4], [12] e para maiores informacoes sobre codigos estabilizadores recomendamos
[9], [17], [24].
Definicao 2.15. Considere os operadores de Pauli em um unico qubit {I,X, Y, Z}. Defini-
mos o grupo de Pauli Gn como sendo o grupo formado pelos elementos da forma ikP1⊗P2⊗
· · · ⊗ Pn, onde Pi ∈ {I,X, Y, Z} e k ∈ {0, 1, 2, 3}.
Exemplo 2.16. O grupo de Pauli G1 e formado pelos elementos ikP1, onde P1 ∈ {I,X, Y, Z}
e k ∈ {0, 1, 2, 3}, ou seja, G1 = {±I,±iI,±X,±iX,±Y,±iY,±Z,±iZ}.
Como ja vimos na secao 1.4, duas matrizes de Pauli comutam ou anticomutam. Por esse
motivo, dados dois elementos M,N ∈ Gn temos que [M,N ] = 0 ou {M,N} = 0. Pelo fato
das matrizes de Pauli serem Hermitianas e unitarias, temos que os elementos do grupo de
Pauli sao unitarios, ou seja, MM † = I e o quadrado de qualquer elemento do grupo de Pauli
e igual a ±I, ou seja, M2 = ±I ∀M ∈ Gn.
Definiremos agora o que e um operador estabilizador e grupo estabilizador.
Definicao 2.17. Sejam |ψ〉 um estado qualquer e M um operador qualquer que age em
|ψ〉. Dizemos que |ψ〉 e estabilizado pelo operador M se M |ψ〉 = |ψ〉. Chamamos M de
estabilizador.
2.5 Codigos Estabilizadores 37
Exemplo 2.18. Seja |ψ〉 = |00〉+|11〉√2
um estado de dois qubits. Note que
X1X2|ψ〉 = X1X2
(|00〉+ |11〉√
2
)=|11〉+ |00〉√
2=|00〉+ |11〉√
2= |ψ〉
e
Z1Z2|ψ〉 = Z1Z2
(|00〉+ |11〉√
2
)=|00〉 − (−|11〉)√
2=|00〉+ |11〉√
2= |ψ〉.
Assim, |ψ〉 e estabilizado pelos operadores X1X2 e Z1Z2.
Definicao 2.19. Sejam S um subgrupo de Gn e VS o conjunto de todos os estados de n
qubits que sao estabilizados por todos os elementos de S. Chamamos VS de espaco vetorial
estabilizado por S e chamamos S de estabilizador (ou grupo estabilizador) do espaco VS se
todo elemento de VS e estabilizado pelos elementos de S.
Exemplo 2.20. Seja S = {I, Z1Z2, Z2Z3, Z1Z3} um subgrupo de G3. Como (Z1Z2)2 = I e
(Z1Z2) (Z2Z3) = Z1Z3, temos que, S = 〈Z1Z2, Z2Z3〉, ou seja, S e gerado por Z1Z2 e Z2Z3.
Assim, para determinarmos VS, basta determinarmos os estados que sao estabilizados pelos
geradores de S. Veja que Z1Z2 estabiliza o subespaco gerado por |000〉, |001〉, |110〉 e |111〉, e
Z2Z3 estabiliza o subespaco gerado por |000〉, |100〉, |011〉 e |111〉. Sem grandes dificuldades
podemos ver que VS = 〈|000〉, |111〉〉.
Podemos obter algumas vantagens utilizando os estabilizadores, como por exemplo:
(i) Descrever alguns estados quanticos de uma forma mais facil utilizando os operadores que
os estabilizam;
(ii) Descrever muitos codigos quanticos de maneira mais compacta utilizando apenas os
estabilizadores;
(iii) Descrever de maneira mais facil os erros nos qubits e algumas operacoes, como por
exemplo, a porta de Hadamard e ate mesmo as medicoes na base computacional.
Exemplo 2.21. Considere os 6 operadores a seguir:
2.5 Codigos Estabilizadores 38
Elemento Operador
g1 IIIXXXX
g2 IXXIIXX
g3 XIXIXIX
g4 IIIZZZZ
g5 IZZIIZZ
g6 ZIZIZIZ
O subgrupo S = 〈g1, g2, . . . , g6〉 e o estabilizador para o codigo de Steane, ou seja, S
estabiliza VS = 〈|0L〉, |1L〉〉 (exemplo 2.14). Observe que, descrever o codigo de Steane por S
e muito mais simples do que descreve-lo utilizando os estados logicos |0L〉 e |1L〉.
Observacao 2.22. Se −I ∈ S, entao dado um estado qualquer |ψ〉, temos que −I|ψ〉 =
|ψ〉 ⇔ |ψ〉 = 0. Logo, VS sera o espaco vetorial nulo. Portanto, para qualquer grupo estabi-
lizador S, exigimos que −I 6∈ S, o que implica que ±iI 6∈ S.
Proposicao 2.23. Seja S o estabilizador do espaco VS. Se VS e nao trivial, entao:
(i) Os elementos de S comutam;
(ii) −I nao e um elemento de S.
Demonstracao. (i) Seja |ψ〉 um estado nao nulo de VS e sejam M e N elementos de S. Logo,
M e N estabilizam |ψ〉. Suponha que M e N anticomutam, ou seja, MN = −NM . Desse
modo, −|ψ〉 = −NM |ψ〉 = MN |ψ〉 = |ψ〉. Assim, |ψ〉 e o vetor nulo, o que e um absurdo.
Portanto, M e N comutam.
(ii) E imediato pela observacao 2.22.
Queremos que os geradores g1, . . . , gl sejam independentes, ou seja, se tirarmos qualquer
um dos geradores gi, o grupo gerado se tornara menor.
Utilizando o conceito de matriz de verificacao que definiremos a seguir, temos um resultado
que nos garante quando os geradores serao independentes.
2.5 Codigos Estabilizadores 39
Definicao 2.24. Seja S = 〈g1, . . . , gl〉 um subgrupo de Gn. Considere uma matriz de ordem
l × 2n, onde cada linha corresponde a um dos geradores de S. Essa correspondencia e dada
da seguinte forma: as primeiras n entradas de cada linha terao 1 na posicao onde temos um
operador X no gerador e as n ultimas entradas de cada linha terao 1 na posicao onde temos
um operador Z no gerador. Se tivermos um 1 nas n primeiras e nas n ultimas entradas,
na mesma posicao, entao quer dizer que temos um operador Y no gerador. Essa matriz e
chamada de matriz de verificacao.
Exemplo 2.25. A matriz de verificacao para o codigo de Steane tem a seguinte forma:
0 0 0 1 1 1 1
0 1 1 0 0 1 1
1 0 1 0 1 0 1
0 0 0 0 0 0 0
0 0 0 0 0 0 0
0 0 0 0 0 0 0
0 0 0 0 0 0 0
0 0 0 0 0 0 0
0 0 0 0 0 0 0
0 0 0 1 1 1 1
0 1 1 0 0 1 1
1 0 1 0 1 0 1
6×14
.
Proposicao 2.26. Seja S = 〈g1, . . . , gl〉 tal que −I 6∈ S. Os geradores 〈g1, . . . , gl〉 sao
independentes se, e somente se, as linhas da matriz de verificacao correspondente sao L.I.
Proposicao 2.27. Seja S = 〈g1, . . . , gn−k〉 gerado por n − k geradores independentes e que
comutam entre si tal que −I 6∈ S. Entao VS e um espaco vetorial de dimensao 2k.
A demonstracao de ambas proposicoes pode ser vistas em [24].
Definiremos agora o codigo estabilizador.
Definicao 2.28. Um codigo estabilizador [n, k] e definido como sendo o espaco vetorial VS
estabilizado por um subgrupo S de Gn tal que −I 6∈ S e S tem n− k geradores independentes
e que comutam, ou seja, S = 〈g1, . . . , gn−k〉 e abeliano. Denotamos esse codigo por C(S).
Agora falaremos dos tipos de erros que podem ser detectados usando um codigo C(S) e
quando podemos executar a recuperacao.
Sejam C(S) um codigo estabilizador e E ∈ Gn um erro agindo em C(S).
Se E ∈ S, entao E nao ira corromper C(S) e assim nao precisamos nos preocupar.
2.5 Codigos Estabilizadores 40
Se E anticomuta com algum elemento do estabilizador, entao E leva C(S) para um
subespaco ortogonal. Desse modo, atraves de uma medicao projetiva apropriada, podemos
detectar o erro e possivelmente corrigi-lo.
Os erros perigosos sao quando E comuta com todos os elementos de S, mas E 6∈ S.
Definicao 2.29. O conjunto formado por todos os elementos E ∈ Gn tal que Eg = gE
∀g ∈ S, e chamado de centralizador de S em Gn e denotado por Z (G). E, o conjunto formado
por todos os elementos E ∈ Gn tal que EgE† ∈ S ∀g ∈ S, e chamado de normalizador de S
e denotado por N (S).
Observacao 2.30. Se −I 6∈ S, onde S e subgrupo de Gn, entao N (S) = Z (S).
O teorema a seguir nos diz as condicoes de correcao de erros para os codigos estabiliza-
dores.
Teorema 2.31. (Condicoes de correcao de erros para codigos estabilizadores):
Seja S o estabilizador para um codigo estabilizador C(S). Suponha que {Ej} e um conjunto
de operadores em Gn tal que Ej†Ek 6∈ N (S) \ S para todo j e k. Entao {Ej} e um conjunto
corrigıvel de erros para o codigo C(S).
A correcao de erros e realizada da seguinte forma:
Seja S = 〈g1, . . . , gn−k〉 o estabilizador de um codigo estabilizador C(S) [n, k] e seja {Ej}
um conjunto de erros corrigıveis de C(S). Para detectarmos o erro que ocorreu, realizamos
a medicao dos geradores g1, . . . , gn−k, obtendo a sındrome do erro β1 ate βn−k, que sao os
resultados das medicoes.
Suponha que ocorreu o erro Ej. Entao a sındrome de erro e dada βl tal que EjglEj† = βlgl.
Se Ej for o unico erro com a sındrome βl, entao basta aplicarmos Ej† que recuperamos o
estado do erro. Se Ej e Ej′ sao erros distintos e possuem a mesma sındrome βl, recuperamos
o estado do erro aplicando Ej† apos o erro Ej′ ter ocorrido, pois considerando P o projetor
sobre o espaco codigo, temos que EjPEj† = Ej′PEj′
†, logo Ej†Ej′PEj′
†Ej = Ej†EjPEj
†Ej =
IPI = P , onde Ej†Ej′ ∈ S.
Por fim, a distancia de um codigo quantico e definida de maneira semelhante ao caso
classico.
2.5 Codigos Estabilizadores 41
Definicao 2.32. Seja E ∈ Gn. Chamamos o numero de termos no produto tensorial que sao
diferentes da identidade de peso do operador E.
Definicao 2.33. O peso mınimo de um elemento de N(S) \ S e chamado de distancia do
codigo estabilizador C(S) e denotado por d. Logo C(S) e um codigo estabilizador [n, k, d].
Observacao 2.34. Como no caso classico, um codigo quantico com distancia de pelo menos
2t+ 1 pode corrigir erros arbitrarios em quaisquer t qubits.
Capıtulo 3
Codigos Quanticos Topologicos
Segundo [23], os codigos quanticos topologicos surgiram a partir do codigo torico de Kitaev,
desenvolvido por Alexei Yu Kitaev em 1997 [21]. Como veremos, esse codigo e um exemplo
dos codigos de superfıcies. Os codigos quanticos topologicos sao considerados codigos locais,
isto e, todos os geradores estabilizadores agem apenas em um pequeno numero de qubits
proximos. Os qubits dos codigos que trabalharemos sao colocados em alguma tesselacao
bidimensional, as quais sao fixadas em alguma superfıcie fechada orientavel e conectada,
como por exemplo, a esfera e o g-toro, onde g e o genero da superfıcie. Como poderemos
perceber, a topologia dessas superfıcies e de grande importancia.
Este capıtulo esta dividido da seguinte maneira. Na Secao 3.1, falaremos brevemente sobre
alguns conceitos de homologia e do primeiro grupo de homologia. Em seguida, na Secao 3.2,
faremos a construcao dos codigos de superfıcie, no qual iremos apresentar o codigo torico de
Kitaev como um exemplo de codigo de superfıcie. Por fim, na Secao 3.3, apresentaremos os
codigos quanticos coloridos.
3.1 Homologia
Nesta secao definiremos o primeiro grupo de homologia de uma superfıcie, onde seus ele-
mentos formarao uma base para os estados codificados. Assim como a caracterıstica de
Euler, esse grupo tambem e um invariante topologico. Para mais detalhes sobre homologia
recomendamos ao leitor [7], [14], [19].
Definicao 3.1. Considere uma tesselacao qualquer em uma superfıcie M . Chamamos os
vertices de 0-cells, as arestas de 1-cells e as faces de 2-cells.
3.1 Homologia 43
Definicao 3.2. Considere uma tesselacao qualquer em uma superfıcie M e Ai o conjunto de
todas as i-cells, para i = 0, 1, 2. Para cada A ⊂ Ai, definimos como uma i-cadeia em M a
soma formal finita
c =∑i
cipi tal que ci =
0; pi /∈ A
1; pi ∈ A.
Exemplo 3.3. Seja A1 = {ei}E1 o conjunto de todas as 1-cells e E ′ ⊂ A1 um subconjunto
qualquer de arestas. A soma formal
c =∑i
ciei tal que ci =
0; ei /∈ E ′
1; ei ∈ E ′
e uma 1-cadeia.
Podemos somar as i-cadeias formando novas i-cadeias, onde a soma e feita modulo 2.
Usando essa operacao de soma, formamos um grupo abeliano aditivo Ci, para i = 0, 1, 2,
onde o elemento neutro corresponde ao conjunto vazio.
A partir desses grupos abelianos introduzimos tres homomorfismos de grupos ∂i para
i = 0, 1, 2, chamados de operadores bordo, onde
∂2 : C2 → C1, ∂1 : C1 → C0 e ∂0 : C0 → {0}.
Esses homomorfismos ∂i levam uma i-cadeia na soma das fronteiras de todas as i-cells
que fazem parte dessa i-cadeia.
Exemplo 3.4. Seja f uma face qualquer de G tal que sua fronteira e formada pelas arestas
{e1, . . . , ek}, entao ∂2f = e1 + · · · + ek. Do mesmo modo, seja e uma aresta tal que seus
pontos extremos sao os vertices v1 e v2, entao ∂1e = v1 + v2.
Para ficar ainda mais claro, observe a Figura 3.1.
Antes de definirmos o primeiro grupo de homologia precisamos definir dois subgrupos de
C1.
Definicao 3.5. Sejam Z1 e B1 subgrupos de C1 tais que Z1 e o nucleo de ∂1, ou seja,
Z1 = {z ∈ C1; ∂1z = 0}, onde seus elementos sao chamados de ciclos, e B1 e a imagem de
∂2, ou seja, B1 = {b ∈ C1; ∃ c ∈ C2 tal que b = ∂2c}.
3.1 Homologia 44
Figura 3.1: Acao dos operadores bordo ∂2 e ∂1.
Observacao 3.6. Toda fronteira de uma 2-cadeia sao ciclos. Dessa forma, B1 ⊂ Z1.
Definidos esses subgrupos de C1, podemos definir agora o primeiro grupo de homologia.
Definicao 3.7. O primeiro grupo de homologia de uma superfıcie M e definido pelo quociente
H1 =Z1
B1
.
Um resultado importante que sera usado e pode ser visto em [14] e que H1 ' Z22g, onde
g e o genero da superfıcie. Assim, independente da tesselacao que usarmos, teremos que H1
depende apenas da topologia da superfıcie. Desse modo, H1 e um invariante topologico.
Outro invariante topologico que usaremos e a caracterıstica de Euler.
Definicao 3.8. (Caracterıstica de Euler) Dada uma tesselacao qualquer, considere V , E e
F o numero de vertices, arestas e faces, respectivamente. A caracterıstica de Euler e definida
como a quantidade χ ≡ V − E + F .
Usaremos tambem a relacao χ = 2(1− g) para superfıcies fechadas orientaveis e conecta-
das.
Considere a Figura 3.2, onde tesselamos o toro com uma tesselacao quadrada, onde as
bordas opostas sao identificadas. As 1-cadeias sao classificadas da seguinte forma:
A 1-cadeia a e homologicamente trivial. Ja b, c, d, e e f sao homologicamente nao triviais.
As 1-cadeias b e c sao homologicamente equivalentes, pois juntando as duas, elas envolvem
a regiao B. Essas sao as classificacoes para curvas fechadas. Ja as 1-cadeias abertas e e f
envolvem a regiao C, e dizemos que sao homologas.
3.2 Codigos de Superfıcie 45
Figura 3.2: a e homologicamente trivial, enquanto b, c, d, e e f sao homologicamente nao
triviais. b e c sao homologicamente equivalentes. Ja e e f sao ditas homologas.
Note que a = 0, b = c e b 6= d 6= 0. Como H1 ' Z22g e g = 1, entao H1 ' Z2 × Z2, logo,
H1 tem dois geradores. Considere b e d esses geradores, assim, os elementos de H1 sao 0, b,
d e b+ d.
3.2 Codigos de Superfıcie
Nesta secao faremos a construcao dos codigos de superfıcies, os quais sao os exemplos mais
basicos de codigos topologicos. Uma referencia basica para codigos de superfıcie e [10].
Primeiramente, dada uma superfıcie fechada, fixamos uma tesselacao nessa superfıcie. A
cada aresta dessa tesselacao associamos um qubit. Desse modo, interpretamos cada elemento
da base computacional como uma 1-cadeia c ∈ C1 como segue:
|c〉 ≡⊗i
|ci〉 c ∈ C1, (3.1)
onde i representa as arestas da tesselacao {ei}, ou seja, os qubits.
Os produtos dos operadores de Pauli X e Z com relacao as 1-cadeias serao representados
3.2 Codigos de Superfıcie 46
por
Xc ≡⊗i
Xici e Zc ≡
⊗i
Zici ; c ∈ C1, (3.2)
onde, por exemplo, o operador Xc consiste do produto tensorial do operador de Pauli X
agindo nos qubits pertencentes a 1-cadeia c com a identidade agindo nos demais qubits. Do
mesmo modo para Zc.
Observacao 3.9. Dados c, c′ ∈ C1, nao e difıcil perceber que
XcXc′ = Xc+c′ e ZcZc′ = Zc+c′ .
Definicao 3.10. O codigo de superfıcie e o espaco gerado pelos elementos
|z〉 ≡∑b∈B1
|z + b〉, z ∈ H1 (3.3)
que sao somas de todos os ciclos que formam uma determinada classe de homologia.
Veja que se z 6= y, entao 〈z|y〉 = 0. Logo, como H1 ' Z22g, temos que |H1| = 22g e assim,
o numero de qubits codificados e k = 2g, pois a dimensao do espaco codigo e 2g.
Observacao 3.11. Note que Xc|b〉 = |b+ c〉 e Xc|z〉 = |z + c〉.
De fato,
Xc|b〉 =⊗
iXici (⊗
i |bi〉) =⊗
iXici |bi〉.
• Se ci = 0, entao Xi0 = I ⇒ Xi
ci |bi〉 = I|bi〉 = |bi〉 = |bi + 0〉 = |bi + ci〉 para bi = 0, 1.
• Se ci = 1, entao Xi1 = Xi ⇒ Xi
ci |bi〉 = Xi|bi〉.
Caso bi = 0, entao Xi|bi〉 = |1〉 = |0 + 1〉 = |bi + ci〉.
Caso bi = 1, entao Xi|bi〉 = |0〉 = |1 + 1〉 = |bi + ci〉.
Portanto, Xici |bi〉 = |bi + ci〉 ∀i, e assim, Xc|b〉 = |b+ c〉.
Por fim, veja que
Xc|z〉 = Xc
∑b∈B1
|z+ b〉 =∑b∈B1
Xc|z+ b〉 =∑b∈B1
|z+ b+ c〉 =∑b∈B1
|z+ c+ b〉 = |z + c〉 = |z+ c〉.
3.2 Codigos de Superfıcie 47
Veremos agora os efeitos dos erros bit flip nos codigos de superfıcie.
Para isso, considere z, y ∈ Z1, logo, ∂1z = 0 = ∂1y. Se ∂1c 6= 0, entao ∂1 (z + c) 6= 0 e
z + c 6= y. De fato, como ∂1 e homomorfismo,
∂1 (z + c) = ∂1z + ∂1c = 0 + ∂1c = ∂1c 6= 0.
Agora, suponha que z + c = y, entao
z + c+ y = 0⇒ z + c+ y ∈ B1,
ou seja, ∂1 (z + c+ y) = 0, mas
∂1 (z + c+ y) = ∂1z + ∂1c+ ∂1y = 0 + ∂1c+ 0 = ∂1c 6= 0,
o que e um absurdo. Portanto, z + c 6= y.
Logo, 〈y|z + c〉 = 0 e, como 〈y|z + c〉 = 〈y|Xc|z〉 temos que, 〈y|Xc|z〉 = 0. Com isso, Xc
podera levar o codigo nele mesmo somente quando c for um ciclo. Se b for fronteira de uma
2-cadeia, os erros Xb nao vao fazer nada, pois Xb|z〉 = |z + b〉 = |z〉. Portanto, somente os
erros bit flip Xz com z ∈ Z1 sao indetectaveis. Desse modo, a distancia de um codigo de
superfıcie para erros bit flip e o comprimento do menor ciclo nao trivial, o qual pertence ao
conjunto Z1 −B1.
3.2.1 Estabilizadores
Definicao 3.12. Sejam v um vertice e f uma face da tesselacao fixada na superfıcie fechada.
Os operadores de Pauli
Xf ≡∏e∈∂2f
Xe e Zv ≡∏
e; v∈∂1e
Ze, (3.4)
sao chamados de operador face e operador vertice, respectivamente. Consideramos ∂2f e ∂1e
como conjuntos.
O operador face Xf consiste de um produto tensorial do operador de Pauli X agindo
nos qubits que estao nas arestas pertencentes a face f , com a identidade agindo nos demais
qubits, e o operador vertice Zv consiste de um produto tensorial do operador de Pauli Z
3.2 Codigos de Superfıcie 48
agindo nos qubits que estao nas arestas adjacentes ao vertice v, com a identidade agindo nos
demais qubits, como pode ser visto na Figura 3.3. E claro que os operadores vertice comutam
entre si, do mesmo modo que os operadores face tambem comutam entre si. Sabemos que X
e Z anticomutam, mas Xf e Zv terao nenhuma ou terao duas arestas em comum, portanto,
os operadores vertice e face sempre comutarao.
Figura 3.3: Acao dos operadores face Xf e Zv agindo nos qubits da face f e nos qubits
adjacentes ao vertice v, respectivamente. Os cırculos abertos representam os qubits onde os
operadores estao agindo.
Os operadores vertice e face sao os operadores estabilizadores do codigo de superfıcie, ou
seja, o codigo de superfıcie C que definimos em 3.10 pode ser definido por
C = {|ψ〉; Xf |ψ〉 = |ψ〉, Zv|ψ〉 = |ψ〉, ∀f, v}. (3.5)
Observe que os geradores estabilizadores Xf e Zv nao sao todos independentes, pois∏f
Xf = I e∏v
Zv = I. (3.6)
Logo, como para cada face e cada vertice temos um gerador estabilizador, existem V +F − 2
geradores independentes. Sabendo que a quantidade de geradores independentes em um
codigo quantico estabilizador [n, k] e n− k, temos que
n− k = V + F − 2⇔
k = n− (V + F − 2) = E − (V + F − 2) = 2− χ = 2− 2 (1− g) = 2g,
que e exatamente como ja havıamos visto.
3.2 Codigos de Superfıcie 49
3.2.2 Tesselacao Dual
Dada uma tesselacao qualquer em uma superfıcie fechada, podemos construir sua tesselacao
dual da seguinte forma:
As faces da tesselacao sao levadas a vertices na tesselacao dual. As arestas da tesselacao
sao levadas a arestas da tesselacao dual e os vertices da tesselacao sao levados a faces da
tesselacao dual. Denotamos o vertice dual correspondente a face f por f ∗, a aresta dual
correspondente a aresta e por e∗ e a face dual correspondente ao vertice v por v∗.
Os operadores bordo dual agindo nas cadeias dual C∗ ficam
∂1∗ : C0
∗ −→ C1∗ e ∂2
∗ : C1∗ −→ C2
∗.
Esses operadores bordo produzem os grupos de ciclos dual Z1∗ e bordo dual B1
∗, logo, o
primeiro grupo de homologia fica
H1∗ =
Z1∗
B1∗ ' H1.
Os operadores face Xf sao vistos agora como operadores vertice Xf∗ e os operadores
vertice Zv sao vistos agora como operadores face Zv∗ .
Como pode ser visto na Figura 3.4, a dual de uma tesselacao quadrada e tambem uma
tesselacao quadrada, chamada de auto-dual. Ja a dual de uma tesselacao hexagonal e uma
tesselacao triangular.
Aplicando a ja conhecida porta de Hadamard H transversalmente atraves de todos os
qubits no codigo de superfıcie, o codigo sera levado a um novo subespaco, o qual e descrito
pelos operadores
H⊗EXfH
⊗E =
∏e∈∂2f
Ze =∏
e∗; f∗∈∂2∗e∗Ze ≡ Zf∗ ; (3.7)
H⊗EZvH
⊗E =
∏e; v∈∂1e
Xe =∏
e∗∈∂1∗v∗Xe ≡ Xv∗ . (3.8)
Esse sera o codigo definido na tesselacao dual. Os erros phase flip sao trabalhados de maneira
analoga aos erros bit flip, porem na tesselacao dual.
3.2 Codigos de Superfıcie 50
Figura 3.4: Tesselacao quadrada e tesselacao hexagonal feitas no toro, juntamente com suas
tesselacoes duais representadas com as linhas tracejadas. As bordas opostas dessas tesselacoes
sao identificadas. Os cırculos abertos representam os qubits e os cırculos cinza sao os qubits
identificados. A face em vermelho f da tesselacao esta sendo levada ao vertice f ∗ da dual.
A aresta em vermelho e esta sendo levada a aresta tracejada azul e∗ e o vertice v da face em
vermelho f esta sendo levado a face tracejada azul v∗.
3.2.3 Operadores Strings
Dado um operador de Pauli qualquer, podemos escreve-lo como um produto tensorial de ope-
radores de Pauli X juntamente com a identidade I, vezes, um produto tensorial de operadores
de Pauli Z juntamente com a identidade I.
O produto tensorial dos operadores X com a identidade I define uma 1-cadeia, onde
as arestas, as quais X age correspondem ao valor 1 e as arestas onde I age, correspondem
ao valor 0. Esse operador comuta com os operadores face Xf , pois os operadores face sao
produtos tensoriais de X com a identidade, e comuta com um operador vertice Zv se, e
somente se, um numero par de operadores X agem nas arestas adjacentes ao vertice v. Se ele
comutar com todos os operadores vertice Zv, entao essa 1-cadeia e na verdade um ciclo. Da
mesma forma, o produto tensorial dos aperadores Z com a identidade I, comuta com todos
os operadores vertice Zv, e comuta com um operador face Xf se, e somente se, um numero
par de operadores Z agem nas arestas da face f . Se ele comutar com todos os operadores
face Xf , entao essa 1-cadeia e na verdade um ciclo na tesselacao dual.
3.2 Codigos de Superfıcie 51
As 1-cadeias com pontos finais, as que formam um loop e as que sao imagem de uma
2-cadeia sao chamadas de strings, onde as com pontos finais sao strings abertas e, as que
formam um loop e as que sao imagem de uma 2-cadeia sao strings fechadas. Os loops sao os
ciclos homologicamente nao triviais.
Definicao 3.13. O produto tensorial dos operadores X com a identidade I que definem uma
string µ na tesselacao e o produto tensorial dos operadores Z com a identidade I que definem
uma string µ∗ na tesselacao dual sao chamados de operadores strings e denotados por Xµ e
Zµ∗.
Podemos ver alguns exemplos de operadores strings na Figura 3.5.
Figura 3.5: Na tesselacao auto-dual temos em vermelho uma string aberta na tesselacao e
em azul um loop na tesselacao dual. Ja na tesselacao hexagonal, temos em vermelho um loop
na tesselacao e em azul uma string fechada na tesselacao dual.
Os operadores strings na tesselacao e na tesselacao dual anticomutam se, e somente se,
elas se cruzam uma quantidade ımpar de vezes.
Definicao 3.14. A distancia do codigo de superfıcie e o peso do operador string correspon-
dente a um ciclo homologicamente nao trivial (um loop), de menor peso.
Neste caso, a distancia mınima do codigo sera o mınimo entre o numero de arestas contidas
no menor ciclo homologicamente nao trivial da tesselacao e o numero de arestas contidas no
menor ciclo homologicamente nao trivial da tesselacao dual.
3.3 Codigos Quanticos Coloridos 52
3.2.4 Codigo Torico de Kitaev
Apresentaremos agora o codigo torico de Kitaev, o qual e o exemplo mais simples de um
codigo de superfıcie.
Para esse codigo foi tesselado o toro por quadrados l × l, onde o dual de uma tesselacao
quadrada l × l e tambem uma tesselacao l × l.
Como foi colocado um qubit a cada aresta, e temos que a quantidade de arestas da
tesselacao e |E| = 2l2, pois cada aresta pertence a duas faces, entao a quantidade de qubits
nessa tesselacao e n = 2l2.
Lembrando que o genero do toro e g = 1, entao, como a quantidade de qubits codificado
e k = 2g, temos que k = 2.
Por fim, a distancia do codigo torico de Kitaev e d = l, pois os ciclos nao triviais tem
que se enrolar ao redor do toro, e o de menor comprimento tem comprimento l. Portanto, o
codigo torico de Kitaev e um codigo [2l2, 2, l]. Veja que, quanto maior for o valor de l, maior
sera a distancia do codigo e maior sera o numero de qubits.
3.3 Codigos Quanticos Coloridos
Os codigos quanticos coloridos sao codigos quanticos estabilizadores topologicos que foram
desenvolvidos por Hector Bombın e Miguel A. Martin-Delgado em 2007, para superfıcies de
genero g = 0 e g = 1 [6]. Em 2018, Waldir Silva Soares e Eduardo B. Silva desenvolveram
codigos quanticos coloridos para superfıcies de genero g ≥ 2 [29].
Os codigos coloridos sao construıdos em tesselacoes trivalentes e 3-colorıvel sobre uma
superfıcie bidimensional.
Definicao 3.15. Dizemos que uma tesselacao e trivalente quando em cada vertice da tes-
selacao encontram-se exatamente 3 arestas. E, a tesselacao e dita ser 3-colorıvel quando e
possıvel colorir todas as faces da tesselacao usando apenas 3 cores, de forma que as faces
vizinhas que compartilham uma mesma aresta (adjacentes) nao tenham a mesma cor.
As cores utilizadas sao vermelho (R), verde (G) e azul (B). E atribuıdo uma cor para
3.3 Codigos Quanticos Coloridos 53
cada aresta, como por exemplo, as arestas verdes sao as arestas adjacentes a faces azuis e
vermelhas, ou seja, arestas verdes nao pertencem a faces verdes e, de forma semelhante para
arestas azuis e vermelhas.
Nos codigos de superfıcie que acabamos de ver, os qubits estavam anexados as arestas.
Ja nos codigos coloridos os qubits sao anexados aos vertices da tesselacao.
Os operadores do grupo estabilizador sao os operadores face, dos quais existem dois por
face f (os operadores de Pauli X e Z) agindo nos vertices da face, como pode ser visto na
Figura 3.6. Para cada face f da tesselacao, denotamos tais operadores por Bσf com σ = X,Z.
Figura 3.6: Tesselacao hexagonal trivalente e 3-colorıvel no toro, onde os lados opostos sao
identificados. Bfσ com σ = X,Z representa os operadores face agindo nos qubits da face
verde f , onde nos codigos coloridos os qubits estao anexados aos vertices do polıgono.
Considere FR, FG e FB os conjuntos das faces vermelhas, verdes e azuis, respectivamente.
Note que ∏f∈FR
Bσf =
∏f∈FG
Bσf =
∏f∈FB
Bσf (3.9)
com σ = X,Z. Entao, quatro desses operadores nao sao independentes. Logo, o numero de
geradores estabilizadores independentes e
r = 2 (|FR|+ |FG|+ |FB|)− 4, (3.10)
pois temos dois operadores para cada face e um total de |FR| + |FG| + |FB| faces. Como
quatro operadores nao sao independentes, descartamos 4.
A partir da tesselacao do codigo colorido podemos construir tres outras tesselacoes, uma
3.3 Codigos Quanticos Coloridos 54
por cor, as quais sao chamadas de tesselacoes reduzidas, marcadas pela cor das faces reduzi-
das.
Obtemos a tesselacao reduzida verde da seguinte forma: cada face verde corresponde a
um vertice da tesselacao reduzida, que em certo sentido, estamos reduzindo cada face verde
da tesselacao a um ponto. As arestas da tesselacao reduzida correspondem a dois vertices
da tesselacao e sao as arestas que conectam faces verdes da tesselacao, isto e, arestas verdes.
As faces vermelhas e azuis da tesselacao sao as faces da tesselacao reduzida. Analogamente,
obtemos a tesselacao reduzida vermelha e azul.
Um exemplo de tesselacao reduzida verde pode ser visto na Figura 3.7.
Figura 3.7: Tesselacao reduzida verde na tesselacao hexagonal no toro, onde os lados opostos
sao identificados.
Desse modo, a quantidade de faces verdes FG da tesselacao e igual a quantidade de vertices
V da tesselacao reduzida, ou seja, |FG| = V . Temos tambem que |FR|+ |FB| = F , onde F e
a quantidade de faces da tesselacao reduzida. Entao, por (3.10) temos
r = 2 (|FR|+ |FG|+ |FB|)− 4 (3.11)
= 2 (V + F )− 4 (3.12)
= 2 (V + F − 2) . (3.13)
O numero de qubits fısicos e o dobro do numero de arestas E da tesselacao reduzida, ou
seja, n = 2E. Como a quantidade de geradores independentes de um codigo estabilizador
[n, k] e n − k, temos que n − k = r. Logo, usando χ = V − E + F , χ = 2(1 − g) e (3.13)
temos que
3.3 Codigos Quanticos Coloridos 55
k = n− r
= 2E − 2 (V + F − 2)
= 2 (E − V − F + 2)
= 2 (2− (V − E + F ))
= 2 (2− χ)
= 2(2− (2(1− g)))
= 4g.
Portanto, a quantidade k de qubits codificados depende apenas da superfıcie considerada,
nao importanto a tesselacao.
Observacao 3.16. Os codigos coloridos dobram o numero de qubits codificados em relacao
aos codigos de superfıcie.
A homologia das strings dos codigos coloridos estao definidos sobre Z2, assim como nos
codigos de superfıcie.
Considere um loop ou uma string fechada µ em uma tesselacao do codigo colorido. Cons-
truımos seis operadores string diferentes, dois por cor, um do tipo X e outro do tipo Z.
Denotamos esses operadores strings por Sµcσ onde c e a cor (R,G,B), σ = X,Z e µ e a string.
Note que
SµcX =
∏v∈Vcµ
Xv e SµcZ =
∏v∈Vcµ
Zv, (3.14)
onde Vcµ e o conjunto que contem os vertices que pertencem a uma aresta c-colorida de µ.
Veja que
SµRXSµ
GXSµBX = I e Sµ
RZSµGZSµ
BZ = I, (3.15)
logo, existem apenas quatro operadores strings independentes. Assim, podemos considerar
apenas duas cores, como por exemplo, vermelho e verde.
Considere duas strings µ e µ′, se elas se cruzam um numero par de vezes, seus operadores
comutarao. Se elas se cruzam um numero ımpar de vezes, temos que [SµcX , Sµ′
cZ ] = 0 e
3.3 Codigos Quanticos Coloridos 56
{SµcX , Sµ′c′Z} = 0, para c 6= c′. Os operadores strings podem ter pontos finais nos bordos
ou faces da sua cor, mas esses operadores sempre anticomutarao com os operadores faces
correspondentes a esses pontos finais.
Podemos combinar duas strings de cores diferentes para produzir um terceiro operador
equivalente, resultando em pesos menores. Esse terceiro operador e chamado de t-string ou
string-Nets.
Exemplo 3.17. Considere um operador string vermelho e deforme parte dele fazendo o
produto com os operadores face vermelho e verde, marcados na Figura 3.8. O resultado nao
e mais um operador string, mas sim um operador string-net. Se fizermos o produto desse
operador string-net pelos mesmos operadores, recuperamos o operador string vermelho.
Figura 3.8: Um operador string-net. Os cırculos brancos sao os qubits onde o operador esta
agindo e sao chamados de suporte do operador.
Capıtulo 4
Construcao dos Codigos Quanticos
Coloridos em Superfıcies Compactas
com g ≥ 2
Neste capıtulo faremos a construcao dos codigos quanticos coloridos em superfıcies compactas
com genero g ≥ 2 [29]. A construcao desses codigos segue a ideia utilizada por Clarice D.
Albuquerque, Reginaldo Palazzo e Eduardo B. Silva em 2009, para gerar codigos quanticos
topologicos em superfıcies compactas com g ≥ 2 [1]. Iniciamos o capıtulo expondo algumas
definicoes e resultados de geometria hiperbolica na Secao 4.1. Para maiores informacoes
sobre geometria hiperbolica recomendamos ao leitor [2], [3], [20], [31]. Na Secao 4.2, apresen-
tamos a construcao desses codigos quanticos coloridos, algumas tabelas com os parametros
encontrados para 3 ≤ g ≤ 9 e uma famılia de codigos que construımos fixando d.
4.1 Geometria Hiperbolica
A abordagem em geometria hiperbolica sera feita usando dois modelos: o semiplano superior
H2 e o disco de Poincare D2.
Definicao 4.1. O semiplano superior, H2 e o conjunto dos numeros complexos z com parte
imaginaria positiva, ou seja, H2 = {z ∈ C; =(z) > 0} e o disco de Poincare D2 e o conjunto
dos numeros complexos z tal que |z| < 1, isto e, D2 = {z ∈ C; |z| < 1}.
4.1 Geometria Hiperbolica 58
Considere a funcao f : H2 −→ D2 onde
f (z) =z − iiz − 1
. (4.1)
Temos que f e uma bijecao entre H2 e D2. De fato, primeiramente veja que f(z) ∈ D2
∀ z ∈ H2. Com efeito, considere z = a + bi ∈ H2. Logo, −2b < 2b, o que e equivalente a
(a+ bi)i− (a− bi)i < −(a+ bi)i+ (a− bi)i. Fazendo algumas contas obtemos que |f(z)| < 1,
portanto, f(z) ∈ D2.
Para ver que f e injetora, considere z, z′ ∈ H2 tais que f(z) = f(z′). Logo,
z − iiz − 1
=z′ − iiz′ − 1
⇔ izz′ + z′ − z + i = izz′ + z − z′ + i⇔ z = z′.
E para ver que f e sobrejetora, considere y ∈ D2 e tome z = y−iiy−1
. Nao e difıcil verificar que
z dado dessa forma pertence a H2. Logo,
f(z) = f
(y − iiy − 1
)= y.
Portanto, f e uma bijecao de H2 em D2 cuja inversa sera denotada por g e e dada por
g(z) = z−iiz−1
.
Definicao 4.2. Seja σ : [a, b] → H2 um caminho diferenciavel por partes, σ(t) = {z(t) =
x(t) + iy(t) ∈ H2; t ∈ [a, b]}. O comprimento hiperbolico de σ e definido por
hH2(σ) =
∫σ
√(dxdt
)2 + (dydt
)2
y(t)dt =
∫ b
a
|dzdt|
y(t)dt. (4.2)
Para a distancia em D2, considere σ : [a, b] → D2 um caminho qualquer. Entao g ◦ σ :
[a, b]→ H2 e um caminho em H2. Logo, o comprimento de g ◦ σ e dado por
hH2 (g ◦ σ) =
∫ b
a
| (g ◦ σ)′ (t) |= (g ◦ σ(t))
dt =
∫ b
a
|g′ (σ(t)) ||σ′(t)|= (g ◦ σ(t))
dt, (4.3)
usando a regra da cadeia. Calculando g′(z) e = (g(z)) e substituindo em (4.3), temos que
hH2 (g ◦ σ) =
∫ b
a
2
1− |σ(t)|2|σ′(t)|dt. (4.4)
O comprimento hiperbolico de um caminho σ em D2 e definido pela equacao (4.4).
Como cada caminho nos da possivelmente um comprimento diferente, a distancia entre
dois pontos quaisquer e definida como segue.
4.1 Geometria Hiperbolica 59
Definicao 4.3. A distancia hiperbolica entre dois pontos quaisquer z, w ∈ H2 e dada por
dH2(z, w) = inf(hH2(σ)), (4.5)
onde o ınfimo e considerado sobre o conjunto de todos os caminhos σ ligando z a w em H2.
Analogamente se define a distancia hiperbolica para D2.
Como usamos f para transferir a distancia em H2 para a distancia em D2, temos que
dD2 (f(z), f(w)) = dH2(z, w). (4.6)
Com essa convencao, f e uma isometria de (H2, d) em (D2, d), o que nos permite trabalhar
com o modelo mais adequado para cada situacao.
Definicao 4.4. Sejam a, b, c, d ∈ R tais que ad− bc > 0 e defina a funcao γ : C→ C, onde
γ(z) =az + b
cz + d. (4.7)
Transformacoes dessa forma sao chamadas de transformacoes de Mobius.
Observacao 4.5. Pode-se mostrar que dado z ∈ H2 temos que γ(z) ∈ H2.
O conjunto das matrizes
SL (2,R) =
g =
a b
c d
; a, b, c, d ∈ R e det (g) = ad− bc = 1
(4.8)
e chamado de grupo especial linear. Alem disso, o conjunto de transformacoes de Mobius
γ : C → C da forma γ(z) = az+bcz+d
, onde a, b, c, d ∈ R e ad − bc = 1 e um grupo com relacao
a operacao de composicao, denotado por PSL (2,R) e chamado de grupo projetivo especial
linear.
Note que, cada transformacao γ, onde a, b, c, d ∈ R e ad− bc = 1, pode ser representada
por um par de matrizes ±g ∈ SL(2,R). Temos assim que PSL(2,R) ' SL(2,R){±I} . De fato,
para verificar esse isomorfismo, basta considerar a funcao ϕ : SL (2,R)→ PSL (2,R) onde
g =
a b
c d
7−→ ϕ(g) = γg(z) =az + b
cz + d. (4.9)
4.1 Geometria Hiperbolica 60
E facil verificar que ϕ esta bem definida, e sobrejetora e seu kernel e {±I}. Logo, pelo
primeiro teorema do isomorfismo, temos o desejado.
Vale observar que PSL (2,R) contem todas as transformacoes de Mobius da forma z 7−→az+bcz+d
com a, b, c, d ∈ R e ad − bc > 0, pois dividindo o numerador e o denominador por√ad− bc, obtemos uma nova matriz com determinante unitario.
Definicao 4.6. Seja γ ∈ PSL (2,R) uma transformacao de Mobius. Chamamos τ (γ) =
(a+ d)2 de traco de γ.
As transformacoes de Mobius dividem-se em tres classes distintas: elıptica, parabolica e
hiperbolica.
Proposicao 4.7. Seja γ ∈ PSL (2,R) \ {±I}. Entao
(i) γ e parabolica se, e somente se, τ(γ) = 4;
(ii) γ e elıptica se, e somente se, 0 ≤ τ(γ) < 4;
(iii) γ e hiperbolica se, e somente se, τ(γ) > 4.
As transformacoes de Mobius sao homeomorfismos e preservam a distancia hiperbolica
em H2. Assim, PSL(2,R) e um subgrupo do grupo de todas as isometrias de H2, denotado
por Isom(H2).
Outro conceito muito importante em geometria hiperbolica e o conceito de geodesicas.
As geodesicas sao as curvas que tem comprimento mınimo em relacao a metrica, ligando dois
pontos distintos. No plano Euclidiano elas sao os segmentos de retas. Em H2 as geodesicas
sao semicırculos e sao as semirretas ortogonais ao eixo real, enquanto as geodesicas do disco
de Poincare sao segmentos de cırculos Euclidianos ortogonais a fronteira do disco, em parti-
cular seus diametros. Vale destacar que as transformacoes de Mobius levam geodesicas em
geodesicas. Na Figura 4.1, apresentamos alguns exemplos de geodesicas.
Definicao 4.8. Um polıgono hiperbolico P com n lados, chamado n-gon, e um conjunto
fechado convexo formado pela regiao limitada por n segmentos geodesicos hiperbolicos. A
intersecao de dois segmentos geodesicos e chamado de vertice. Um n-gon no qual todas as
4.1 Geometria Hiperbolica 61
arestas tem o mesmo comprimento e a medida de seus angulos internos sao todos iguais e
chamado de n-gon regular.
Figura 4.1: Exemplo de geodesicas em H2 e D2, respectivamente.
Definicao 4.9. Seja A ⊂ H2 uma regiao. A area hiperbolica de A e dada por
µ(A) =
∫ ∫A
dxdy
y2, (4.10)
se essa integral existir.
Porem, para determinar a area de um triangulo hiperbolico podemos usar o teorema de
Gauss-Bonnet que mostra que a area hiperbolica de um triangulo hiperbolico depende apenas
de seus angulos.
Teorema 4.10 (Gauss-Bonnet). Seja ∆ um triangulo hiperbolico com angulos internos
α, β, θ. Entao a area de ∆ e dada por µ(∆) = π − α− β − θ.
As transformacoes de Mobius sao transformacoes conformes, ou seja, preservam angulos,
e temos tambem que elas preservam a area hiperbolica.
Para saber quando duas transformacoes estao proximas usamos uma metrica em PSL (2,R)
que e dada da seguinte forma: Considere
γ1(z) =a1z + b1
c1z + d1
e γ2(z) =a2z + b2
c2z + d2
.
A metrica e dada por
dPSL (γ1, γ2) = min {|| (a1, b1, c1, d1)− (a2, b2, c2, d2) ||, || (a1, b1, c1, d1)− (−a2,−b2,−c2,−d2) ||} .
4.1 Geometria Hiperbolica 62
Definicao 4.11. Um grupo Fuchsiano e um subgrupo discreto de PSL (2,R).
Proposicao 4.12. Seja Γ um subgrupo de PSL (2,R). Os itens a seguir sao equivalentes.
(i) Γ e um grupo Fuchsiano;
(ii) O elemento identidade de Γ e isolado.
Definicao 4.13. Seja Γ um grupo Fuchsiano. Uma regiao fundamental F para Γ e um
subconjunto aberto de H2 tal que
(i)⋃γ∈Γ γ
(F)
= H2;
(ii) γ1 (F ) ∩ γ2 (F ) = ∅ se γ1, γ2 ∈ Γ, γ1 6= γ2.
A famılia {γ (F ) ; γ ∈ Γ} e chamada de tesselacao de H2, ou seja, a imagem de uma
regiao fundamental por um grupo Fuchsiano e uma tesselacao de H2.
Definicao 4.14. Seja Γ um grupo Fuchsiano e z1 ∈ H2 tal que γ(z1) 6= z1 para todo γ ∈
Γ \ {I}. Entao Dz1(Γ) = {z ∈ H2; d(z, z1) ≤ d (z, γ(z1)) ,∀γ ∈ Γ} e uma regiao fundamental
de Γ, chamada de regiao de Dirichlet.
4.1.1 Tesselacoes Regulares
Uma tesselacao regular do Plano Euclidiano ou Hiperbolico, e uma cobertura de todo o plano
por polıgonos regulares, todos com o mesmo numero de lados, sem superposicoes de tais
polıgonos, encontrando-se somente ao longo de arestas completas ou em vertices. Denotamos
uma tesselacao regular por {p, q}, onde q polıgonos regulares com p lados encontram-se em
cada vertice. Em particular, se p = q a tesselacao e dita auto-dual.
Dada uma tesselacao regular {p, q}, o angulo interno de um p-gon em um vertice mede
2π/q, e se considerarmos o polıgono dividido em p triangulos, entao o angulo que esta no cen-
tro do polıgono mede 2π/p, enquanto os demais angulos do triangulo medem π/q. Portanto,
4.1 Geometria Hiperbolica 63
no caso Euclidiano, temos que:
2π
p+
2π
q= π ⇔
2
p+
2
q= 1 ⇔
2q + 2p = pq ⇔
(p− 2) (q − 2) = 4.
Existem apenas tres solucoes reais para esse sistema de equacao, ou seja, no plano Euclidi-
ano existem apenas tres tesselacoes regulares. A tesselacao formada por triangulos equilateros
{3, 6}, por quadrados {4, 4} e por hexagonos regulares {6, 3}.
Na geometria hiperbolica a situacao e diferente, pois existem infinitas tesselacoes por
polıgonos regulares. O seguinte teorema nos garante isso.
Teorema 4.15. Existe uma tesselacao do plano hiperbolico por p-gons hiperbolicos regulares
com q polıgonos se encontrando em cada vertice se, e somente se,
1
p+
1
q<
1
2.
Fazendo as mesmas contas que anteriormente, teremos que (p− 2) (q − 2) > 4. Como
existem infinitas solucoes para esse sistema de inequacao, temos que, existem infinitas tes-
selacoes regulares no plano hiperbolico.
O polıgono regular hiperbolico que servira de modelo planar da superfıcie, denotado por
P ′, e o polıgono com p′ lados, onde q′ polıgonos com p′ arestas encontram-se em cada vertice.
Considere uma tesselacao regular, se contarmos as q arestas em cada um dos V vertices,
teremos contado cada aresta dessa tesselacao duas vezes, ou seja, qV = 2E. Do mesmo
modo, se contarmos todas as p arestas correspondendo ao bordo de cada uma das F faces,
teremos contado cada aresta dessa tesselacao duas vezes, ou seja, pF = 2E. Portanto,
qV = 2E = pF. (4.11)
4.1.2 Emparelhamento de Lados
Podemos obter qualquer superfıcie topologica compacta a partir de um polıgono P ′ por pares
de arestas identificadas.
4.1 Geometria Hiperbolica 64
Para entender melhor, considere Γ um grupo Fuchsiano e seja D = D(p) um polıgono de
Dirichlet para Γ. Assumimos que D tem finitos lados. Seja s um lado de D e suponha que
para algum γ ∈ Γ \ {I}, temos que γ(s) tambem e um lado de D. Note que γ−1 ∈ Γ \ {I}
leva o lado γ(s) em s.
Dizemos que os lados s e γ(s) estao emparelhados e chamamos γ de uma transformacao
de emparelhamento de lados.
Um lado de D e uma aresta com orientacao, isto e, comeca em um vertice e termina em
outro. Como γ sao isometrias que preservam a orientacao, entao γ(s) tem mesma orientacao
que s.
Cada vertice v de D e levado a outro vertice de D sobre uma transformacao de empa-
relhamento de lados associado ao lado com extremidade em v. E cada vertice v de D e
extremidade de dois lados de D, s e ∗s. Denotamos por (v, s) um vertice v e um lado s de
D com extremidade v, e por (v, ∗s) o par do vertice v e o outro lado ∗s com extremidade v.
Considere o seguinte procedimento:
(i) Seja v = v0 um vertice de D e seja s0 um lado com uma extremidade em v0. Seja γ1
uma transformacao de emparelhamento de lados associada ao lado s0. Assim γ1 leva
s0 a um outro lado s1 de D;
(ii) Sejam s1 = γ1(s0) e v1 = γ1(v0). Isso fornece um novo par (v1, s1);
(iii) Agora considere o par (v1, ∗s1). Esse e o par consistindo do vertice v1 e o lado ∗s1;
(iv) Seja γ2 a transformacao de emparelhamento de lados associada ao lado ∗s1. Entao,
γ2(∗s1) e um lado s2 de D e γ2(v1) = v2, um vertice de D;
(v) Repita o processo acima indutivamente.
Assim, obtemos uma sequencia de pares de vertices e lados: v0
s0
→ v1
s1
→ v1
∗s1
→ v2
s2
→ · · · vi
si
→ vi
∗si
→ vi+1
si+1
→ · · ·
4.1 Geometria Hiperbolica 65
Como existe um numero finito de pares (v, s), esse processo de aplicacao de uma trans-
formacao de emparelhamento de lados seguida de uma aplicacao ∗ deve eventualmente retor-
nar ao par inicial (v0, s0).
Definicao 4.16. Considere n > 0 o menor inteiro para o qual (vn, ∗sn) = (v0, s0). A
sequencia de vertices ε = v0 → v1 → · · · → vn−1 e chamado de ciclo de vertices, e a
transformacao γnγn−1 · · · γ2γ1 e chamada uma transformacao de ciclo elıptico.
Como a quantidade de pares de vertices e lados e finita, entao existe apenas uma quan-
tidade finita de ciclos de vertices e transformacoes de ciclos elıpticos. Na Figura 4.2, vemos
um exemplo de emparelhamento de lados.
Figura 4.2: Exemplo de emparelhamento de lados de um octogono hiperbolico.
Um emparelhamento de lados de P ′ define um espaco de identificacao SP ′ no qual existe
uma funcao distancia que coincide com a distancia hiperbolica, para regioes suficientemente
pequenas no interior de P ′, tornando-o uma superfıcie hiperbolica quando os angulos de cada
ciclo de vertices somam 2π.
Se um polıgono e uma regiao fundamental para Γ, entao uma superfıcie compacta H2/Γ
e o espaco de identificacao desse polıgono. Uma condicao necessaria e suficiente para um
polıgono ser regiao fundamental e a seguinte:
Teorema 4.17. (Condicao de lado e angulo) Se um polıgono compacto P ′ e regiao funda-
mental para um grupo de isometrias que preservam a orientacao Γ de S2, R2 ou H2, entao
4.2 Construcao dos Codigos 66
(i) Para cada lado s de P ′ existe um unico lado s′ de P ′ tal que s′ = γ(s), para γ ∈ Γ;
(ii) Dado um emparelhamento de lados de P ′, para cada conjunto de vertices identificados,
a soma dos angulos deve ser igual a 2π. Esse conjunto e um ciclo de vertices.
Teorema 4.18. (Poincare) Um polıgono compacto P ′ satisfazendo as condicoes de lado e
angulo e uma regiao fundamental para o grupo Γ gerado pelas transformacoes de emparelha-
mento de lados de P ′, e Γ e grupo Fuchsiano.
4.2 Construcao dos Codigos
Como visto na Secao 3.3, as tesselacoes necessarias para gerar os codigos quanticos coloridos
devem ser trivalentes e 3-colorıveis. Para o plano euclidiano existem tres tesselacoes trivalen-
tes e 3-colorıveis formadas por polıgonos regulares, sendo {6, 6, 6} uma tesselacao regular e
{4, 8, 8} e {4, 6, 12} tesselacoes semirregulares, onde a notacao {p, q, r} indica uma tesselacao
trivalente, formada por tres polıgonos regulares, sendo um de p lados, outro de q lados e o
ultimo de r lados. Em cada vertice da tesselacao encontram-se esses tres polıgonos, nessa
mesma ordem, quando se percorre no sentido anti-horario.
Como agora estamos trabalhando em superfıcies compactas com g ≥ 2 e a geometria
usada e a hiperbolica, temos pelo Teorema 4.15 que existem infinitas tesselacoes do plano
hiperbolico por polıgonos hiperbolicos {p, q}, onde p e q satisfazem (p−2)(q−2) > 4. Mesmo
considerando apenas as tesselacoes trivalentes regulares {p, 3} teremos infinitas tesselacoes
do plano hiperbolico, com p > 6.
Nem todas as tesselacoes trivalentes sao 3-colorıveis, como por exemplo, a tesselacao
{9, 3}, que pode ser vista na Figura 4.3. Qualquer tesselacao que tenha um polıgono com
uma quantidade ımpar de lados nao sera 3-colorıvel. Assim, tesselacoes da forma {p, 3} onde
p > 6 e par, e usada como subtesselacao do plano hiperbolico para tesselar o polıgono que
sera usado de modelo plano da superfıcie.
Podemos classificar a tesselacao do plano hiperbolico cuja face gera uma superfıcie com-
pacta atraves de seu genero, como por exemplo: {4g, 4g}, {4g + 2, 2g + 1}, {8g − 4, 4},
{12g − 6, 3}, entre outros. Independente de qual desses modelos e usado, obtemos a su-
4.2 Construcao dos Codigos 67
Figura 4.3: Tesselacao do plano hiperbolico pelo polıgono {9, 3}. E uma tesselacao trivalente,
mas nao e 3-colorıvel.
perfıcie de genero g desejada de acordo com a transformacao de emparelhamento de lados
do polıgono. Porem, na construcao dos codigos quanticos coloridos em superfıcies compac-
tas com g ≥ 2, se fez uso apenas do modelo {4g, 4g}, pois ele utiliza transformacoes que
emparelham lados opostos do polıgono (γ(si) = si+2g).
Como pode ser visto em [3], os polıgonos hiperbolicos que sao usados como modelos planos
para a superfıcie de genero g ≥ 2 sao chamados de polıgonos fundamentais.
Considere P ′ um polıgono fundamental que gera o g-toro. Tesselando P ′ por polıgonos
hiperbolicos regulares P , da forma {p, 3}, vamos determinar quantos polıgonos P sao ne-
cessarios para cobrir exatamente a area de P ′, ou seja, vamos determinar a solucao de
µ (P ′) = nfµ(P ), (4.12)
onde µ(P ′) denota a area de P ′, µ(P ) denota a area de P e nf e o numero de faces da
tesselacao {p, 3}, com p > 6.
Pelo Teorema de Gauss-Bonnet, a area de uma superfıcie M gerada por um polıgono P ′
4.2 Construcao dos Codigos 68
do tipo {p′, q′} e dada por
µ(M) = µ(P ′) (4.13)
= p′(π − 2π
p′− 2π
q′
)(4.14)
= −2π
(p′
q′− p′
2+ 1
)(4.15)
= −2π (V − E + F ) (4.16)
= −2πχ (M) (4.17)
= −2π(2− 2g) (4.18)
= 4π(g − 1). (4.19)
Em (4.16) usamos o fato de q′V = 2E = p′F , visto em (4.11). Como temos uma unica
face, que e P ′, entao F = 1, logo E = p′
2e V = p′
q′.
Usando a equacao anterior e novamente o Teorema de Gauss-Bonnet, temos em (4.12)
que
nf =µ (P ′)
µ (P )
=4π(g − 1)
p(π − 2π
p− 2π
3
)=
4 · 3(g − 1)
3p− 2p− 2 · 3.
Portanto,
nf =12(g − 1)
p− 6, com p > 6. (4.20)
4.2.1 Determinando os Parametros dos Codigos
Primeiramente, iremos apresentar como determinar a distancia d do codigo em uma tesselacao
por polıgonos {p, 3}. Lembrando que a distancia de um codigo colorido e o numero de qubits
no suporte de um ciclo hologicamente nao-trivial da tesselacao, olhando para a tesselacao
reduzida.
Utilizando trigonometria hiperbolica, que pode ser visto em [2], [3], apresentaremos um
limitante inferior para a distancia mınima dos codigos gerados pelas tesselacoes {p, 3} da
4.2 Construcao dos Codigos 69
seguinte forma:
Sabemos que a distancia mınima do codigo depende de um caminho sobre arestas e faces
da tesselacao. Desse modo o comprimento hiperbolico de um caminho qualquer sobre arestas
e faces da tesselacao, ligando lados opostos de um polıgono, e maior que o comprimento
hiperbolico de uma geodesica ligando esses mesmos lados. Assim, iremos primeiramente
determinar o comprimento hiperbolico da geodesica ligando lados opostos do polıgono P ′.
Em seguida, vamos determinar um limitante superior para o comprimento de uma aresta
da tesselacao reduzida, que e dado pela soma do comprimento hiperbolico de uma aresta da
tesselacao {p, 3} e do dobro do comprimento hiperbolico do raio da circunferencia circunscrita
a um polıgono da tesselacao {p, 3}. Podemos ver um exemplo desse limitante na Figura 4.4.
Figura 4.4: Uma aresta da tesselacao reduzida verde de uma tesselacao {8, 3}.
Com o comprimento hiperbolico da geodesica ligando lados opostos do polıgono P ′ e o
limitante superior para o comprimento de uma aresta da tesselacao reduzida, determinaremos
um limitante inferior para o numero de arestas da tesselacao reduzida contida em um ciclo
homologicamente nao trivial pertencente a tesselacao de P ′ por meio de polıgonos {p, 3}. Por
fim, com esse limitante inferior determinaremos um limitante inferior para d.
Desse modo, seja P ′ um polıgono fundamental, onde P ′ e da forma {4g, 4g}. Conside-
rando um emparelhamento por lados opostos e utilizando trigonometria hiperbolica, vamos
4.2 Construcao dos Codigos 70
determinar a distancia hiperbolica entre os lados emparelhados de P ′, a qual denotaremos
por dh.
O calculo e feito da seguinte maneira.
Figura 4.5: dh = 2a.
Considere o polıgono P ′ da Figura 4.5. Temos que a geodesica ortogonal comum aos
lados emparelhados e uma parte do diametro de um cırculo circunscrito em P ′, passando
pelos pontos medios dos lados emparelhados. Assim, temos que
dh = 2a. (4.21)
Utilizando trigonometria hiperbolica em triangulos hiperbolicos com um angulo de π/2,
temos que
cosh a sin β = cosα ⇔
cosh a =cosα
sin β⇔
a = arccosh
[cosα
sin β
],
onde α e β sao angulos opostos aos lados a e b, respectivamente. Nesse caso, α = β = π/4g.
Logo
a = arccosh
[cos (π/4g)
sin (π/4g)
].
4.2 Construcao dos Codigos 71
Portanto,
dh = 2a = 2arccosh
[cos (π/4g)
sin (π/4g)
]. (4.22)
Nosso objetivo agora, e determinar um limitante superior para o comprimento de uma
aresta da tesselacao reduzida.
Seja lp,3 o comprimento hiperbolico de cada aresta de uma tesselacao de P ′ por polıgonos
hiperbolicos P do tipo {p, 3}. Considere a Figura 4.6 como sendo um polıgono hiperbolico
da tesselacao {p, 3}. Vamos determinar o valor de c.
Usando a segunda lei dos cossenos, temos que
cosh c =cosα cos β + cos γ
sinα sin β,
onde α, β e γ sao os angulos opostos aos lados a, b e c, respectivamente.
Note que α = β = π/3 e γ = 2π/p. Logo,
cosh c =cos (π/3) cos (π/3) + cos (2π/p)
sin (π/3) sin (π/3)
=cos2 (π/3) + cos (2π/p)
sin2 (π/3).
Portanto,
lp,3 = c = arccosh
[cos2 (π/3) + cos (2π/p)
sin2 (π/3)
]. (4.23)
Figura 4.6: lp,3 = c.
4.2 Construcao dos Codigos 72
Agora vamos determinar o dobro da distancia do raio da circunferencia hiperbolica cir-
cunscrita ao polıgono hiperbolico P , de tesselacao {p, 3}, a qual denotamos por Dp,3.
Considere o polıgono da Figura 4.7. Note que Dp,3 = 2b. Logo, usando a segunda lei dos
cossenos para b, temos que
cosh b =cosα cos γ + cos β
sinα sin γ,
onde α, β e γ sao os angulos opostos aos lados a, b e c, respectivamente. Como β = π/2,
entao
cosh b =cos (π/3) cos (π/p)
sin (π/3) sin (π/p)⇒ b = arccosh
[cos (π/p) cos (π/3)
sin (π/p) sin (π/3)
].
Portanto,
Dp,3 = 2arccosh
[cos (π/p) cos (π/3)
sin (π/p) sin (π/3)
]. (4.24)
Figura 4.7: Dp,3 = 2b.
Com lp,3 e Dp,3 determinamos um limitante superior para o comprimento de uma aresta da
tesselacao reduzida, a qual denotaremos por ARp,3, somando o comprimento de uma aresta
da tesselacao com o diametro da circunferencia circunscrita a um polıgono dessa tesselacao.
Portanto,
ARp,3 = lp,3 +Dp,3. (4.25)
Utilizando esse comprimento e dh, calculamos um limitante inferior para o numero de
4.2 Construcao dos Codigos 73
arestas da tesselacao reduzida contida em um ciclo homologicamente nao-trivial pertencente
a tal tesselacao, a qual denotamos por na.
Temos que
na >dh
ARp,3
. (4.26)
Assim, um limitante inferior para a distancia mınima do codigo, d, e determinado por
d = 2d dhARp,3
e. (4.27)
Sabemos que a quantidade de qubits codificados k, nos codigos quanticos coloridos e
k = 4g e determinamos o numero de qubits fısicos n, utilizando
n =p · nf
3. (4.28)
4.2.2 Codigos Gerados
Agora iremos apresentar os codigos quanticos gerados nas superfıcies compactas de genero
g ≥ 2 ate g = 9, utilizando a construcao que acabamos de apresentar.
Mostraremos tambem que o limite quantico de Singleton, que pode ser visto em [24], e
satisfeito, onde esse limite pode ser escrito em funcao dos parametros do codigo na forma
n− k − 2d ≥ −2. Iremos calcular tambem a taxa de codificacao k/n em cada superfıcie.
Para o bitoro, ou seja, g = 2, temos que a quantidade de faces nf e:
nf =12(2− 1)
p− 6=
12
p− 6, onde p > 6.
Como os divisores de 12 sao: 1, 2, 3, 4, 6 e 12, temos que:
p− 6 = 1⇒ p = 7 p− 6 = 4⇒ p = 10
p− 6 = 2⇒ p = 8 p− 6 = 6⇒ p = 12
p− 6 = 3⇒ p = 9 p− 6 = 12⇒ p = 18
Como ja foi observado, p e par, assim, descartamos p = 7 e p = 9. Tambem descartamos
os polıgonos com 12 e 18 lados, pois geram tesselacoes com menos de 3 faces, que nao sao
3-colorıveis.
Considerando os polıgonos {8, 3} e {10, 3} que tesselam o bitoro, temos que:
4.2 Construcao dos Codigos 74
• Para a tesselacao {8, 3}.
nf =12
8− 6=
12
2= 6;
l8,3 = arccosh
[cos2(π/3) + cos(2π/8)
sin2(π/3)
]∼= 0, 72704;
D8,3 = 2arccosh
[cos(π/8) cos(π/3)
sin(π/8) sin(π/3)
]∼= 1, 72141.
Logo,
AR8,3 = l8,3 +D8,3∼= 2, 44845.
Agora podemos calcular a distancia mınima do codigo, onde
dh = 2arccosh
[cos(π/8)
sin(π/8)
]∼= 3, 05714. (4.29)
Assim,
d = 2d dhAR8,3
e = 4.
Temos tambem que k = 4 · 2 = 8 e n = 8·63
= 16. Portanto, esse codigo possui
parametros [[16, 8, 4]].
Observer que n − k − 2d = 16 − 8 − 8 = 0 ≥ −2, satisfazendo o limite quantico de
Singleton. E k/n = 8/16 = 0, 5.
• Para a tesselacao {10, 3}.
nf =12
10− 6=
12
4= 3;
l10,3 = arccosh
[cos2(π/3) + cos(2π/10)
sin2(π/3)
]∼= 0, 87918;
D10,3 = 2arccosh
[cos(π/10) cos(π/3)
sin(π/10) sin(π/3)
]∼= 2, 35466.
Logo,
AR10,3 = l10,3 +D10,3∼= 3, 23384. (4.30)
Por (4.29) e (4.30) temos que
d = 2d dhAR10,3
e = 2.
4.2 Construcao dos Codigos 75
Temos tambem que k = 4 · 2 = 8 e n = 10·33
= 10. Portanto, esse codigo possui
parametros [[10, 8, 2]].
Observer que n − k − 2d = 10 − 8 − 4 = −2 ≥ −2, satisfazendo o limite quantico de
Singleton. Note que nesse caso ocorreu a saturacao do limite quantico de Singleton. Ja
a taxa de codificacao e k/n = 8/10 = 0, 8.
Para os demais generos, g = 3 a g = 9, apresentamos os codigos gerados por esse metodo
nas tabelas a seguir.
{p, q} nf ARp,q dh/ARp,q [[n, k, d]] LQS k/n
{8, 3} 12 2,44845 1,62687 [[32, 12, 4]] 12 0,37500
{10, 3} 6 3,23384 1,23176 [[20, 12, 4]] 0 0,60000
{14, 3} 3 4,15197 0,95938 [[14, 12, 2]] -2 0,85714
Tabela 4.1: Parametros dos codigos coloridos gerados no 3-toro segundo cada tesselacao,
onde dh ∼= 3, 98330.
4.2 Construcao dos Codigos 76
{p, q} nf ARp,q dh/ARp,q [[n, k, d]] LQS k/n
{8, 3} 18 2,44845 1,87710 [[48, 16, 4]] 24 0,33333
{10, 3} 9 3,23384 1,42122 [[30, 16, 4]] 6 0,53333
{12, 3} 6 3,75563 1,22376 [[24, 16, 4]] 0 0,66667
{18, 3} 3 4,74604 0,96838 [[18, 16, 2]] -2 0,88889
Tabela 4.2: Parametros dos codigos coloridos gerados no 4-toro segundo cada tesselacao,
onde dh ∼= 4, 59599.
{p, q} nf ARp,q dh/ARp,q [[n, k, d]] LQS k/n
{8, 3} 24 2,44845 2,06624 [[64, 20, 6]] 32 0,31250
{10, 3} 12 3,23384 1,56442 [[40, 20, 4]] 12 0,50000
{14, 3} 6 4,15197 1,21848 [[28, 20, 4]] 0 0,71429
{22, 3} 3 5,19193 0,97441 [[22, 20, 2]] -2 0,90909
Tabela 4.3: Parametros dos codigos coloridos gerados no 5-toro segundo cada tesselacao,
onde dh ∼= 5, 05909.
{p, q} nf ARp,q dh/ARp,q [[n, k, d]] LQS k/n
{8, 3} 30 2,44845 2,21885 [[80, 24, 6]] 44 0,30000
{10, 3} 15 3,23384 1,67997 [[50, 24, 4]] 18 0,48000
{16, 3} 6 4,47385 1,21433 [[32, 24, 4]] 0 0,75000
{26, 3} 3 5,55117 0,97867 [[26, 24, 2]] -2 0,92308
Tabela 4.4: Parametros dos codigos coloridos gerados no 6-toro segundo cada tesselacao,
onde dh ∼= 5, 43275.
4.2 Construcao dos Codigos 77
{p, q} nf ARp,q dh/ARp,q [[n, k, d]] LQS k/n
{8, 3} 36 2,44845 2,34697 [[96, 28, 6]] 56 0,29167
{10, 3} 18 3,23384 1,77697 [[60, 28, 4]] 24 0,46667
{12, 3} 12 3,75563 1,53009 [[48, 28, 4]] 12 0,58333
{14, 3} 9 4,15197 1,38403 [[42, 28, 4]] 6 0,66667
{18, 3} 6 4,74604 1,21079 [[36, 28, 4]] 0 0,77778
{30, 3} 3 5,85296 0,98180 [[30, 28, 2]] -2 0,93333
Tabela 4.5: Parametros dos codigos coloridos gerados no 7-toro segundo cada tesselacao,
onde dh ∼= 5, 74645.
{p, q} nf ARp,q dh/lp,q [[n, k, d]] LQS k/n
{8, 3} 42 2,44845 2,45747 [[112, 32, 6]] 68 0,28571
{10, 3} 21 3,23384 1,86063 [[70, 32, 4]] 30 0,45714
{20, 3} 6 4,98250 1,20763 [[40, 32, 4]] 0 0,80000
{34, 3} 3 6,11364 0,98419 [[34, 32, 2]] -2 0,94118
Tabela 4.6: Parametros dos codigos coloridos gerados no 8-toro segundo cada tesselacao,
onde dh ∼= 6, 01700.
{p, q} nf lp,q dh/lp,q [[n, k, d]] LQS k/n
{8, 3} 48 2,44845 2,55465 [[128, 36, 6]] 80 0,28125
{10, 3} 24 3,23384 1,93422 [[80, 36, 4]] 36 0,45000
{14, 3} 12 4,15197 1,50650 [[56, 36, 4]] 12 0,64286
{22, 3} 6 5,19193 1,20474 [[44, 36, 4]] 0 0,81818
{38, 3} 3 6,34331 0,98607 [[38, 36, 2]] -2 0,94737
Tabela 4.7: Parametros dos codigos coloridos gerados no 9-toro segundo cada tesselacao,
onde dh ∼= 6, 25495.
4.2 Construcao dos Codigos 78
Observando as tabelas percebemos que a distancia mınima obtida com esses codigos e
d ≥ 2. Veja que os parametros variam bastante conforme mudamos o tipo de tesselacao e
que a ultima linha de todas as tabelas apresentadas possuem um codigo que satura o limite
quantico de Singleton. Por fim, note que esses codigos que saturam o limite quantico de
Singleton, apresentam a maior taxa de codificacao k/n em cada superfıcie.
4.2.3 Uma Famılia Obtida Fixando d Par
Vamos fixar a distancia mınima do codigo que queremos gerar, como sendo um numero par,
d = 2r, onde r ≥ 1 inteiro. Podemos gerar a famılia de codigos utilizando a construcao que
acabamos de ver.
Pensando, por exemplo, na tesselacao reduzida vermelha. Como d = 2r, temos r arestas
conectadas e, logo, r vertices. Como cada vertice representa uma face vermelha da tesselacao,
temos que a quantidade de faces vermelhas e igual a r. Por estarmos trabalhando com
tesselacoes da forma {p, 3}, onde os lados de nossos polıgonos sao todos iguais, temos que
a quantidade de faces vermelhas, verdes e azuis sao iguais. Assim, temos 3r faces nessa
tesselacao. Desse modo, nf = 3r, e com isso
nf =12(g − 1)
p− 6⇒
3r =12(g − 1)
p− 6⇔
(p− 6)r = 4(g − 1) ⇔
p =4(g − 1) + 6r
r.
Portanto,
n =p · nf
3⇒
n =4(g−1)+6r
r· 3r
3= 4(g − 1) + 6r = 6r − 4 + 4g
Mostrando que independente o genero g ≥ 2 considerado, conseguimos criar um codigo
com a distancia mınima fixada d = 2r, com r ≥ 1 inteiro. Os parametros do codigo ficam da
4.2 Construcao dos Codigos 79
seguinte forma:
[[6r − 4 + 4g, 4g, 2r]].
Essa famılia de codigos apresenta uma otima propriedade, que e
limn→∞
k
n= 1.
Em [29], os autores fixaram d = 4 e obtiveram os parametros [[8 + 4g, 4g, 4]], ou seja,
consideraram r = 2 no procedimento que acabamos de descrever.
Consideracoes Finais
Nesta dissertacao, abordamos varios codigos quanticos corretores de erros desenvolvidos ao
longo dos anos e abordamos detalhamente a construcao dos codigos quanticos coloridos em
superfıcies compactas com genero g maior ou igual a dois, apresentando os parametros dos
codigos obtidos para g maior ou igual a dois e menor ou igual a nove, e apresentamos uma
famılia de codigos quanticos obtida fixando a distancia mınima do codigo.
Em relacao a trabalhos futuros, pode-se analisar nos codigos quanticos coloridos em su-
perfıcies compactas com genero g maior ou igual a dois, se existem famılias de codigos que
se destacam com algum aspecto em particular, como por exemplo, a taxa de codificacao k/n
tender a 1 quando n tende ao infinito.
Podemos trabalhar nesses mesmos codigos a questao da decodificacao, que vem sendo
bastante trabalhada nos ultimos anos.
Referencias
[1] ALBUQUERQUE, Clarice. D.; PALAZZO JR, R.; SILVA, E. B. Topological quantum
codes on compact surfaces with genus g ≥ 2. Journal of Mathematical Physics, v.
50, n. 2, p. 023513, 2009.
[2] ANDERSON, James W.. Hyperbolic Geometry. 2th. ed., Springer Undergraduate
Mathematics Series, London: Springer-Verlag, 2005. 276 p.
[3] BEARDON, Alan F.. The Geometry of Discrete Groups. New York: Springer-
verlag, 1983. 337 p.
[4] BHATTACHARYA, P.B.; JAIN, S.K.; NAGPAUL, S.R.. Basic Abstract Algebra.
2th. ed. United Kingdom: Cambridge University Press, 1995. 487 p.
[5] BOMBIN, Hector; MARTIN-DELGADO, M. A.. Computacion cuantica topologica y
sistemas fuertemente correlacionados. Revista Espanola de Fısica, v. 21, n. 2, p.31-
45, 2007.
[6] BOMBIN, Hector; MARTIN-DELGADO, M. A.. Topological Quantum Distillation.
Physical Review Letters, v. 97, n. 18, p.180501, 2006.
[7] BREDON, Glen E.. Topology and Geometry. New York: Springer-verlag, 1993. 557
p.
[8] CALDERBANK, Robert A.; SHOR, Peter W.. Good quantum error-correcting codes
exist. Physical Review A, v. 54, n. 2, p.1098, 1996.
[9] CLEVE, Richard. Quantum stabilizer codes and classical linear codes. Physical Re-
view A, Washington, v. 55, n. 6, p.4054, 1997.
REFERENCIAS 82
[10] DENNIS, Eric et al. Topological quantum memory. Journal Of Mathematical Phy-
sics, p. 4452-4505. 2002.
[11] DEUTSCH, David. Quantum theory, the Church-Turing principle and the universal
quantum computer. Proc. R. Soc. Lond. A, London, v. 400, n. 1818, p.97-117, 1985.
[12] DUMMIT, David S.; FOOTE, Richard M.. Abstract Algebra. 3rd. ed. Hoboken:
Wiley, 2004. 932 p.
[13] FEYNMAN, Richard P.. Simulating physics with computers. International Journal
Of Theoretical Physics, v. 21, n. 6-7, p.467-488, 1982.
[14] GIBLIN, Peter. Graphs, Surfaces and Homology. New York: Cambridge University
Press, 2010. 251 p.
[15] GOTTESMAN, Daniel. An introduction to quantum error correction and fault-tolerant
quantum computation. In: Quantum information science and its contributions
to mathematics, Proceedings of Symposia in Applied Mathematics. 2009. p.
13-58.
[16] GOTTESMAN, Daniel. Class of quantum error-correcting codes saturating the quan-
tum Hamming bound. Physical Review A, v. 3, n. 54, p.1862, 1996.
[17] GOTTESMAN, Daniel. Stabilizer Codes and Quantum Error Correction. 1997.
Disponıvel em: <https://arxiv.org/abs/quant-ph/9705052>. Acesso em: 24 novembro
2018.
[18] GRIFFITHS, Robert B.. Consistent Quantum Theory. New York: Cambridge Uni-
versity Press, 2003. 391 p.
[19] HATCHER, Allen. Algebraic Topology. Cambridge University Press, 2002. 550 p.
[20] KATOK, Svetlana. Fuchsian Groups. The University Of Chicago Press, 1992. 175 p.
[21] KITAEV, A. Yu. Fault-tolerant quantum computation by anyons. Annals of Physics,
v. 303, n. 1, p. 2-30, 2003.
REFERENCIAS 83
[22] LIBOFF, Richard L.. Introductory Quantum Mechanics. New York: Addison Wes-
ley Publishing Company, 1993. 653 p.
[23] LIDAR, Daniel A.; BRUN, Todd A.. Quantum Error Correction. New York: Cam-
bridge University Press, 2013. 690 p.
[24] NIELSEN, Michael A.; CHUANG, Isaac L.. Quantum Computation and Quantum
Information. 10th ed. New York: Cambridge University Press, 2010. 698 p.
[25] SAKURAI, Jun. J.. Modern Quantum Mechanics. New York: Addison Wesley
Publishing Company, 1994. 500 p.
[26] SHANNON, Claude E.. A mathematical theory of communication. Bell System Te-
chnical Journal, v. 27, n. 3, p.379-423, 1948.
[27] SHOR, Peter W.. Algorithms for quantum computation: Discrete logarithms
and factoring. Proceedings 35th Annual Symposium On Foundations
Of Computer Science, p.124-134, nov. 1994. IEEE Comput. Soc. Press.
http://dx.doi.org/10.1109/sfcs.1994.365700.
[28] SHOR, Peter W.. Scheme for Reducing Decoherence in Quantum Computer Memory.
Physical Review A, v. 52, n. 4, p.R2493, 1995.
[29] SOARES, Waldir S.; SILVA, Eduardo B. Hyperbolic quantum color codes. 2018.
Disponıvel em: <https://arxiv.org/abs/1804.06382>. Acesso em: 24 nov. 2018.
[30] STEANE, Andrew M.. Simple quantum error-correcting codes. Physical Review A,
v. 54, n. 6, p.4741, 1996.
[31] STILLWELL, John. Geometry of Surfaces. New York: Springer-verlag, 1992. 217
p.
[32] UNRUH, William G.. Maintaining Coherence in Quantum Computers. Physical Re-
view A, v. 51, n. 2, p.992, 1995.
[33] WOOTTERS, William. K.; ZUREK, W. H.. A single Quantum Cannot Be Cloned.
Nature, v. 299, n. 5886, p.802-803, 1982.