• Home
  • History
  • Annotate
Name Date Size #Lines LOC

..03-May-2022-

examples/H19-Dec-2020-1,4901,193

extras/H19-Dec-2020-198114

scripts/H19-Dec-2020-7854

src/qmasm/H19-Dec-2020-4,2213,341

.gitignoreH A D19-Dec-202053 54

.travis.ymlH A D19-Dec-20201.4 KiB2721

LICENSE.mdH A D19-Dec-20202.5 KiB158

MANIFEST.inH A D19-Dec-2020121 65

README.mdH A D19-Dec-20202.4 KiB4831

setup.cfgH A D19-Dec-202040 32

setup.pyH A D19-Dec-20201.9 KiB4131

README.md

1QMASM: A Quantum Macro Assembler
2================================
3
4[![Build Status](https://travis-ci.org/lanl/qmasm.svg?branch=master)](https://travis-ci.org/lanl/qmasm)
5[![PyPI version](https://badge.fury.io/py/qmasm.svg)](https://badge.fury.io/py/qmasm)
6
7Description
8-----------
9
10QMASM fills a gap in the software ecosystem for [D-Wave's adiabatic quantum computers](http://www.dwavesys.com/) by shielding the programmer from having to know system-specific hardware details while still enabling programs to be expressed at a fairly low level of abstraction.  It is therefore analogous to a conventional macro assembler and can be used in much the same way: as a target either for programmers who want a great deal of control over the hardware or for compilers that implement higher-level languages.
11
12N.B. This tool used to be called "QASM" but was renamed to avoid confusion with [MIT's QASM](http://www.media.mit.edu/quanta/quanta-web/projects/qasm-tools/), which is used to describe quantum circuits (a different model of quantum computation from what the D-Wave uses) and the [IBM Quantum Experience](http://www.research.ibm.com/quantum/)'s [QASM (now OpenQASM) language](https://github.com/QISKit/openqasm), also used for describing quantum circuits.
13
14Installation
15------------
16
17QMASM is written in Python and uses [Setuptools](https://pythonhosted.org/an_example_pypi_project/setuptools.html) for installation.  Use
18```bash
19python setup.py install
20```
21to install in the default location and
22```bash
23python setup.py install --prefix=/my/install/directory
24```
25to install elsewhere.
26
27Documentation
28-------------
29
30Documentation for QMASM can be found on the [QMASM wiki](https://github.com/lanl/qmasm/wiki).
31
32QMASM (then known as QASM) is discussed in the following publication:
33
34> Scott Pakin. "A Quantum Macro Assembler". In _Proceedings of the 20th Annual IEEE High Performance Extreme Computing Conference_ (HPEC 2016), Waltham, Massachusetts, USA, 13–15 September 2016.  DOI: [10.1109/HPEC.2016.7761637](http://dx.doi.org/10.1109/HPEC.2016.7761637).
35
36
37License
38-------
39
40QMASM is provided under a BSD-ish license with a "modifications must be indicated" clause.  See [the LICENSE file](http://github.com/lanl/qmasm/blob/master/LICENSE.md) for the full text.
41
42This package is part of the Hybrid Quantum-Classical Computing suite, known internally as LA-CC-16-032.
43
44Author
45------
46
47Scott Pakin, <pakin@lanl.gov>
48