You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
* Put yourself in `black`s shoes and look at the readme
* Apply suggestions from code review
Co-authored-by: Elena Peña Tapia <57907331+ElePT@users.noreply.github.com>
---------
Co-authored-by: Elena Peña Tapia <57907331+ElePT@users.noreply.github.com>
(cherry picked from commit 39db0c7)
Co-authored-by: Julien Gacon <jules.gacon@googlemail.com>
Copy file name to clipboardexpand all lines: README.md
+15-15
Original file line number
Diff line number
Diff line change
@@ -40,30 +40,30 @@ To install from source, follow the instructions in the [documentation](https://d
40
40
Now that Qiskit is installed, it's time to begin working with Qiskit. The essential parts of a quantum program are:
41
41
1. Define and build a quantum circuit that represents the quantum state
42
42
2. Define the classical output by measurements or a set of observable operators
43
-
3. Depending on the output, use the primitive function `sampler`to sample outcomes or the `estimator`to estimate values.
43
+
3. Depending on the output, use the Sampler primitive to sample outcomes or the Estimator primitive to estimate expectation values.
44
44
45
45
Create an example quantum circuit using the `QuantumCircuit` class:
46
46
47
47
```python
48
48
import numpy as np
49
49
from qiskit import QuantumCircuit
50
50
51
-
# 1. A quantum circuit for preparing the quantum state |000> + i |111>
52
-
qc_example= QuantumCircuit(3)
53
-
qc_example.h(0) # generate superpostion
54
-
qc_example.p(np.pi/2,0) # add quantum phase
55
-
qc_example.cx(0,1)# 0th-qubit-Controlled-NOT gate on 1st qubit
56
-
qc_example.cx(0,2)# 0th-qubit-Controlled-NOT gate on 2nd qubit
51
+
# 1. A quantum circuit for preparing the quantum state |000> + i |111> / √2
52
+
qc= QuantumCircuit(3)
53
+
qc.h(0) # generate superposition
54
+
qc.p(np.pi/2, 0) # add quantum phase
55
+
qc.cx(0,1) # 0th-qubit-Controlled-NOT gate on 1st qubit
56
+
qc.cx(0,2) # 0th-qubit-Controlled-NOT gate on 2nd qubit
57
57
```
58
58
59
-
This simple example makes an entangled state known as a [GHZ state](https://en.wikipedia.org/wiki/Greenberger%E2%80%93Horne%E2%80%93Zeilinger_state) $(|000\rangle + i|111\rangle)/\sqrt{2}$. It uses the standard quantum gates: Hadamard gate (`h`), Phase gate (`p`), and CNOT gate (`cx`).
59
+
This simple example creates an entangled state known as a [GHZ state](https://en.wikipedia.org/wiki/Greenberger%E2%80%93Horne%E2%80%93Zeilinger_state) $(|000\rangle + i|111\rangle)/\sqrt{2}$. It uses the standard quantum gates: Hadamard gate (`h`), Phase gate (`p`), and CNOT gate (`cx`).
60
60
61
-
Once you've made your first quantum circuit, choose which primitive function you will use. Starting with `sampler`,
61
+
Once you've made your first quantum circuit, choose which primitive you will use. Starting with the Sampler,
62
62
we use `measure_all(inplace=False)` to get a copy of the circuit in which all the qubits are measured:
63
63
64
64
```python
65
65
# 2. Add the classical output in the form of measurement of all qubits
Running this will give an outcome similar to `{'000': 497, '111': 503}` which is `000` 50% of the time and `111` 50% of the time up to statistical fluctuations.
76
-
To illustrate the power of Estimator, we now use the quantum information toolbox to create the operator $XXY+XYX+YXX-YYY$ and pass it to the `run()` function, along with our quantum circuit. Note the Estimator requires a circuit _**without**_measurement, so we use the `qc_example` circuit we created earlier.
76
+
To illustrate the power of the Estimator, we now use the quantum information toolbox to create the operator $XXY+XYX+YXX-YYY$ and pass it to the `run()` function, along with our quantum circuit. Note that the Estimator requires a circuit _**without**_measurements, so we use the `qc` circuit we created earlier.
@@ -96,17 +96,17 @@ The power of quantum computing cannot be simulated on classical computers and yo
96
96
However, running a quantum circuit on hardware requires rewriting to the basis gates and connectivity of the quantum hardware.
97
97
The tool that does this is the [transpiler](https://docs.quantum.ibm.com/api/qiskit/transpiler), and Qiskit includes transpiler passes for synthesis, optimization, mapping, and scheduling.
98
98
However, it also includes a default compiler, which works very well in most examples.
99
-
The following code will map the example circuit to the `basis_gates = ['cz', 'sx', 'rz']` and a linear chain of qubits $0 \rightarrow 1 \rightarrow 2$ with the `coupling_map =[[0, 1], [1, 2]]`.
99
+
The following code will map the example circuit to the `basis_gates = ["cz", "sx", "rz"]` and a linear chain of qubits $0 \rightarrow 1 \rightarrow 2$ with the `coupling_map =[[0, 1], [1, 2]]`.
Qiskit provides an abstraction layer that lets users run quantum circuits on hardware from any vendor that provides a compatible interface.
109
-
The best way to use Qiskit is with a runtime environment that provides optimized implementations of `sampler` and `estimator` for a given hardware platform. This runtime may involve using pre- and post-processing, such as optimized transpiler passes with error suppression, error mitigation, and, eventually, error correction built in. A runtime implements `qiskit.primitives.BaseSamplerV2` and `qiskit.primitives.BaseEstimatorV2` interfaces. For example,
109
+
The best way to use Qiskit is with a runtime environment that provides optimized implementations of Sampler and Estimator for a given hardware platform. This runtime may involve using pre- and post-processing, such as optimized transpiler passes with error suppression, error mitigation, and, eventually, error correction built in. A runtime implements `qiskit.primitives.BaseSamplerV2` and `qiskit.primitives.BaseEstimatorV2` interfaces. For example,
110
110
some packages that provide implementations of a runtime primitive implementation are:
0 commit comments