Em um computador quântico, da mesma forma que em um computador clássico, a informação está sujeita a erros que precisam ser detectados e corrigidos, de onde surge a necessidade dos códigos quânticos de correção de erros. Neste trabalho estudamos os códigos CWS (Codeword Stabilized quantum codes) que generalizam os códigos estabilizadores. Primeiramente, descrevemos detalhadamente os códigos CWS sobre sistemas quânticos de mais de um nível (qudits) a partir de uma nova abordagem. Deixamos claro quais resultados valem em geral e quais valem apenas para qubits, qupits (sistemas com número primo de níveis) e quais valem no caso do código CWS ser baseado em um estado-grafo. Apresentamos também um novo resultado que relaciona códigos CWS com códigos estabilizadores generalizando os resultados presentes na literatura. Posteriormente, caracterizamos um tipo de operador de medida para códigos CWS para qubits. Criamos então um procedimento para buscar estes operadores, que nem sempre são suficientes para identificar o erro ocorrido, mas quando são, o fazem de forma eficiente.
Em um computador quântico, da mesma forma que em um computador clássico, a informação está sujeita a erros que precisam ser detectados e corrigidos, de onde surge a necessidade dos códigos quânticos de correção de erros. Neste trabalho estudamos os códigos CWS (Codeword Stabilized quantum codes) que generalizam os códigos estabilizadores. Primeiramente, descrevemos detalhadamente os códigos CWS sobre sistemas quânticos de mais de um nível (qudits) a partir de uma nova abordagem. Deixamos claro quais resultados valem em geral e quais valem apenas para qubits, qupits (sistemas com número primo de níveis) e quais valem no caso do código CWS ser baseado em um estado-grafo. Apresentamos também um novo resultado que relaciona códigos CWS com códigos estabilizadores generalizando os resultados presentes na literatura. Posteriormente, caracterizamos um tipo de operador de medida para códigos CWS para qubits. Criamos então um procedimento para buscar estes operadores, que nem sempre são suficientes para identificar o erro ocorrido, mas quando são, o fazem de forma eficiente.
Neste trabalho, estudamos a teoria quântica de correção de erros, um dos principais métodos de prevenção de perda de informação num computador quântico. Este método, porém, normalmente é estudado considerando-se condições ideais em que a atuação das portas lógicas que constituem o algoritmo quântico não interfere com o tipo de erro que o sistema sofre. Além disso, as medidas de síndrome empregadas no método tradicional são consideradas instantâneas. Nossos objetivos neste trabalho serão avaliar como a alteração dessas duas suposições modificaria o processo de correção de erros. Com relação ao primeiro objetivo, verificamos que, para erros causados por ambientes externos, a atuação de uma porta lógica simultânea ao ruído pode gerar erros que, a princípio, podem não ser corrigíveis pelo código empregado. Propomos em seguida um método de correção a pequenos passos que pode ser usado para tornar desprezíveis os erros incorrigíveis, além de poder ser usado para reduzir a probabilidade de erros corrigíveis. Para o segundo objetivo, estudamos primeiro como medidas de tempo finito afetam a descoerência de apenas um qubit, concluindo que esse tipo de medida pode na verdade proteger o estado que está sendo medido. Motivados por isso, mostramos que, em certos casos, medidas de síndrome finitas realizadas conjuntamente ao ruído são capazes de proteger o estado dos qubits contra os erros mais eficientemente do que se as medidas fossem realizadas instantaneamente ao fim do processo.
Nesta tese de doutorado são investigadas aplicações de códigos algébrico-geométricos na construção de códigos estabilizadores, códigos quânticos assistidos por emaranhamento e códigos convolucionais clássicos e quânticos. Uma análise comparativa dos códigos criados com os códigos presentes na literatura também é feita. O primeiro resultado mostrado é sobre a obtenção de novos códigos algébrico-geométricos a partir de considerações sobre divisores de corpos de funções. Posteriormente, para a classe de códigos estabilizadores, dois tipos de métodos de construções de códigos estabilizadores com comprimento finito, e um para análise assintótica de códigos derivados de uma torre de códigos algébrico-gemétricos, são apresentados. Essa análise assintótica é feita sobre expansão de códigos algébrico- geométricos, o que difere dos trabalhos anteriores da literatura. Partindo para os códigos quânticos assistidos por emaranhamento, é mostrado que a utilização de códigos algébrico- geométricos na construção de códigos quânticos assistidos por emaranhamento é possível através de um resultado mostrado também nesta tese. Com isso, são construídas três famílias de códigos quânticos assistidos por emaranhamento utilizando a construção euclidiana destes códigos quânticos, além de mais uma pela construção hermitiana. Também é mostrado a existência de uma família assintoticamente boa, em termos de taxa e emaranhamento relativo, de códigos quânticos assistidos por emaranhamento. Códigos cíclicos também são aplicados na construção de códigos quânticos assistidos por emaranhamento. Descrevendo códigos cíclicos via conjunto de definição é possível diminuir a complexidade de criação e descrição dos códigos quânticos criados. Duas famílias com parâmetros ótimos são construídas através da utilização de códigos cíclicos. Por fim, para a construção de códigos convolucionais clássicos via códigos de blocos, é utilizado o método de construção proposto inicialmente por Piret. Uma análise deste método é feita por meio da construção de uma matriz geradora na forma canônica controladora e pelo cálculo da identidade de MacWilliams. Aplicando códigos algébrico- geométricos ao método de Piret são criados novos códigos convolucionais com parâmetros melhores que os códigos convolucionais existentes na literatura. Também são construídos códigos convolucionais quânticos a partir de códigos algébrico-geométricos.
Erros computacionais e apagamentos quânticos são tipos de alterações que podem ocorrer naturalmente devido a interação entre os sistemas quânticos e o ambiente. O objetivo desta tese é propor um código capaz de realizar a proteção da informação contra a ocorrência desses tipos de alterações. Para tanto, primeiramente resolveu-se o problema de encontrar uma construção explícita que realize, de maneira eficiente, o cálculo da síndrome de erro para os códigos grafos quânticos (CGQ’s). Isso foi conseguido mediante adaptação da transformada de Fourier quântica inversa. Com isso, apresentou-se uma descrição detalhada da operação de decodificação para os CGQ’s não-degenerados. Em seguida, realizou-se o aprimoramento do código introduzido por Yang et al. [JETP Letters 79 (2004)] para caracterizar um esquema capaz de proteger a informação contra a ocorrência de múltiplos apagamentos quânticos utilizando-se estados Greenberger-Horne-Zeilinger (GHZ), que são estados maximamente emaranhados. A técnica desenvolvida neste esquema permite proteger k-qubit (do inglês, quantum bit) de informação, sendok ≥ 3, contra a ocorrência det =k/2 apagamentos quânticos. O esquema proposto faz uso de(t+1) blocos redundantes e possui a restrição de que cada apagamento deve ocorrer em blocos distintos. Visando cumprir o objetivo desta tese, propôs-se um esquema de concatenação em que o código externo é um código corretor de erros computacionais e o código interno é um código corretor de apagamentos quânticos que não realiza medição. Se esta construção for respeitada, o código concatenado resultante protege a informação contra a ocorrência de erros computacionais e de apagamentos quânticos. Por fim, os resultados obtidos são ilustrados por meio de um exemplo em que um qubit de informação é protegido contra a ocorrência de dois apagamentos e um erro computacional.
Computação quântica é uma área de grande desenvolvimento hoje em dia e isso traz uma necessidade para desenvolver hardware e software. Uma vez que o hardware disponível é muito pouco e o software precisa de ser testado, existe uma necessidade de uma boa plataforma para testar as soluções de software. Simular um computador quântico num computador clássico não é ideal, contudo é uma resposta viável a esta necessidade, para um pequeno número de qubits. Além disso, os computadores quânticos necessitam dos computadores clássicos de forma a criar um sistema real prático, isto apresenta-se como uma excelente oportunidade para testar técnicas de programação clássica para melhorar a programação quântica. Esta tese propõe o uso de programação clássica para melhorar a implementação de um algoritmo de adição modular usando transformadas de Fourier quânticas. Os principais objectivos deste trabalho são: simular um circuito quântico; testar um algoritmo quântico e compará-lo com o seu equivalente clássico; implementar o algoritmo de adição modular, usando as capacidades de aceleração de computação das transformadas de Fourier quânticas e optimizá-lo; Testar e implementar códigos quânticos de correcção de erros; fazer um teste num computador quântico real.De forma a testar a linguagem e comparar um algoritmo quântico com um clássico, fez-se um teste ao algoritmo de Shor que está disponível de raiz na plataforma liquid. Apesar do algoritmo de Shor ter, teoricamente, uma dependência de tipo polinomial com a dimensão do problema, os testes realizados mostraram que o tempo de computação tem um comportamento exponencial. Simular um algoritmo quântico num computador clássico requer tempo de computação que cresce de forma exponencial, pois é necessário armazenar e processar todos os estados do sistema, que é um espaço de Hilbert de dimensão 2^n.O algoritmo de adição modular usando transformadas de Fourier quânticas foi implementado na plataforma liquid. Seguidamente fizeram-se melhorias e optimizações. O número de operações teórico é O(n^2). Contudo, depois de fazer melhorias ao circuito, removendo gates desnecessárias para casos específicos, o número de operações passa a ter um valor mínimo de Omega(n). Com este tipo de alterações o sistema pode apresentar melhorias no que respeito ao tempo de simulação até um factor de ordem 10. Isto mostra que programar um algoritmo quântico tendo em conta casos específicos pode melhorar imenso o desempenho da simulação.Os códigos de correção de erros quânticos foram implementados num circuito simples, com as ferramentas disponíveis na plataforma liquid, e obteve-se um sistema que consegue lidar com erros com probabilidade inferior ou igual a 2%, com uma taxa de sucesso na sua correção de 95%. Contudo são necessários circuitos muito grandes, pouco exequíveis.A plataforma disponibilizada pela IBM para fazer testes num computador quântico real, foi utilizada para testar o algoritmo de adição modular e adição normal (com carry bit). Uma vez que esta plataforma tem um número limitado de gates, reforça a ideia de que se deve otimizar os algoritmos tendo em conta casos particulares. Os resultados destes testes mostram também que é importante utilizar correcção de erros quânticos, mas para que isso seja viável é necessário que haja mais qubits disponíveis ou outro tipo de códigos.
A mecânica quântica surgiu no início do século XX explicando fenômenos da natureza que até então não correspondiam às previsões de outras teorias. À medida que a teoria evoluiu, novas tecnologias baseadas nas propriedades quânticas começaram a ser desenvolvidas, como por exemplo a computação quântica. A computação quântica busca aplicar fenômenos como superposição e emaranhamento para resolver problemas computacionais complexos de forma mais eficiente que os computadores clássicos. Neste trabalho, introduzimos de forma breve o formalismo matemático utilizado na computação quântica, bem como seus principais conceitos. Ele aborda também alguns recursos quânticos, como o direcionamento quântico e a não-localidade de Bell. Nosso objetivo é detectar esses recursos em sistemas gerados em computadores quânticos reais. Para isso, focamos nossa análise nos estados Bell-diagonais e apresentamos um circuito capaz de gerar essa classse de estados. Em especial, estamos interessados nos estados de Werner, utilizados como ferramentas para detectar recursos quânticos e seus aspectos não locais. A abordagem computacional utiliza circuitos supercondutores, um tipo de hardware quântico, implementado por meio da plataforma IBM Quantum, que oferece acesso remoto a computadores quânticos reais. Os resultados experimentais obtidos são analisados em comparação com as previsões teóricas.
O processamento de informação quântica requer medidas, muitas vezes precedidas devoluções unitárias. Uma descrição realista de um computador quântico também deve levar em conta que o sistema interage com um ambiente externo - distinto do observador - que o remove de sua evolução ideal, gerando erros. Neste trabalho, fazemos um estudo da dinâmica de sistemas quânticos observados múltiplas vezes ou continuamente, enquanto interagem com ambientes externos. Para tanto, empregamos uma equação mestra híbrida, que permite modelar uma interação contínua e markoviana do sistema com o medidor, enquanto o ruído do ambiente apresenta características não markovianas. O estudo da dinâmica de uma medida contínua ruidosa revela que o sistema melhor preserva suas populações iniciais quando é realizada a medida de uma observável que não comuta com os operadores do ruído produzido pelo ambiente. Estes resultados, já conhecidos para o caso simples de um qubit de memória interagindo com o vácuo, são generalizados para uma temperatura inicial superior a zero e para um qubit submetido a uma porta quântica. A universalidade destes fenômenos de preservação da população inicial permite fazer analogia com o efeito Zenão quântico. Mantendo o mesmo formalismo, mas adaptando a interação com o ambiente para descrever um decaimento verificamos que o efeito Zenão quântico é observado para acoplamentos fracos com o ambiente. Tratamos também de como tal conhecimento sobre a preservação das populações pela medida auxilia na elaboração de melhores formas de preservar a informação em códigos quânticos. Com o auxílio da teoria das medidas fracas, propomos um possível método experimental simples para o teste da validade dos modelos de descrição de medidas contínuas. Com este estudo da dinâmica de uma medida quântica, esperamos elucidar questões de ordem prática no processamento de informação quântica, assim como ajudar no melhor entendimento de questões fundamentais, como o postulado da medida.