All Projects → artiste-qb-net → Qubiter

artiste-qb-net / Qubiter

Licence: other
Python tools for reading, writing, compiling, simulating quantum computer circuits. Includes numpy and tensorflow backends. “Quantum Space, the final frontier. These are the voyages of the starship Qubiter. Its five-year mission: to explore strange new worlds, to seek out new life and new civilizations, to boldly go where no man has gone before.”

Projects that are alternatives of or similar to Qubiter

Docs
D-Wave Ocean Documentation
Stars: ✭ 41 (-60.19%)
Mutual labels:  quantum-computing
Cirkit
A circuit toolkit
Stars: ✭ 64 (-37.86%)
Mutual labels:  quantum-computing
Pyepr
Powerful, automated analysis and design of quantum microwave chips & devices [Energy-Participation Ratio and more]
Stars: ✭ 81 (-21.36%)
Mutual labels:  quantum-computing
Jsquil
Quantum computer instructions for JavaScript developers
Stars: ✭ 43 (-58.25%)
Mutual labels:  quantum-computing
Quipper Language
Quipper: embedded, scalable functional programming language for quantum computing (unofficial fork)
Stars: ✭ 59 (-42.72%)
Mutual labels:  quantum-computing
Pyquil
A Python library for quantum programming using Quil.
Stars: ✭ 1,153 (+1019.42%)
Mutual labels:  quantum-computing
Awesome Ai Books
Some awesome AI related books and pdfs for learning and downloading, also apply some playground models for learning
Stars: ✭ 855 (+730.1%)
Mutual labels:  quantum-computing
Q
Quantum Computation Simulator written in golang
Stars: ✭ 99 (-3.88%)
Mutual labels:  quantum-computing
Openfermion Psi4
OpenFermion plugin to interface with the electronic structure package Psi4.
Stars: ✭ 63 (-38.83%)
Mutual labels:  quantum-computing
Qrack
Comprehensive, GPU accelerated framework for developing universal virtual quantum processors
Stars: ✭ 79 (-23.3%)
Mutual labels:  quantum-computing
Qiskit Vscode
Simplifying Qiskit to make developing quantum circuits and applications faster
Stars: ✭ 52 (-49.51%)
Mutual labels:  quantum-computing
Openfermion
The electronic structure package for quantum computers.
Stars: ✭ 1,099 (+966.99%)
Mutual labels:  quantum-computing
Quantum Benchmarks
benchmarking quantum circuit emulators for your daily research usage
Stars: ✭ 70 (-32.04%)
Mutual labels:  quantum-computing
Quantumflow Dev
QuantumFlow: A Quantum Algorithms Development Toolkit
Stars: ✭ 43 (-58.25%)
Mutual labels:  quantum-computing
Quantum Learning
This repository contains the source code used to produce the results presented in the paper "Machine learning method for state preparation and gate synthesis on photonic quantum computers".
Stars: ✭ 89 (-13.59%)
Mutual labels:  quantum-computing
Qutip
QuTiP: Quantum Toolbox in Python
Stars: ✭ 985 (+856.31%)
Mutual labels:  quantum-computing
Qpga
Simulations of photonic quantum programmable gate arrays
Stars: ✭ 68 (-33.98%)
Mutual labels:  quantum-computing
Awesome Quantum Computing
A curated list of awesome quantum computing learning and developing resources.
Stars: ✭ 1,350 (+1210.68%)
Mutual labels:  quantum-computing
Computer Science Resources
A list of resources in different fields of Computer Science (multiple languages)
Stars: ✭ 1,316 (+1177.67%)
Mutual labels:  quantum-computing
Blockerized Dockchain
Because all problems are solvable with containers and blockchains
Stars: ✭ 77 (-25.24%)
Mutual labels:  quantum-computing

Qubiter at GitHub

Tutorial

The following Jupyter notebook is a good introduction to Qubiter's basic features. Other notebooks in Qubiter's jupyter_notebook folder discuss more advanced features:

The following automatically generated notebook summarizes all other notebooks:

See also, at the readthedocs.org website, the beautiful documentation generated automatically by the Sphinx software based on Qubiter's docstrings and code:

Installation

The simplest thing that avoids many of the installation hassles is to get an account on our Amazon cloud service www.bayesforge.com. It's free for one year. Bayesforge already has all of Python and Qubiter installed (although you may need to update Qubiter using Git). Bayesforge is also available on the Tencent cloud.

Of course, you can also clone the latest version or update an older version of Qubiter on your computer from this repo by using Git commands.

Alternatively, you can install an older but more stable version of Qubiter from the Python package manager pip using:

pip install qubiter --user

If you are using a Jupyter notebook, use:

!pip install qubiter --user

and restart the kernel.

What is Qubiter?

The Qubiter project aims to provide eventually a full suite of tools, written mostly in Python, for designing and simulating quantum circuits on classical computers. (So it will address only the needs of gate model, not annealer, quantum computer engineers). We or others could start a similar project for annealers.

An earlier C++ computer program also called Qubiter (see http://www.ar-tiste.com/qubiter.html), written by Robert R. Tucci, did only quantum compiling. This newer project includes a quantum CSD compiler similar to the earlier Qubiter, based on the (Cosine-Sine) CS Decompostion of Linear Algebra, but written in Python. But this new project also includes much more than that.

We've included classes for reading and writing quantum circuit files. Also for expanding circuits with gates that have multiple controls into circuits with only CNOTs and single qubit rotation gates. Also for embedding a circuit inside a larger one. And, last but not least, we've included a simulator.

The simulator hasn't been bench-marked but should be pretty fast, because it relies on Numpy, which is a Python wrapper for C code.

Besides being amply documented with docstrings, each class has a main method at the end giving examples of its usage (and testing it). Plus we've included a large and ever increasing collection of Jupyter notebooks that teach some physics and how to use Qubiter at the same time.

The quantum circuits are saved as text files, which allows easy exchange between QC engineers.

The quantum circuits are draw in ASCII (not in postscript or in a proprietary format). We hope we can convince you that ASCII drawings of quantum circuits are surprisingly clear, expressive, and convenient, really all you need, plus, unlike other formats, they are super easy to edit. Using other formats might require you to master difficult subjects like postscript in order to write/edit circuit files. This is totally unnecessary!

Quantum Fog at GitHub (see https://github.com/artiste-qb-net/quantum-fog) is a twin project started by the same people. We hope that eventually Quantum Fog will call Qubiter to perform some tasks, like quantum compiling and simulating.

All of Qubiter at GitHub except for the contents of the quantum_CSD_compiler folder is licensed under the BSD license (3 clause version) with an added clause at the end, taken almost verbatim from the Apache 2.0 license, granting additional Patent rights. See LICENSE.md.

The contents of Qubiter's quantum_CSD_compiler folder are licensed under the GPLv2 (Linux) license.

Contributors

(Alphabetical Order)

  • Dekant, Henning
  • Tregillus, Henry
  • Tucci, Robert
  • Yin, Tao
Note that the project description data, including the texts, logos, images, and/or trademarks, for each open source project belongs to its rightful owner. If you wish to add or remove any projects, please contact us at [email protected].