Quipper: a scalable quantum programming language
By Alexander S. Green, Peter LeFanu Lumsdaine, Neil J. Ross, Peter Selinger, Benoît Valiron. ACM-SIGPLAN Symposium on Programming Language Design and Implementation, 2013
486 citations recorded by the source corpus.
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 program a diverse set of non-trivial quantum algorithms, and can generate quantum gate representations using trillions of gates. It is geared towards a model of computation that uses a classical computer to control a quantum device, but is not dependent on any particular model of quantum hardware. Quipper has proven effective and easy to use, and opens the door towards using formal methods to analyze quantum algorithms.
Subfields: Artificial Intelligence, Computational Theory and Mathematics
View Paper: https://www.semanticscholar.org/paper/12c74cb1e4dc99da553b7c222df7669bea26087b
How researchers see this paper
The researchers whose trusted networks rank it highest, strongest advocate first. Every researcher gets a different order.
In Artificial Intelligence
- Yuan Su
- Daniel J. Egger
- Stefan Woerner
- Neil J. Ross
- Ali Javadi-Abhari
- Y. Nam
- Dmitri Maslov
- Lev S. Bishop
In Computational Theory and Mathematics
- Yuan Su
- Dmitri Maslov
- Andrew M. Childs
- Y. Nam
- Krysta Marie Svore
- Neil J. Ross
- Matthias Troyer
- Robert Wille
Citations in the corpus
- Automated optimization of large quantum circuits with continuous parameters (2017, methodology): “The results of the Heavy optimization for the Quipper adder are shown in Table 2.”
- Quantum computing with Qiskit (2024, background): “Some of these tools are explicitly built around OpenQASM [18, 19, 45, 77], while others support serialization to and from it [17, 24, 33, 41, 48, 52, 83, 86, 88].”
- Toward the first quantum simulation with quantum speedup (2017, methodology): “To produce concrete circuits, we implement quantum simulation algorithms in a quantum circuit description language called Quipper (24) (see SI Appendix, section E for more details).”
- Q#: Enabling Scalable Quantum Computing and Development with a High-level DSL (2018, background): “Languages such as Quipper [6], ScaffCC/Scaffold [7, 8], LIQUi|⟩[22], QWire [15], Quil [19], and ProjectQ [20] enable programming of quantum computations and are intended as circuit definition languages.”
- Open Quantum Assembly Language (2017, background): “ext. General quantum programs require coordination of quantum and classical parts of the computation. One way to think about general quantum programs is to identify their distinct phases of execution [11]. Fig.1shows a high-level diagram of the processes and abstractions involved in specifying a qua”
- An Efficient Methodology for Mapping Quantum Circuits to the IBM QX Architectures (2017, methodology): “To this end, several functions taken from RevLib [36] as well as quantum algorithms written in Quipper [24] or the Scaffold language [23] (and precompiled by the ScaffoldCC compiler [30]) have been considered as benchmarks and mapped to the most recent 16-qubit architecture available (i.e., QX5 ).”
- t|ket⟩: a retargetable compiler for NISQ devices (2020, methodology): “The industry-standard OpenQASM [46] and the the functional language Quipper [27] are supported via direct source-file input.”
- Qubit allocation (2018, unknown): “Except for some early work [41], compiler frameworks that translate high-level languages to quantum gates have only been proposed in recent years [17, 19, 21, 28, 42].”
- A Practical Quantum Instruction Set Architecture (2016, background): “Quantum Turing machines lie in the same vein as its classical counterpart, and we follow a similar approach in the creation of a practical quantum analog.”
- Quantum risk analysis (2018, methodology): “There exist numerous quantum algorithms for arithmetic operations as well as tools to translate classical logic into quantum circuits.(26,27)”
- ProjectQ: An Open Source Software Framework for Quantum Computing (2016, methodology): “Thus, ProjectQ is able to support both near-term testbeds and future large-scale quantum computers. ar X iv :1 61 2.”