Skip to content

Commit

Permalink
Tiny follow up to #12983 (#12999)
Browse files Browse the repository at this point in the history
* tiny follow up

* Update releasenotes/notes/deprecate-StochasticSwap-451f46b273602b7b.yaml

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>
  • Loading branch information
Cryoris and ElePT authored Aug 20, 2024
1 parent aa09a02 commit b90c7a7
Show file tree
Hide file tree
Showing 2 changed files with 33 additions and 29 deletions.
4 changes: 2 additions & 2 deletions qiskit/transpiler/passes/routing/stochastic_swap.py
Original file line number Diff line number Diff line change
Expand Up @@ -63,8 +63,8 @@ class StochasticSwap(TransformationPass):
@deprecate_func(
since="1.3",
removal_timeline="in the 2.0 release",
additional_msg="The `StochasticSwap` transpilation pass is a suboptimal "
"routing algorithm and has been superseded by the :class:`.SabreSwap` pass.",
additional_msg="The StochasticSwap transpilation pass is a suboptimal "
"routing algorithm and has been superseded by the SabreSwap pass.",
)
def __init__(self, coupling_map, trials=20, seed=None, fake_run=False, initial_layout=None):
"""StochasticSwap initializer.
Expand Down
58 changes: 31 additions & 27 deletions releasenotes/notes/deprecate-StochasticSwap-451f46b273602b7b.yaml
Original file line number Diff line number Diff line change
@@ -1,45 +1,49 @@
---
deprecations_transpiler:
- |
Deprecated ``StochasticSwap`` which has been superseded by :class:`.SabreSwap`.
Deprecated :class:`.StochasticSwap` which has been superseded by :class:`.SabreSwap`.
If the class is called from the transpile function, the change would be, for example::
from qiskit import transpile
from qiskit.circuit import QuantumCircuit
from qiskit.transpiler import CouplingMap
from qiskit.providers.fake_provider import GenericBackendV2
qc = QuantumCircuit(4)
qc.h(0)
qc.cx(0, range(1, 4))
qc.measure_all()
cmap = CouplingMap.from_heavy_hex(3)
backend = GenericBackendV2(num_qubits=cmap.size(), coupling_map=cmap)
tqc = transpile(
circuit,
routing_method="stochastic",
layout_method="dense",
seed_transpiler=12342,
target=GenericBackendV2(
num_qubits=27,
coupling_map=MUMBAI_CMAP,
).target,
)
qc,
routing_method="stochastic",
layout_method="dense",
seed_transpiler=12342,
target=backend.target
)
to::
tqc = transpile(
circuit,
routing_method="sabre",
layout_method="sabre",
seed_transpiler=12342,
target=GenericBackendV2(
num_qubits=27,
coupling_map=MUMBAI_CMAP,
).target,
)
While for a pass mananager change::
qr = QuantumRegister(4, "q")
qc = QuantumCircuit(qr)
qc,
routing_method="sabre",
layout_method="sabre",
seed_transpiler=12342,
target=backend.target
)
While for a pass manager, the change would be::
passmanager = PassManager(StochasticSwap(coupling, 20, 13))
new_qc = passmanager.run(qc)
to::
qr = QuantumRegister(5, "q")
qc = QuantumCircuit(qr)
passmanager = PassManager(SabreSwap(target, "basic"))
passmanager = PassManager(SabreSwap(backend.target, "basic"))
new_qc = passmanager.run(qc)
Expand Down

0 comments on commit b90c7a7

Please sign in to comment.