Skip to main content

A framework for creating, editing, and invoking Noisy Intermediate Scale Quantum (NISQ) circuits.

Project description

This is a development version of Cirq and may be unstable.

For the latest stable release of Cirq see here.

Cirq

Cirq is a Python library for writing, manipulating, and optimizing quantum circuits and running them against quantum computers and simulators.

Build Status https://badge.fury.io/py/cirq.svg Documentation Status

Installation and Documentation

Cirq documentation is available at cirq.readthedocs.io.

Documentation for the latest unstable version of cirq (tracks the repository’s master branch; what you get if you pip install cirq-unstable), is available at cirq.readthedocs.io/latest.

Documentation for the latest stable version of cirq (what you get if you pip install cirq) is available at cirq.readthedocs.io/stable.

Hello Qubit

A simple example to get you up and running:

import cirq

# Pick a qubit.
qubit = cirq.GridQubit(0, 0)

# Create a circuit
circuit = cirq.Circuit(
    cirq.X(qubit)**0.5,  # Square root of NOT.
    cirq.measure(qubit, key='m')  # Measurement.
)
print("Circuit:")
print(circuit)

# Simulate the circuit several times.
simulator = cirq.Simulator()
result = simulator.run(circuit, repetitions=20)
print("Results:")
print(result)

Example output:

Circuit:
(0, 0): ───X^0.5───M('m')───
Results:
m=11000111111011001000

Contributing

We welcome contributions. Please follow these guidelines.

We use Github issues for tracking requests and bugs. Please post questions to the Quantum Computing Stack Exchange with the cirq tag. For informal discussions about Cirq, join our cirqdev Gitter channel.

See Also

For those interested in using quantum computers to solve problems in chemistry and materials science, we encourage exploring OpenFermion and its sister library for compiling quantum simulation algorithms in Cirq, OpenFermion-Cirq.

Alpha Disclaimer

Cirq is currently in alpha. We are still making breaking changes. We will break your code when we make new releases. We recommend that you target a specific version of Cirq, and periodically bump to the latest release. That way you have control over when a breaking change affects you.

Cirq is not an official Google product. Copyright 2019 The Cirq Developers

Project details


Release history Release notifications | RSS feed

Download files

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

Source Distributions

No source distribution files available for this release.See tutorial on generating distribution archives.

Built Distribution

File details

Details for the file cirq_unstable-0.7.0.dev20191121170219-py3-none-any.whl.

File metadata

  • Download URL: cirq_unstable-0.7.0.dev20191121170219-py3-none-any.whl
  • Upload date:
  • Size: 1.2 MB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/3.0.0 pkginfo/1.5.0.1 requests/2.22.0 setuptools/41.6.0 requests-toolbelt/0.9.1 tqdm/4.38.0 CPython/3.7.1

File hashes

Hashes for cirq_unstable-0.7.0.dev20191121170219-py3-none-any.whl
Algorithm Hash digest
SHA256 4691cd9cae34a04aea32344080407d4b3d49f0c65f4f5d279b3bd556ae8b4b97
MD5 0a215a385abe05dc44b3eeda5e5c9dc9
BLAKE2b-256 246c8628bc3577f813e1b881600aee14ee7f6fc94adbb0ba462d12704afd6b58

See more details on using hashes here.

Supported by

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