Skip to main content

A Python library to generate Quantum Instruction Language (Quil) Programs.

Project description

# pyQuil

A library for easily generating Quil programs to be executed using the Rigetti Forest platform.
pyQuil is licensed under the [Apache 2.0 license](https://github.com/rigetti/pyQuil/blob/master/LICENSE).

[![Build Status](https://semaphoreci.com/api/v1/rigetti/pyquil/branches/master/badge.svg)](https://semaphoreci.com/rigetti/pyquil)
[![Documentation Status](https://readthedocs.org/projects/pyquil/badge/?version=latest)](http://pyquil.readthedocs.io/en/latest/?badge=latest)
[![pipeline status](https://gitlab.com/rigetti/pyquil/badges/master/pipeline.svg)](https://gitlab.com/rigetti/pyquil/commits/master)

**Please note: To make full use of our SDK, in addition to installing
pyQuil, you will need to have installed quilc and the QVM (compiler
and simulator, respectively). Both [quilc](https://github.com/rigetti/quilc) and the [QVM](https://github.com/rigetti/qvm) are now open
source and can be installed by following their respective
READMEs. Alternatively, the binary tools can be download as part of
the [Forest SDK](https://rigetti.com/forest). If you'd like to run programs on our quantum
computers, you'll want to sign up for [Quantum Cloud Services](https://rigetti.com/qcs).**

## Documentation

Documentation is hosted at [http://pyquil.readthedocs.io/en/latest/](http://pyquil.readthedocs.io/en/latest/)

## Installation

You can install pyQuil as a conda package (recommended):

```bash
conda install -c -conda-forge pyquil
```

or using `pip`:

```
pip install pyquil
```

To instead install pyQuil from source, clone this repository, `cd` into it, and run:
```
pip install -e .
```

See the [Getting Started Guide](https://go.rigetti.com/getting-started) to start writing quantum programs!


## Community

Join the public Forest Slack channel at [http://slack.rigetti.com](https://join.slack.com/t/rigetti-forest/shared_invite/enQtNDI1MDQzOTk3OTI3LWZlNzVjZWNlMmYxMjAzYTNlZjRhNjlmNWE0MDc1MjNhYTRkODA5Mjg3NTY4YWRmYzJmN2Q1M2M0Nzg3YzhhYzI).

The following projects have been contributed by community members:

- [Syntax Highlighting for Quil](https://github.com/JavaFXpert/quil-syntax-highlighter)
contributed by [James Weaver](https://github.com/JavaFXpert)
- [Web Based Circuit Simulator](https://github.com/rasa97/quil-sim/tree/master)
contributed by [Ravisankar A V](https://github.com/rasa97)
- [Quil in Javascript](https://github.com/mapmeld/jsquil)
contributed by [Nick Doiron](https://github.com/mapmeld)
- [Quil in Java](https://github.com/QCHackers/jquil)
contributed by [Victory Omole](https://github.com/vtomole)

## Developing PyQuil

To make changes to PyQuil itself see [DEVELOPMENT.md](DEVELOPMENT.md) for instructions on development and testing.

## How to cite pyQuil and Forest

If you use pyQuil, Grove, or other parts of the Rigetti Forest stack in your research, please cite it as follows:

BibTeX:
```
@misc{1608.03355,
title={A Practical Quantum Instruction Set Architecture},
author={Smith, Robert S and Curtis, Michael J and Zeng, William J},
journal={arXiv preprint arXiv:1608.03355},
year={2016}
}
```

Text:
```
R. Smith, M. J. Curtis and W. J. Zeng, "A Practical Quantum Instruction Set Architecture," (2016),
arXiv:1608.03355 [quant-ph], https://arxiv.org/abs/1608.03355
```

Project details


Release history Release notifications | RSS feed

This version

2.5.0

Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

pyquil-2.5.0.tar.gz (162.8 kB view details)

Uploaded Source

File details

Details for the file pyquil-2.5.0.tar.gz.

File metadata

  • Download URL: pyquil-2.5.0.tar.gz
  • Upload date:
  • Size: 162.8 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: Python-urllib/3.6

File hashes

Hashes for pyquil-2.5.0.tar.gz
Algorithm Hash digest
SHA256 74169cedcbec3f7d0a8fb4ec07507041e8195ba13e65ed15c18b6959675f32e2
MD5 5d32f40d250d36f8d4d8ff08647fa318
BLAKE2b-256 1a0c23835444d6c636e82942465d6ddee7dea976bf82b84085993fa783e21e18

See more details on using hashes here.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page