Skip to main content

Berkeley Quantum Synthesis Toolkit

Project description

Berkeley Quantum Synthesis Toolkit (BQSKit)

The Berkeley Quantum Synthesis Toolkit (BQSKit) [bis • kit] is a powerful and portable quantum compiler framework. It can be used with ease to compile quantum programs to efficient physical circuits for any QPU.

Installation

BQSKit is available for Python 3.8+ on Linux, macOS, and Windows. BQSKit and its dependencies are listed on the Python Package Index, and as such, pip can easily install it:

pip install bqskit

An optional extension includes pre-built support for many quantum devices and modules for working with other quantum frameworks. Pip can install this extension by appending [ext] to the previous command:

pip install 'bqskit[ext]'

Note: If you are using a device with Apple Silicon, you will need to install BQSKit with Anaconda. See the instructions here for more information. We are currently in the process of implementing native ARM support. When that is ready, we will update this note.

Basic Usage

A standard workflow utilizing BQSKit consists of loading a program into the framework, modeling the target QPU, compiling the program, and exporting the resulting circuit. The below example uses BQSKit to optimize an input circuit provided by a qasm file:

from bqskit import compile, Circuit

# Load a circuit from QASM
circuit = Circuit.from_file("input.qasm")

# Compile the circuit
compiled_circuit = compile(circuit)

# Save output as QASM
compiled_circuit.save("output.qasm")

To learn more about BQSKit, follow the tutorial series or refer to the documentation.

License

The software in this repository is licensed under a BSD free software license and can be used in source or binary form for any purpose as long as the simple licensing requirements are followed. See the LICENSE file for more information.

Copyright

Berkeley Quantum Synthesis Toolkit (BQSKit) Copyright (c) 2021, The Regents of the University of California, through Lawrence Berkeley National Laboratory (subject to receipt of any required approvals from the U.S. Dept. of Energy) and Massachusetts Institute of Technology (MIT). All rights reserved.

If you have questions about your rights to use or distribute this software, please contact Berkeley Lab's Intellectual Property Office at IPO@lbl.gov.

NOTICE. This Software was developed under funding from the U.S. Department of Energy and the U.S. Government consequently retains certain rights. As such, the U.S. Government has been granted for itself and others acting on its behalf a paid-up, nonexclusive, irrevocable, worldwide license in the Software to reproduce, distribute copies to the public, prepare derivative works, and perform publicly and display publicly, and to permit others to do so.

Project details


Download files

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

Source Distribution

bqskit-1.0.0b2.tar.gz (175.0 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

bqskit-1.0.0b2-py2.py3-none-any.whl (290.8 kB view details)

Uploaded Python 2Python 3

File details

Details for the file bqskit-1.0.0b2.tar.gz.

File metadata

  • Download URL: bqskit-1.0.0b2.tar.gz
  • Upload date:
  • Size: 175.0 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/4.0.1 CPython/3.10.7

File hashes

Hashes for bqskit-1.0.0b2.tar.gz
Algorithm Hash digest
SHA256 b03d33ce692e77d34e68bb934001e16d132bbc207da5169411a64e01c9abbc49
MD5 1b70c76efd7883f895c1edab11975d26
BLAKE2b-256 657b57199a4d9dd8ba09288c7d5e2adc8c28a0315f583a3f61e4bdf4636359b2

See more details on using hashes here.

File details

Details for the file bqskit-1.0.0b2-py2.py3-none-any.whl.

File metadata

  • Download URL: bqskit-1.0.0b2-py2.py3-none-any.whl
  • Upload date:
  • Size: 290.8 kB
  • Tags: Python 2, Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/4.0.1 CPython/3.10.7

File hashes

Hashes for bqskit-1.0.0b2-py2.py3-none-any.whl
Algorithm Hash digest
SHA256 93c169468bfc6f1f640962440e973dcf543bfb43b221443affac627ffe03667e
MD5 ac47f1ed8834c228ee2d7196fb171f58
BLAKE2b-256 254d6c72446ef8cdacb92957bc53718d4ff65f8d87a1998717fbc025c4107bf8

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