Skip to content
This repository was archived by the owner on Aug 21, 2023. It is now read-only.

Commit b5781b8

Browse files
authored
Merge branch 'master' into discriminator_tutorial
2 parents 4b19ac4 + 09ea113 commit b5781b8

17 files changed

Lines changed: 310 additions & 659 deletions

qiskit/advanced/aer/1_aer_provider.ipynb

Lines changed: 13 additions & 11 deletions
Large diffs are not rendered by default.

qiskit/advanced/aer/2_device_noise_simulation.ipynb

Lines changed: 204 additions & 539 deletions
Large diffs are not rendered by default.

qiskit/advanced/aer/3_building_noise_models.ipynb

Lines changed: 20 additions & 26 deletions
Large diffs are not rendered by default.

qiskit/advanced/aer/4_custom_gate_noise.ipynb

Lines changed: 30 additions & 30 deletions
Large diffs are not rendered by default.

qiskit/advanced/aer/5_noise_transformation.ipynb

Lines changed: 20 additions & 30 deletions
Original file line numberDiff line numberDiff line change
@@ -27,11 +27,11 @@
2727
"source": [
2828
"## Introduction\n",
2929
"\n",
30-
"This notebook shows how to use the Qiskit Aer `noise.utils.approximate_quantum_error` and `noise.utils. approximate_noise_model` to transform quantum noise channels into a different, more suitable, noise channel.\n",
30+
"This notebook shows how to use the Qiskit Aer utility functions `approximate_quantum_error` and `approximate_noise_model` to transform quantum noise channels into a different, more suitable, noise channel.\n",
3131
"\n",
3232
"Our guiding example is Clifford simulation. A Clifford simulator can efficiently simulate quantum computations which include gates only from a limited, non-universal set of gates (the Clifford gates). Not all quantum noises can be added to such simulations; hence, we aim to find a \"close\" noise channel which can be simulated in a Clifford simulator.\n",
3333
"\n",
34-
"We begin by importing the transformation functions."
34+
"We begin by importing the transformation functions from the Aer provider utilities"
3535
]
3636
},
3737
{
@@ -45,8 +45,8 @@
4545
},
4646
"outputs": [],
4747
"source": [
48-
"from qiskit.providers.aer.noise.utils import approximate_quantum_error\n",
49-
"from qiskit.providers.aer.noise.utils import approximate_noise_model"
48+
"from qiskit.providers.aer.utils import approximate_quantum_error\n",
49+
"from qiskit.providers.aer.utils import approximate_noise_model"
5050
]
5151
},
5252
{
@@ -69,23 +69,12 @@
6969
},
7070
"outputs": [],
7171
"source": [
72-
"from qiskit.providers.aer.noise.errors.standard_errors import amplitude_damping_error\n",
73-
"from qiskit.providers.aer.noise.errors.standard_errors import reset_error\n",
74-
"from qiskit.providers.aer.noise.errors.standard_errors import pauli_error"
75-
]
76-
},
77-
{
78-
"cell_type": "code",
79-
"execution_count": 3,
80-
"metadata": {
81-
"ExecuteTime": {
82-
"end_time": "2019-08-19T17:13:36.691234Z",
83-
"start_time": "2019-08-19T17:13:36.688533Z"
84-
}
85-
},
86-
"outputs": [],
87-
"source": [
88-
"import numpy as np"
72+
"import numpy as np\n",
73+
"\n",
74+
"# Import Aer QuantumError functions that will be used\n",
75+
"from qiskit.providers.aer.noise import amplitude_damping_error\n",
76+
"from qiskit.providers.aer.noise import reset_error\n",
77+
"from qiskit.providers.aer.noise import pauli_error"
8978
]
9079
},
9180
{
@@ -98,7 +87,7 @@
9887
"\n",
9988
"Given quantum channels $\\mathcal{E}_{1},\\dots,\\mathcal{E}_{r}$, and probabilities $p_1, p_2, \\dots, p_r$ such that $0\\le p_i \\le 1$ and $p_1+\\dots +p_r = 1$, a new quantum channel $\\mathcal{C}_\\mathcal{E}$ can be constructed such that $\\mathcal{C}_\\mathcal{E}(\\rho)$ has the effect of choosing the channel $\\mathcal{E}_i$ with probability $p_i$ and applying it to $\\rho$.\n",
10089
"\n",
101-
"The noise transformation module solves the following optimization problem: Given a channel $\\mathcal{C}$ (\"goal\") and a list of channels $\\mathcal{E}_{1},\\dots,\\mathcal{E}_{r}$, find the probabilities $p_1, p_2, \\dots, p_r$ minimizing $D(\\mathcal{C}, \\mathcal{C}_\\mathcal{E})$ according to some distance metric $D$ (the Hilbert-Schmidt metric is currently used).\n",
90+
"The noise transformation function solves the following optimization problem: Given a channel $\\mathcal{C}$ (\"goal\") and a list of channels $\\mathcal{E}_{1},\\dots,\\mathcal{E}_{r}$, find the probabilities $p_1, p_2, \\dots, p_r$ minimizing $D(\\mathcal{C}, \\mathcal{C}_\\mathcal{E})$ according to some distance metric $D$ (the Hilbert-Schmidt metric is currently used).\n",
10291
"\n",
10392
"To ensure the approximation is honest, in the sense that the approximate error channel serves as an \"upper bound\" for the actual error channel, we add the additional honesty constraint:\n",
10493
"\n",
@@ -148,7 +137,7 @@
148137
},
149138
{
150139
"cell_type": "code",
151-
"execution_count": 4,
140+
"execution_count": 3,
152141
"metadata": {
153142
"ExecuteTime": {
154143
"end_time": "2019-08-19T17:13:36.791986Z",
@@ -171,7 +160,7 @@
171160
},
172161
{
173162
"cell_type": "code",
174-
"execution_count": 5,
163+
"execution_count": 4,
175164
"metadata": {
176165
"ExecuteTime": {
177166
"end_time": "2019-08-19T17:13:36.812282Z",
@@ -224,7 +213,7 @@
224213
},
225214
{
226215
"cell_type": "code",
227-
"execution_count": 6,
216+
"execution_count": 5,
228217
"metadata": {
229218
"ExecuteTime": {
230219
"end_time": "2019-08-19T17:13:37.367331Z",
@@ -265,7 +254,7 @@
265254
},
266255
{
267256
"cell_type": "code",
268-
"execution_count": 7,
257+
"execution_count": 6,
269258
"metadata": {
270259
"ExecuteTime": {
271260
"end_time": "2019-08-19T17:13:38.083970Z",
@@ -307,7 +296,7 @@
307296
},
308297
{
309298
"cell_type": "code",
310-
"execution_count": 8,
299+
"execution_count": 7,
311300
"metadata": {
312301
"ExecuteTime": {
313302
"end_time": "2019-08-19T17:13:57.085790Z",
@@ -318,7 +307,8 @@
318307
{
319308
"data": {
320309
"text/html": [
321-
"<h3>Version Information</h3><table><tr><th>Qiskit Software</th><th>Version</th></tr><tr><td>Qiskit</td><td>0.14.0</td></tr><tr><td>Terra</td><td>0.11.0</td></tr><tr><td>Aer</td><td>0.3.4</td></tr><tr><td>Ignis</td><td>0.2.0</td></tr><tr><td>Aqua</td><td>0.6.1</td></tr><tr><td>IBM Q Provider</td><td>0.4.4</td></tr><tr><th>System information</th></tr><tr><td>Python</td><td>3.7.4 (default, Aug 9 2019, 18:34:13) [MSC v.1915 64 bit (AMD64)]</td></tr><tr><td>OS</td><td>Windows</td></tr><tr><td>CPUs</td><td>2</td></tr><tr><td>Memory (Gb)</td><td>7.9987335205078125</td></tr><tr><td colspan='2'>Tue Dec 10 15:59:30 2019 Eastern Standard Time</td></tr></table>"
310+
"<h3>Version Information</h3><table><tr><th>Qiskit Software</th><th>Version</th></tr><tr><td>Qiskit</td><td>None</td></tr><tr><td>Terra</td><td>0.12.0.dev0+c028a28</td></tr><tr><td>Aer</td><td>0.4.0</td></tr><tr><td>Ignis</td><td>0.3.0.dev0+829207f</td></tr><tr><td>Aqua</td><td>0.7.0.dev0+2776c5d</td></tr><tr><td>IBM Q Provider</td><td>0.4.6rc1</td></tr><tr><th>System information</th></tr><tr><td>Python</td><td>3.7.3 | packaged by conda-forge | (default, Jul 1 2019, 14:38:56) \n",
311+
"[Clang 4.0.1 (tags/RELEASE_401/final)]</td></tr><tr><td>OS</td><td>Darwin</td></tr><tr><td>CPUs</td><td>6</td></tr><tr><td>Memory (Gb)</td><td>32.0</td></tr><tr><td colspan='2'>Wed Feb 05 11:32:35 2020 EST</td></tr></table>"
322312
],
323313
"text/plain": [
324314
"<IPython.core.display.HTML object>"
@@ -330,7 +320,7 @@
330320
{
331321
"data": {
332322
"text/html": [
333-
"<div style='width: 100%; background-color:#d5d9e0;padding-left: 10px; padding-bottom: 10px; padding-right: 10px; padding-top: 5px'><h3>This code is a part of Qiskit</h3><p>&copy; Copyright IBM 2017, 2019.</p><p>This code is licensed under the Apache License, Version 2.0. You may<br>obtain a copy of this license in the LICENSE.txt file in the root directory<br> of this source tree or at http://www.apache.org/licenses/LICENSE-2.0.<p>Any modifications or derivative works of this code must retain this<br>copyright notice, and modified files need to carry a notice indicating<br>that they have been altered from the originals.</p></div>"
323+
"<div style='width: 100%; background-color:#d5d9e0;padding-left: 10px; padding-bottom: 10px; padding-right: 10px; padding-top: 5px'><h3>This code is a part of Qiskit</h3><p>&copy; Copyright IBM 2017, 2020.</p><p>This code is licensed under the Apache License, Version 2.0. You may<br>obtain a copy of this license in the LICENSE.txt file in the root directory<br> of this source tree or at http://www.apache.org/licenses/LICENSE-2.0.<p>Any modifications or derivative works of this code must retain this<br>copyright notice, and modified files need to carry a notice indicating<br>that they have been altered from the originals.</p></div>"
334324
],
335325
"text/plain": [
336326
"<IPython.core.display.HTML object>"
@@ -370,7 +360,7 @@
370360
"name": "python",
371361
"nbconvert_exporter": "python",
372362
"pygments_lexer": "ipython3",
373-
"version": "3.7.4"
363+
"version": "3.7.5"
374364
},
375365
"varInspector": {
376366
"cols": {

qiskit/advanced/aqua/chemistry/dissociation_profile_of_molecule.ipynb

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -33,7 +33,7 @@
3333
"source": [
3434
"### Introduction\n",
3535
"\n",
36-
"One of the most compelling possibilities of quantum computation is the the simulation of other quantum systems. Quantum simulation of quantum systems encompasses a wide range of tasks, including most significantly:\n",
36+
"One of the most compelling possibilities of quantum computation is the simulation of other quantum systems. Quantum simulation of quantum systems encompasses a wide range of tasks, including most significantly:\n",
3737
" \n",
3838
"1. Simulation of the time evolution of quantum systems.\n",
3939
"\n",

qiskit/advanced/aqua/linear_systems_of_equations.ipynb

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -359,7 +359,7 @@
359359
"cell_type": "markdown",
360360
"metadata": {},
361361
"source": [
362-
"Compared to the the first example, the circuit depth is increased approximately by a factor of 6"
362+
"Compared to the first example, the circuit depth is increased approximately by a factor of 6"
363363
]
364364
},
365365
{

qiskit/advanced/ignis/1b_calibrating_a_two_qubit_gate.ipynb

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -20,7 +20,7 @@
2020
}
2121
},
2222
"source": [
23-
"# Calibrating a two qubit gate"
23+
"# Calibrating a two-qubit gate"
2424
]
2525
},
2626
{

qiskit/advanced/ignis/5a_randomized_benchmarking.ipynb

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -628,7 +628,7 @@
628628
"cell_type": "markdown",
629629
"metadata": {},
630630
"source": [
631-
"The **two qubit Clifford gate error** gives measured errors in the basis gates that were used to construct the Clifford. \n",
631+
"The **two-qubit Clifford gate error** gives measured errors in the basis gates that were used to construct the Clifford. \n",
632632
"It assumes that the error in the underlying gates is depolarizing. It outputs the error per a 2-qubit Clifford.\n",
633633
"\n",
634634
"The input to this function is:\n",
@@ -800,7 +800,7 @@
800800
"cell_type": "markdown",
801801
"metadata": {},
802802
"source": [
803-
"We count again the number of **gates per Clifford** as before, and calculate the **two qubit Clifford gate error**, using the predicted primitive gate errors from the coherence limit."
803+
"We count again the number of **gates per Clifford** as before, and calculate the **two-qubit Clifford gate error**, using the predicted primitive gate errors from the coherence limit."
804804
]
805805
},
806806
{

qiskit/advanced/ignis/6a_state_tomography.ipynb

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -463,7 +463,7 @@
463463
"cell_type": "markdown",
464464
"metadata": {},
465465
"source": [
466-
"In this example, we have a three qubit system where one of the qubits will be an ancilla for performing state tomography, i.e. only perform tomography when the third qubit is in the state \"1\". The circuit is setup in such a way that after conditional tomography we will get a Bell state on the first two qubits.\n",
466+
"In this example, we have a three-qubit system where one of the qubits will be an ancilla for performing state tomography, i.e. only perform tomography when the third qubit is in the state \"1\". The circuit is setup in such a way that after conditional tomography we will get a Bell state on the first two qubits.\n",
467467
"\n",
468468
"First make a 3Q GHZ state with no classical measurements."
469469
]

0 commit comments

Comments
 (0)