|
- How
to get started in quantum computing by David
Matthews.
- Quantum
programming languages by Bettina
Heim, Mathias Soeken, Sarah
Marshall, Chris Granade, Martin
Roetteler, Alan Geller, Matthias
Troyer, and Krysta Svore.
- Loading Classical
Data into a Quantum Computer by John
A. Cortese and Timothy M. Braje.
- Toward the first
quantum simulation with quantum speedup by Andrew
M. Childs, Dmitri Maslov, Yunseong
Nam, Neil J. Ross, and Yuan Su. .
- Towards
Quantum Programs Verification: From Quipper Circuits to
QPMC by Linda Anticoli, Carla
Piazza, Leonardo Taglialegne,
and Paolo Zuliani.
- Algorithm
for the solution of the Dirac equation on digital quantum
computers, by François Fillion-Gourdeau, Steve
MacLean, and Raymond Laflamme. This paper describes a quantum
algorithm for solving a time-dependent Dirac equation. The
authors use Quipper for determining resource requirements.
- Generating
reversible circuits from higher-order functional
programs by Benoîit Valiron.
- Concrete
resource analysis of the quantum linear-system algorithm used to
compute the electromagnetic scattering cross section of a 2D
target by
Artur Scherer, Benoît
Valiron, Siun-Chuon Mau, Scott
Alexander, Eric van den Berg, and Thomas
E. Chapuran. A detailed resource analysis of the quantum
linear systems algorithm using Quipper.
- Concrete Resource
Estimation in Quantum Algorithms by Jonathan
M. Smith, Neil J. Ross, Peter
Selinger, and Benoît Valiron.
- Five Quantum
Algorithms Using Quipper by Safat Siddiqui,
Mohammed Jahirul Islam, and Omar Shehab.
- Programming the
quantum future, by Benoît
Valiron, Neil J. Ross, Peter Selinger,
D. Scott Alexander, and Jonathan M. Smith.
This paper lays out general requirements for a quantum programming
language and highlights some of Quipper's features.
Release notes
|
See the file NEWS for more details.
Dec 29, 2019: Release 0.9.0.0. This is the first version of
Quipper that is released as a set of Cabal packages. It can now be
installed with "cabal install quipper".
See README for more detailed installation
instructions. The module structure was re-designed, so that all parts
of Quipper are now contained in the "Quipper" namespace. This requires
many Quipper programs to be updated. Here is how the namespaces were
changed:
Old: New:
==== ====
Quipper.XYZ Quipper.Internal.XYZ
QuipperLib.XYZ Quipper.Libraries.XYZ
Libraries.XYZ Quipper.Utils.XYZ
Algorithms.XYZ Quipper.Algorithms.XYZ
tests Quipper.Demos
Programs Quipper.Programs
In addition, there were many compatibility updates to make Quipper
compatible with recent versions of GHC and the Haskell libraries.
July 27, 2016: Release 0.8. Compatibility with GHC
8.0. Note: GHC 7.10 is too broken and will not be
supported by Quipper.
Oct 14, 2014: Release 0.7. Compatibility with GHC
7.8.
Jan 16, 2014: Release 0.6. This is mostly a maintenance release
to stay in sync with relevant Haskell libraries. Minor edits and
documentation updates. Added alternate version of synthesis algorithm
for determinant 1 generators. Synthesis and rendering libraries are
now external packages.
Sept 2, 2013: Release 0.5. Portability improvements
for GHC 7.6. Portability improvements for Windows. Added
quipperi script, analogous to ghci. New libraries for
classical circuit
optimization, unboxing
and
approximation
of multi-qubit gates.
Additional gate
decompositions. Added decomposition into
a "standard"
gate set. Updated ASCII output format; improved circuit parser
efficiency. Miscellaneous bug fixes, refactoring, and documentation
updates.
June 19, 2013: Release 0.4.
This is the first public release of Quipper. It is a beta release.
|
|
Starting from Quipper 0.9, the recommended way to install Quipper is
using Cabal. In a nutshell, the commands
cabal update
cabal install quipper
install all of the required components of Quipper (the Quipper
language, the Quipper standard library, and the Quipper tools). In
addition, the command "cabal install quipper-all" also installs the
Quipper algorithms and demos. For more detailed instructions,
see README.
|
Downloading and installing (legacy method)
|
The recommended way to install Quipper is using Cabal,
see "Downloading and installing
(Cabal)" above.
For backward compatibility, the old way of compiling Quipper also
still works. Quipper can be downloaded here:
If you would like to ensure the accuracy of the downloaded files, you
can double-check their SHA1
sums. Previous releases are available here.
Legacy installation instructions for Linux, Macintosh, and other
Unix-like systems:
Legacy installation instructions for Windows:
Please note: Quipper does not work with GHC 7.10
or 8.10. The versions currently supported are GHC 8.0,
8.2, 8.4, 8.6, and 8.8.
|
Version
Contributors
|
Contributors are listed here, in alphabetical order by last name.
Unless otherwise noted, the copyright for his or her contributions
rests with each individual author. For contributions by authors whose
name is marked (ACS), the copyright rests with Applied Communication
Sciences.
Copyright (C) 2011-2019. All rights reserved.
Copyright (C) 2012-2013 Applied Communication Sciences. All rights
reserved.
Richard Eisenberg
Alexander S. Green
Peter LeFanu Lumsdaine
Keith Kim (ACS)
Siun-Chuon Mau (ACS)
Baranidharan Mohan
Won Ng (ACS)
Joel Ravelomanantsoa-Ratsimihah
Neil J. Ross
Artur Scherer (ACS)
Peter Selinger
Benoît Valiron
Alexandr Virodov (ACS)
Stephan A. Zdancewic
This research was supported by the Intelligence Advanced Research
Projects Activity (IARPA) via Department of Interior National Business
Center contract numbers D11PC20168 and D12PC00527. The U.S. Government
is authorized to reproduce and distribute reprints for Governmental
purposes notwithstanding any copyright annotation thereon. Disclaimer:
The views and conclusions contained herein are those of the authors
and should not be interpreted as necessarily representing the official
policies or endorsements, either expressed or implied, of IARPA,
DoI/NBC, or the U.S. Government.
|
License
|
Redistribution and use in source and binary forms, with or without
modification, are permitted provided that the following conditions are
met:
- Redistributions of source code must retain the above copyright
notice, this list of conditions and the following disclaimer.
- Redistributions in binary form must reproduce the above copyright
notice, this list of conditions and the following disclaimer in the
documentation and/or other materials provided with the
distribution.
- The name of the authors and copyright holders may not be used to
endorse or promote products derived from this software without
specific prior written permission.
THIS SOFTWARE IS PROVIDED BY THE AUTHORS "AS IS" AND ANY EXPRESS OR
IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED
WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE
DISCLAIMED. IN NO EVENT SHALL THE AUTHORS BE LIABLE FOR ANY DIRECT,
INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES
(INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR
SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION)
HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT,
STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING
IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE
POSSIBILITY OF SUCH DAMAGE.
|
Last modified by
Peter Selinger on Dec 29, 2019
|