The field of quantum algorithms is vibrant. Still, there is currently a lack of programming languages for describing quantum computation on a practical scale, i.e., not just at the level of toy problems. We address this issue by introducing Quipper, a scalable, expressive, functional, higher-order quantum programming language. Quipper has been used to… (More)
Overview Given a gate set S universal for quantum computing, the problem of decomposing a unitary operator U into a circuit over S is known as the synthesis problem. This problem can be solved exactly, if U belongs to the set of circuits generated by S. Otherwise, it can be solved approximately, by finding a circuit U such that ||U − U || < for some chosen… (More)
Quipper is a recently developed programming language for expressing quantum computations. This paper gives a brief tutorial introduction to the language, through a demonstration of how to make use of some of its key features. We illustrate many of Quipper's language features by developing a few well known examples of Quantum computation , including quantum… (More)
The purpose of this study was to examine the distribution of pace self-selected by cyclists of varying ability, biological age and sex performing in a mountain bike World Championship event. Data were collected on cyclists performing in the Elite Male (ELITEmale; n = 75), Elite Female (ELITEfemale; n = 50), Under 23 Male (U23male; n = 62), Under 23 Female… (More)
The Quipper language offers a unified general-purpose programming framework for quantum computation.
The use of behavioural modelling for operational amplifiers has been well known for many years and previous work has included modelling of specific fault conditions using a macro-model. In this paper, the models are implemented in a more abstract form using analogue Hardware Description Languages (HDLs), including MAST, taking advantage of the ability to… (More)
We describe a new efficient algorithm to approximate z-rotations by ancilla-free Pauli+V circuits, up to a given precision ε. Our algorithm is optimal in the presence of an oracle for integer factoring: it outputs the shortest Pauli+V circuit solving the given problem instance. In the absence of such an oracle, our algorithm is still near-optimal, producing… (More)
Despite the rich literature on quantum algorithms, there is a surprisingly small amount of coverage of their concrete logical design and implementation. Most resource estimation is done at the level of complexity analysis, but actual concrete numbers (of quantum gates, qubits, etc.) can differ by orders of magnitude. The line of work we present here is a… (More)