Related papers: An Introduction to Quantum Programming in Quipper
Quantum computation has suggested new forms of quantum logic, called quantum computational logics. The basic semantic idea is the following: the meaning of a sentence is identified with a quregister, a system of qubits, representing a…
While significant progress has been made on the hardware side of quantum computing, support for high-level quantum programming abstractions remains underdeveloped compared to classical programming languages. In this article, we introduce…
Making quantum mechanical equations and concepts come to life through interactive simulation and visualization are commonplace for augmenting learning and teaching. However, graphical visualizations nearly always exhibit a set of hard-coded…
We discuss fundamentals of quantum computing and information - quantum gates, circuits, algorithms, theorems, error correction, and provide collection of QISKIT programs and exercises for the interested reader.
We present a number of quantum computing patterns that build on top of fundamental algorithms, that can be applied to solving concrete, NP-hard problems. In particular, we introduce the concept of a quantum dictionary as a summation of…
The task of programming a quantum computer is just as strange as quantum mechanics itself. But it now looks like a simple 3D puzzle may be the future tool of quantum software engineers.
We present a new quantum programming language called "Quala" that enables true full-stack programming of quantum hardware. Quala allows seamless integration of abstraction layers such as the digital circuit layer and the analog control…
This work develops a formal framework for specifying, implementing, and analysing quantum communication protocols. We provide tools for developing simple proofs and analysing programs which involve communication, both via quantum channels…
Quantum++ is a modern general-purpose multi-threaded quantum computing library written in C++11 and composed solely of header files. The library is not restricted to qubit systems or specific quantum information processing tasks, being…
We want in this article to show the usefulness of Quantum Turing Machine (QTM) in a high-level didactic context as well as in theoretical studies. We use QTM to show its equivalence with quantum circuit model for Deutsch and Deutsch-Jozsa…
The quantum assembly language (QASM) is a popular intermediate representation used in many quantum compilation and simulation tools to describe quantum circuits. Currently, multiple different dialects of QASM are used in different quantum…
This review gives a survey of numerical algorithms and software to simulate quantum computers.It covers the basic concepts of quantum computation and quantum algorithms and includes a few examples that illustrate the use of simulation…
Quantum programs are notoriously difficult to code and verify due to unintuitive quantum knowledge associated with quantum programming. Automated tools relieving the tedium and errors associated with low-level quantum details would hence be…
Quantum algorithms and protocols are often presented as quantum circuits for a better understanding. We give a list of equivalence rules which can help in the analysis and design of quantum circuits. As example applications we study quantum…
Circuit description languages are a class of quantum programming languages in which programs are classical and produce a description of a quantum computation, in the form of a quantum circuit. Since these programs can leverage all the…
We propose a model of a programmable quantum processing device realizable with existing nanophotonic technologies and which can be viewed as a basis for new high performance hardware architectures. We present protocols and their physical…
This paper presents a novel semantics for a quantum programming language by operator algebras, which are known to give a formulation for quantum theory that is alternative to the one by Hilbert spaces. We show that the opposite category of…
The Hilbert space formalism of quantum mechanics is reviewed with emphasis on applications to quantum computing. Standard interferomeric techniques are used to construct a physical device capable of universal quantum computation. Some…
During the last ten years, superconducting circuits have passed from being interesting physical devices to becoming contenders for near-future useful and scalable quantum information processing (QIP). Advanced quantum simulation experiments…
We present a way to apply quantum logic to the study of quantum programs. This is made possible by using an extension of the usual propositional language in order to make transformations performed on the system appear explicitly. This way,…