From 05951b5d121a5c788629941eed895cf6e3a96042 Mon Sep 17 00:00:00 2001 From: augustehirth Date: Tue, 21 Jun 2022 13:30:27 -0700 Subject: [PATCH] Overview updates (#5567) Some small phrasing/style updates to the overview pages. --- docs/_book.yaml | 2 ++ docs/build/_index.yaml | 40 ++++++++---------------- docs/experiments/_index.yaml | 25 ++++++--------- docs/hardware/_index.yaml | 59 ++++++++++++------------------------ docs/noise/_index.yaml | 18 +++++------ docs/simulate/_index.yaml | 18 ++++------- docs/transform/_index.yaml | 10 +++--- 7 files changed, 61 insertions(+), 111 deletions(-) diff --git a/docs/_book.yaml b/docs/_book.yaml index 87b5ae52855..ba08d0ccdca 100644 --- a/docs/_book.yaml +++ b/docs/_book.yaml @@ -78,6 +78,8 @@ upper_tabs: path: /cirq/simulation - title: "Noisy Simulation" path: /cirq/noisy_simulation + - title: "Parameter Sweeps" + path: /cirq/params - title: "State Histograms" path: /cirq/tutorials/state_histograms diff --git a/docs/build/_index.yaml b/docs/build/_index.yaml index 8fd59714d98..153476d97eb 100644 --- a/docs/build/_index.yaml +++ b/docs/build/_index.yaml @@ -7,54 +7,40 @@ landing_page: - heading: Build a circuit description: At the core of Cirq is the ability to construct quantum circuits. These are the methods and data structures necessary to do so. - heading: Circuit construction - description: Read these to understand what goes into building a Cirq circuit (estimated reading time one hour). + description: The core data structures that compose a circuit and how to use them. + options: + - cards items: - heading: Circuits - description: The Circuit data structure and how to create them. + description: Quantum circuits and how to create them. path: /cirq/circuits - icon: - name: menu_book - heading: Qubits description: The quantum bit data structure. path: /cirq/qubits - icon: - name: menu_book - heading: Gates and Operations - description: Quantum Gate and Operation data structures and how they are different. + description: Quantum gates to apply to qubits in a circuit. path: /cirq/gates - icon: - name: menu_book - heading: Custom gates - description: Create your own gates to add to circuits. + description: Create your own gates with unitaries or decomposition. path: /cirq/custom_gates - icon: - name: menu_book - heading: Import/export circuits - description: How to import or export a quantum circuit into/from Cirq. + description: Importing or exporting circuits into/out of Cirq. path: /cirq/interop - icon: - name: menu_book - - heading: Advanced + - heading: Advanced construction description: More elaborate ways to build quantum circuits. + options: + - cards items: - heading: Operators - description: Operators, measurements and noise channels. + description: Unitary operators, measurements and noise channels. path: /cirq/operators - icon: - name: menu_book - heading: Qudits - description: Moving from qubits to qutrits and further. + description: Qutrits and higher dimensional quantum systems. path: /cirq/qudits - icon: - name: menu_book - heading: Protocols - description: The magic methods supported by Cirq's classes. + description: Magic methods supported by Cirq's classes. path: /cirq/protocols - icon: - name: menu_book - heading: Tools ecosystem description: External tools for circuit construction. path: /cirq/ecosystem - icon: - name: menu_book diff --git a/docs/experiments/_index.yaml b/docs/experiments/_index.yaml index 335c9bb1eb4..b106a7722e1 100644 --- a/docs/experiments/_index.yaml +++ b/docs/experiments/_index.yaml @@ -5,41 +5,36 @@ landing_page: nav: left rows: - heading: Experiments using quantum circuits - description: This is a collection of algorithms and experiments written in and using Cirq. Some are hosted in Cirq, and some are hosted in ReCirq, a repository for research performed with Cirq. + description: This is a collection of algorithms and experiments written in and using Cirq. Some are hosted in the Cirq Github repository, and some are hosted in ReCirq, a repository for research performed with Cirq. + - buttons: + - label: Cirq Github + path: https://github.com/quantumlib/Cirq + - label: ReCirq Github + path: https://github.com/quantumlib/ReCirq - heading: Algorithms in Cirq - description: Algorithms and experiments executable with only default Cirq code. + description: Algorithms and experiments executable using only default Cirq code. + options: + - cards items: - heading: Textbook Algorithms Workshop description: A workshop notebook with examples that covers algorithms commonly shown in quantum textbooks. path: /cirq/tutorials/educators/textbook_algorithms - icon: - name: menu_book - heading: Shor's Algorithm description: The famous integer factorization algorithm by Peter Shor. path: /cirq/tutorials/shor - icon: - name: menu_book - heading: Variational Quantum Eigensolver description: Compute the ground state of a Hamiltonian using the variational principle. path: /cirq/tutorials/variational_algorithm - icon: - name: menu_book - heading: Quantum Walks description: The quantum analog of a random walk algorithm. path: /cirq/tutorials/quantum_walks - icon: - name: menu_book - heading: Fourier Checking description: Demonstrate the separation between quantum and classical computers. path: /cirq/tutorials/fourier_checking - icon: - name: menu_book - heading: Hidden Linear Function problem description: Show quantum separation with a constant depth solution. path: /cirq/tutorials/hidden_linear_function - icon: - name: menu_book - heading: ReCirq Experiments - description: Research experiments that use additional library code reside in the external ReCirq repository. + description: Research experiments that use additional library code that resides in the external ReCirq repository. - include: /cirq/experiments/_index_included.yaml diff --git a/docs/hardware/_index.yaml b/docs/hardware/_index.yaml index 8afa1ca2f04..515dd7d9301 100644 --- a/docs/hardware/_index.yaml +++ b/docs/hardware/_index.yaml @@ -4,116 +4,95 @@ title: Hardware landing_page: nav: left rows: - - heading: Run circuits on quantum hardware - description: In order to run circuits on a quantum hardware device, Cirq maintains a representation of that device in software that determines if a circuit can be run on it. + - heading: Represent a quantum hardware device + description: Define the characteristics and constraints of quantum hardware devices, to support running circuits on those devices. + options: + - cards items: - heading: Devices - description: A data structure to represent the constraints a device imposes on runnable circuits. + description: Represent the constraints a device imposes on runnable circuits with the Device class. path: /cirq/devices - icon: - name: menu_book + + - heading: Run a circuit on a hardware device + description: Cirq provides interfaces for running your circuits on quantum hardware provided by many different services. - heading: AQT hardware - description: Cirq's interface with Alpine Quantum Technologies hardware + description: Cirq's interface with Alpine Quantum Technologies hardware. + options: + - cards items: - heading: Access and authentication description: How to gain access. path: /cirq/aqt/access - icon: - name: menu_book - heading: Getting started with AQT hardware description: How to run your first circuit. path: /cirq/tutorials/aqt/getting_started - icon: - name: menu_book - heading: Azure Quantum description: Cirq's interface with Microsoft Azure Quantum services. + options: + - cards items: - heading: Access and authentication description: How to gain access. path: /cirq/azure-quantum/access - icon: - name: menu_book - heading: Getting started with Honeywell on AQT hardware description: How to run your first circuit on a Honeywell device. path: /cirq/tutorials/azure-quantum/getting_started_honeywell - icon: - name: menu_book - heading: Getting started with IonQ on AQT hardware description: How to run your first circuit on an IonQ device. path: /cirq/tutorials/azure-quantum/getting_started_ionq - icon: - name: menu_book - heading: IonQ hardware description: Cirq's interface with IonQ hardware. + options: + - cards items: - heading: Access and authentication description: How to gain access. path: /cirq/ionq/access - icon: - name: menu_book - heading: Getting started with IonQ hardware description: How to run your first circuit. path: /cirq/tutorials/ionq/getting_started - icon: - name: menu_book - heading: IonQ API Service description: Using the IonQ API. path: /cirq/ionq/service - icon: - name: menu_book - heading: IonQ API circuits description: Writing circuits for the IonQ API. path: /cirq/ionq/circuits - icon: - name: menu_book - heading: Running IonQ API jobs description: How to run jobs with the IonQ API. path: /cirq/ionq/jobs - icon: - name: menu_book - heading: IonQ API calibrations description: How to get hardware device calibration data through the IonQ API. path: /cirq/ionq/calibrations - icon: - name: menu_book - heading: Pasqal hardware description: Cirq's interface with Pasqal hardware. + options: + - cards items: - heading: Access and authentication description: How to gain access. path: /cirq/pasqal/access - icon: - name: menu_book - heading: Getting started with Pasqal hardware description: How to run your first circuit. path: /cirq/tutorials/pasqal/getting_started - icon: - name: menu_book - heading: Pasqal devices description: Device objects to specify Pasqal hardware. path: /cirq/pasqal/devices - icon: - name: menu_book - heading: Pasqal sampler description: Sampler objects to run on Pasqal hardware. path: /cirq/pasqal/sampler - icon: - name: menu_book - heading: Rigetti hardware description: Cirq's interface with Rigetti hardware. + options: + - cards items: - heading: Access and authentication description: How to gain access. path: /cirq/rigetti/access - icon: - name: menu_book - heading: Getting started with Rigetti hardware description: How to run your first circuit. path: /cirq/tutorials/rigetti/getting_started - icon: - name: menu_book diff --git a/docs/noise/_index.yaml b/docs/noise/_index.yaml index a6127ba0340..c3311805fa7 100644 --- a/docs/noise/_index.yaml +++ b/docs/noise/_index.yaml @@ -5,30 +5,26 @@ landing_page: nav: left rows: - heading: Manage noise when running circuits - description: Running circuits on real quantum devices means dealing with the noise those devices introduce to the computation. Cirq provides different ways to managing that noise, to improve the reliability of a circuit when run on hardware. + description: Running circuits on quantum hardware devices means dealing with the noise those devices introduce to the computation. Cirq provides the following ways of managing that noise, to improve the quality of the measured results. - heading: Characterization and compensation - description: By first characterizing how much and what kinds of error a device is exhibiting, compensation can be used to improve the reliability of the next run on the device or interpret the results of a previous run more accurately. + description: Characterize the error a device is exhibiting, then compensate for that error by changing the circuit or reinterpreting the results. + options: + - cards items: - heading: Calibration FAQ description: Frequently asked questions about characterization and compensation. path: /cirq/tutorials/google/calibration_faq - icon: - name: menu_book - heading: Floquet Calibration description: A characterization method using Floquet theory. path: /cirq/tutorials/google/floquet_calibration_example - icon: - name: menu_book - heading: Cross Entropy Benchmarking (XEB) description: A characterization benchmarking method using cross entropy. path: /cirq/qcvv/xeb_theory - icon: - name: menu_book - heading: Visualizing noise description: Graphing and plotting methods for visualizing noise. + options: + - cards items: - heading: Heatmaps - description: Functions to plot noise characteristics across a device. + description: Functions to plot noise characteristics across a 2D grid device. path: /cirq/tutorials/heatmaps - icon: - name: menu_book diff --git a/docs/simulate/_index.yaml b/docs/simulate/_index.yaml index b02f24b5079..e7389c9ee2a 100644 --- a/docs/simulate/_index.yaml +++ b/docs/simulate/_index.yaml @@ -5,25 +5,19 @@ landing_page: nav: left rows: - heading: Simulate a circuit - description: Cirq provides different ways to compute the effects of a quantum circuit, by simulating a quantum computer with a classical one. + description: Compute the effects of a quantum circuit, by simulating a quantum computer with a classical one. + options: + - cards items: - heading: Exact Simulation - description: Simulate a perfect and noiseless quantum computer, as the mathematical theory intended. + description: Simulate a perfectly noiseless quantum computer. path: /cirq/simulation - icon: - name: menu_book - heading: Noisy Simulation - description: Simulate a more realistic quantum computer, subject to error and noise, which affects the accuracy of the results. + description: Simulate a more realistic quantum computer, subject to error and noise. path: /cirq/noisy_simulation - icon: - name: menu_book - heading: Parameter Sweeps - description: Parameterize circuits and execute them for multiple values of the parameters. + description: Efficiently evaluate many circuits which only differ in operation parameter values. path: /cirq/params - icon: - name: menu_book - heading: State Histograms description: Visualize the results of simulation as a histogram over basis states. path: /cirq/tutorials/state_histograms - icon: - name: menu_book diff --git a/docs/transform/_index.yaml b/docs/transform/_index.yaml index 9470d2d2be3..1d0388394c1 100644 --- a/docs/transform/_index.yaml +++ b/docs/transform/_index.yaml @@ -5,15 +5,13 @@ landing_page: nav: left rows: - heading: Transform a circuit - description: Cirq provides different ways of transforming a provided circuit, which may be necessary to prepare it to run on quantum hardware device, or to improve its reliability on a device. + description: Programmatically transform a provided circuit into another one to implement any compilation or optimization process that changes a circuit. + options: + - cards items: - heading: Circuit Transformers - description: The Transformer class to represent some process to change a supplied circuit. + description: The Transformer class and contract to represent some process that changes a supplied circuit. path: /cirq/transformers - icon: - name: menu_book - heading: Custom Transformers description: Write your own Transformer with decorators, primitives and decompositions. path: /cirq/transform/custom_transformers - icon: - name: menu_book