List view
Assess the current level of support for classical controls in Cirq, and determine what additional functionality is needed to support adaptive quantum circuits that use mid-circuit measurements to control the application of gates later in the circuit.
No due date•1/1 issues closedUpdate and improve support of other formats. * Achieve compatibility with OpenQASM3 at an extent to be determined. * Formulate contributions to QASM support as a Google 20% project. Look for other ways to get additional help.
No due date•11/14 issues closedPerform general code/project maintenance. * Determine what vendor packages are unused and too costly to maintain. Decide if they should be deprecated or converted to independent projects. Move them out of the Cirq repository. * Improve developer tools and experience. Use ruff for fast linting and formatting. Check if we are approaching PyPI storage limits; if so, switch to a daily or weekly dev-release cadence. * Keep third_party/py/cirq and third_party/py/cirq_google modules operational and weekly-updated.
No due date•58/90 issues closedConcerns: Better control is needed over moment structure (gates to moment customization) at construction and transformation time. NISQ users perform simplifying transformations by hand rather than using Cirq circuit transformers. Currently, `cirq.merge_single_qubit_moments_to_phxz` has poor performance. Cirq also has poor scaling of transformations for larger circuits. * Identify concrete use cases where the concerns above arise. * Explore if there is a common pattern for new customizable transformers that would satisfy missing needs. * Establish what transformers need to be improved for large circuits and optimize them to meet the required throughput. * Ensure these transformers are covered by ASV benchmarks to guard against performance regressions.
No due date•5/13 issues closedConcerns: ASCII diagrams depicting quantum circuits are unwieldy and not useful for larger circuits. * Allow control over the level of detail that is rendered on ASCII diagrams (e.g., for Kraus operations). * Support slicing of circuit diagrams to selected qubits only. * Implement visualization with an ability to zoom in/out of circuit details. * Support styling by operation tags and tag regular expressions. * Support generation of publication-quality figures with QPIC.
No due date•5/17 issues closedJSON serialization is slow and the output can be very bulky. * Determine if it is worthwhile to switch to a faster third-party JSON library (helps with speed, but not size). * Explore the use of protobuf, and in particular, determine if proto size limits are sufficient for the upcoming large circuits or if a different format is needed. * If the proto format is good, implement protobuf serialization for an essential subset of JSON-serializable gates and encode the rest as proto-wrapped JSON.
No due date•5/11 issues closedRe-establish airspeed velocity (ASV) performance monitoring from the 2023 roadmap. Currently the report webpage does not work and it is not certain if ASV benchmarks are still collected. * Deliver the ASV data to a database. * Collect duration data from the pytest continuous integration (CI) runs and store them in an internal database. * Create an internal dashboard for unit tests durations to identify GitHub pull requests that introduced performance regressions or expensive tests.
No due date•0/2 issues closedCirq gets slow for circuits of ~100 qubits. Users have raised concerns about memory needs and ability to handle circuits of 500 or 1000 qubits. We still need to clarify: * What use cases are already slow at 100 qubit size? * When do we need the capability to handle circuits of 500 and 1000 qubits? * What functions and use cases need to be covered for circuits of that size?
No due date•3/9 issues closed