Coordenação de Aperfeiçoamento de Pessoal de Nível Superior / Quantum computing is an emerging technology that, currently, has the challenge of
developing programming languages, according to the rules of quantum mechanics, to support
the creation, analysis, modeling and simulation of high-level quantum algorithms. Particularly,
the focus is on the investigation of new semantic models to develop programming languages for
quantum computing. In this context, one alternative is to use the semantic model of monads and
arrows that abstracts both pure and mixed quantum states and also can express measures. This
model however, was originally implemented as a library for the functional language Haskell,
which not every programmer is family. This way, this study aims to provide a universal tool for
high-level quantum programming, providing a library for Java. This library was implemented
using the new features of closures present in the version 8 of the JDK (Java Development Kit),
already available in developers preview. In addition, we present a specific syntax for the library
to facilitate the development of quantum algorithms with a clearly structured notation. This syntax
is described in a notation similar to the do-notation of Haskell and operates in conjunction
with a parser implemented by ANTLR tool. / A computação quântica é uma tecnologia emergente e, atualmente, encontra-se no desafio
de desenvolver linguagens de programação segundo as regras da mecânica quântica para
a criação, análise, modelagem e simulação de algoritmos quânticos de alto nível.
Particularmente, o foco é na investigação de novos modelos semânticos para elaborar
linguagens de programação para a computação quântica.
Nesse contexto, uma das alternativas é utilizar um modelo semântico de mônadas e
setas capaz de abstrair tanto estados quânticos puros quanto mistos e ainda expressar operações
de medidas. Esse modelo foi implementado como uma biblioteca para a linguagem funcional
Haskell, contudo nem todo programador está familiarizado.
Dessa forma, o presente trabalho objetiva oferecer uma ferramenta universal de alto
nível para a programação quântica, apresentando uma biblioteca para o Java.
Essa biblioteca foi implementada utilizando os novos recursos de closures presentes na
versão 8 do JDK (Java Development Kit), já disponibilizados na prévia de desenvolvedores.
Além disso, esse trabalho apresenta uma sintaxe específica para a biblioteca para facilitar
a elaboração de algoritmos quânticos de forma clara e estruturada, descrita de uma maneira
similar a notação-do do Haskell. A sintaxe criada opera em conjunto com um tradutor desenvolvido
com a ferramenta ANTLR.
Identifer | oai:union.ndltd.org:IBICT/oai:repositorio.ufsm.br:1/5420 |
Date | 27 August 2013 |
Creators | Calegaro, Bruno Crestani |
Contributors | Vizzotto, Juliana Kaizer, Bois, André Rauber Du, Piveta, Eduardo Kessler |
Publisher | Universidade Federal de Santa Maria, Programa de Pós-Graduação em Informática, UFSM, BR, Ciência da Computação |
Source Sets | IBICT Brazilian ETDs |
Language | Portuguese |
Detected Language | Portuguese |
Type | info:eu-repo/semantics/publishedVersion, info:eu-repo/semantics/masterThesis |
Format | application/pdf |
Source | reponame:Repositório Institucional da UFSM, instname:Universidade Federal de Santa Maria, instacron:UFSM |
Rights | info:eu-repo/semantics/openAccess |
Relation | 100300000007, 400, 300, 300, 300, 300, 05cfea7a-2f9a-458f-8d0a-d0ebfed22202, 700a84ce-f324-47e1-bf00-90cf7cb1c86b, f27decc4-d119-4fd3-a5d9-b212c0a7ba7d, deff8c52-5f3b-4d6f-845c-f8292592f73c |
Page generated in 0.0028 seconds