diff --git a/docs/dev/development.md b/docs/dev/development.md index c1d68ac1964..3c8695be013 100644 --- a/docs/dev/development.md +++ b/docs/dev/development.md @@ -156,7 +156,7 @@ get picked up! ## Protocol buffers [Protocol buffers](https://developers.google.com/protocol-buffers) are used in Cirq for converting circuits, gates, and other objects into a standard form that can be written and read by other programs. -Cirq's protobufs live at [cirq/api/google](https://github.com/quantumlib/Cirq/tree/master/cirq/api/google) and may need to be changed or extended from time to time. +Cirq's protobufs live at [cirq-google/api/v2](https://github.com/quantumlib/Cirq/tree/master/cirq-google/cirq_google/api/v2) and may need to be changed or extended from time to time. If any protos are updated, their dependents can be rebuilt by calling the script [dev_tools/build-protos.sh](https://github.com/quantumlib/Cirq/tree/master/dev_tools). This script uses grpcio-tools and protobuf version 3.8.0 to generate the python proto api. @@ -340,7 +340,7 @@ python dev_tools/requirements/reqs.py dev_tools/requirements/dev.env.txt ./dev_tools/packaging/publish-dev-package.sh EXPECTED_VERSION --test ``` - You must specify the EXPECTED_VERSION argument to match the version in `cirq/_version.py`, and it must contain the string `dev`. + You must specify the EXPECTED_VERSION argument to match the version in [cirq/_version.py](https://github.com/quantumlib/Cirq/blob/master/cirq-core/cirq/_version.py), and it must contain the string `dev`. This is to prevent accidentally uploading the wrong version. The script will append the current date and time to the expected version number before uploading to test pypi. @@ -373,7 +373,7 @@ python dev_tools/requirements/reqs.py dev_tools/requirements/dev.env.txt If everything goes smoothly, the script will finish by printing `VERIFIED`. -3. Set the version number in [cirq/_version.py](https://github.com/quantumlib/Cirq/blob/master/cirq/_version.py). +3. Set the version number in [cirq/_version.py](https://github.com/quantumlib/Cirq/blob/master/cirq-core/cirq/_version.py). Development versions end with `.dev` or `.dev#`. For example, `0.0.4.dev500` is a development version of the release version `0.0.4`. diff --git a/docs/dev/rfc_process.md b/docs/dev/rfc_process.md index 855d45461a7..792c1cda959 100644 --- a/docs/dev/rfc_process.md +++ b/docs/dev/rfc_process.md @@ -92,7 +92,7 @@ If you are working on new code to implement an RFC: * Follow any other guidelines laid out in the [CONTRIBUTING.md](https://github.com/quantumlib/Cirq/blob/master/CONTRIBUTING.md) file in the project repo you're contributing to. * Run unit tests before submitting your code. * Work with the RFC sponsor to successfully land the new code. This could include PR / marketing of the new feature as well. -* Follow the Cirq process of deprecating code. Please refer to [\_compat.py](https://github.com/quantumlib/Cirq/blob/master/cirq/_compat.py) as an example. +* Follow the Cirq process of deprecating code. Please refer to [\_compat.py](https://github.com/quantumlib/Cirq/blob/master/cirq-core/cirq/_compat.py) as an example. ## Keeping the bar high diff --git a/docs/dev/style.md b/docs/dev/style.md index 5bedee38e97..6ec1bd4b7c5 100644 --- a/docs/dev/style.md +++ b/docs/dev/style.md @@ -1,6 +1,6 @@ # Style guidelines -As mentioned in [CONTRIBUTING.md](https://github.com/quantumlib/Cirq/blob/master/CONTRIBUTING.md) we use use [pylint](https://www.pylint.org/) +As mentioned in [CONTRIBUTING.md](https://github.com/quantumlib/Cirq/blob/master/CONTRIBUTING.md) we use use [pylint](https://pylint.pycqa.org/) to check for style violations. Pylint attempts to enforce styles in [PEP 8](https://www.python.org/dev/peps/pep-0008/). To see which lint checks we enforce, see the [dev_tools/conf/.pylintrc](https://github.com/quantumlib/Cirq/blob/master/dev_tools/conf/.pylintrc) file. diff --git a/docs/experiments/hidden_linear_function.ipynb b/docs/experiments/hidden_linear_function.ipynb index 15697daf3bb..68341d03c61 100644 --- a/docs/experiments/hidden_linear_function.ipynb +++ b/docs/experiments/hidden_linear_function.ipynb @@ -159,7 +159,7 @@ "\n", "But for classical circuits it can be proven (see [1]) that even if we restrict matrix $A$ in the same way, the depth of classical circuit (with gates of bounded fan-in) must grow as $n$ grows (in fact, it grows as $\\log(n)$).\n", "\n", - "In terms of complexity theory, this problem is in [QNC0](https://complexityzoo.uwaterloo.ca/Complexity_Zoo:Q#qnc0), but not in [NC0](https://en.wikipedia.org/wiki/NC_(complexity)), which shows that\n", + "In terms of complexity theory, this problem is in [QNC0](https://complexityzoo.net/Complexity_Zoo:Q#qnc0), but not in [NC0](https://en.wikipedia.org/wiki/NC_(complexity)), which shows that\n", "QNC0 $\\nsubseteq$ NC0.\n" ] }, diff --git a/docs/hardware/devices.ipynb b/docs/hardware/devices.ipynb index 4aeb89af013..2629fc2ea26 100644 --- a/docs/hardware/devices.ipynb +++ b/docs/hardware/devices.ipynb @@ -48,16 +48,16 @@ "source": [ "\n", " \n", " \n", " \n", " \n", "
\n", - " View on QuantumAI\n", + " View on QuantumAI\n", " \n", - " Run in Google Colab\n", + " Run in Google Colab\n", " \n", - " View source on GitHub\n", + " View source on GitHub\n", " \n", - " Download notebook\n", + " Download notebook\n", "
" ] diff --git a/docs/hardware/ionq/getting_started.ipynb b/docs/hardware/ionq/getting_started.ipynb index 7abf73cd26f..d2c58863b13 100644 --- a/docs/hardware/ionq/getting_started.ipynb +++ b/docs/hardware/ionq/getting_started.ipynb @@ -127,7 +127,7 @@ "\n", "## Running a simple circuit\n", "\n", - "The IonQ API supports a limited set of gates natively. Circuit built with these gates do not need any modification and can be run directly against the API. For a list of the API supported gates see [circuit documentation](/cirq/hardware/ionq/circuits.md). One supported gate is the square root of not gate, which we use here in conjunction with a controlled-not gate. The following cell will run the circuit below, blocking until the program has run and results have been returned:" + "The IonQ API supports a limited set of gates natively. Circuit built with these gates do not need any modification and can be run directly against the API. For a list of the API supported gates see [circuit documentation](/cirq/hardware/ionq/circuits). One supported gate is the square root of not gate, which we use here in conjunction with a controlled-not gate. The following cell will run the circuit below, blocking until the program has run and results have been returned:" ] }, { diff --git a/docs/noise/heatmaps.ipynb b/docs/noise/heatmaps.ipynb index 89a53c865d5..85dadfac4e2 100644 --- a/docs/noise/heatmaps.ipynb +++ b/docs/noise/heatmaps.ipynb @@ -88,7 +88,7 @@ }, "source": [ "# Basic usage\n", - "Heatmaps maintain an internal state of configuration parameters based on the `kwargs` passed to the constructor, for example: `plot_colorbar=False` to hide the colorbar. For full details on the valid set of parameters, please see the [`cirq.Heatmap`](https://quantumai.google/reference/python/cirq/vis/Heatmap) reference page.\n", + "Heatmaps maintain an internal state of configuration parameters based on the `kwargs` passed to the constructor, for example: `plot_colorbar=False` to hide the colorbar. For full details on the valid set of parameters, please see the `cirq.Heatmap` reference page.\n", "\n", "The internal state can also be updated after construction by passing a valid set of `kwargs` to `heatmap.update_config(**kwargs)`." ] diff --git a/docs/start/intro.ipynb b/docs/start/intro.ipynb index 7aa606a2c94..121021853a8 100644 --- a/docs/start/intro.ipynb +++ b/docs/start/intro.ipynb @@ -947,7 +947,7 @@ "\n", "The very first indication that quantum computers could be more powerful than classical computers was provided by David Deutsch in his 1985 paper\n", "\n", - "> David Deutsch, \"[Quantum Theory, the Church-Turing Principle and the Universal Quantum Computer](https://people.eecs.berkeley.edu/~christos/classics/Deutsch_quantum_theory.pdf)\" *Proc. R. Soc. Lond.* A **400** 97–117. http://doi.org/10.1098/rspa.1985.0070\n", + "> David Deutsch, \"[Quantum Theory, the Church-Turing Principle and the Universal Quantum Computer](https://www.daviddeutsch.org.uk/wp-content/deutsch85.pdf)\" *Proc. R. Soc. Lond.* A **400** 97–117. http://doi.org/10.1098/rspa.1985.0070\n", "\n", "This algorithm was extended by Deutsch and Richard Jozsa to a more convincing algorithmic seperation and what is now called the Deutsch-Jozsa algorithm. In this section we will show how to write circuits for the Deutsch algorithm and then as an exercise in using Cirq for algorithms for a small version of the Deutsch-Jozsa algorithm.\n", "\n", diff --git a/docs/transform/custom_transformers.ipynb b/docs/transform/custom_transformers.ipynb index a95c8a9a099..39bdf61941e 100644 --- a/docs/transform/custom_transformers.ipynb +++ b/docs/transform/custom_transformers.ipynb @@ -49,7 +49,7 @@ " Run in Google Colab\n", " \n", " \n", - " View source on GitHub\n", + " View source on GitHub\n", " \n", " \n", " Download notebook\n", diff --git a/docs/transform/transformers.ipynb b/docs/transform/transformers.ipynb index eeee14959e6..6449bc89b63 100644 --- a/docs/transform/transformers.ipynb +++ b/docs/transform/transformers.ipynb @@ -115,7 +115,7 @@ }, "source": [ "## Overview\n", - "Transformers that come with cirq can be found in the `cirq.transformers` package.\n", + "Transformers that come with cirq can be found in the [`/cirq/transformers`](https://github.com/quantumlib/Cirq/tree/master/cirq-core/cirq/transformers) package.\n", "\n", "A few notable examples are:\n", "* **`cirq.align_left` / `cirq.align_right`**: Align gates to the left/right of the circuit by sliding them as far as possible along each qubit in the chosen direction.\n", @@ -392,7 +392,7 @@ "# Summary\n", "Cirq provides a plethora of built-in transformers which can be composed together into useful abstractions, like `cirq.CompilationTargetGateset`, which in-turn can be serialized and can be used as a parameter in larger compilation pipelines and experiment workflows. \n", "\n", - "Try using these transformers to compile your circuits and refer to the API reference docs of [`cirq.transformers`](https://quantumai.google/reference/python/cirq/transformers) for more details. " + "Try using these transformers to compile your circuits and refer to the API reference docs of `cirq.TRANSFORMER` for more details. " ] } ], diff --git a/docs/tutorials/google/identifying_hardware_changes.ipynb b/docs/tutorials/google/identifying_hardware_changes.ipynb index ad04d03a672..844ea9b5c12 100644 --- a/docs/tutorials/google/identifying_hardware_changes.ipynb +++ b/docs/tutorials/google/identifying_hardware_changes.ipynb @@ -70,7 +70,7 @@ "id": "2KEoj85SkMQ0" }, "source": [ - "You've run your circuit with Google's [Quantum Computing Service](/cirq/google/tutorials/start.ipynb) and you're getting results that unexpectedly differ from those you saw when you ran your experiment last week. What's the cause of this and what can you do about it? \n", + "You've run your circuit with Google's [Quantum Computing Service](/cirq/tutorials/google/start) and you're getting results that unexpectedly differ from those you saw when you ran your experiment last week. What's the cause of this and what can you do about it? \n", "\n", "Your experience may be due to changes in the device that have occurred since the most recent maintenance [Calibration](/cirq/noise/calibration_faq#what_is_the_difference_between_the_user-triggered_calibrations_floquet_or_xeb_and_the_maintenance_calibration). Every few days, the QCS devices are calibrated for the highest performance across all of their available qubits and operations. However, in the hours or days since the most recent maintenance calibration, the performance of the device hardware may have changed significantly, affecting your circuit's results. \n", "\n", @@ -490,7 +490,7 @@ "source": [ "### Current Readout Metric Data with Simultaneous Readout\n", "\n", - "To evaluate performance changes in the readout registers, collect the Parallel P11 error data for each qubit with the Simultaneous Readout experiment, accessible with [`estimate_parallel_single_qubit_readout_errors`](https://quantumai.google/reference/python/cirq/experiments/estimate_single_qubit_readout_errors). This function runs the experiment to estimate P00 and P11 errors for each qubit (as opposed to querying for the most recent calibration data). The experiment prepares each qubit in the $|0\\rangle$ and $|1\\rangle$ states, measures them, and evaluates how often the qubits are measured in the expected state. " + "To evaluate performance changes in the readout registers, collect the Parallel P11 error data for each qubit with the Simultaneous Readout experiment, accessible with `cirq.estimate_parallel_single_qubit_readout_errors`. This function runs the experiment to estimate P00 and P11 errors for each qubit (as opposed to querying for the most recent calibration data). The experiment prepares each qubit in the $|0\\rangle$ and $|1\\rangle$ states, measures them, and evaluates how often the qubits are measured in the expected state. " ] }, {