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
Merge remote-tracking branch 'stable/1.3' into 'stable/1.4'
With the release of Qiskit 1.3.3 the stable/1.3 branch should be
finished changing at this point. Before we prepare a 1.4.0 release we
need to make sure all the backported changes to 1.3 are included in 1.4.
This commit merges the contents of the 1.3 branch into the 1.4 branch.
The only conflicts were mainly on version numbers because the commits in
stable/1.3 including bumping the version strings on new bugfix releases.
The one real conflict was in the preset_passmanagers where some of the
constructor functions were in filter_warnings context managers and in
stable/1.3 the arguments passed to those functions changed.
This commit should be merged as a merge commit to preserve the git
history. This will require manual intervention at merge time.
Conflicts:
Cargo.lock
Cargo.toml
docs/conf.py
qiskit/VERSION.txt
qiskit/transpiler/preset_passmanagers/builtin_plugins.py
Copy file name to clipboardexpand all lines: DEPRECATION.md
+6-6
Original file line number
Diff line number
Diff line change
@@ -1,6 +1,6 @@
1
1
# Deprecation Policy
2
2
3
-
Starting from the 1.0.0 release, Qiskit follows semantic versioning, with a yearly release cycle for major releases.
3
+
Starting from the 1.0 release, Qiskit follows semantic versioning, with a yearly release cycle for major releases.
4
4
[Full details of the scheduling are hosted with the external public documentation](https://docs.quantum.ibm.com/open-source/qiskit-sdk-version-strategy).
5
5
6
6
This document is primarily intended for developers of Qiskit themselves.
@@ -150,11 +150,11 @@ and add the deprecation to that function's docstring so that it shows up in the
150
150
```python
151
151
from qiskit.utils.deprecation import deprecate_arg, deprecate_func
152
152
153
-
@deprecate_func(since="0.24.0", additional_msg="No replacement is provided.")
153
+
@deprecate_func(since="1.2", additional_msg="No replacement is provided.")
[](https://github.com/Qiskit/qiskit/releases?q=tag%3A0)
5
+
<!--[](https://github.com/Qiskit/qiskit/releases?q=tag%3A0)-->
@@ -22,9 +22,6 @@ For more details on how to use Qiskit, refer to the documentation located here:
22
22
23
23
## Installation
24
24
25
-
> [!WARNING]
26
-
> Do not try to upgrade an existing Qiskit 0.* environment to Qiskit 1.0 in-place. [Read more](https://docs.quantum.ibm.com/migration-guides/qiskit-1.0-installation).
27
-
28
25
We encourage installing Qiskit via ``pip``:
29
26
30
27
```bash
@@ -40,30 +37,30 @@ To install from source, follow the instructions in the [documentation](https://d
40
37
Now that Qiskit is installed, it's time to begin working with Qiskit. The essential parts of a quantum program are:
41
38
1. Define and build a quantum circuit that represents the quantum state
42
39
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.
40
+
3. Depending on the output, use the Sampler primitive to sample outcomes or the Estimator primitive to estimate expectation values.
44
41
45
42
Create an example quantum circuit using the `QuantumCircuit` class:
46
43
47
44
```python
48
45
import numpy as np
49
46
from qiskit import QuantumCircuit
50
47
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
48
+
# 1. A quantum circuit for preparing the quantum state |000> + i |111> / √2
49
+
qc= QuantumCircuit(3)
50
+
qc.h(0) # generate superposition
51
+
qc.p(np.pi/2, 0) # add quantum phase
52
+
qc.cx(0,1) # 0th-qubit-Controlled-NOT gate on 1st qubit
53
+
qc.cx(0,2) # 0th-qubit-Controlled-NOT gate on 2nd qubit
57
54
```
58
55
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`).
56
+
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
57
61
-
Once you've made your first quantum circuit, choose which primitive function you will use. Starting with `sampler`,
58
+
Once you've made your first quantum circuit, choose which primitive you will use. Starting with the Sampler,
62
59
we use `measure_all(inplace=False)` to get a copy of the circuit in which all the qubits are measured:
63
60
64
61
```python
65
62
# 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.
73
+
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 +93,17 @@ The power of quantum computing cannot be simulated on classical computers and yo
96
93
However, running a quantum circuit on hardware requires rewriting to the basis gates and connectivity of the quantum hardware.
97
94
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
95
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]]`.
96
+
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,
106
+
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
107
some packages that provide implementations of a runtime primitive implementation are:
111
108
112
109
*https://github.com/Qiskit/qiskit-ibm-runtime
@@ -146,9 +143,9 @@ to the project at different levels. If you use Qiskit, please cite as per the in
146
143
147
144
The changelog for a particular release is dynamically generated and gets
148
145
written to the release page on Github for each release. For example, you can
0 commit comments