• Nenhum resultado encontrado

Especificando uma Arquitetura Básica para Conversão de Circuitos Quânticos para o Modelo qgm

N/A
N/A
Protected

Academic year: 2021

Share "Especificando uma Arquitetura Básica para Conversão de Circuitos Quânticos para o Modelo qgm"

Copied!
6
0
0

Texto

(1)

Especificando uma Arquitetura B´

asica para Convers˜

ao

de Circuitos Quˆ

anticos para o Modelo qGM

Adriano Maron, Anderson ´Avila, Renata Reiser, Maur´ıcio Pilla

1Centro de Desenvolvimento Tecnol´ogico – Universidade Federal de Pelotas (UFPEL)

Pelotas – RS – Brasil

{akmaron, abdavila, reiser, pilla}@inf.ufpel.edu.br

Abstract. Two major difficulties of the study and development of quantum algorithms are associated with the complexity of quantum gates interpreta-tion and simulainterpreta-tion. In this work, the integrainterpreta-tion of the IDE VPE-qGM with the QCEdit editor is presented. This architecture allows the use of QCEdit for developing quantum circuits and exporting them to the process model considered by the VPE-qGM for distributed simulation. Consolida-ting this architecture means to explore the intuitivity of quantum circuits and enjoy the possibility of distributed quantum simulation available in the VPE-qGM.

Resumo. Duas grandes dificuldades no estudo e desenvolvimento de algo-ritmos quˆanticos est˜ao associadas `a complexidade de interpreta¸c˜ao e simu-la¸c˜ao de transforma¸c˜oes quˆanticas. Neste trabalho ´e apresentada a integra-¸

c˜ao do ambiente VPE-qGM ao editor QCEdit. Essa arquitetura permite usar o QCEdit para desenvolver circuitos quˆanticos e export´a-los para o modelo de processos do VPE-qGM para simula¸c˜ao distribu´ıda. Consolidar essa arquitetura significa explorar a intuitividade dos circuitos quˆanticos e usufruir da possibilidade de simula¸c˜ao quˆantica distribu´ıda no VPE-qGM.

1. Introdu¸

ao

Os avan¸cos na ´area da Computa¸c˜ao Quˆantica (CQ ) [Hanneke et al. 2009, Monz et al. 2011] est˜ao viabilizando a constru¸c˜ao do hardware quˆantico, o qual ex-plora fenˆomenos previstos pela Mecˆanica Quˆantica (MQ ) [Knill and Nielsen 2002, McMahon 2000] para solu¸c˜ao de problemas complexos, intrat´aveis para os supercom-putadores atuais. Algoritmos quˆanticos est˜ao sendo propostos, por´em exigem plata-formas para interpreta¸c˜ao e testes, visto a simplicidade do hardware quˆantico atual. Nesse contexto, modelos e simuladores quˆanticos introduzem novas abordagens para o estudo e desenvolvimento desses algoritmos [Quantiki 2009, Raedt et al. 2006, Watanabe 2002, Gutierrez et al. 2010], entretanto, nem sempre est˜ao dispon´ıveis para uso e desenvolvimento de novas aplica¸c˜oes.

O ambiente VPE-qGM (Visual Programming Environment for the qGM Mo-del ) [Maron et al. 2010a], implementado na linguagem Python sob a filosofia de software livre, est´a em desenvolvimento visando o suporte `a modelagem e simula¸c˜ao distribu´ıda de algoritmos da CQ. Este ambiente implementa as abstra¸c˜oes do modelo qGM (Quantum Geometric Machine) [Reiser and Amaral 2010] para descri¸c˜ao gr´ a-fica desses sistemas a partir de construtores (produto sequencial, produto paralelo, soma n˜ao-determin´ıstica) aplicados `a processos elementares (PEs) e macros.

(2)

O principal objetivo deste trabalho ´e propor uma arquitetura, baseada em software livre, que integra o VPE-qGM ao editor de circuitos quˆanticos QCE-dit (Quantum Circuit EQCE-ditor ), sendo disponibilizado sob a licen¸ca GNU GPL no endere¸co http://lups.ufpel.edu.br/software/VPE-qGM/VPE-qGM.tar. Dessa forma, viabiliza-se a modelagem de algoritmos quˆanticos no modelo de circuitos quˆanticos e exporta¸c˜ao para o modelo considerado pelo VPE-qGM, permitindo que usu´arios pouco familiarizados com o ambiente utilizem uma interface gr´afica que im-plementa um modelo amplamente difundido na ´area, usufruindo das possibilidades de simula¸c˜ao sequencial e distribu´ıda adotadas pelo simulador.

A filosofia de software livre permite um cont´ınuo desenvolvimento do ambi-ente, expandindo as funcionalidades de acordo com as necessidades encontradas para constru¸c˜ao de novos algoritmos quˆanticos. Como principal motiva¸c˜ao, destaca-se a necessidade de coopera¸c˜ao para extens˜ao das capacidades do ambiente, visto a com-plexidade associada a implementa¸c˜ao de uma ferramenta para simula¸c˜ao quˆantica.

O artigo est´a organizado da seguinte forma: a fundamenta¸c˜ao b´asica do trabalho est´a descrita na Se¸c˜ao 2. Ap´os, a Se¸c˜ao 3. apresenta os ambientes VPE-qGM e QCEdit. A Se¸c˜ao 4. discute a integra¸c˜ao dos ambientes, para suporte a modelagem de circuitos quˆanticos e correspondente exporta¸c˜ao para o modelo qGM. Finalmente, conclus˜oes e trabalhos futuros s˜ao discutidos na Se¸c˜ao 5.

2. Fundamenta¸

ao B´

asica

A MQ fornece interpreta¸c˜oes para o comportamento de part´ıculas em escala atˆ omi-ca/subatˆomica, o qual n˜ao pode ser descrito pela mecˆanica cl´assica. Na MQ, o qubit ´e a unidade b´asica de informa¸c˜ao, sendo o sistema de dimens˜ao mais b´asica. Os circuitos quˆanticos modelam sistemas quˆanticos compostos por muitos qubits, sobre os quais s˜ao aplicadas transforma¸c˜oes quˆanticas que determinam a evolu¸c˜ao tempo-ral do sistema. Algoritmos quˆanticos s˜ao comumente descritos atrav´es de circuitos quˆanticos, fornecendo uma interpreta¸c˜ao intuitiva de sua estrutura e funcionalidade. O modelo qGM introduz um novo paradigma para modelagem de algoritmos quˆanticos, substituindo a no¸c˜ao de portas quˆanticas dos circuitos pelo conceito de sincroniza¸c˜oes de processos elementares (PEs). No VPE-qGM, o PE ´e um elemento estruturado por trˆes atributos: (i) a¸c˜ao: fun¸c˜ao atribu´ıda ao PE, sendo composta pelas transforma¸c˜oes quˆanticas aplicadas a diferentes qubits em um mesmo instante de tempo; (ii) parˆametros: dados associados `a defini¸c˜ao das transforma¸c˜oes quˆ an-ticas; (iii) posi¸c˜ao: posi¸c˜ao de escrita em um espa¸co de mem´oria global e compar-tilhada, na qual ´e armazenado o resultado calculado pelo PE. Uma estrutura de mem´oria modela o espa¸co de estados do sistema quˆantico, associando cada posi¸c˜ao e correspondente valor armazenado a um estado e amplitude, respectivamente.

A semˆantica para portas quˆanticas e computa¸c˜oes est´a associada ao con-ceito de processo quˆantico, obtido pela aplica¸c˜ao de construtores de sincroniza¸c˜ao `

a processos cl´assicos, caracterizados por opera¸c˜oes de acesso a mem´oria, sendo esta interpreta¸c˜ao obtida a partir do esquema conceitual da Teoria dos Dom´ınios. No modelo qGM, um PE pode ler de v´arias posi¸c˜oes de mem´oria (base computacio-nal), por´em s´o pode escrever em uma posi¸c˜ao. Assim, processos quˆanticos definidos por sincroniza¸c˜oes de processos elementares permitem m´ultiplas leituras e m´ultiplas

(3)

escritas, respeitando a semˆantica associada `as suas portas elementares.

3. Ambientes de Desenvolvimento

A arquitetura do ambiente VPE-qGM, em uma perspectiva simplificada, ´e composta por trˆes interfaces gr´aficas:

ˆ Editor de Processos Quˆanticos (qPE): Interface para desenvolvimento das aplica¸c˜oes que disponibiliza construtores para cria¸c˜ao de transforma¸c˜oes quˆanticas b´asicas, controladas, personalizadas e operadores de medidas e pro-je¸c˜oes, com os principais requisitos para modelagem de algoritmos quˆanticos; ˆ Editor de Mem´orias Quˆanticas (qME): Permite a configura¸c˜ao de estrutu-ras de mem´oria a partir de dados de entrada simples, abstraindo conceitos complexos associados ao espa¸co de estados das aplica¸c˜oes quˆanticas;

ˆ Simulador Quˆantico (qS): Componente para execu¸c˜ao das simula¸c˜oes a partir dos arquivos descritores de processos e mem´oria, gerados em suas respectivas interfaces de modelagem, com controle da evolu¸c˜ao temporal das aplica¸c˜oes. No qPE, as transforma¸c˜oes podem ser agrupadas sequencialmente ou de forma a serem aplicadas a diferentes qubits em um mesmo instante de tempo. Essa cons-tru¸c˜ao s´ıncrona pode ser representada por sincroniza¸c˜oes expl´ıcitas de PEs ou por itera¸c˜oes paralelas de PEs, esta ´ultima mais compacta por´em igualmente intuitiva.

A utiliza¸c˜ao de macros pode ser adotada para representar v´arias transforma-¸c˜oes quˆanticas (aplicadas s´ıncrona ou sequencialmente), armazenando internamente as constru¸c˜oes iterativas paralelas associadas aos operadores utilizados. As cons-tru¸c˜oes realizadas s˜ao salvas em arquivos no formato XML para posterior recons-tru¸c˜ao ou simula¸c˜ao. No est´agio atual, o conjunto de construtores implementados no VPE-qGM provˆe suporte a descri¸c˜ao e simula¸c˜ao distribu´ıda de v´arios algorit-mos quˆanticos, utilizando o modelo de PEs. Descri¸c˜oes detalhadas dos construtores disponibilizados no ambiente podem ser obtidas em [Maron et al. 2010b].

O editor QCEdit contribui com uma interface para edi¸c˜ao de circuitos quˆ an-ticos, permitindo a cria¸c˜ao de transforma¸c˜oes quˆanticas b´asicas, controladas e ope-ra¸c˜oes de medidas. Por ser um projeto em est´agio inicial, fazem-se necess´arias uma s´erie de novas implementa¸c˜oes para oferecer suporte a um conjunto maior de trans-forma¸c˜oes quˆanticas, valendo citar: (i) generaliza¸c˜ao de transforma¸c˜oes quˆanticas controladas, (ii) cria¸c˜ao de transforma¸c˜oes quˆanticas personalizadas, (iii) inser¸c˜ao de operadores de rota¸c˜ao, (iv) manipula¸c˜ao gr´afica e agrupamento das transforma-¸c˜oes inseridas no circuito e (v) exporta¸c˜ao dos arquivos em formato XML.

Ap´os as modifica¸c˜oes previstas, os ambientes disponibilizar˜ao o mesmo con-junto de construtores. Dessa forma, tem-se a possibilidade de descrever um algo-ritmo quˆantico no modelo de circuitos quˆanticos, o qual ´e amplamente aceito pela comunidade cient´ıfica, exportando-o para as constru¸c˜oes consideradas pelo modelo qGM, viabilizado a simula¸c˜ao distribu´ıda a partir do ambiente VPE-qGM.

4. Modelagem da Integra¸

ao dos Ambientes

No escopo deste trabalho s˜ao consideradas as interfaces de modelagem do VPE-qGM (qPE e qME ), as quais possuem os construtores para modelagem de algoritmos

(4)

e estados quˆanticos no modelo qGM, sendo utilizados no processo de convers˜ao a partir do modelo de circuitos quˆanticos.

4.1. Convers˜ao a Partir da Constru¸c˜ao Gr´afica

Ao especificar um algoritmo quˆantico no QCEdit, a primeira informa¸c˜ao fornecida pelo circuito corresponde ao estado inicial do sistema, denotado pelos componentes com as nomenclaturas |0i e |1i. O produto tensor dos estados iniciais de cada qubit ´e armazenado em uma vari´avel representada por initialState. A matriz M armazena todas as transforma¸c˜oes quˆanticas aplicadas, sendo capaz de expressar a ordem de aplica¸c˜ao e os correspondentes qubits alvo. Exemplificando, no circuito quˆantico S1, ilustrado pela Figura 1(a), M corresponde a estrutura matricial em 1(b).

(a) (b)

Figura 1. Circuito quˆantico e sua representa¸c˜ao matricial interna no QCEdit

Neste caso, os caracteres H, X e Id correspondem `a transforma¸c˜oes quˆanticas b´ a-sicas; e C1(1) e Target1(X) est˜ao associado `a modelagem de uma transforma¸c˜ao quˆantica controlada. Ao selecionar a op¸c˜ao para exporta¸c˜ao do circuito modelado para o qPE, um m´odulo de integra¸c˜ao, denominado qGM-Converter, ´e acionado, executando internamente uma s´erie de m´etodos que geram a constru¸c˜ao gr´afica no qPE. Primeiramente, o componente qPE ´e executado para obten¸c˜ao da correspon-dente instˆancia (qPE-Ref ). Na sequˆencia, tem-se a execu¸c˜ao do m´etodo denominado QC to qGM, recebendo qPE-Ref e M como parˆametros de entrada e chamando os construtores do qPE de acordo com a ordena¸c˜ao dos operadores em M . Tem-se ent˜ao a constru¸c˜ao gr´afica da estrutura de mem´oria associada ao estado inicial re-ferenciado por initialState, a qual ´e gerenciada pelo m´odulo de integra¸c˜ao a partir da inicializa¸c˜ao autom´atica do componente qME e correspondente parametriza¸c˜ao.

4.2. Convers˜ao a partir do XML

Uma segunda op¸c˜ao para gera¸c˜ao das constru¸c˜oes de acordo com o modelo qGM considera, como fonte de dados, o arquivo XML gerado pelo QCEdit. Nessa concep-¸c˜ao, tamb´em faz-se uso do m´odulo qGM-Converter, por´em, neste caso, ´e executado inicialmente um m´etodo denominado XMLParser, o qual interpreta as constru¸c˜oes descritas no arquivo XML, estruturado conforme o modelo do Listing 1.

Como principais caracter´ısticas da estrutura¸c˜ao em XML apresentada, vale destacar a presen¸ca de v´arios operadores quˆanticos em um mesmo instante de tempo, denotando as correspondentes aplica¸c˜oes sobre qubits distintos. A ordem de ocor-rˆencia dos operadores determina os respectivos qubits alvo. Outra caracter´ıstica relevante ´e a possibilidade de defini¸c˜ao de transforma¸c˜oes quˆanticas personalizadas, as quais recebem, no arquivo XML, um nome de identifica¸c˜ao e uma defini¸c˜ao ma-tricial. Os operadores C1(1) e T arget1(X) s˜ao utilizados para representa¸c˜ao de transforma¸c˜oes quˆanticas controladas, seguindo a sintaxe j´a definida no VPE-qGM.

(5)

Listing 1. Modelo para Arquivo XML < c i r c u i t a r q=" path_to_file "> < !−− I n i c i o da d e s c r i ¸c ˜a o do c i r c u i t o −−> < i n i t i a l S t a t e q u b i t s="2" s t a t e="00" /> < !−− E s t a d o i n i c i a l −−> <s i m u l a t i o n> < !−− Se¸c˜ao d e s c r i t o r a d a s t r a n s f o r m a ¸c ˜o e s q u ˆa n t i c a s −−> <s t e p> < !−− Unidade de tempo da s i m u l a ¸c ˜a o −−> <g a t e name="H" d e f i n i t i o n="" /> < !−− Transforma¸c˜ao q u ˆa n t i c a a p l i c a d a −−> <g a t e name="H" d e f i n i t i o n="" /> </ s t e p> <s t e p> <g a t e name="X" d e f i n i t i o n="" /> <g a t e name="Id" d e f i n i t i o n="" /> </ s t e p> <s t e p> <g a t e name="C1 (1) " d e f i n i t i o n="" /> <g a t e name=" Target1 (X)" d e f i n i t i o n="" /> </ s t e p> </ s i m u l a t i o n> </ c i r c u i t>

A aplica¸c˜ao do m´etodo XMLParser converte a entrada de dados, no formato XML, para a estrutura matricial considerada pelo m´etodo QC to qGM. A cons-tru¸c˜ao da estrutura de mem´oria se d´a de forma an´aloga, atribuindo a informa¸c˜ao do parˆametro state (da tag initialState) `a vari´avel initialState. Por fim, tem-se a execu¸c˜ao do m´etodo QC to qGM seguindo a metodologia descrita na Se¸c˜ao 4.1.

Ambas abordagens resultam em uma mesma constru¸c˜ao gr´afica no qPE, ilus-trada pela Figura 2. Os PEs dessa constru¸c˜ao podem ser executados de forma dis-tribu´ıda no componente qS, usufruindo de todas as suas abstra¸c˜oes para simula¸c˜ao quˆantica distribu´ıda, conforme descrito em [Maron et al. 2010a].

Figura 2. Representa¸c˜ao da constru¸c˜ao da Figura 1(a) no VPE-qGM.

A estrutura geral da arquitetura de integra¸c˜ao entre o QCEdit e o VPE-qGM, considerando as convers˜oes descritas nas Se¸c˜oes 4.1. e 4.2., est´a ilustrada na Figura 3.

5. Conclus˜

ao

O ambiente VPE-qGM permite a modelagem gr´afica de algoritmos quˆanticos a partir das abstra¸c˜oes do modelo qGM. A utiliza¸c˜ao do QCEdit para descri¸c˜ao dos algorit-mos em uma representa¸c˜ao amplamente difundida e de mais alto n´ıvel caracteriza uma solu¸c˜ao voltada para a simplifica¸c˜ao desse processo, tornando mais intuitiva a an´alise e interpreta¸c˜ao dos algoritmos. A abordagem proposta neste trabalho ca-racteriza os esfor¸cos iniciais para expandir as capacidades de modelagem oferecidas pelo ambiente VPE-qGM e disponibiliz´a-los sob a licen¸ca GNU GPL para que possa ser usado e ampliado por outros grupos. O prot´otipo de arquitetura proposta define

(6)

Figura 3. Vis˜ao arquitetural da integra¸c˜ao entre os ambientes

os fundamentos da integra¸c˜ao entre o VPE-qGM e o QCEdit, delineando as pri-meiras etapas do projeto. Tem-se, assim, a possibilidade de usufruir de diferentes representa¸c˜oes para algoritmos quˆanticos, explorando as possibilidades de simula¸c˜ao distribu´ıda do VPE-qGM. A continuidade do trabalho visa consolidar essa integra-¸c˜ao, a extens˜ao das funcionalidades do QCEdit e a realiza¸c˜ao de testes de valida¸c˜ao.

Referˆ

encias

Gutierrez, E., Romero, S., Trenas, M., and Zapata, E. (2010). Quantum computer simulation using the cuda programming model. Computer Physics Communications, pages 283–300.

Hanneke, D., Home, J., J.D., J., Amini, J., Leibfried, D., and D.J., W. (2009). Realizations of a programmable two-qubit quantum processor. Nature Physics, 6:13–16.

Knill, E. H. and Nielsen, M. A. (2002). Theory of quantum computation. http://www.citebase.org/abstract?id=oai:arXiv.org:quant-ph/0010057.

Maron, A., Pinheiro, A., Reiser, R., and Pilla, M. (2010a). Distributed quantum simulation on the vpe-qgm. In Anais/WSCAD-SSC 2010, pages 128–135.

Maron, A., Pinheiro, A., Reiser, R., and Pilla, M. (2010b). Modelagem e simula¸c˜ao quˆantica no ambiente vpe-qgm. In Workshop Escola de Computa¸c˜ao e Informa¸c˜ao Quˆantica, pages 121–130. McMahon, D. (2000). Quantum Mechanics Demystified. McGraw Hill, Cambridge University Press. Monz, T., Schindler, P., Barreiro, J., Chwalla, M., Nigg, D., Coish, W., Harlander, M., H¨ansel, W., Hennrich, M., and Blatt, R. (2011). 14-qubit entanglement: Creation and coherence. Physical Review Letters, 106.

Nielsen, M. A. and Chuang, I. L. (2003). Computa¸c˜ao Quˆantica e Informa¸c˜ao Quˆantica. Bookman. Quantiki (2009). Quantum information wiki and portal. Dispon´ıvel por WWW em

<http://www.quantiki.org> (jun.2010).

Raedt, K. D., Michielsen, K., Raedt, H. D., Trieu, B., Arnold, G., Richter, M., Lippert, T., Watanabe, H., and Ito, N. (2006). Massive parallel quantum computer simulator. http://arxiv.org/abs/quant-ph/0608239.

Reiser, R. and Amaral, R. (2010). The quantum states space in the qgm model. In III Workshop Escola de Computa¸c˜ao e Informa¸c˜ao Quˆantica, pages 92–101, Petr´opolis/RJ. Editora do LNCC. Watanabe, H. (2002). Qcad: Gui environment for quantum computer simulator. Dispon´ıvel por

Referências

Documentos relacionados

Sendo assim, a automação residencial pode prover meios para controlar todos os sistemas da residência como sistema de ar condicionado e aquecimento, home- office, contemplando

O segundo Beneficiário será designado pelo Segurado na Proposta de Adesão, podendo ser substituído a qualquer tempo, mediante solicitação formal assinada pelo próprio Segurado, para

T ransformac ¸ ˜ oes de M¨ obius (que tamb´em s˜ao denominadas transforma¸c˜ oes lineares fracionais) s˜ao certas fun¸c˜ oes de vari´avel complexa que surgem em aplica¸c˜ oes

T ransformac ¸ ˜ oes de M¨ obius (que tamb´em s˜ao denominadas transforma¸c˜ oes lineares fracionais) s˜ao certas fun¸c˜ oes de vari´ avel complexa que surgem em aplica¸c˜ oes

Ainda segundo Gil (2002), como a revisão bibliográfica esclarece os pressupostos teóricos que dão fundamentação à pesquisa e às contribuições oferecidas por

A tabela 25 apresenta os resultados brutos desta avaliação em relação à característica busca e a tabela 26 exibe o resultado ponderado para esta característica.. A tabela 27

camada disponibiliza fun¸ c˜ oes para entrada e sa´ıda da rede publish-subscribe,.. cria¸ c˜ ao de t´ opicos, inscri¸ c˜ ao e remo¸ c˜ ao de inscri¸ c˜ oes em t´ opicos

Por exemplo, no caso do circuto acima, a sa´ıda pode ser expressa como f (A, B) para indicar que o valor da sa´ıda depende das duas entradas A e B que podem ser vistas como