cirq-unstable 0.10.0.dev20201203005757
A framework for creating, editing, and invoking Noisy Intermediate Scale Quantum (NISQ) circuits.
License: Apache 2
Requires Python: >=3.6.0

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

**For the latest stable release of Cirq see**
`here <https://pypi.org/project/cirq>`__.

.. image:: https://raw.githubusercontent.com/quantumlib/Cirq/master/docs/images/Cirq_logo_color.png
  :target: https://github.com/quantumlib/cirq
  :alt: Cirq
  :width: 500px

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

.. image:: https://travis-ci.com/quantumlib/Cirq.svg?token=7FwHBHqoxBzvgH51kThw&branch=master
  :target: https://travis-ci.com/quantumlib/Cirq
  :alt: Build Status

.. image:: https://badge.fury.io/py/cirq.svg
    :target: https://badge.fury.io/py/cirq

.. image:: https://readthedocs.org/projects/cirq/badge/?version=latest
    :target: https://readthedocs.org/projects/cirq/versions/
    :alt: Documentation Status


Installation and Documentation
------------------------------

Cirq documentation is available at `cirq.readthedocs.io <https://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 <https://cirq.readthedocs.io/en/latest/>`_.

Documentation for the latest **stable** version of cirq (what you get if you ``pip install cirq``) is available at `cirq.readthedocs.io/stable <https://cirq.readthedocs.io/en/stable/>`_.


- `Installation <https://cirq.readthedocs.io/en/stable/docs/install.html>`_
- `Documentation <https://cirq.readthedocs.io>`_
- `Tutorial <https://cirq.readthedocs.io/en/stable/docs/tutorials/basics.html>`_

For the latest news regarding Cirq, sign up to the `Cirq-announce email list <https://groups.google.com/forum/#!forum/cirq-announce>`__!


Hello Qubit
-----------

A simple example to get you up and running:

.. code-block:: python

  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:

.. code-block::

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


Feature requests / Bugs / Questions
-----------------------------------

If you have feature requests or you found a bug, please `file them on Github <https://github.com/quantumlib/Cirq/issues/new/choose>`__.

For questions about how to use Cirq post to
`Quantum Computing Stack Exchange <https://quantumcomputing.stackexchange.com/>`__ with the
`cirq <https://quantumcomputing.stackexchange.com/questions/tagged/cirq>`__ tag.

How to cite Cirq
----------------

Cirq is uploaded to Zenodo automatically. Click on the badge below to see all the citation formats for all versions.

.. image:: https://zenodo.org/badge/DOI/10.5281/zenodo.4062499.svg
  :target: https://doi.org/10.5281/zenodo.4062499
  :alt: DOI

An equivalent BibTex format reference is below for all the versions:

.. code-block::

    @software{quantum_ai_team_and_collaborators_2020_4062499,
      author       = {Quantum AI team and collaborators},
      title        = {Cirq},
      month        = Oct,
      year         = 2020,
      publisher    = {Zenodo},
      doi          = {10.5281/zenodo.4062499},
      url          = {https://doi.org/10.5281/zenodo.4062499}
    }


Cirq Contributors Community
---------------------------

We welcome contributions! Before opening your first PR, a good place to start is to read our
`guidelines <https://github.com/quantumlib/cirq/blob/master/CONTRIBUTING.md>`__.

We are dedicated to cultivating an open and inclusive community to build software for near term quantum computers.
Please read our `code of conduct <https://github.com/quantumlib/cirq/blob/master/CODE_OF_CONDUCT.md>`__ for the rules of engagement within our community.

For real time informal discussions about Cirq, join our `cirqdev <https://gitter.im/cirqdev>`__ Gitter channel, come hangout with us!

**Cirq Cynque** is our weekly meeting for contributors to discuss upcoming features, designs, issues, community and status of different efforts.
To get an invitation please join the `cirq-dev email list <https://groups.google.com/forum/#!forum/cirq-dev>`__ which also serves as yet another platform to discuss contributions and design ideas.


See Also
--------

For those interested in using quantum computers to solve problems in
chemistry and materials science, we encourage exploring
`OpenFermion <https://github.com/quantumlib/openfermion>`__ and
its sister library for compiling quantum simulation algorithms in Cirq,
`OpenFermion-Cirq <https://github.com/quantumlib/openfermion-cirq>`__.

For machine learning enthusiasts, `Tensorflow Quantum <https://github.com/tensorflow/quantum>`__ is a great project to check out!

For a powerful quantum circuit simulator that integrates well with Cirq, we recommend looking at `qsim <https://github.com/quantumlib/qsim>`__.

Finally, `ReCirq <https://github.com/quantumlib/ReCirq>`__ contains real world experiments using Cirq.


Alpha Disclaimer
----------------

**Cirq is currently in alpha.**
We may change or remove parts of Cirq's API when making new releases.
To be informed of deprecations and breaking changes, subscribe to the
`cirq-announce google group mailing list <https://groups.google.com/forum/#!forum/cirq-announce>`__.


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