Towards a quantum programming language

@article{Selinger2004TowardsAQ,
  title={Towards a quantum programming language},
  author={Peter Selinger},
  journal={Mathematical Structures in Computer Science},
  year={2004},
  volume={14},
  pages={527 - 586}
}
  • P. Selinger
  • Published 1 August 2004
  • Computer Science
  • Mathematical Structures in Computer Science
We propose the design of a programming language for quantum computing. Traditionally, quantum algorithms are frequently expressed at the hardware level, for instance in terms of the quantum circuit model or quantum Turing machines. These approaches do not encourage structured programming or abstractions such as data types. In this paper, we describe the syntax and semantics of a simple quantum programming language with high-level features such as loops, recursive procedures, and structured data… 
Operational Semantics and Type Soundness of Quantum Programming Language LanQ
We present an imperative quantum programming language LanQ which was designed to support combination of quantum and classical programming and basic process operations - process creation and
Compilation to quantum circuits for a language with quantum data and control
TLDR
A semantics for nQML is defined, which translates programs to quantum circuits in the category FQC of finite quantum computations, following the approach of Altenkirch and Grattage's QML.
Semantics and simulation of communication in quantum programming
TLDR
CQPL possesses a denotational semantics based on a partial order of superoperators and uses fixed points on a generalised Hilbert space to formalise the exchange of classical and quantum data between an arbitrary number of participants.
A lambda calculus for quantum computation with classical control
TLDR
A functional programming language for quantum computers, by extending the simply-typed lambda calculus with quantum types and operations, and gives a type system using affine intuitionistic linear logic.
A lambda calculus for quantum computation with classical control
TLDR
A functional programming language for quantum computers by extending the simply-typed lambda calculus with quantum types and operations, and gives a type system using affine intuitionistic linear logic.
A Compiler for a Functional Quantum Programming Language
TLDR
A compiler for the functional quantum programming language QML, developed in Haskell, takes QML expressions as input and outputs a representation of quantum circuits which can be simulated by the simulator presented here, or by using a standard simulator for quantum gates.
Towards a formally verified functional quantum programming language
TLDR
This thesis looks at the development of a framework for a functional quantum programming language, designed following a structural approach as given by a categorical model of quantum computation, first developed in Haskell and then implemented in Agda.
A functional quantum programming language
  • Jonathan Grattage
  • Computer Science
    20th Annual IEEE Symposium on Logic in Computer Science (LICS' 05)
  • 2005
TLDR
QML integrates reversible and irreversible quantum computations in one language, using first order strict linear logic to make weakenings explicit, and preserves superpositions and entanglement -which is essential for quantum parallelism.
A Logic for Recursive Quantum Programs
TLDR
This paper presents a logic for recursive quantum programs, an extension of quantum Hoare logic for quantum While-programs, and its effectiveness is shown by a running example: fixed-point Grover's search.
Categorical Semantics for a Quantum Language ∗
TLDR
A correspondence theorem for a quantum programming language in an axiomatic (categorical) setting is proved and a simple whilebased programming language for a machine that has access to Quantum Systems and the relevant operations on them is presented.
...
1
2
3
4
5
...

References

SHOWING 1-10 OF 21 REFERENCES
Quantum Programming
TLDR
The theory of quantum programming provides tools to write both classical and quantum specifications, develop quantum programs that implement these specifications, and reason about their comparative time and space complexity all in the same framework.
Toward an architecture for quantum programming
TLDR
A template high level quantum language is presented which complements a generic general purpose classical language with a set of quantum primitives, and easily lends itself to automatic, hardware independent, circuit simplification.
A Procedural Formalism for Quantum Computing
TLDR
QCL (Quantum Computation Language) is a hight level, architecture independent programming language for quantum computers, with a syntax derived from classical procedural languages like C or Pascal, which allows for the complete implementation and simulation of quantum algorithms in one consistent formalism.
Conventions for Quantum Pseudocode
A few conventions for thinking about and writing quantum pseu-docode are proposed. The conventions can be used for presenting any quantum algorithm down to the lowest level and are consistent with a
A fast quantum mechanical algorithm for database search
TLDR
In early 1994, it was demonstrated that a quantum mechanical computer could efficiently solve a well-known problem for which there was no known efficient algorithm using classical computers, i.e. testing whether or not a given integer, N, is prime, in a time which is a finite power of o (logN) .
Quantum information and computation
TLDR
In information processing, as in physics, the classical world view provides an incomplete approximation to an underlying quantum reality that can be harnessed to break codes, create unbreakable codes, and speed up otherwise intractable computations.
Algorithms for quantum computation: discrete logarithms and factoring
  • P. Shor
  • Computer Science
    Proceedings 35th Annual Symposium on Foundations of Computer Science
  • 1994
TLDR
Las Vegas algorithms for finding discrete logarithms and factoring integers on a quantum computer that take a number of steps which is polynomial in the input size, e.g., the number of digits of the integer to be factored are given.
Categorical Structure of Asynchrony
Models of sharing graphs : a categorical semantics of let and letrec
TLDR
An algebraic approach, based on the language of category theory, is taken throughout this work, which enables the author to describe several aspects of the notion of sharing in a systematic way.
...
1
2
3
...