diff --git a/docs/api/qiskit-ibm-provider/0.10/ibm_utils.mdx b/docs/api/qiskit-ibm-provider/0.10/ibm_utils.mdx
index cdea1d340f3..18f048a2627 100644
--- a/docs/api/qiskit-ibm-provider/0.10/ibm_utils.mdx
+++ b/docs/api/qiskit-ibm-provider/0.10/ibm_utils.mdx
@@ -42,6 +42,8 @@ Utility functions related to the IBM Quantum Provider.
Message broker for the Publisher / Subscriber mechanism
+### Publisher
+
Represents a “publisher”.
@@ -51,7 +53,7 @@ Message broker for the Publisher / Subscriber mechanism
Publisher().publish("event", args, ... )
```
- ### publish
+ #### publish
Triggers an event, and associates some data to it, so if there are any subscribers, their callback will be called synchronously.
@@ -62,12 +64,14 @@ Message broker for the Publisher / Subscriber mechanism
+### Subscriber
+
Represents a “subscriber”.
Every component (class) can become a [`Subscriber`](#qiskit_ibm_provider.utils.pubsub.Subscriber "qiskit_ibm_provider.utils.pubsub.Subscriber") and subscribe to events, that will call callback functions when they are emitted.
- ### clear
+ #### clear
Unsubscribe everything
@@ -77,7 +81,7 @@ Message broker for the Publisher / Subscriber mechanism
`None`
- ### subscribe
+ #### subscribe
Subscribes to an event, associating a callback function to that event, so when the event occurs, the callback will be called.
@@ -89,7 +93,7 @@ Message broker for the Publisher / Subscriber mechanism
`bool`
- ### unsubscribe
+ #### unsubscribe
Unsubscribe a pair event-callback, so the callback will not be called anymore when the event occurs.
diff --git a/docs/api/qiskit-ibm-provider/0.9/ibm_utils.mdx b/docs/api/qiskit-ibm-provider/0.9/ibm_utils.mdx
index b976143375f..50ca1bbd6de 100644
--- a/docs/api/qiskit-ibm-provider/0.9/ibm_utils.mdx
+++ b/docs/api/qiskit-ibm-provider/0.9/ibm_utils.mdx
@@ -42,6 +42,8 @@ Utility functions related to the IBM Quantum Provider.
Message broker for the Publisher / Subscriber mechanism
+### Publisher
+
Represents a “publisher”.
@@ -51,7 +53,7 @@ Message broker for the Publisher / Subscriber mechanism
Publisher().publish("event", args, ... )
```
- ### publish
+ #### publish
Triggers an event, and associates some data to it, so if there are any subscribers, their callback will be called synchronously.
@@ -62,12 +64,14 @@ Message broker for the Publisher / Subscriber mechanism
+### Subscriber
+
Represents a “subscriber”.
Every component (class) can become a [`Subscriber`](#qiskit_ibm_provider.utils.pubsub.Subscriber "qiskit_ibm_provider.utils.pubsub.Subscriber") and subscribe to events, that will call callback functions when they are emitted.
- ### clear
+ #### clear
Unsubscribe everything
@@ -77,7 +81,7 @@ Message broker for the Publisher / Subscriber mechanism
`None`
- ### subscribe
+ #### subscribe
Subscribes to an event, associating a callback function to that event, so when the event occurs, the callback will be called.
@@ -89,7 +93,7 @@ Message broker for the Publisher / Subscriber mechanism
`bool`
- ### unsubscribe
+ #### unsubscribe
Unsubscribe a pair event-callback, so the callback will not be called anymore when the event occurs.
diff --git a/docs/api/qiskit-ibm-provider/ibm_utils.mdx b/docs/api/qiskit-ibm-provider/ibm_utils.mdx
index 5b06f281e29..b6b4a7ee814 100644
--- a/docs/api/qiskit-ibm-provider/ibm_utils.mdx
+++ b/docs/api/qiskit-ibm-provider/ibm_utils.mdx
@@ -42,6 +42,8 @@ Utility functions related to the IBM Quantum Provider.
Message broker for the Publisher / Subscriber mechanism
+### Publisher
+
Represents a “publisher”.
@@ -51,7 +53,7 @@ Message broker for the Publisher / Subscriber mechanism
Publisher().publish("event", args, ... )
```
- ### publish
+ #### publish
Triggers an event, and associates some data to it, so if there are any subscribers, their callback will be called synchronously.
@@ -62,12 +64,14 @@ Message broker for the Publisher / Subscriber mechanism
+### Subscriber
+
Represents a “subscriber”.
Every component (class) can become a [`Subscriber`](#qiskit_ibm_provider.utils.pubsub.Subscriber "qiskit_ibm_provider.utils.pubsub.Subscriber") and subscribe to events, that will call callback functions when they are emitted.
- ### clear
+ #### clear
Unsubscribe everything
@@ -77,7 +81,7 @@ Message broker for the Publisher / Subscriber mechanism
`None`
- ### subscribe
+ #### subscribe
Subscribes to an event, associating a callback function to that event, so when the event occurs, the callback will be called.
@@ -89,7 +93,7 @@ Message broker for the Publisher / Subscriber mechanism
`bool`
- ### unsubscribe
+ #### unsubscribe
Unsubscribe a pair event-callback, so the callback will not be called anymore when the event occurs.
diff --git a/docs/api/qiskit/0.19/logging.mdx b/docs/api/qiskit/0.19/logging.mdx
index 7beef88f612..b64c90589ba 100644
--- a/docs/api/qiskit/0.19/logging.mdx
+++ b/docs/api/qiskit/0.19/logging.mdx
@@ -22,6 +22,8 @@ python_api_name: qiskit.ignis.logging
| [`IgnisLogging`](qiskit.ignis.logging.IgnisLogging "qiskit.ignis.logging.IgnisLogging")() | Singleton class to configure file logging via IgnisLogger |
| [`IgnisLogReader`](qiskit.ignis.logging.IgnisLogReader "qiskit.ignis.logging.IgnisLogReader")() | Class to read from Ignis log files |
+###
+
A logger class for Ignis
diff --git a/docs/api/qiskit/0.19/qiskit.optimization.applications.ising.tsp.mdx b/docs/api/qiskit/0.19/qiskit.optimization.applications.ising.tsp.mdx
index 3758f8942b1..9b4d33d54e0 100644
--- a/docs/api/qiskit/0.19/qiskit.optimization.applications.ising.tsp.mdx
+++ b/docs/api/qiskit/0.19/qiskit.optimization.applications.ising.tsp.mdx
@@ -30,28 +30,30 @@ Convert symmetric TSP instances into Pauli list Deal with TSPLIB format. It supp
| ------------------------------------------------------------------------------------------------------------------------------------------ | --------------------------------------------------- |
| [`TspData`](#qiskit.optimization.applications.ising.tsp.TspData "qiskit.optimization.applications.ising.tsp.TspData")(name, dim, coord, w) | Create new instance of TspData(name, dim, coord, w) |
+### TspData
+
Create new instance of TspData(name, dim, coord, w)
- ### coord
+ #### coord
Alias for field number 2
- ### count
+ #### count
Return number of occurrences of value.
- ### dim
+ #### dim
Alias for field number 1
- ### index
+ #### index
Return first index of value.
@@ -59,13 +61,13 @@ Convert symmetric TSP instances into Pauli list Deal with TSPLIB format. It supp
Raises ValueError if the value is not present.
- ### name
+ #### name
Alias for field number 0
- ### w
+ #### w
Alias for field number 3
diff --git a/docs/api/qiskit/0.19/qiskit.pulse.channels.mdx b/docs/api/qiskit/0.19/qiskit.pulse.channels.mdx
index 8d495d0c22d..14cc9d23979 100644
--- a/docs/api/qiskit/0.19/qiskit.pulse.channels.mdx
+++ b/docs/api/qiskit/0.19/qiskit.pulse.channels.mdx
@@ -30,6 +30,8 @@ Novel channel types can often utilize the `ControlChannel`, but if this is not s
| [`RegisterSlot`](#qiskit.pulse.channels.RegisterSlot "qiskit.pulse.channels.RegisterSlot")(index) | Classical resister slot channels represent classical registers (low-latency classical memory). |
| [`SnapshotChannel`](#qiskit.pulse.channels.SnapshotChannel "qiskit.pulse.channels.SnapshotChannel")() | Snapshot channels are used to specify commands for simulators. |
+### AcquireChannel
+
Acquire channels are used to collect data.
@@ -43,7 +45,7 @@ Novel channel types can often utilize the `ControlChannel`, but if this is not s
[**PulseError**](qiskit.pulse.PulseError "qiskit.pulse.PulseError") – If `index` is not a nonnegative integer.
- ### index
+ #### index
Return the index of this channel. The index is a label for a control signal line typically mapped trivially to a qubit index. For instance, `DriveChannel(0)` labels the signal line driving the qubit labeled with index 0.
@@ -53,7 +55,7 @@ Novel channel types can often utilize the `ControlChannel`, but if this is not s
`int`
- ### name
+ #### name
Return the shorthand alias for this channel, which is based on its type and index.
@@ -64,6 +66,8 @@ Novel channel types can often utilize the `ControlChannel`, but if this is not s
+### Channel
+
Base class of channels. Channels provide a Qiskit-side label for typical quantum control hardware signal channels. The final label -> physical channel mapping is the responsibility of the hardware backend. For instance, `DriveChannel(0)` holds instructions which the backend should map to the signal line driving gate operations on the qubit labeled (indexed) 0.
@@ -77,7 +81,7 @@ Novel channel types can often utilize the `ControlChannel`, but if this is not s
[**PulseError**](qiskit.pulse.PulseError "qiskit.pulse.PulseError") – If `index` is not a nonnegative integer.
- ### index
+ #### index
Return the index of this channel. The index is a label for a control signal line typically mapped trivially to a qubit index. For instance, `DriveChannel(0)` labels the signal line driving the qubit labeled with index 0.
@@ -87,7 +91,7 @@ Novel channel types can often utilize the `ControlChannel`, but if this is not s
`int`
- ### name
+ #### name
Return the shorthand alias for this channel, which is based on its type and index.
@@ -97,13 +101,15 @@ Novel channel types can often utilize the `ControlChannel`, but if this is not s
`str`
- ### prefix
+ #### prefix
A shorthand string prefix for characterizing the channel type.
+### ControlChannel
+
Control channels provide supplementary control over the qubit to the drive channel. These are often associated with multi-qubit gate operations. They may not map trivially to a particular qubit index.
@@ -117,7 +123,7 @@ Novel channel types can often utilize the `ControlChannel`, but if this is not s
[**PulseError**](qiskit.pulse.PulseError "qiskit.pulse.PulseError") – If `index` is not a nonnegative integer.
- ### index
+ #### index
Return the index of this channel. The index is a label for a control signal line typically mapped trivially to a qubit index. For instance, `DriveChannel(0)` labels the signal line driving the qubit labeled with index 0.
@@ -127,7 +133,7 @@ Novel channel types can often utilize the `ControlChannel`, but if this is not s
`int`
- ### name
+ #### name
Return the shorthand alias for this channel, which is based on its type and index.
@@ -138,6 +144,8 @@ Novel channel types can often utilize the `ControlChannel`, but if this is not s
+### DriveChannel
+
Drive channels transmit signals to qubits which enact gate operations.
@@ -151,7 +159,7 @@ Novel channel types can often utilize the `ControlChannel`, but if this is not s
[**PulseError**](qiskit.pulse.PulseError "qiskit.pulse.PulseError") – If `index` is not a nonnegative integer.
- ### index
+ #### index
Return the index of this channel. The index is a label for a control signal line typically mapped trivially to a qubit index. For instance, `DriveChannel(0)` labels the signal line driving the qubit labeled with index 0.
@@ -161,7 +169,7 @@ Novel channel types can often utilize the `ControlChannel`, but if this is not s
`int`
- ### name
+ #### name
Return the shorthand alias for this channel, which is based on its type and index.
@@ -172,6 +180,8 @@ Novel channel types can often utilize the `ControlChannel`, but if this is not s
+### MeasureChannel
+
Measure channels transmit measurement stimulus pulses for readout.
@@ -185,7 +195,7 @@ Novel channel types can often utilize the `ControlChannel`, but if this is not s
[**PulseError**](qiskit.pulse.PulseError "qiskit.pulse.PulseError") – If `index` is not a nonnegative integer.
- ### index
+ #### index
Return the index of this channel. The index is a label for a control signal line typically mapped trivially to a qubit index. For instance, `DriveChannel(0)` labels the signal line driving the qubit labeled with index 0.
@@ -195,7 +205,7 @@ Novel channel types can often utilize the `ControlChannel`, but if this is not s
`int`
- ### name
+ #### name
Return the shorthand alias for this channel, which is based on its type and index.
@@ -206,6 +216,8 @@ Novel channel types can often utilize the `ControlChannel`, but if this is not s
+### MemorySlot
+
Memory slot channels represent classical memory storage.
@@ -219,7 +231,7 @@ Novel channel types can often utilize the `ControlChannel`, but if this is not s
[**PulseError**](qiskit.pulse.PulseError "qiskit.pulse.PulseError") – If `index` is not a nonnegative integer.
- ### index
+ #### index
Return the index of this channel. The index is a label for a control signal line typically mapped trivially to a qubit index. For instance, `DriveChannel(0)` labels the signal line driving the qubit labeled with index 0.
@@ -229,7 +241,7 @@ Novel channel types can often utilize the `ControlChannel`, but if this is not s
`int`
- ### name
+ #### name
Return the shorthand alias for this channel, which is based on its type and index.
@@ -240,6 +252,8 @@ Novel channel types can often utilize the `ControlChannel`, but if this is not s
+### PulseChannel
+
Base class of transmit Channels. Pulses can be played on these channels.
@@ -253,7 +267,7 @@ Novel channel types can often utilize the `ControlChannel`, but if this is not s
[**PulseError**](qiskit.pulse.PulseError "qiskit.pulse.PulseError") – If `index` is not a nonnegative integer.
- ### index
+ #### index
Return the index of this channel. The index is a label for a control signal line typically mapped trivially to a qubit index. For instance, `DriveChannel(0)` labels the signal line driving the qubit labeled with index 0.
@@ -263,7 +277,7 @@ Novel channel types can often utilize the `ControlChannel`, but if this is not s
`int`
- ### name
+ #### name
Return the shorthand alias for this channel, which is based on its type and index.
@@ -274,6 +288,8 @@ Novel channel types can often utilize the `ControlChannel`, but if this is not s
+### RegisterSlot
+
Classical resister slot channels represent classical registers (low-latency classical memory).
@@ -287,7 +303,7 @@ Novel channel types can often utilize the `ControlChannel`, but if this is not s
[**PulseError**](qiskit.pulse.PulseError "qiskit.pulse.PulseError") – If `index` is not a nonnegative integer.
- ### index
+ #### index
Return the index of this channel. The index is a label for a control signal line typically mapped trivially to a qubit index. For instance, `DriveChannel(0)` labels the signal line driving the qubit labeled with index 0.
@@ -297,7 +313,7 @@ Novel channel types can often utilize the `ControlChannel`, but if this is not s
`int`
- ### name
+ #### name
Return the shorthand alias for this channel, which is based on its type and index.
@@ -308,12 +324,14 @@ Novel channel types can often utilize the `ControlChannel`, but if this is not s
+### SnapshotChannel
+
Snapshot channels are used to specify commands for simulators.
Create new snapshot channel.
- ### index
+ #### index
Return the index of this channel. The index is a label for a control signal line typically mapped trivially to a qubit index. For instance, `DriveChannel(0)` labels the signal line driving the qubit labeled with index 0.
@@ -323,7 +341,7 @@ Novel channel types can often utilize the `ControlChannel`, but if this is not s
`int`
- ### name
+ #### name
Return the shorthand alias for this channel, which is based on its type and index.
diff --git a/docs/api/qiskit/0.19/qiskit.scheduler.methods.basic.mdx b/docs/api/qiskit/0.19/qiskit.scheduler.methods.basic.mdx
index 8b4904fad62..78c7d6f8b43 100644
--- a/docs/api/qiskit/0.19/qiskit.scheduler.methods.basic.mdx
+++ b/docs/api/qiskit/0.19/qiskit.scheduler.methods.basic.mdx
@@ -24,16 +24,18 @@ The most straightforward scheduling methods: scheduling **as early** or **as lat
| --------------------------------------------------------------------------------------------------------------------------------------- | -------------------------------------------------------- |
| [`CircuitPulseDef`](#qiskit.scheduler.methods.basic.CircuitPulseDef "qiskit.scheduler.methods.basic.CircuitPulseDef")(schedule, qubits) | Create new instance of CircuitPulseDef(schedule, qubits) |
+### CircuitPulseDef
+
Create new instance of CircuitPulseDef(schedule, qubits)
- ### count
+ #### count
Return number of occurrences of value.
- ### index
+ #### index
Return first index of value.
@@ -41,13 +43,13 @@ The most straightforward scheduling methods: scheduling **as early** or **as lat
Raises ValueError if the value is not present.
- ### qubits
+ #### qubits
Alias for field number 1
- ### schedule
+ #### schedule
Alias for field number 0
diff --git a/docs/api/qiskit/0.19/qiskit.visualization.pulse.qcstyle.mdx b/docs/api/qiskit/0.19/qiskit.visualization.pulse.qcstyle.mdx
index f8430314b39..10d98098dc6 100644
--- a/docs/api/qiskit/0.19/qiskit.visualization.pulse.qcstyle.mdx
+++ b/docs/api/qiskit/0.19/qiskit.visualization.pulse.qcstyle.mdx
@@ -17,6 +17,8 @@ Style sheets for pulse visualization.
| [`PulseStyle`](#qiskit.visualization.pulse.qcstyle.PulseStyle "qiskit.visualization.pulse.qcstyle.PulseStyle")(\[figsize, title\_font\_size, …]) | Style sheet for Qiskit-Pulse sample pulse drawer. |
| [`SchedStyle`](#qiskit.visualization.pulse.qcstyle.SchedStyle "qiskit.visualization.pulse.qcstyle.SchedStyle")(\[figsize, fig\_unit\_h\_table, …]) | Style sheet for Qiskit-Pulse schedule drawer. |
+### PulseStyle
+
Style sheet for Qiskit-Pulse sample pulse drawer.
@@ -32,6 +34,8 @@ Style sheets for pulse visualization.
* **dpi** (`Optional`\[`int`]) – Resolution in the unit of dot per inch to save image.
+### SchedStyle
+
Style sheet for Qiskit-Pulse schedule drawer.
diff --git a/docs/api/qiskit/0.24/logging.mdx b/docs/api/qiskit/0.24/logging.mdx
index 60f8a7944ac..5fde953ae16 100644
--- a/docs/api/qiskit/0.24/logging.mdx
+++ b/docs/api/qiskit/0.24/logging.mdx
@@ -24,6 +24,8 @@ python_api_name: qiskit.ignis.logging
| [`IgnisLogging`](qiskit.ignis.logging.IgnisLogging "qiskit.ignis.logging.IgnisLogging")(\[log\_config\_path]) | Singleton class to configure file logging via IgnisLogger |
| [`IgnisLogReader`](qiskit.ignis.logging.IgnisLogReader "qiskit.ignis.logging.IgnisLogReader")() | Class to read from Ignis log files |
+###
+
A logger class for Ignis
diff --git a/docs/api/qiskit/0.24/qiskit.optimization.applications.ising.tsp.mdx b/docs/api/qiskit/0.24/qiskit.optimization.applications.ising.tsp.mdx
index d222729604a..e1f5dfb955e 100644
--- a/docs/api/qiskit/0.24/qiskit.optimization.applications.ising.tsp.mdx
+++ b/docs/api/qiskit/0.24/qiskit.optimization.applications.ising.tsp.mdx
@@ -32,28 +32,30 @@ Convert symmetric TSP instances into Pauli list Deal with TSPLIB format. It supp
| ------------------------------------------------------------------------------------------------------------------------------------------ | --------------------------------------------------- |
| [`TspData`](#qiskit.optimization.applications.ising.tsp.TspData "qiskit.optimization.applications.ising.tsp.TspData")(name, dim, coord, w) | Create new instance of TspData(name, dim, coord, w) |
+### TspData
+
Create new instance of TspData(name, dim, coord, w)
- ### coord
+ #### coord
Alias for field number 2
- ### count
+ #### count
Return number of occurrences of value.
- ### dim
+ #### dim
Alias for field number 1
- ### index
+ #### index
Return first index of value.
@@ -61,13 +63,13 @@ Convert symmetric TSP instances into Pauli list Deal with TSPLIB format. It supp
Raises ValueError if the value is not present.
- ### name
+ #### name
Alias for field number 0
- ### w
+ #### w
Alias for field number 3
diff --git a/docs/api/qiskit/0.24/qiskit.pulse.channels.mdx b/docs/api/qiskit/0.24/qiskit.pulse.channels.mdx
index c5f412d4600..1cd3c6fd0af 100644
--- a/docs/api/qiskit/0.24/qiskit.pulse.channels.mdx
+++ b/docs/api/qiskit/0.24/qiskit.pulse.channels.mdx
@@ -34,6 +34,8 @@ Novel channel types can often utilize the `ControlChannel`, but if this is not s
| [`RegisterSlot`](#qiskit.pulse.channels.RegisterSlot "qiskit.pulse.channels.RegisterSlot")(index) | Classical resister slot channels represent classical registers (low-latency classical memory). |
| [`SnapshotChannel`](#qiskit.pulse.channels.SnapshotChannel "qiskit.pulse.channels.SnapshotChannel")() | Snapshot channels are used to specify instructions for simulators. |
+### AcquireChannel
+
Acquire channels are used to collect data.
@@ -47,7 +49,7 @@ Novel channel types can often utilize the `ControlChannel`, but if this is not s
[**PulseError**](qiskit.pulse.PulseError "qiskit.pulse.PulseError") – If `index` is not a nonnegative integer.
- ### index
+ #### index
Return the index of this channel. The index is a label for a control signal line typically mapped trivially to a qubit index. For instance, `DriveChannel(0)` labels the signal line driving the qubit labeled with index 0.
@@ -57,7 +59,7 @@ Novel channel types can often utilize the `ControlChannel`, but if this is not s
`int`
- ### name
+ #### name
Return the shorthand alias for this channel, which is based on its type and index.
@@ -68,6 +70,8 @@ Novel channel types can often utilize the `ControlChannel`, but if this is not s
+### Channel
+
Base class of channels. Channels provide a Qiskit-side label for typical quantum control hardware signal channels. The final label -> physical channel mapping is the responsibility of the hardware backend. For instance, `DriveChannel(0)` holds instructions which the backend should map to the signal line driving gate operations on the qubit labeled (indexed) 0.
@@ -81,7 +85,7 @@ Novel channel types can often utilize the `ControlChannel`, but if this is not s
[**PulseError**](qiskit.pulse.PulseError "qiskit.pulse.PulseError") – If `index` is not a nonnegative integer.
- ### index
+ #### index
Return the index of this channel. The index is a label for a control signal line typically mapped trivially to a qubit index. For instance, `DriveChannel(0)` labels the signal line driving the qubit labeled with index 0.
@@ -91,7 +95,7 @@ Novel channel types can often utilize the `ControlChannel`, but if this is not s
`int`
- ### name
+ #### name
Return the shorthand alias for this channel, which is based on its type and index.
@@ -101,13 +105,15 @@ Novel channel types can often utilize the `ControlChannel`, but if this is not s
`str`
- ### prefix
+ #### prefix
A shorthand string prefix for characterizing the channel type.
+### ControlChannel
+
Control channels provide supplementary control over the qubit to the drive channel. These are often associated with multi-qubit gate operations. They may not map trivially to a particular qubit index.
@@ -121,7 +127,7 @@ Novel channel types can often utilize the `ControlChannel`, but if this is not s
[**PulseError**](qiskit.pulse.PulseError "qiskit.pulse.PulseError") – If `index` is not a nonnegative integer.
- ### index
+ #### index
Return the index of this channel. The index is a label for a control signal line typically mapped trivially to a qubit index. For instance, `DriveChannel(0)` labels the signal line driving the qubit labeled with index 0.
@@ -131,7 +137,7 @@ Novel channel types can often utilize the `ControlChannel`, but if this is not s
`int`
- ### name
+ #### name
Return the shorthand alias for this channel, which is based on its type and index.
@@ -142,6 +148,8 @@ Novel channel types can often utilize the `ControlChannel`, but if this is not s
+### DriveChannel
+
Drive channels transmit signals to qubits which enact gate operations.
@@ -155,7 +163,7 @@ Novel channel types can often utilize the `ControlChannel`, but if this is not s
[**PulseError**](qiskit.pulse.PulseError "qiskit.pulse.PulseError") – If `index` is not a nonnegative integer.
- ### index
+ #### index
Return the index of this channel. The index is a label for a control signal line typically mapped trivially to a qubit index. For instance, `DriveChannel(0)` labels the signal line driving the qubit labeled with index 0.
@@ -165,7 +173,7 @@ Novel channel types can often utilize the `ControlChannel`, but if this is not s
`int`
- ### name
+ #### name
Return the shorthand alias for this channel, which is based on its type and index.
@@ -176,6 +184,8 @@ Novel channel types can often utilize the `ControlChannel`, but if this is not s
+### MeasureChannel
+
Measure channels transmit measurement stimulus pulses for readout.
@@ -189,7 +199,7 @@ Novel channel types can often utilize the `ControlChannel`, but if this is not s
[**PulseError**](qiskit.pulse.PulseError "qiskit.pulse.PulseError") – If `index` is not a nonnegative integer.
- ### index
+ #### index
Return the index of this channel. The index is a label for a control signal line typically mapped trivially to a qubit index. For instance, `DriveChannel(0)` labels the signal line driving the qubit labeled with index 0.
@@ -199,7 +209,7 @@ Novel channel types can often utilize the `ControlChannel`, but if this is not s
`int`
- ### name
+ #### name
Return the shorthand alias for this channel, which is based on its type and index.
@@ -210,6 +220,8 @@ Novel channel types can often utilize the `ControlChannel`, but if this is not s
+### MemorySlot
+
Memory slot channels represent classical memory storage.
@@ -223,7 +235,7 @@ Novel channel types can often utilize the `ControlChannel`, but if this is not s
[**PulseError**](qiskit.pulse.PulseError "qiskit.pulse.PulseError") – If `index` is not a nonnegative integer.
- ### index
+ #### index
Return the index of this channel. The index is a label for a control signal line typically mapped trivially to a qubit index. For instance, `DriveChannel(0)` labels the signal line driving the qubit labeled with index 0.
@@ -233,7 +245,7 @@ Novel channel types can often utilize the `ControlChannel`, but if this is not s
`int`
- ### name
+ #### name
Return the shorthand alias for this channel, which is based on its type and index.
@@ -244,6 +256,8 @@ Novel channel types can often utilize the `ControlChannel`, but if this is not s
+### PulseChannel
+
Base class of transmit Channels. Pulses can be played on these channels.
@@ -257,7 +271,7 @@ Novel channel types can often utilize the `ControlChannel`, but if this is not s
[**PulseError**](qiskit.pulse.PulseError "qiskit.pulse.PulseError") – If `index` is not a nonnegative integer.
- ### index
+ #### index
Return the index of this channel. The index is a label for a control signal line typically mapped trivially to a qubit index. For instance, `DriveChannel(0)` labels the signal line driving the qubit labeled with index 0.
@@ -267,7 +281,7 @@ Novel channel types can often utilize the `ControlChannel`, but if this is not s
`int`
- ### name
+ #### name
Return the shorthand alias for this channel, which is based on its type and index.
@@ -278,6 +292,8 @@ Novel channel types can often utilize the `ControlChannel`, but if this is not s
+### RegisterSlot
+
Classical resister slot channels represent classical registers (low-latency classical memory).
@@ -291,7 +307,7 @@ Novel channel types can often utilize the `ControlChannel`, but if this is not s
[**PulseError**](qiskit.pulse.PulseError "qiskit.pulse.PulseError") – If `index` is not a nonnegative integer.
- ### index
+ #### index
Return the index of this channel. The index is a label for a control signal line typically mapped trivially to a qubit index. For instance, `DriveChannel(0)` labels the signal line driving the qubit labeled with index 0.
@@ -301,7 +317,7 @@ Novel channel types can often utilize the `ControlChannel`, but if this is not s
`int`
- ### name
+ #### name
Return the shorthand alias for this channel, which is based on its type and index.
@@ -312,12 +328,14 @@ Novel channel types can often utilize the `ControlChannel`, but if this is not s
+### SnapshotChannel
+
Snapshot channels are used to specify instructions for simulators.
Create new snapshot channel.
- ### index
+ #### index
Return the index of this channel. The index is a label for a control signal line typically mapped trivially to a qubit index. For instance, `DriveChannel(0)` labels the signal line driving the qubit labeled with index 0.
@@ -327,7 +345,7 @@ Novel channel types can often utilize the `ControlChannel`, but if this is not s
`int`
- ### name
+ #### name
Return the shorthand alias for this channel, which is based on its type and index.
diff --git a/docs/api/qiskit/0.24/qiskit.visualization.pulse.qcstyle.mdx b/docs/api/qiskit/0.24/qiskit.visualization.pulse.qcstyle.mdx
index 5c57081b8f2..49ff393cd21 100644
--- a/docs/api/qiskit/0.24/qiskit.visualization.pulse.qcstyle.mdx
+++ b/docs/api/qiskit/0.24/qiskit.visualization.pulse.qcstyle.mdx
@@ -23,22 +23,24 @@ Style sheets for pulse visualization.
| [`SchedStyle`](#qiskit.visualization.pulse.qcstyle.SchedStyle "qiskit.visualization.pulse.qcstyle.SchedStyle")(\[figsize, fig\_unit\_h\_table, …]) | Style sheet for Qiskit-Pulse schedule drawer. |
| [`SchedTableColors`](#qiskit.visualization.pulse.qcstyle.SchedTableColors "qiskit.visualization.pulse.qcstyle.SchedTableColors")(time, channel, event) | Create new instance of SchedTableColors(time, channel, event) |
+### ComplexColors
+
Create new instance of ComplexColors(real, imaginary)
- ### count
+ #### count
Return number of occurrences of value.
- ### imaginary
+ #### imaginary
Alias for field number 1
- ### index
+ #### index
Return first index of value.
@@ -46,13 +48,15 @@ Style sheets for pulse visualization.
Raises ValueError if the value is not present.
- ### real
+ #### real
Alias for field number 0
+### PulseStyle
+
Style sheet for Qiskit-Pulse sample pulse drawer.
@@ -70,6 +74,8 @@ Style sheets for pulse visualization.
* **dpi** (`Optional`\[`int`]) – Resolution in the unit of dot per inch to save image. If `None`, will revert to the DPI setting of the drawing backend. If the output is `matplotlib`, the default parameter is `rcParams['figure.dpi']`.
+### SchedStyle
+
Style sheet for Qiskit-Pulse schedule drawer.
@@ -119,28 +125,30 @@ Style sheets for pulse visualization.
With this setup, events are shown in double-column style with each line height of 0.4 inch and the table cannot exceed 5 inch. Thus 12 lines are maximum and up to 24 events can be shown. If you want to show more events, increase figure height or reduce size of line height and table font size.
+### SchedTableColors
+
Create new instance of SchedTableColors(time, channel, event)
- ### channel
+ #### channel
Alias for field number 1
- ### count
+ #### count
Return number of occurrences of value.
- ### event
+ #### event
Alias for field number 2
- ### index
+ #### index
Return first index of value.
@@ -148,7 +156,7 @@ Style sheets for pulse visualization.
Raises ValueError if the value is not present.
- ### time
+ #### time
Alias for field number 0
diff --git a/docs/api/qiskit/0.25/logging.mdx b/docs/api/qiskit/0.25/logging.mdx
index 423000acd53..0bbcd2aac82 100644
--- a/docs/api/qiskit/0.25/logging.mdx
+++ b/docs/api/qiskit/0.25/logging.mdx
@@ -22,6 +22,8 @@ python_api_name: qiskit.ignis.logging
| [`IgnisLogging`](qiskit.ignis.logging.IgnisLogging "qiskit.ignis.logging.IgnisLogging")(\[log\_config\_path]) | Singleton class to configure file logging via IgnisLogger |
| [`IgnisLogReader`](qiskit.ignis.logging.IgnisLogReader "qiskit.ignis.logging.IgnisLogReader")() | Class to read from Ignis log files |
+###
+
A logger class for Ignis
diff --git a/docs/api/qiskit/0.25/qiskit.optimization.applications.ising.tsp.mdx b/docs/api/qiskit/0.25/qiskit.optimization.applications.ising.tsp.mdx
index 8d100a34cdc..92d3d3d31f2 100644
--- a/docs/api/qiskit/0.25/qiskit.optimization.applications.ising.tsp.mdx
+++ b/docs/api/qiskit/0.25/qiskit.optimization.applications.ising.tsp.mdx
@@ -30,28 +30,30 @@ Convert symmetric TSP instances into Pauli list Deal with TSPLIB format. It supp
| ------------------------------------------------------------------------------------------------------------------------------------------ | --------------------------------------------------- |
| [`TspData`](#qiskit.optimization.applications.ising.tsp.TspData "qiskit.optimization.applications.ising.tsp.TspData")(name, dim, coord, w) | Create new instance of TspData(name, dim, coord, w) |
+### TspData
+
Create new instance of TspData(name, dim, coord, w)
- ### coord
+ #### coord
Alias for field number 2
- ### count
+ #### count
Return number of occurrences of value.
- ### dim
+ #### dim
Alias for field number 1
- ### index
+ #### index
Return first index of value.
@@ -59,13 +61,13 @@ Convert symmetric TSP instances into Pauli list Deal with TSPLIB format. It supp
Raises ValueError if the value is not present.
- ### name
+ #### name
Alias for field number 0
- ### w
+ #### w
Alias for field number 3
diff --git a/docs/api/qiskit/0.25/qiskit.pulse.channels.mdx b/docs/api/qiskit/0.25/qiskit.pulse.channels.mdx
index a515878eb41..e0b5f43be86 100644
--- a/docs/api/qiskit/0.25/qiskit.pulse.channels.mdx
+++ b/docs/api/qiskit/0.25/qiskit.pulse.channels.mdx
@@ -32,6 +32,8 @@ Novel channel types can often utilize the `ControlChannel`, but if this is not s
| [`RegisterSlot`](#qiskit.pulse.channels.RegisterSlot "qiskit.pulse.channels.RegisterSlot")(index) | Classical resister slot channels represent classical registers (low-latency classical memory). |
| [`SnapshotChannel`](#qiskit.pulse.channels.SnapshotChannel "qiskit.pulse.channels.SnapshotChannel")(\*args, \*\*kwargs) | Snapshot channels are used to specify instructions for simulators. |
+### AcquireChannel
+
Acquire channels are used to collect data.
@@ -41,7 +43,7 @@ Novel channel types can often utilize the `ControlChannel`, but if this is not s
**index** (`int`) – Index of channel.
- ### assign
+ #### assign
Return a new channel with the input Parameter assigned to value.
@@ -64,7 +66,7 @@ Novel channel types can often utilize the `ControlChannel`, but if this is not s
[**PulseError**](qiskit.pulse.PulseError "qiskit.pulse.PulseError") – If the parameter is not present in the channel.
- ### index
+ #### index
Return the index of this channel. The index is a label for a control signal line typically mapped trivially to a qubit index. For instance, `DriveChannel(0)` labels the signal line driving the qubit labeled with index 0.
@@ -74,7 +76,7 @@ Novel channel types can often utilize the `ControlChannel`, but if this is not s
`Union`\[`int`, `ParameterExpression`]
- ### is\_parameterized
+ #### is\_parameterized
Return True iff the channel is parameterized.
@@ -84,7 +86,7 @@ Novel channel types can often utilize the `ControlChannel`, but if this is not s
`bool`
- ### name
+ #### name
Return the shorthand alias for this channel, which is based on its type and index.
@@ -94,7 +96,7 @@ Novel channel types can often utilize the `ControlChannel`, but if this is not s
`str`
- ### parameters
+ #### parameters
Parameters which determine the channel index.
@@ -105,6 +107,8 @@ Novel channel types can often utilize the `ControlChannel`, but if this is not s
+### Channel
+
Base class of channels. Channels provide a Qiskit-side label for typical quantum control hardware signal channels. The final label -> physical channel mapping is the responsibility of the hardware backend. For instance, `DriveChannel(0)` holds instructions which the backend should map to the signal line driving gate operations on the qubit labeled (indexed) 0.
@@ -118,7 +122,7 @@ Novel channel types can often utilize the `ControlChannel`, but if this is not s
**index** (`int`) – Index of channel.
- ### assign
+ #### assign
Return a new channel with the input Parameter assigned to value.
@@ -141,7 +145,7 @@ Novel channel types can often utilize the `ControlChannel`, but if this is not s
[**PulseError**](qiskit.pulse.PulseError "qiskit.pulse.PulseError") – If the parameter is not present in the channel.
- ### index
+ #### index
Return the index of this channel. The index is a label for a control signal line typically mapped trivially to a qubit index. For instance, `DriveChannel(0)` labels the signal line driving the qubit labeled with index 0.
@@ -151,7 +155,7 @@ Novel channel types can often utilize the `ControlChannel`, but if this is not s
`Union`\[`int`, `ParameterExpression`]
- ### is\_parameterized
+ #### is\_parameterized
Return True iff the channel is parameterized.
@@ -161,7 +165,7 @@ Novel channel types can often utilize the `ControlChannel`, but if this is not s
`bool`
- ### name
+ #### name
Return the shorthand alias for this channel, which is based on its type and index.
@@ -171,7 +175,7 @@ Novel channel types can often utilize the `ControlChannel`, but if this is not s
`str`
- ### parameters
+ #### parameters
Parameters which determine the channel index.
@@ -181,13 +185,15 @@ Novel channel types can often utilize the `ControlChannel`, but if this is not s
`Set`
- ### prefix
+ #### prefix
A shorthand string prefix for characterizing the channel type.
+### ControlChannel
+
Control channels provide supplementary control over the qubit to the drive channel. These are often associated with multi-qubit gate operations. They may not map trivially to a particular qubit index.
@@ -197,7 +203,7 @@ Novel channel types can often utilize the `ControlChannel`, but if this is not s
**index** (`int`) – Index of channel.
- ### assign
+ #### assign
Return a new channel with the input Parameter assigned to value.
@@ -220,7 +226,7 @@ Novel channel types can often utilize the `ControlChannel`, but if this is not s
[**PulseError**](qiskit.pulse.PulseError "qiskit.pulse.PulseError") – If the parameter is not present in the channel.
- ### index
+ #### index
Return the index of this channel. The index is a label for a control signal line typically mapped trivially to a qubit index. For instance, `DriveChannel(0)` labels the signal line driving the qubit labeled with index 0.
@@ -230,7 +236,7 @@ Novel channel types can often utilize the `ControlChannel`, but if this is not s
`Union`\[`int`, `ParameterExpression`]
- ### is\_parameterized
+ #### is\_parameterized
Return True iff the channel is parameterized.
@@ -240,7 +246,7 @@ Novel channel types can often utilize the `ControlChannel`, but if this is not s
`bool`
- ### name
+ #### name
Return the shorthand alias for this channel, which is based on its type and index.
@@ -250,7 +256,7 @@ Novel channel types can often utilize the `ControlChannel`, but if this is not s
`str`
- ### parameters
+ #### parameters
Parameters which determine the channel index.
@@ -261,6 +267,8 @@ Novel channel types can often utilize the `ControlChannel`, but if this is not s
+### DriveChannel
+
Drive channels transmit signals to qubits which enact gate operations.
@@ -270,7 +278,7 @@ Novel channel types can often utilize the `ControlChannel`, but if this is not s
**index** (`int`) – Index of channel.
- ### assign
+ #### assign
Return a new channel with the input Parameter assigned to value.
@@ -293,7 +301,7 @@ Novel channel types can often utilize the `ControlChannel`, but if this is not s
[**PulseError**](qiskit.pulse.PulseError "qiskit.pulse.PulseError") – If the parameter is not present in the channel.
- ### index
+ #### index
Return the index of this channel. The index is a label for a control signal line typically mapped trivially to a qubit index. For instance, `DriveChannel(0)` labels the signal line driving the qubit labeled with index 0.
@@ -303,7 +311,7 @@ Novel channel types can often utilize the `ControlChannel`, but if this is not s
`Union`\[`int`, `ParameterExpression`]
- ### is\_parameterized
+ #### is\_parameterized
Return True iff the channel is parameterized.
@@ -313,7 +321,7 @@ Novel channel types can often utilize the `ControlChannel`, but if this is not s
`bool`
- ### name
+ #### name
Return the shorthand alias for this channel, which is based on its type and index.
@@ -323,7 +331,7 @@ Novel channel types can often utilize the `ControlChannel`, but if this is not s
`str`
- ### parameters
+ #### parameters
Parameters which determine the channel index.
@@ -334,6 +342,8 @@ Novel channel types can often utilize the `ControlChannel`, but if this is not s
+### MeasureChannel
+
Measure channels transmit measurement stimulus pulses for readout.
@@ -343,7 +353,7 @@ Novel channel types can often utilize the `ControlChannel`, but if this is not s
**index** (`int`) – Index of channel.
- ### assign
+ #### assign
Return a new channel with the input Parameter assigned to value.
@@ -366,7 +376,7 @@ Novel channel types can often utilize the `ControlChannel`, but if this is not s
[**PulseError**](qiskit.pulse.PulseError "qiskit.pulse.PulseError") – If the parameter is not present in the channel.
- ### index
+ #### index
Return the index of this channel. The index is a label for a control signal line typically mapped trivially to a qubit index. For instance, `DriveChannel(0)` labels the signal line driving the qubit labeled with index 0.
@@ -376,7 +386,7 @@ Novel channel types can often utilize the `ControlChannel`, but if this is not s
`Union`\[`int`, `ParameterExpression`]
- ### is\_parameterized
+ #### is\_parameterized
Return True iff the channel is parameterized.
@@ -386,7 +396,7 @@ Novel channel types can often utilize the `ControlChannel`, but if this is not s
`bool`
- ### name
+ #### name
Return the shorthand alias for this channel, which is based on its type and index.
@@ -396,7 +406,7 @@ Novel channel types can often utilize the `ControlChannel`, but if this is not s
`str`
- ### parameters
+ #### parameters
Parameters which determine the channel index.
@@ -407,6 +417,8 @@ Novel channel types can often utilize the `ControlChannel`, but if this is not s
+### MemorySlot
+
Memory slot channels represent classical memory storage.
@@ -416,7 +428,7 @@ Novel channel types can often utilize the `ControlChannel`, but if this is not s
**index** (`int`) – Index of channel.
- ### assign
+ #### assign
Return a new channel with the input Parameter assigned to value.
@@ -439,7 +451,7 @@ Novel channel types can often utilize the `ControlChannel`, but if this is not s
[**PulseError**](qiskit.pulse.PulseError "qiskit.pulse.PulseError") – If the parameter is not present in the channel.
- ### index
+ #### index
Return the index of this channel. The index is a label for a control signal line typically mapped trivially to a qubit index. For instance, `DriveChannel(0)` labels the signal line driving the qubit labeled with index 0.
@@ -449,7 +461,7 @@ Novel channel types can often utilize the `ControlChannel`, but if this is not s
`Union`\[`int`, `ParameterExpression`]
- ### is\_parameterized
+ #### is\_parameterized
Return True iff the channel is parameterized.
@@ -459,7 +471,7 @@ Novel channel types can often utilize the `ControlChannel`, but if this is not s
`bool`
- ### name
+ #### name
Return the shorthand alias for this channel, which is based on its type and index.
@@ -469,7 +481,7 @@ Novel channel types can often utilize the `ControlChannel`, but if this is not s
`str`
- ### parameters
+ #### parameters
Parameters which determine the channel index.
@@ -480,6 +492,8 @@ Novel channel types can often utilize the `ControlChannel`, but if this is not s
+### PulseChannel
+
Base class of transmit Channels. Pulses can be played on these channels.
@@ -489,7 +503,7 @@ Novel channel types can often utilize the `ControlChannel`, but if this is not s
**index** (`int`) – Index of channel.
- ### assign
+ #### assign
Return a new channel with the input Parameter assigned to value.
@@ -512,7 +526,7 @@ Novel channel types can often utilize the `ControlChannel`, but if this is not s
[**PulseError**](qiskit.pulse.PulseError "qiskit.pulse.PulseError") – If the parameter is not present in the channel.
- ### index
+ #### index
Return the index of this channel. The index is a label for a control signal line typically mapped trivially to a qubit index. For instance, `DriveChannel(0)` labels the signal line driving the qubit labeled with index 0.
@@ -522,7 +536,7 @@ Novel channel types can often utilize the `ControlChannel`, but if this is not s
`Union`\[`int`, `ParameterExpression`]
- ### is\_parameterized
+ #### is\_parameterized
Return True iff the channel is parameterized.
@@ -532,7 +546,7 @@ Novel channel types can often utilize the `ControlChannel`, but if this is not s
`bool`
- ### name
+ #### name
Return the shorthand alias for this channel, which is based on its type and index.
@@ -542,7 +556,7 @@ Novel channel types can often utilize the `ControlChannel`, but if this is not s
`str`
- ### parameters
+ #### parameters
Parameters which determine the channel index.
@@ -553,6 +567,8 @@ Novel channel types can often utilize the `ControlChannel`, but if this is not s
+### RegisterSlot
+
Classical resister slot channels represent classical registers (low-latency classical memory).
@@ -562,7 +578,7 @@ Novel channel types can often utilize the `ControlChannel`, but if this is not s
**index** (`int`) – Index of channel.
- ### assign
+ #### assign
Return a new channel with the input Parameter assigned to value.
@@ -585,7 +601,7 @@ Novel channel types can often utilize the `ControlChannel`, but if this is not s
[**PulseError**](qiskit.pulse.PulseError "qiskit.pulse.PulseError") – If the parameter is not present in the channel.
- ### index
+ #### index
Return the index of this channel. The index is a label for a control signal line typically mapped trivially to a qubit index. For instance, `DriveChannel(0)` labels the signal line driving the qubit labeled with index 0.
@@ -595,7 +611,7 @@ Novel channel types can often utilize the `ControlChannel`, but if this is not s
`Union`\[`int`, `ParameterExpression`]
- ### is\_parameterized
+ #### is\_parameterized
Return True iff the channel is parameterized.
@@ -605,7 +621,7 @@ Novel channel types can often utilize the `ControlChannel`, but if this is not s
`bool`
- ### name
+ #### name
Return the shorthand alias for this channel, which is based on its type and index.
@@ -615,7 +631,7 @@ Novel channel types can often utilize the `ControlChannel`, but if this is not s
`str`
- ### parameters
+ #### parameters
Parameters which determine the channel index.
@@ -626,12 +642,14 @@ Novel channel types can often utilize the `ControlChannel`, but if this is not s
+### SnapshotChannel
+
Snapshot channels are used to specify instructions for simulators.
Create new snapshot channel.
- ### assign
+ #### assign
Return a new channel with the input Parameter assigned to value.
@@ -654,7 +672,7 @@ Novel channel types can often utilize the `ControlChannel`, but if this is not s
[**PulseError**](qiskit.pulse.PulseError "qiskit.pulse.PulseError") – If the parameter is not present in the channel.
- ### index
+ #### index
Return the index of this channel. The index is a label for a control signal line typically mapped trivially to a qubit index. For instance, `DriveChannel(0)` labels the signal line driving the qubit labeled with index 0.
@@ -664,7 +682,7 @@ Novel channel types can often utilize the `ControlChannel`, but if this is not s
`Union`\[`int`, `ParameterExpression`]
- ### is\_parameterized
+ #### is\_parameterized
Return True iff the channel is parameterized.
@@ -674,7 +692,7 @@ Novel channel types can often utilize the `ControlChannel`, but if this is not s
`bool`
- ### name
+ #### name
Return the shorthand alias for this channel, which is based on its type and index.
@@ -684,7 +702,7 @@ Novel channel types can often utilize the `ControlChannel`, but if this is not s
`str`
- ### parameters
+ #### parameters
Parameters which determine the channel index.
diff --git a/docs/api/qiskit/0.26/logging.mdx b/docs/api/qiskit/0.26/logging.mdx
index 423000acd53..0bbcd2aac82 100644
--- a/docs/api/qiskit/0.26/logging.mdx
+++ b/docs/api/qiskit/0.26/logging.mdx
@@ -22,6 +22,8 @@ python_api_name: qiskit.ignis.logging
| [`IgnisLogging`](qiskit.ignis.logging.IgnisLogging "qiskit.ignis.logging.IgnisLogging")(\[log\_config\_path]) | Singleton class to configure file logging via IgnisLogger |
| [`IgnisLogReader`](qiskit.ignis.logging.IgnisLogReader "qiskit.ignis.logging.IgnisLogReader")() | Class to read from Ignis log files |
+###
+
A logger class for Ignis
diff --git a/docs/api/qiskit/0.26/qiskit.optimization.applications.ising.tsp.mdx b/docs/api/qiskit/0.26/qiskit.optimization.applications.ising.tsp.mdx
index 8d100a34cdc..92d3d3d31f2 100644
--- a/docs/api/qiskit/0.26/qiskit.optimization.applications.ising.tsp.mdx
+++ b/docs/api/qiskit/0.26/qiskit.optimization.applications.ising.tsp.mdx
@@ -30,28 +30,30 @@ Convert symmetric TSP instances into Pauli list Deal with TSPLIB format. It supp
| ------------------------------------------------------------------------------------------------------------------------------------------ | --------------------------------------------------- |
| [`TspData`](#qiskit.optimization.applications.ising.tsp.TspData "qiskit.optimization.applications.ising.tsp.TspData")(name, dim, coord, w) | Create new instance of TspData(name, dim, coord, w) |
+### TspData
+
Create new instance of TspData(name, dim, coord, w)
- ### coord
+ #### coord
Alias for field number 2
- ### count
+ #### count
Return number of occurrences of value.
- ### dim
+ #### dim
Alias for field number 1
- ### index
+ #### index
Return first index of value.
@@ -59,13 +61,13 @@ Convert symmetric TSP instances into Pauli list Deal with TSPLIB format. It supp
Raises ValueError if the value is not present.
- ### name
+ #### name
Alias for field number 0
- ### w
+ #### w
Alias for field number 3
diff --git a/docs/api/qiskit/0.26/qiskit.pulse.channels.mdx b/docs/api/qiskit/0.26/qiskit.pulse.channels.mdx
index a515878eb41..e0b5f43be86 100644
--- a/docs/api/qiskit/0.26/qiskit.pulse.channels.mdx
+++ b/docs/api/qiskit/0.26/qiskit.pulse.channels.mdx
@@ -32,6 +32,8 @@ Novel channel types can often utilize the `ControlChannel`, but if this is not s
| [`RegisterSlot`](#qiskit.pulse.channels.RegisterSlot "qiskit.pulse.channels.RegisterSlot")(index) | Classical resister slot channels represent classical registers (low-latency classical memory). |
| [`SnapshotChannel`](#qiskit.pulse.channels.SnapshotChannel "qiskit.pulse.channels.SnapshotChannel")(\*args, \*\*kwargs) | Snapshot channels are used to specify instructions for simulators. |
+### AcquireChannel
+
Acquire channels are used to collect data.
@@ -41,7 +43,7 @@ Novel channel types can often utilize the `ControlChannel`, but if this is not s
**index** (`int`) – Index of channel.
- ### assign
+ #### assign
Return a new channel with the input Parameter assigned to value.
@@ -64,7 +66,7 @@ Novel channel types can often utilize the `ControlChannel`, but if this is not s
[**PulseError**](qiskit.pulse.PulseError "qiskit.pulse.PulseError") – If the parameter is not present in the channel.
- ### index
+ #### index
Return the index of this channel. The index is a label for a control signal line typically mapped trivially to a qubit index. For instance, `DriveChannel(0)` labels the signal line driving the qubit labeled with index 0.
@@ -74,7 +76,7 @@ Novel channel types can often utilize the `ControlChannel`, but if this is not s
`Union`\[`int`, `ParameterExpression`]
- ### is\_parameterized
+ #### is\_parameterized
Return True iff the channel is parameterized.
@@ -84,7 +86,7 @@ Novel channel types can often utilize the `ControlChannel`, but if this is not s
`bool`
- ### name
+ #### name
Return the shorthand alias for this channel, which is based on its type and index.
@@ -94,7 +96,7 @@ Novel channel types can often utilize the `ControlChannel`, but if this is not s
`str`
- ### parameters
+ #### parameters
Parameters which determine the channel index.
@@ -105,6 +107,8 @@ Novel channel types can often utilize the `ControlChannel`, but if this is not s
+### Channel
+
Base class of channels. Channels provide a Qiskit-side label for typical quantum control hardware signal channels. The final label -> physical channel mapping is the responsibility of the hardware backend. For instance, `DriveChannel(0)` holds instructions which the backend should map to the signal line driving gate operations on the qubit labeled (indexed) 0.
@@ -118,7 +122,7 @@ Novel channel types can often utilize the `ControlChannel`, but if this is not s
**index** (`int`) – Index of channel.
- ### assign
+ #### assign
Return a new channel with the input Parameter assigned to value.
@@ -141,7 +145,7 @@ Novel channel types can often utilize the `ControlChannel`, but if this is not s
[**PulseError**](qiskit.pulse.PulseError "qiskit.pulse.PulseError") – If the parameter is not present in the channel.
- ### index
+ #### index
Return the index of this channel. The index is a label for a control signal line typically mapped trivially to a qubit index. For instance, `DriveChannel(0)` labels the signal line driving the qubit labeled with index 0.
@@ -151,7 +155,7 @@ Novel channel types can often utilize the `ControlChannel`, but if this is not s
`Union`\[`int`, `ParameterExpression`]
- ### is\_parameterized
+ #### is\_parameterized
Return True iff the channel is parameterized.
@@ -161,7 +165,7 @@ Novel channel types can often utilize the `ControlChannel`, but if this is not s
`bool`
- ### name
+ #### name
Return the shorthand alias for this channel, which is based on its type and index.
@@ -171,7 +175,7 @@ Novel channel types can often utilize the `ControlChannel`, but if this is not s
`str`
- ### parameters
+ #### parameters
Parameters which determine the channel index.
@@ -181,13 +185,15 @@ Novel channel types can often utilize the `ControlChannel`, but if this is not s
`Set`
- ### prefix
+ #### prefix
A shorthand string prefix for characterizing the channel type.
+### ControlChannel
+
Control channels provide supplementary control over the qubit to the drive channel. These are often associated with multi-qubit gate operations. They may not map trivially to a particular qubit index.
@@ -197,7 +203,7 @@ Novel channel types can often utilize the `ControlChannel`, but if this is not s
**index** (`int`) – Index of channel.
- ### assign
+ #### assign
Return a new channel with the input Parameter assigned to value.
@@ -220,7 +226,7 @@ Novel channel types can often utilize the `ControlChannel`, but if this is not s
[**PulseError**](qiskit.pulse.PulseError "qiskit.pulse.PulseError") – If the parameter is not present in the channel.
- ### index
+ #### index
Return the index of this channel. The index is a label for a control signal line typically mapped trivially to a qubit index. For instance, `DriveChannel(0)` labels the signal line driving the qubit labeled with index 0.
@@ -230,7 +236,7 @@ Novel channel types can often utilize the `ControlChannel`, but if this is not s
`Union`\[`int`, `ParameterExpression`]
- ### is\_parameterized
+ #### is\_parameterized
Return True iff the channel is parameterized.
@@ -240,7 +246,7 @@ Novel channel types can often utilize the `ControlChannel`, but if this is not s
`bool`
- ### name
+ #### name
Return the shorthand alias for this channel, which is based on its type and index.
@@ -250,7 +256,7 @@ Novel channel types can often utilize the `ControlChannel`, but if this is not s
`str`
- ### parameters
+ #### parameters
Parameters which determine the channel index.
@@ -261,6 +267,8 @@ Novel channel types can often utilize the `ControlChannel`, but if this is not s
+### DriveChannel
+
Drive channels transmit signals to qubits which enact gate operations.
@@ -270,7 +278,7 @@ Novel channel types can often utilize the `ControlChannel`, but if this is not s
**index** (`int`) – Index of channel.
- ### assign
+ #### assign
Return a new channel with the input Parameter assigned to value.
@@ -293,7 +301,7 @@ Novel channel types can often utilize the `ControlChannel`, but if this is not s
[**PulseError**](qiskit.pulse.PulseError "qiskit.pulse.PulseError") – If the parameter is not present in the channel.
- ### index
+ #### index
Return the index of this channel. The index is a label for a control signal line typically mapped trivially to a qubit index. For instance, `DriveChannel(0)` labels the signal line driving the qubit labeled with index 0.
@@ -303,7 +311,7 @@ Novel channel types can often utilize the `ControlChannel`, but if this is not s
`Union`\[`int`, `ParameterExpression`]
- ### is\_parameterized
+ #### is\_parameterized
Return True iff the channel is parameterized.
@@ -313,7 +321,7 @@ Novel channel types can often utilize the `ControlChannel`, but if this is not s
`bool`
- ### name
+ #### name
Return the shorthand alias for this channel, which is based on its type and index.
@@ -323,7 +331,7 @@ Novel channel types can often utilize the `ControlChannel`, but if this is not s
`str`
- ### parameters
+ #### parameters
Parameters which determine the channel index.
@@ -334,6 +342,8 @@ Novel channel types can often utilize the `ControlChannel`, but if this is not s
+### MeasureChannel
+
Measure channels transmit measurement stimulus pulses for readout.
@@ -343,7 +353,7 @@ Novel channel types can often utilize the `ControlChannel`, but if this is not s
**index** (`int`) – Index of channel.
- ### assign
+ #### assign
Return a new channel with the input Parameter assigned to value.
@@ -366,7 +376,7 @@ Novel channel types can often utilize the `ControlChannel`, but if this is not s
[**PulseError**](qiskit.pulse.PulseError "qiskit.pulse.PulseError") – If the parameter is not present in the channel.
- ### index
+ #### index
Return the index of this channel. The index is a label for a control signal line typically mapped trivially to a qubit index. For instance, `DriveChannel(0)` labels the signal line driving the qubit labeled with index 0.
@@ -376,7 +386,7 @@ Novel channel types can often utilize the `ControlChannel`, but if this is not s
`Union`\[`int`, `ParameterExpression`]
- ### is\_parameterized
+ #### is\_parameterized
Return True iff the channel is parameterized.
@@ -386,7 +396,7 @@ Novel channel types can often utilize the `ControlChannel`, but if this is not s
`bool`
- ### name
+ #### name
Return the shorthand alias for this channel, which is based on its type and index.
@@ -396,7 +406,7 @@ Novel channel types can often utilize the `ControlChannel`, but if this is not s
`str`
- ### parameters
+ #### parameters
Parameters which determine the channel index.
@@ -407,6 +417,8 @@ Novel channel types can often utilize the `ControlChannel`, but if this is not s
+### MemorySlot
+
Memory slot channels represent classical memory storage.
@@ -416,7 +428,7 @@ Novel channel types can often utilize the `ControlChannel`, but if this is not s
**index** (`int`) – Index of channel.
- ### assign
+ #### assign
Return a new channel with the input Parameter assigned to value.
@@ -439,7 +451,7 @@ Novel channel types can often utilize the `ControlChannel`, but if this is not s
[**PulseError**](qiskit.pulse.PulseError "qiskit.pulse.PulseError") – If the parameter is not present in the channel.
- ### index
+ #### index
Return the index of this channel. The index is a label for a control signal line typically mapped trivially to a qubit index. For instance, `DriveChannel(0)` labels the signal line driving the qubit labeled with index 0.
@@ -449,7 +461,7 @@ Novel channel types can often utilize the `ControlChannel`, but if this is not s
`Union`\[`int`, `ParameterExpression`]
- ### is\_parameterized
+ #### is\_parameterized
Return True iff the channel is parameterized.
@@ -459,7 +471,7 @@ Novel channel types can often utilize the `ControlChannel`, but if this is not s
`bool`
- ### name
+ #### name
Return the shorthand alias for this channel, which is based on its type and index.
@@ -469,7 +481,7 @@ Novel channel types can often utilize the `ControlChannel`, but if this is not s
`str`
- ### parameters
+ #### parameters
Parameters which determine the channel index.
@@ -480,6 +492,8 @@ Novel channel types can often utilize the `ControlChannel`, but if this is not s
+### PulseChannel
+
Base class of transmit Channels. Pulses can be played on these channels.
@@ -489,7 +503,7 @@ Novel channel types can often utilize the `ControlChannel`, but if this is not s
**index** (`int`) – Index of channel.
- ### assign
+ #### assign
Return a new channel with the input Parameter assigned to value.
@@ -512,7 +526,7 @@ Novel channel types can often utilize the `ControlChannel`, but if this is not s
[**PulseError**](qiskit.pulse.PulseError "qiskit.pulse.PulseError") – If the parameter is not present in the channel.
- ### index
+ #### index
Return the index of this channel. The index is a label for a control signal line typically mapped trivially to a qubit index. For instance, `DriveChannel(0)` labels the signal line driving the qubit labeled with index 0.
@@ -522,7 +536,7 @@ Novel channel types can often utilize the `ControlChannel`, but if this is not s
`Union`\[`int`, `ParameterExpression`]
- ### is\_parameterized
+ #### is\_parameterized
Return True iff the channel is parameterized.
@@ -532,7 +546,7 @@ Novel channel types can often utilize the `ControlChannel`, but if this is not s
`bool`
- ### name
+ #### name
Return the shorthand alias for this channel, which is based on its type and index.
@@ -542,7 +556,7 @@ Novel channel types can often utilize the `ControlChannel`, but if this is not s
`str`
- ### parameters
+ #### parameters
Parameters which determine the channel index.
@@ -553,6 +567,8 @@ Novel channel types can often utilize the `ControlChannel`, but if this is not s
+### RegisterSlot
+
Classical resister slot channels represent classical registers (low-latency classical memory).
@@ -562,7 +578,7 @@ Novel channel types can often utilize the `ControlChannel`, but if this is not s
**index** (`int`) – Index of channel.
- ### assign
+ #### assign
Return a new channel with the input Parameter assigned to value.
@@ -585,7 +601,7 @@ Novel channel types can often utilize the `ControlChannel`, but if this is not s
[**PulseError**](qiskit.pulse.PulseError "qiskit.pulse.PulseError") – If the parameter is not present in the channel.
- ### index
+ #### index
Return the index of this channel. The index is a label for a control signal line typically mapped trivially to a qubit index. For instance, `DriveChannel(0)` labels the signal line driving the qubit labeled with index 0.
@@ -595,7 +611,7 @@ Novel channel types can often utilize the `ControlChannel`, but if this is not s
`Union`\[`int`, `ParameterExpression`]
- ### is\_parameterized
+ #### is\_parameterized
Return True iff the channel is parameterized.
@@ -605,7 +621,7 @@ Novel channel types can often utilize the `ControlChannel`, but if this is not s
`bool`
- ### name
+ #### name
Return the shorthand alias for this channel, which is based on its type and index.
@@ -615,7 +631,7 @@ Novel channel types can often utilize the `ControlChannel`, but if this is not s
`str`
- ### parameters
+ #### parameters
Parameters which determine the channel index.
@@ -626,12 +642,14 @@ Novel channel types can often utilize the `ControlChannel`, but if this is not s
+### SnapshotChannel
+
Snapshot channels are used to specify instructions for simulators.
Create new snapshot channel.
- ### assign
+ #### assign
Return a new channel with the input Parameter assigned to value.
@@ -654,7 +672,7 @@ Novel channel types can often utilize the `ControlChannel`, but if this is not s
[**PulseError**](qiskit.pulse.PulseError "qiskit.pulse.PulseError") – If the parameter is not present in the channel.
- ### index
+ #### index
Return the index of this channel. The index is a label for a control signal line typically mapped trivially to a qubit index. For instance, `DriveChannel(0)` labels the signal line driving the qubit labeled with index 0.
@@ -664,7 +682,7 @@ Novel channel types can often utilize the `ControlChannel`, but if this is not s
`Union`\[`int`, `ParameterExpression`]
- ### is\_parameterized
+ #### is\_parameterized
Return True iff the channel is parameterized.
@@ -674,7 +692,7 @@ Novel channel types can often utilize the `ControlChannel`, but if this is not s
`bool`
- ### name
+ #### name
Return the shorthand alias for this channel, which is based on its type and index.
@@ -684,7 +702,7 @@ Novel channel types can often utilize the `ControlChannel`, but if this is not s
`str`
- ### parameters
+ #### parameters
Parameters which determine the channel index.
diff --git a/docs/api/qiskit/0.27/logging.mdx b/docs/api/qiskit/0.27/logging.mdx
index 423000acd53..0bbcd2aac82 100644
--- a/docs/api/qiskit/0.27/logging.mdx
+++ b/docs/api/qiskit/0.27/logging.mdx
@@ -22,6 +22,8 @@ python_api_name: qiskit.ignis.logging
| [`IgnisLogging`](qiskit.ignis.logging.IgnisLogging "qiskit.ignis.logging.IgnisLogging")(\[log\_config\_path]) | Singleton class to configure file logging via IgnisLogger |
| [`IgnisLogReader`](qiskit.ignis.logging.IgnisLogReader "qiskit.ignis.logging.IgnisLogReader")() | Class to read from Ignis log files |
+###
+
A logger class for Ignis
diff --git a/docs/api/qiskit/0.27/qiskit.optimization.applications.ising.tsp.mdx b/docs/api/qiskit/0.27/qiskit.optimization.applications.ising.tsp.mdx
index 8d100a34cdc..92d3d3d31f2 100644
--- a/docs/api/qiskit/0.27/qiskit.optimization.applications.ising.tsp.mdx
+++ b/docs/api/qiskit/0.27/qiskit.optimization.applications.ising.tsp.mdx
@@ -30,28 +30,30 @@ Convert symmetric TSP instances into Pauli list Deal with TSPLIB format. It supp
| ------------------------------------------------------------------------------------------------------------------------------------------ | --------------------------------------------------- |
| [`TspData`](#qiskit.optimization.applications.ising.tsp.TspData "qiskit.optimization.applications.ising.tsp.TspData")(name, dim, coord, w) | Create new instance of TspData(name, dim, coord, w) |
+### TspData
+
Create new instance of TspData(name, dim, coord, w)
- ### coord
+ #### coord
Alias for field number 2
- ### count
+ #### count
Return number of occurrences of value.
- ### dim
+ #### dim
Alias for field number 1
- ### index
+ #### index
Return first index of value.
@@ -59,13 +61,13 @@ Convert symmetric TSP instances into Pauli list Deal with TSPLIB format. It supp
Raises ValueError if the value is not present.
- ### name
+ #### name
Alias for field number 0
- ### w
+ #### w
Alias for field number 3
diff --git a/docs/api/qiskit/0.27/qiskit.pulse.channels.mdx b/docs/api/qiskit/0.27/qiskit.pulse.channels.mdx
index a515878eb41..e0b5f43be86 100644
--- a/docs/api/qiskit/0.27/qiskit.pulse.channels.mdx
+++ b/docs/api/qiskit/0.27/qiskit.pulse.channels.mdx
@@ -32,6 +32,8 @@ Novel channel types can often utilize the `ControlChannel`, but if this is not s
| [`RegisterSlot`](#qiskit.pulse.channels.RegisterSlot "qiskit.pulse.channels.RegisterSlot")(index) | Classical resister slot channels represent classical registers (low-latency classical memory). |
| [`SnapshotChannel`](#qiskit.pulse.channels.SnapshotChannel "qiskit.pulse.channels.SnapshotChannel")(\*args, \*\*kwargs) | Snapshot channels are used to specify instructions for simulators. |
+### AcquireChannel
+
Acquire channels are used to collect data.
@@ -41,7 +43,7 @@ Novel channel types can often utilize the `ControlChannel`, but if this is not s
**index** (`int`) – Index of channel.
- ### assign
+ #### assign
Return a new channel with the input Parameter assigned to value.
@@ -64,7 +66,7 @@ Novel channel types can often utilize the `ControlChannel`, but if this is not s
[**PulseError**](qiskit.pulse.PulseError "qiskit.pulse.PulseError") – If the parameter is not present in the channel.
- ### index
+ #### index
Return the index of this channel. The index is a label for a control signal line typically mapped trivially to a qubit index. For instance, `DriveChannel(0)` labels the signal line driving the qubit labeled with index 0.
@@ -74,7 +76,7 @@ Novel channel types can often utilize the `ControlChannel`, but if this is not s
`Union`\[`int`, `ParameterExpression`]
- ### is\_parameterized
+ #### is\_parameterized
Return True iff the channel is parameterized.
@@ -84,7 +86,7 @@ Novel channel types can often utilize the `ControlChannel`, but if this is not s
`bool`
- ### name
+ #### name
Return the shorthand alias for this channel, which is based on its type and index.
@@ -94,7 +96,7 @@ Novel channel types can often utilize the `ControlChannel`, but if this is not s
`str`
- ### parameters
+ #### parameters
Parameters which determine the channel index.
@@ -105,6 +107,8 @@ Novel channel types can often utilize the `ControlChannel`, but if this is not s
+### Channel
+
Base class of channels. Channels provide a Qiskit-side label for typical quantum control hardware signal channels. The final label -> physical channel mapping is the responsibility of the hardware backend. For instance, `DriveChannel(0)` holds instructions which the backend should map to the signal line driving gate operations on the qubit labeled (indexed) 0.
@@ -118,7 +122,7 @@ Novel channel types can often utilize the `ControlChannel`, but if this is not s
**index** (`int`) – Index of channel.
- ### assign
+ #### assign
Return a new channel with the input Parameter assigned to value.
@@ -141,7 +145,7 @@ Novel channel types can often utilize the `ControlChannel`, but if this is not s
[**PulseError**](qiskit.pulse.PulseError "qiskit.pulse.PulseError") – If the parameter is not present in the channel.
- ### index
+ #### index
Return the index of this channel. The index is a label for a control signal line typically mapped trivially to a qubit index. For instance, `DriveChannel(0)` labels the signal line driving the qubit labeled with index 0.
@@ -151,7 +155,7 @@ Novel channel types can often utilize the `ControlChannel`, but if this is not s
`Union`\[`int`, `ParameterExpression`]
- ### is\_parameterized
+ #### is\_parameterized
Return True iff the channel is parameterized.
@@ -161,7 +165,7 @@ Novel channel types can often utilize the `ControlChannel`, but if this is not s
`bool`
- ### name
+ #### name
Return the shorthand alias for this channel, which is based on its type and index.
@@ -171,7 +175,7 @@ Novel channel types can often utilize the `ControlChannel`, but if this is not s
`str`
- ### parameters
+ #### parameters
Parameters which determine the channel index.
@@ -181,13 +185,15 @@ Novel channel types can often utilize the `ControlChannel`, but if this is not s
`Set`
- ### prefix
+ #### prefix
A shorthand string prefix for characterizing the channel type.
+### ControlChannel
+
Control channels provide supplementary control over the qubit to the drive channel. These are often associated with multi-qubit gate operations. They may not map trivially to a particular qubit index.
@@ -197,7 +203,7 @@ Novel channel types can often utilize the `ControlChannel`, but if this is not s
**index** (`int`) – Index of channel.
- ### assign
+ #### assign
Return a new channel with the input Parameter assigned to value.
@@ -220,7 +226,7 @@ Novel channel types can often utilize the `ControlChannel`, but if this is not s
[**PulseError**](qiskit.pulse.PulseError "qiskit.pulse.PulseError") – If the parameter is not present in the channel.
- ### index
+ #### index
Return the index of this channel. The index is a label for a control signal line typically mapped trivially to a qubit index. For instance, `DriveChannel(0)` labels the signal line driving the qubit labeled with index 0.
@@ -230,7 +236,7 @@ Novel channel types can often utilize the `ControlChannel`, but if this is not s
`Union`\[`int`, `ParameterExpression`]
- ### is\_parameterized
+ #### is\_parameterized
Return True iff the channel is parameterized.
@@ -240,7 +246,7 @@ Novel channel types can often utilize the `ControlChannel`, but if this is not s
`bool`
- ### name
+ #### name
Return the shorthand alias for this channel, which is based on its type and index.
@@ -250,7 +256,7 @@ Novel channel types can often utilize the `ControlChannel`, but if this is not s
`str`
- ### parameters
+ #### parameters
Parameters which determine the channel index.
@@ -261,6 +267,8 @@ Novel channel types can often utilize the `ControlChannel`, but if this is not s
+### DriveChannel
+
Drive channels transmit signals to qubits which enact gate operations.
@@ -270,7 +278,7 @@ Novel channel types can often utilize the `ControlChannel`, but if this is not s
**index** (`int`) – Index of channel.
- ### assign
+ #### assign
Return a new channel with the input Parameter assigned to value.
@@ -293,7 +301,7 @@ Novel channel types can often utilize the `ControlChannel`, but if this is not s
[**PulseError**](qiskit.pulse.PulseError "qiskit.pulse.PulseError") – If the parameter is not present in the channel.
- ### index
+ #### index
Return the index of this channel. The index is a label for a control signal line typically mapped trivially to a qubit index. For instance, `DriveChannel(0)` labels the signal line driving the qubit labeled with index 0.
@@ -303,7 +311,7 @@ Novel channel types can often utilize the `ControlChannel`, but if this is not s
`Union`\[`int`, `ParameterExpression`]
- ### is\_parameterized
+ #### is\_parameterized
Return True iff the channel is parameterized.
@@ -313,7 +321,7 @@ Novel channel types can often utilize the `ControlChannel`, but if this is not s
`bool`
- ### name
+ #### name
Return the shorthand alias for this channel, which is based on its type and index.
@@ -323,7 +331,7 @@ Novel channel types can often utilize the `ControlChannel`, but if this is not s
`str`
- ### parameters
+ #### parameters
Parameters which determine the channel index.
@@ -334,6 +342,8 @@ Novel channel types can often utilize the `ControlChannel`, but if this is not s
+### MeasureChannel
+
Measure channels transmit measurement stimulus pulses for readout.
@@ -343,7 +353,7 @@ Novel channel types can often utilize the `ControlChannel`, but if this is not s
**index** (`int`) – Index of channel.
- ### assign
+ #### assign
Return a new channel with the input Parameter assigned to value.
@@ -366,7 +376,7 @@ Novel channel types can often utilize the `ControlChannel`, but if this is not s
[**PulseError**](qiskit.pulse.PulseError "qiskit.pulse.PulseError") – If the parameter is not present in the channel.
- ### index
+ #### index
Return the index of this channel. The index is a label for a control signal line typically mapped trivially to a qubit index. For instance, `DriveChannel(0)` labels the signal line driving the qubit labeled with index 0.
@@ -376,7 +386,7 @@ Novel channel types can often utilize the `ControlChannel`, but if this is not s
`Union`\[`int`, `ParameterExpression`]
- ### is\_parameterized
+ #### is\_parameterized
Return True iff the channel is parameterized.
@@ -386,7 +396,7 @@ Novel channel types can often utilize the `ControlChannel`, but if this is not s
`bool`
- ### name
+ #### name
Return the shorthand alias for this channel, which is based on its type and index.
@@ -396,7 +406,7 @@ Novel channel types can often utilize the `ControlChannel`, but if this is not s
`str`
- ### parameters
+ #### parameters
Parameters which determine the channel index.
@@ -407,6 +417,8 @@ Novel channel types can often utilize the `ControlChannel`, but if this is not s
+### MemorySlot
+
Memory slot channels represent classical memory storage.
@@ -416,7 +428,7 @@ Novel channel types can often utilize the `ControlChannel`, but if this is not s
**index** (`int`) – Index of channel.
- ### assign
+ #### assign
Return a new channel with the input Parameter assigned to value.
@@ -439,7 +451,7 @@ Novel channel types can often utilize the `ControlChannel`, but if this is not s
[**PulseError**](qiskit.pulse.PulseError "qiskit.pulse.PulseError") – If the parameter is not present in the channel.
- ### index
+ #### index
Return the index of this channel. The index is a label for a control signal line typically mapped trivially to a qubit index. For instance, `DriveChannel(0)` labels the signal line driving the qubit labeled with index 0.
@@ -449,7 +461,7 @@ Novel channel types can often utilize the `ControlChannel`, but if this is not s
`Union`\[`int`, `ParameterExpression`]
- ### is\_parameterized
+ #### is\_parameterized
Return True iff the channel is parameterized.
@@ -459,7 +471,7 @@ Novel channel types can often utilize the `ControlChannel`, but if this is not s
`bool`
- ### name
+ #### name
Return the shorthand alias for this channel, which is based on its type and index.
@@ -469,7 +481,7 @@ Novel channel types can often utilize the `ControlChannel`, but if this is not s
`str`
- ### parameters
+ #### parameters
Parameters which determine the channel index.
@@ -480,6 +492,8 @@ Novel channel types can often utilize the `ControlChannel`, but if this is not s
+### PulseChannel
+
Base class of transmit Channels. Pulses can be played on these channels.
@@ -489,7 +503,7 @@ Novel channel types can often utilize the `ControlChannel`, but if this is not s
**index** (`int`) – Index of channel.
- ### assign
+ #### assign
Return a new channel with the input Parameter assigned to value.
@@ -512,7 +526,7 @@ Novel channel types can often utilize the `ControlChannel`, but if this is not s
[**PulseError**](qiskit.pulse.PulseError "qiskit.pulse.PulseError") – If the parameter is not present in the channel.
- ### index
+ #### index
Return the index of this channel. The index is a label for a control signal line typically mapped trivially to a qubit index. For instance, `DriveChannel(0)` labels the signal line driving the qubit labeled with index 0.
@@ -522,7 +536,7 @@ Novel channel types can often utilize the `ControlChannel`, but if this is not s
`Union`\[`int`, `ParameterExpression`]
- ### is\_parameterized
+ #### is\_parameterized
Return True iff the channel is parameterized.
@@ -532,7 +546,7 @@ Novel channel types can often utilize the `ControlChannel`, but if this is not s
`bool`
- ### name
+ #### name
Return the shorthand alias for this channel, which is based on its type and index.
@@ -542,7 +556,7 @@ Novel channel types can often utilize the `ControlChannel`, but if this is not s
`str`
- ### parameters
+ #### parameters
Parameters which determine the channel index.
@@ -553,6 +567,8 @@ Novel channel types can often utilize the `ControlChannel`, but if this is not s
+### RegisterSlot
+
Classical resister slot channels represent classical registers (low-latency classical memory).
@@ -562,7 +578,7 @@ Novel channel types can often utilize the `ControlChannel`, but if this is not s
**index** (`int`) – Index of channel.
- ### assign
+ #### assign
Return a new channel with the input Parameter assigned to value.
@@ -585,7 +601,7 @@ Novel channel types can often utilize the `ControlChannel`, but if this is not s
[**PulseError**](qiskit.pulse.PulseError "qiskit.pulse.PulseError") – If the parameter is not present in the channel.
- ### index
+ #### index
Return the index of this channel. The index is a label for a control signal line typically mapped trivially to a qubit index. For instance, `DriveChannel(0)` labels the signal line driving the qubit labeled with index 0.
@@ -595,7 +611,7 @@ Novel channel types can often utilize the `ControlChannel`, but if this is not s
`Union`\[`int`, `ParameterExpression`]
- ### is\_parameterized
+ #### is\_parameterized
Return True iff the channel is parameterized.
@@ -605,7 +621,7 @@ Novel channel types can often utilize the `ControlChannel`, but if this is not s
`bool`
- ### name
+ #### name
Return the shorthand alias for this channel, which is based on its type and index.
@@ -615,7 +631,7 @@ Novel channel types can often utilize the `ControlChannel`, but if this is not s
`str`
- ### parameters
+ #### parameters
Parameters which determine the channel index.
@@ -626,12 +642,14 @@ Novel channel types can often utilize the `ControlChannel`, but if this is not s
+### SnapshotChannel
+
Snapshot channels are used to specify instructions for simulators.
Create new snapshot channel.
- ### assign
+ #### assign
Return a new channel with the input Parameter assigned to value.
@@ -654,7 +672,7 @@ Novel channel types can often utilize the `ControlChannel`, but if this is not s
[**PulseError**](qiskit.pulse.PulseError "qiskit.pulse.PulseError") – If the parameter is not present in the channel.
- ### index
+ #### index
Return the index of this channel. The index is a label for a control signal line typically mapped trivially to a qubit index. For instance, `DriveChannel(0)` labels the signal line driving the qubit labeled with index 0.
@@ -664,7 +682,7 @@ Novel channel types can often utilize the `ControlChannel`, but if this is not s
`Union`\[`int`, `ParameterExpression`]
- ### is\_parameterized
+ #### is\_parameterized
Return True iff the channel is parameterized.
@@ -674,7 +692,7 @@ Novel channel types can often utilize the `ControlChannel`, but if this is not s
`bool`
- ### name
+ #### name
Return the shorthand alias for this channel, which is based on its type and index.
@@ -684,7 +702,7 @@ Novel channel types can often utilize the `ControlChannel`, but if this is not s
`str`
- ### parameters
+ #### parameters
Parameters which determine the channel index.
diff --git a/docs/api/qiskit/0.28/logging.mdx b/docs/api/qiskit/0.28/logging.mdx
index 423000acd53..0bbcd2aac82 100644
--- a/docs/api/qiskit/0.28/logging.mdx
+++ b/docs/api/qiskit/0.28/logging.mdx
@@ -22,6 +22,8 @@ python_api_name: qiskit.ignis.logging
| [`IgnisLogging`](qiskit.ignis.logging.IgnisLogging "qiskit.ignis.logging.IgnisLogging")(\[log\_config\_path]) | Singleton class to configure file logging via IgnisLogger |
| [`IgnisLogReader`](qiskit.ignis.logging.IgnisLogReader "qiskit.ignis.logging.IgnisLogReader")() | Class to read from Ignis log files |
+###
+
A logger class for Ignis
diff --git a/docs/api/qiskit/0.28/qiskit.optimization.applications.ising.tsp.mdx b/docs/api/qiskit/0.28/qiskit.optimization.applications.ising.tsp.mdx
index 8d100a34cdc..92d3d3d31f2 100644
--- a/docs/api/qiskit/0.28/qiskit.optimization.applications.ising.tsp.mdx
+++ b/docs/api/qiskit/0.28/qiskit.optimization.applications.ising.tsp.mdx
@@ -30,28 +30,30 @@ Convert symmetric TSP instances into Pauli list Deal with TSPLIB format. It supp
| ------------------------------------------------------------------------------------------------------------------------------------------ | --------------------------------------------------- |
| [`TspData`](#qiskit.optimization.applications.ising.tsp.TspData "qiskit.optimization.applications.ising.tsp.TspData")(name, dim, coord, w) | Create new instance of TspData(name, dim, coord, w) |
+### TspData
+
Create new instance of TspData(name, dim, coord, w)
- ### coord
+ #### coord
Alias for field number 2
- ### count
+ #### count
Return number of occurrences of value.
- ### dim
+ #### dim
Alias for field number 1
- ### index
+ #### index
Return first index of value.
@@ -59,13 +61,13 @@ Convert symmetric TSP instances into Pauli list Deal with TSPLIB format. It supp
Raises ValueError if the value is not present.
- ### name
+ #### name
Alias for field number 0
- ### w
+ #### w
Alias for field number 3
diff --git a/docs/api/qiskit/0.28/qiskit.pulse.channels.mdx b/docs/api/qiskit/0.28/qiskit.pulse.channels.mdx
index 606b0124c8a..310982e986c 100644
--- a/docs/api/qiskit/0.28/qiskit.pulse.channels.mdx
+++ b/docs/api/qiskit/0.28/qiskit.pulse.channels.mdx
@@ -32,6 +32,8 @@ Novel channel types can often utilize the `ControlChannel`, but if this is not s
| [`RegisterSlot`](#qiskit.pulse.channels.RegisterSlot "qiskit.pulse.channels.RegisterSlot")(index) | Classical resister slot channels represent classical registers (low-latency classical memory). |
| [`SnapshotChannel`](#qiskit.pulse.channels.SnapshotChannel "qiskit.pulse.channels.SnapshotChannel")(\*args, \*\*kwargs) | Snapshot channels are used to specify instructions for simulators. |
+### AcquireChannel
+
Acquire channels are used to collect data.
@@ -41,7 +43,7 @@ Novel channel types can often utilize the `ControlChannel`, but if this is not s
**index** (`int`) – Index of channel.
- ### assign
+ #### assign
Return a new channel with the input Parameter assigned to value.
@@ -64,7 +66,7 @@ Novel channel types can often utilize the `ControlChannel`, but if this is not s
[**PulseError**](qiskit.pulse.PulseError "qiskit.pulse.PulseError") – If the parameter is not present in the channel.
- ### index
+ #### index
Return the index of this channel. The index is a label for a control signal line typically mapped trivially to a qubit index. For instance, `DriveChannel(0)` labels the signal line driving the qubit labeled with index 0.
@@ -74,7 +76,7 @@ Novel channel types can often utilize the `ControlChannel`, but if this is not s
`Union`\[`int`, `ParameterExpression`]
- ### is\_parameterized
+ #### is\_parameterized
Return True iff the channel is parameterized.
@@ -84,7 +86,7 @@ Novel channel types can often utilize the `ControlChannel`, but if this is not s
`bool`
- ### name
+ #### name
Return the shorthand alias for this channel, which is based on its type and index.
@@ -94,7 +96,7 @@ Novel channel types can often utilize the `ControlChannel`, but if this is not s
`str`
- ### parameters
+ #### parameters
Parameters which determine the channel index.
@@ -105,6 +107,8 @@ Novel channel types can often utilize the `ControlChannel`, but if this is not s
+### Channel
+
Base class of channels. Channels provide a Qiskit-side label for typical quantum control hardware signal channels. The final label -> physical channel mapping is the responsibility of the hardware backend. For instance, `DriveChannel(0)` holds instructions which the backend should map to the signal line driving gate operations on the qubit labeled (indexed) 0.
@@ -118,7 +122,7 @@ Novel channel types can often utilize the `ControlChannel`, but if this is not s
**index** (`int`) – Index of channel.
- ### assign
+ #### assign
Return a new channel with the input Parameter assigned to value.
@@ -141,7 +145,7 @@ Novel channel types can often utilize the `ControlChannel`, but if this is not s
[**PulseError**](qiskit.pulse.PulseError "qiskit.pulse.PulseError") – If the parameter is not present in the channel.
- ### index
+ #### index
Return the index of this channel. The index is a label for a control signal line typically mapped trivially to a qubit index. For instance, `DriveChannel(0)` labels the signal line driving the qubit labeled with index 0.
@@ -151,7 +155,7 @@ Novel channel types can often utilize the `ControlChannel`, but if this is not s
`Union`\[`int`, `ParameterExpression`]
- ### is\_parameterized
+ #### is\_parameterized
Return True iff the channel is parameterized.
@@ -161,7 +165,7 @@ Novel channel types can often utilize the `ControlChannel`, but if this is not s
`bool`
- ### name
+ #### name
Return the shorthand alias for this channel, which is based on its type and index.
@@ -171,7 +175,7 @@ Novel channel types can often utilize the `ControlChannel`, but if this is not s
`str`
- ### parameters
+ #### parameters
Parameters which determine the channel index.
@@ -181,13 +185,15 @@ Novel channel types can often utilize the `ControlChannel`, but if this is not s
`Set`
- ### prefix
+ #### prefix
A shorthand string prefix for characterizing the channel type.
+### ControlChannel
+
Control channels provide supplementary control over the qubit to the drive channel. These are often associated with multi-qubit gate operations. They may not map trivially to a particular qubit index.
@@ -197,7 +203,7 @@ Novel channel types can often utilize the `ControlChannel`, but if this is not s
**index** (`int`) – Index of channel.
- ### assign
+ #### assign
Return a new channel with the input Parameter assigned to value.
@@ -220,7 +226,7 @@ Novel channel types can often utilize the `ControlChannel`, but if this is not s
[**PulseError**](qiskit.pulse.PulseError "qiskit.pulse.PulseError") – If the parameter is not present in the channel.
- ### index
+ #### index
Return the index of this channel. The index is a label for a control signal line typically mapped trivially to a qubit index. For instance, `DriveChannel(0)` labels the signal line driving the qubit labeled with index 0.
@@ -230,7 +236,7 @@ Novel channel types can often utilize the `ControlChannel`, but if this is not s
`Union`\[`int`, `ParameterExpression`]
- ### is\_parameterized
+ #### is\_parameterized
Return True iff the channel is parameterized.
@@ -240,7 +246,7 @@ Novel channel types can often utilize the `ControlChannel`, but if this is not s
`bool`
- ### name
+ #### name
Return the shorthand alias for this channel, which is based on its type and index.
@@ -250,7 +256,7 @@ Novel channel types can often utilize the `ControlChannel`, but if this is not s
`str`
- ### parameters
+ #### parameters
Parameters which determine the channel index.
@@ -261,6 +267,8 @@ Novel channel types can often utilize the `ControlChannel`, but if this is not s
+### DriveChannel
+
Drive channels transmit signals to qubits which enact gate operations.
@@ -270,7 +278,7 @@ Novel channel types can often utilize the `ControlChannel`, but if this is not s
**index** (`int`) – Index of channel.
- ### assign
+ #### assign
Return a new channel with the input Parameter assigned to value.
@@ -293,7 +301,7 @@ Novel channel types can often utilize the `ControlChannel`, but if this is not s
[**PulseError**](qiskit.pulse.PulseError "qiskit.pulse.PulseError") – If the parameter is not present in the channel.
- ### index
+ #### index
Return the index of this channel. The index is a label for a control signal line typically mapped trivially to a qubit index. For instance, `DriveChannel(0)` labels the signal line driving the qubit labeled with index 0.
@@ -303,7 +311,7 @@ Novel channel types can often utilize the `ControlChannel`, but if this is not s
`Union`\[`int`, `ParameterExpression`]
- ### is\_parameterized
+ #### is\_parameterized
Return True iff the channel is parameterized.
@@ -313,7 +321,7 @@ Novel channel types can often utilize the `ControlChannel`, but if this is not s
`bool`
- ### name
+ #### name
Return the shorthand alias for this channel, which is based on its type and index.
@@ -323,7 +331,7 @@ Novel channel types can often utilize the `ControlChannel`, but if this is not s
`str`
- ### parameters
+ #### parameters
Parameters which determine the channel index.
@@ -334,6 +342,8 @@ Novel channel types can often utilize the `ControlChannel`, but if this is not s
+### MeasureChannel
+
Measure channels transmit measurement stimulus pulses for readout.
@@ -343,7 +353,7 @@ Novel channel types can often utilize the `ControlChannel`, but if this is not s
**index** (`int`) – Index of channel.
- ### assign
+ #### assign
Return a new channel with the input Parameter assigned to value.
@@ -366,7 +376,7 @@ Novel channel types can often utilize the `ControlChannel`, but if this is not s
[**PulseError**](qiskit.pulse.PulseError "qiskit.pulse.PulseError") – If the parameter is not present in the channel.
- ### index
+ #### index
Return the index of this channel. The index is a label for a control signal line typically mapped trivially to a qubit index. For instance, `DriveChannel(0)` labels the signal line driving the qubit labeled with index 0.
@@ -376,7 +386,7 @@ Novel channel types can often utilize the `ControlChannel`, but if this is not s
`Union`\[`int`, `ParameterExpression`]
- ### is\_parameterized
+ #### is\_parameterized
Return True iff the channel is parameterized.
@@ -386,7 +396,7 @@ Novel channel types can often utilize the `ControlChannel`, but if this is not s
`bool`
- ### name
+ #### name
Return the shorthand alias for this channel, which is based on its type and index.
@@ -396,7 +406,7 @@ Novel channel types can often utilize the `ControlChannel`, but if this is not s
`str`
- ### parameters
+ #### parameters
Parameters which determine the channel index.
@@ -407,6 +417,8 @@ Novel channel types can often utilize the `ControlChannel`, but if this is not s
+### MemorySlot
+
Memory slot channels represent classical memory storage.
@@ -416,7 +428,7 @@ Novel channel types can often utilize the `ControlChannel`, but if this is not s
**index** (`int`) – Index of channel.
- ### assign
+ #### assign
Return a new channel with the input Parameter assigned to value.
@@ -439,7 +451,7 @@ Novel channel types can often utilize the `ControlChannel`, but if this is not s
[**PulseError**](qiskit.pulse.PulseError "qiskit.pulse.PulseError") – If the parameter is not present in the channel.
- ### index
+ #### index
Return the index of this channel. The index is a label for a control signal line typically mapped trivially to a qubit index. For instance, `DriveChannel(0)` labels the signal line driving the qubit labeled with index 0.
@@ -449,7 +461,7 @@ Novel channel types can often utilize the `ControlChannel`, but if this is not s
`Union`\[`int`, `ParameterExpression`]
- ### is\_parameterized
+ #### is\_parameterized
Return True iff the channel is parameterized.
@@ -459,7 +471,7 @@ Novel channel types can often utilize the `ControlChannel`, but if this is not s
`bool`
- ### name
+ #### name
Return the shorthand alias for this channel, which is based on its type and index.
@@ -469,7 +481,7 @@ Novel channel types can often utilize the `ControlChannel`, but if this is not s
`str`
- ### parameters
+ #### parameters
Parameters which determine the channel index.
@@ -480,6 +492,8 @@ Novel channel types can often utilize the `ControlChannel`, but if this is not s
+### PulseChannel
+
Base class of transmit Channels. Pulses can be played on these channels.
@@ -489,7 +503,7 @@ Novel channel types can often utilize the `ControlChannel`, but if this is not s
**index** (`int`) – Index of channel.
- ### assign
+ #### assign
Return a new channel with the input Parameter assigned to value.
@@ -512,7 +526,7 @@ Novel channel types can often utilize the `ControlChannel`, but if this is not s
[**PulseError**](qiskit.pulse.PulseError "qiskit.pulse.PulseError") – If the parameter is not present in the channel.
- ### index
+ #### index
Return the index of this channel. The index is a label for a control signal line typically mapped trivially to a qubit index. For instance, `DriveChannel(0)` labels the signal line driving the qubit labeled with index 0.
@@ -522,7 +536,7 @@ Novel channel types can often utilize the `ControlChannel`, but if this is not s
`Union`\[`int`, `ParameterExpression`]
- ### is\_parameterized
+ #### is\_parameterized
Return True iff the channel is parameterized.
@@ -532,7 +546,7 @@ Novel channel types can often utilize the `ControlChannel`, but if this is not s
`bool`
- ### name
+ #### name
Return the shorthand alias for this channel, which is based on its type and index.
@@ -542,7 +556,7 @@ Novel channel types can often utilize the `ControlChannel`, but if this is not s
`str`
- ### parameters
+ #### parameters
Parameters which determine the channel index.
@@ -553,6 +567,8 @@ Novel channel types can often utilize the `ControlChannel`, but if this is not s
+### RegisterSlot
+
Classical resister slot channels represent classical registers (low-latency classical memory).
@@ -562,7 +578,7 @@ Novel channel types can often utilize the `ControlChannel`, but if this is not s
**index** (`int`) – Index of channel.
- ### assign
+ #### assign
Return a new channel with the input Parameter assigned to value.
@@ -585,7 +601,7 @@ Novel channel types can often utilize the `ControlChannel`, but if this is not s
[**PulseError**](qiskit.pulse.PulseError "qiskit.pulse.PulseError") – If the parameter is not present in the channel.
- ### index
+ #### index
Return the index of this channel. The index is a label for a control signal line typically mapped trivially to a qubit index. For instance, `DriveChannel(0)` labels the signal line driving the qubit labeled with index 0.
@@ -595,7 +611,7 @@ Novel channel types can often utilize the `ControlChannel`, but if this is not s
`Union`\[`int`, `ParameterExpression`]
- ### is\_parameterized
+ #### is\_parameterized
Return True iff the channel is parameterized.
@@ -605,7 +621,7 @@ Novel channel types can often utilize the `ControlChannel`, but if this is not s
`bool`
- ### name
+ #### name
Return the shorthand alias for this channel, which is based on its type and index.
@@ -615,7 +631,7 @@ Novel channel types can often utilize the `ControlChannel`, but if this is not s
`str`
- ### parameters
+ #### parameters
Parameters which determine the channel index.
@@ -626,12 +642,14 @@ Novel channel types can often utilize the `ControlChannel`, but if this is not s
+### SnapshotChannel
+
Snapshot channels are used to specify instructions for simulators.
Create new snapshot channel.
- ### assign
+ #### assign
Return a new channel with the input Parameter assigned to value.
@@ -654,7 +672,7 @@ Novel channel types can often utilize the `ControlChannel`, but if this is not s
[**PulseError**](qiskit.pulse.PulseError "qiskit.pulse.PulseError") – If the parameter is not present in the channel.
- ### index
+ #### index
Return the index of this channel. The index is a label for a control signal line typically mapped trivially to a qubit index. For instance, `DriveChannel(0)` labels the signal line driving the qubit labeled with index 0.
@@ -664,7 +682,7 @@ Novel channel types can often utilize the `ControlChannel`, but if this is not s
`Union`\[`int`, `ParameterExpression`]
- ### is\_parameterized
+ #### is\_parameterized
Return True iff the channel is parameterized.
@@ -674,7 +692,7 @@ Novel channel types can often utilize the `ControlChannel`, but if this is not s
`bool`
- ### name
+ #### name
Return the shorthand alias for this channel, which is based on its type and index.
@@ -684,7 +702,7 @@ Novel channel types can often utilize the `ControlChannel`, but if this is not s
`str`
- ### parameters
+ #### parameters
Parameters which determine the channel index.
diff --git a/docs/api/qiskit/0.29/logging.mdx b/docs/api/qiskit/0.29/logging.mdx
index 423000acd53..0bbcd2aac82 100644
--- a/docs/api/qiskit/0.29/logging.mdx
+++ b/docs/api/qiskit/0.29/logging.mdx
@@ -22,6 +22,8 @@ python_api_name: qiskit.ignis.logging
| [`IgnisLogging`](qiskit.ignis.logging.IgnisLogging "qiskit.ignis.logging.IgnisLogging")(\[log\_config\_path]) | Singleton class to configure file logging via IgnisLogger |
| [`IgnisLogReader`](qiskit.ignis.logging.IgnisLogReader "qiskit.ignis.logging.IgnisLogReader")() | Class to read from Ignis log files |
+###
+
A logger class for Ignis
diff --git a/docs/api/qiskit/0.30/logging.mdx b/docs/api/qiskit/0.30/logging.mdx
index 423000acd53..0bbcd2aac82 100644
--- a/docs/api/qiskit/0.30/logging.mdx
+++ b/docs/api/qiskit/0.30/logging.mdx
@@ -22,6 +22,8 @@ python_api_name: qiskit.ignis.logging
| [`IgnisLogging`](qiskit.ignis.logging.IgnisLogging "qiskit.ignis.logging.IgnisLogging")(\[log\_config\_path]) | Singleton class to configure file logging via IgnisLogger |
| [`IgnisLogReader`](qiskit.ignis.logging.IgnisLogReader "qiskit.ignis.logging.IgnisLogReader")() | Class to read from Ignis log files |
+###
+
A logger class for Ignis
diff --git a/docs/api/qiskit/0.31/logging.mdx b/docs/api/qiskit/0.31/logging.mdx
index 423000acd53..0bbcd2aac82 100644
--- a/docs/api/qiskit/0.31/logging.mdx
+++ b/docs/api/qiskit/0.31/logging.mdx
@@ -22,6 +22,8 @@ python_api_name: qiskit.ignis.logging
| [`IgnisLogging`](qiskit.ignis.logging.IgnisLogging "qiskit.ignis.logging.IgnisLogging")(\[log\_config\_path]) | Singleton class to configure file logging via IgnisLogger |
| [`IgnisLogReader`](qiskit.ignis.logging.IgnisLogReader "qiskit.ignis.logging.IgnisLogReader")() | Class to read from Ignis log files |
+###
+
A logger class for Ignis
diff --git a/docs/api/qiskit/0.32/logging.mdx b/docs/api/qiskit/0.32/logging.mdx
index 423000acd53..0bbcd2aac82 100644
--- a/docs/api/qiskit/0.32/logging.mdx
+++ b/docs/api/qiskit/0.32/logging.mdx
@@ -22,6 +22,8 @@ python_api_name: qiskit.ignis.logging
| [`IgnisLogging`](qiskit.ignis.logging.IgnisLogging "qiskit.ignis.logging.IgnisLogging")(\[log\_config\_path]) | Singleton class to configure file logging via IgnisLogger |
| [`IgnisLogReader`](qiskit.ignis.logging.IgnisLogReader "qiskit.ignis.logging.IgnisLogReader")() | Class to read from Ignis log files |
+###
+
A logger class for Ignis
diff --git a/docs/api/qiskit/0.33/logging.mdx b/docs/api/qiskit/0.33/logging.mdx
index 0f21d53ffeb..387a3858281 100644
--- a/docs/api/qiskit/0.33/logging.mdx
+++ b/docs/api/qiskit/0.33/logging.mdx
@@ -22,6 +22,8 @@ python_api_name: qiskit.ignis.logging
| [`IgnisLogging`](qiskit.ignis.logging.IgnisLogging "qiskit.ignis.logging.IgnisLogging")(\[log\_config\_path]) | Singleton class to configure file logging via IgnisLogger |
| [`IgnisLogReader`](qiskit.ignis.logging.IgnisLogReader "qiskit.ignis.logging.IgnisLogReader")() | Class to read from Ignis log files |
+###
+
A logger class for Ignis
diff --git a/docs/api/qiskit/0.33/pulse.mdx b/docs/api/qiskit/0.33/pulse.mdx
index 53ec8416d3c..e16f8733c2e 100644
--- a/docs/api/qiskit/0.33/pulse.mdx
+++ b/docs/api/qiskit/0.33/pulse.mdx
@@ -64,6 +64,8 @@ An instruction can be added to a [`Schedule`](qiskit.pulse.Schedule "qiskit.puls
These are all instances of the same base class:
+### Instruction
+
The smallest schedulable unit: a single instruction. It has a fixed duration and specified channels.
@@ -137,6 +139,8 @@ Novel channel types can often utilize the [`ControlChannel`](qiskit.pulse.channe
All channels are children of the same abstract base class:
+### Channel
+
Base class of channels. Channels provide a Qiskit-side label for typical quantum control hardware signal channels. The final label -> physical channel mapping is the responsibility of the hardware backend. For instance, `DriveChannel(0)` holds instructions which the backend should map to the signal line driving gate operations on the qubit labeled (indexed) 0.
@@ -186,6 +190,8 @@ The alignment transforms define alignment policies of instructions in [`Schedule
These are all subtypes of the abstract base class [`AlignmentKind`](#qiskit.pulse.transforms.AlignmentKind "qiskit.pulse.transforms.AlignmentKind").
+#### AlignmentKind
+
An abstract class for schedule alignment.
@@ -626,6 +632,8 @@ There are 1e-06 seconds in 4500 samples.
## Exceptions
+### PulseError
+
Errors raised by the pulse module.
diff --git a/docs/api/qiskit/0.35/logging.mdx b/docs/api/qiskit/0.35/logging.mdx
index 0f21d53ffeb..387a3858281 100644
--- a/docs/api/qiskit/0.35/logging.mdx
+++ b/docs/api/qiskit/0.35/logging.mdx
@@ -22,6 +22,8 @@ python_api_name: qiskit.ignis.logging
| [`IgnisLogging`](qiskit.ignis.logging.IgnisLogging "qiskit.ignis.logging.IgnisLogging")(\[log\_config\_path]) | Singleton class to configure file logging via IgnisLogger |
| [`IgnisLogReader`](qiskit.ignis.logging.IgnisLogReader "qiskit.ignis.logging.IgnisLogReader")() | Class to read from Ignis log files |
+###
+
A logger class for Ignis
diff --git a/docs/api/qiskit/0.35/pulse.mdx b/docs/api/qiskit/0.35/pulse.mdx
index dba8ef19e66..df71f32d939 100644
--- a/docs/api/qiskit/0.35/pulse.mdx
+++ b/docs/api/qiskit/0.35/pulse.mdx
@@ -64,6 +64,8 @@ An instruction can be added to a [`Schedule`](qiskit.pulse.Schedule "qiskit.puls
These are all instances of the same base class:
+### Instruction
+
The smallest schedulable unit: a single instruction. It has a fixed duration and specified channels.
@@ -137,6 +139,8 @@ Novel channel types can often utilize the [`ControlChannel`](qiskit.pulse.channe
All channels are children of the same abstract base class:
+### Channel
+
Base class of channels. Channels provide a Qiskit-side label for typical quantum control hardware signal channels. The final label -> physical channel mapping is the responsibility of the hardware backend. For instance, `DriveChannel(0)` holds instructions which the backend should map to the signal line driving gate operations on the qubit labeled (indexed) 0.
@@ -186,6 +190,8 @@ The alignment transforms define alignment policies of instructions in [`Schedule
These are all subtypes of the abstract base class [`AlignmentKind`](#qiskit.pulse.transforms.AlignmentKind "qiskit.pulse.transforms.AlignmentKind").
+#### AlignmentKind
+
An abstract class for schedule alignment.
@@ -626,6 +632,8 @@ There are 1e-06 seconds in 4500 samples.
## Exceptions
+### PulseError
+
Errors raised by the pulse module.
diff --git a/docs/api/qiskit/0.35/utils.mdx b/docs/api/qiskit/0.35/utils.mdx
index e44a6a98d5e..40ab693439a 100644
--- a/docs/api/qiskit/0.35/utils.mdx
+++ b/docs/api/qiskit/0.35/utils.mdx
@@ -105,6 +105,8 @@ Each of the lazy checkers is an instance of [`LazyDependencyManager`](#qiskit.ut
from qiskit.utils import LazyImportTester
```
+#### LazyDependencyManager
+
A mananger for some optional features that are expensive to import, or to verify the existence of.
@@ -143,7 +145,7 @@ from qiskit.utils import LazyImportTester
* **install** – how to install this optional dependency. Passed to `MissingOptionalLibraryError` as the `pip_install` parameter.
* **msg** – an extra message to include in the error raised if this is required.
- ### \_is\_available
+ ##### \_is\_available
Subclasses of [`LazyDependencyManager`](#qiskit.utils.LazyDependencyManager "qiskit.utils.LazyDependencyManager") should override this method to implement the actual test of availability. This method should return a Boolean, where `True` indicates that the dependency was available. This method will only ever be called once.
@@ -153,13 +155,13 @@ from qiskit.utils import LazyImportTester
`bool`
- ### disable\_locally
+ ##### disable\_locally
Create a context, during which the value of the dependency manager will be `False`. This means that within the context, any calls to this object will behave as if the dependency is not available, including raising errors. It is valid to call this method whether or not the dependency has already been evaluated. This is most useful in tests.
- ### require\_in\_call
+ ##### require\_in\_call
Create a decorator for callables that requires that the dependency is available when the decorated function or method is called.
@@ -177,7 +179,7 @@ from qiskit.utils import LazyImportTester
Callable
- ### require\_in\_instance
+ ##### require\_in\_instance
A class decorator that requires the dependency is available when the class is initialised. This decorator can be used even if the class does not define an `__init__` method.
@@ -195,7 +197,7 @@ from qiskit.utils import LazyImportTester
Callable
- ### require\_now
+ ##### require\_now
Eagerly attempt to import the dependencies in this object, and raise an exception if they cannot be imported.
@@ -210,6 +212,8 @@ from qiskit.utils import LazyImportTester
+#### LazyImportTester
+
A lazy dependency tester for importable Python modules. Any required objects will only be imported at the point that this object is tested for its Boolean value.
@@ -222,6 +226,8 @@ from qiskit.utils import LazyImportTester
**ValueError** – if no modules are given.
+#### LazySubprocessTester
+
A lazy checker that a command-line tool is available. The command will only be run once, at the point that this object is checked for its Boolean value.
diff --git a/docs/api/qiskit/0.36/logging.mdx b/docs/api/qiskit/0.36/logging.mdx
index 0f21d53ffeb..387a3858281 100644
--- a/docs/api/qiskit/0.36/logging.mdx
+++ b/docs/api/qiskit/0.36/logging.mdx
@@ -22,6 +22,8 @@ python_api_name: qiskit.ignis.logging
| [`IgnisLogging`](qiskit.ignis.logging.IgnisLogging "qiskit.ignis.logging.IgnisLogging")(\[log\_config\_path]) | Singleton class to configure file logging via IgnisLogger |
| [`IgnisLogReader`](qiskit.ignis.logging.IgnisLogReader "qiskit.ignis.logging.IgnisLogReader")() | Class to read from Ignis log files |
+###
+
A logger class for Ignis
diff --git a/docs/api/qiskit/0.36/pulse.mdx b/docs/api/qiskit/0.36/pulse.mdx
index c13b89b422b..6be4035bb43 100644
--- a/docs/api/qiskit/0.36/pulse.mdx
+++ b/docs/api/qiskit/0.36/pulse.mdx
@@ -64,6 +64,8 @@ An instruction can be added to a [`Schedule`](qiskit.pulse.Schedule "qiskit.puls
These are all instances of the same base class:
+### Instruction
+
The smallest schedulable unit: a single instruction. It has a fixed duration and specified channels.
@@ -137,6 +139,8 @@ Novel channel types can often utilize the [`ControlChannel`](qiskit.pulse.channe
All channels are children of the same abstract base class:
+### Channel
+
Base class of channels. Channels provide a Qiskit-side label for typical quantum control hardware signal channels. The final label -> physical channel mapping is the responsibility of the hardware backend. For instance, `DriveChannel(0)` holds instructions which the backend should map to the signal line driving gate operations on the qubit labeled (indexed) 0.
@@ -186,6 +190,8 @@ The alignment transforms define alignment policies of instructions in [`Schedule
These are all subtypes of the abstract base class [`AlignmentKind`](#qiskit.pulse.transforms.AlignmentKind "qiskit.pulse.transforms.AlignmentKind").
+#### AlignmentKind
+
An abstract class for schedule alignment.
@@ -626,6 +632,8 @@ There are 1e-06 seconds in 4500 samples.
## Exceptions
+### PulseError
+
Errors raised by the pulse module.
diff --git a/docs/api/qiskit/0.36/utils.mdx b/docs/api/qiskit/0.36/utils.mdx
index e44a6a98d5e..40ab693439a 100644
--- a/docs/api/qiskit/0.36/utils.mdx
+++ b/docs/api/qiskit/0.36/utils.mdx
@@ -105,6 +105,8 @@ Each of the lazy checkers is an instance of [`LazyDependencyManager`](#qiskit.ut
from qiskit.utils import LazyImportTester
```
+#### LazyDependencyManager
+
A mananger for some optional features that are expensive to import, or to verify the existence of.
@@ -143,7 +145,7 @@ from qiskit.utils import LazyImportTester
* **install** – how to install this optional dependency. Passed to `MissingOptionalLibraryError` as the `pip_install` parameter.
* **msg** – an extra message to include in the error raised if this is required.
- ### \_is\_available
+ ##### \_is\_available
Subclasses of [`LazyDependencyManager`](#qiskit.utils.LazyDependencyManager "qiskit.utils.LazyDependencyManager") should override this method to implement the actual test of availability. This method should return a Boolean, where `True` indicates that the dependency was available. This method will only ever be called once.
@@ -153,13 +155,13 @@ from qiskit.utils import LazyImportTester
`bool`
- ### disable\_locally
+ ##### disable\_locally
Create a context, during which the value of the dependency manager will be `False`. This means that within the context, any calls to this object will behave as if the dependency is not available, including raising errors. It is valid to call this method whether or not the dependency has already been evaluated. This is most useful in tests.
- ### require\_in\_call
+ ##### require\_in\_call
Create a decorator for callables that requires that the dependency is available when the decorated function or method is called.
@@ -177,7 +179,7 @@ from qiskit.utils import LazyImportTester
Callable
- ### require\_in\_instance
+ ##### require\_in\_instance
A class decorator that requires the dependency is available when the class is initialised. This decorator can be used even if the class does not define an `__init__` method.
@@ -195,7 +197,7 @@ from qiskit.utils import LazyImportTester
Callable
- ### require\_now
+ ##### require\_now
Eagerly attempt to import the dependencies in this object, and raise an exception if they cannot be imported.
@@ -210,6 +212,8 @@ from qiskit.utils import LazyImportTester
+#### LazyImportTester
+
A lazy dependency tester for importable Python modules. Any required objects will only be imported at the point that this object is tested for its Boolean value.
@@ -222,6 +226,8 @@ from qiskit.utils import LazyImportTester
**ValueError** – if no modules are given.
+#### LazySubprocessTester
+
A lazy checker that a command-line tool is available. The command will only be run once, at the point that this object is checked for its Boolean value.
diff --git a/docs/api/qiskit/0.37/pulse.mdx b/docs/api/qiskit/0.37/pulse.mdx
index 3bd809502e7..87bdc7b85a8 100644
--- a/docs/api/qiskit/0.37/pulse.mdx
+++ b/docs/api/qiskit/0.37/pulse.mdx
@@ -64,6 +64,8 @@ An instruction can be added to a [`Schedule`](qiskit.pulse.Schedule "qiskit.puls
These are all instances of the same base class:
+### Instruction
+
The smallest schedulable unit: a single instruction. It has a fixed duration and specified channels.
@@ -171,6 +173,8 @@ Novel channel types can often utilize the [`ControlChannel`](qiskit.pulse.channe
All channels are children of the same abstract base class:
+### Channel
+
Base class of channels. Channels provide a Qiskit-side label for typical quantum control hardware signal channels. The final label -> physical channel mapping is the responsibility of the hardware backend. For instance, `DriveChannel(0)` holds instructions which the backend should map to the signal line driving gate operations on the qubit labeled (indexed) 0.
@@ -220,6 +224,8 @@ The alignment transforms define alignment policies of instructions in [`Schedule
These are all subtypes of the abstract base class [`AlignmentKind`](#qiskit.pulse.transforms.AlignmentKind "qiskit.pulse.transforms.AlignmentKind").
+#### AlignmentKind
+
An abstract class for schedule alignment.
@@ -660,6 +666,8 @@ There are 1e-06 seconds in 4500 samples.
## Exceptions
+### PulseError
+
Errors raised by the pulse module.
diff --git a/docs/api/qiskit/0.37/utils.mdx b/docs/api/qiskit/0.37/utils.mdx
index 70d1a3fa83e..1378aa93901 100644
--- a/docs/api/qiskit/0.37/utils.mdx
+++ b/docs/api/qiskit/0.37/utils.mdx
@@ -107,6 +107,8 @@ Each of the lazy checkers is an instance of [`LazyDependencyManager`](#qiskit.ut
from qiskit.utils import LazyImportTester
```
+#### LazyDependencyManager
+
A mananger for some optional features that are expensive to import, or to verify the existence of.
@@ -145,7 +147,7 @@ from qiskit.utils import LazyImportTester
* **install** – how to install this optional dependency. Passed to `MissingOptionalLibraryError` as the `pip_install` parameter.
* **msg** – an extra message to include in the error raised if this is required.
- ### \_is\_available
+ ##### \_is\_available
Subclasses of [`LazyDependencyManager`](#qiskit.utils.LazyDependencyManager "qiskit.utils.LazyDependencyManager") should override this method to implement the actual test of availability. This method should return a Boolean, where `True` indicates that the dependency was available. This method will only ever be called once.
@@ -155,13 +157,13 @@ from qiskit.utils import LazyImportTester
`bool`
- ### disable\_locally
+ ##### disable\_locally
Create a context, during which the value of the dependency manager will be `False`. This means that within the context, any calls to this object will behave as if the dependency is not available, including raising errors. It is valid to call this method whether or not the dependency has already been evaluated. This is most useful in tests.
- ### require\_in\_call
+ ##### require\_in\_call
Create a decorator for callables that requires that the dependency is available when the decorated function or method is called.
@@ -179,7 +181,7 @@ from qiskit.utils import LazyImportTester
Callable
- ### require\_in\_instance
+ ##### require\_in\_instance
A class decorator that requires the dependency is available when the class is initialised. This decorator can be used even if the class does not define an `__init__` method.
@@ -197,7 +199,7 @@ from qiskit.utils import LazyImportTester
Callable
- ### require\_now
+ ##### require\_now
Eagerly attempt to import the dependencies in this object, and raise an exception if they cannot be imported.
@@ -212,6 +214,8 @@ from qiskit.utils import LazyImportTester
+#### LazyImportTester
+
A lazy dependency tester for importable Python modules. Any required objects will only be imported at the point that this object is tested for its Boolean value.
@@ -224,6 +228,8 @@ from qiskit.utils import LazyImportTester
**ValueError** – if no modules are given.
+#### LazySubprocessTester
+
A lazy checker that a command-line tool is available. The command will only be run once, at the point that this object is checked for its Boolean value.
diff --git a/docs/api/qiskit/0.38/pulse.mdx b/docs/api/qiskit/0.38/pulse.mdx
index cb64a0406bc..55e77c9823d 100644
--- a/docs/api/qiskit/0.38/pulse.mdx
+++ b/docs/api/qiskit/0.38/pulse.mdx
@@ -64,6 +64,8 @@ An instruction can be added to a [`Schedule`](qiskit.pulse.Schedule "qiskit.puls
These are all instances of the same base class:
+### Instruction
+
The smallest schedulable unit: a single instruction. It has a fixed duration and specified channels.
@@ -171,6 +173,8 @@ Novel channel types can often utilize the [`ControlChannel`](qiskit.pulse.channe
All channels are children of the same abstract base class:
+### Channel
+
Base class of channels. Channels provide a Qiskit-side label for typical quantum control hardware signal channels. The final label -> physical channel mapping is the responsibility of the hardware backend. For instance, `DriveChannel(0)` holds instructions which the backend should map to the signal line driving gate operations on the qubit labeled (indexed) 0.
@@ -220,6 +224,8 @@ The alignment transforms define alignment policies of instructions in [`Schedule
These are all subtypes of the abstract base class [`AlignmentKind`](#qiskit.pulse.transforms.AlignmentKind "qiskit.pulse.transforms.AlignmentKind").
+#### AlignmentKind
+
An abstract class for schedule alignment.
@@ -660,6 +666,8 @@ There are 1e-06 seconds in 4500 samples.
## Exceptions
+### PulseError
+
Errors raised by the pulse module.
diff --git a/docs/api/qiskit/0.38/utils.mdx b/docs/api/qiskit/0.38/utils.mdx
index c4b62f7a419..dbea23c8055 100644
--- a/docs/api/qiskit/0.38/utils.mdx
+++ b/docs/api/qiskit/0.38/utils.mdx
@@ -107,6 +107,8 @@ Each of the lazy checkers is an instance of [`LazyDependencyManager`](#qiskit.ut
from qiskit.utils import LazyImportTester
```
+#### LazyDependencyManager
+
A mananger for some optional features that are expensive to import, or to verify the existence of.
@@ -145,7 +147,7 @@ from qiskit.utils import LazyImportTester
* **install** – how to install this optional dependency. Passed to `MissingOptionalLibraryError` as the `pip_install` parameter.
* **msg** – an extra message to include in the error raised if this is required.
- ### \_is\_available
+ ##### \_is\_available
Subclasses of [`LazyDependencyManager`](#qiskit.utils.LazyDependencyManager "qiskit.utils.LazyDependencyManager") should override this method to implement the actual test of availability. This method should return a Boolean, where `True` indicates that the dependency was available. This method will only ever be called once.
@@ -155,13 +157,13 @@ from qiskit.utils import LazyImportTester
`bool`
- ### disable\_locally
+ ##### disable\_locally
Create a context, during which the value of the dependency manager will be `False`. This means that within the context, any calls to this object will behave as if the dependency is not available, including raising errors. It is valid to call this method whether or not the dependency has already been evaluated. This is most useful in tests.
- ### require\_in\_call
+ ##### require\_in\_call
Create a decorator for callables that requires that the dependency is available when the decorated function or method is called.
@@ -179,7 +181,7 @@ from qiskit.utils import LazyImportTester
Callable
- ### require\_in\_instance
+ ##### require\_in\_instance
A class decorator that requires the dependency is available when the class is initialised. This decorator can be used even if the class does not define an `__init__` method.
@@ -197,7 +199,7 @@ from qiskit.utils import LazyImportTester
Callable
- ### require\_now
+ ##### require\_now
Eagerly attempt to import the dependencies in this object, and raise an exception if they cannot be imported.
@@ -212,6 +214,8 @@ from qiskit.utils import LazyImportTester
+#### LazyImportTester
+
A lazy dependency tester for importable Python modules. Any required objects will only be imported at the point that this object is tested for its Boolean value.
@@ -224,6 +228,8 @@ from qiskit.utils import LazyImportTester
**ValueError** – if no modules are given.
+#### LazySubprocessTester
+
A lazy checker that a command-line tool is available. The command will only be run once, at the point that this object is checked for its Boolean value.
diff --git a/docs/api/qiskit/0.39/pulse.mdx b/docs/api/qiskit/0.39/pulse.mdx
index 717fcb8cfee..8a515b22613 100644
--- a/docs/api/qiskit/0.39/pulse.mdx
+++ b/docs/api/qiskit/0.39/pulse.mdx
@@ -65,6 +65,8 @@ An instruction can be added to a [`Schedule`](qiskit.pulse.Schedule "qiskit.puls
These are all instances of the same base class:
+### Instruction
+
The smallest schedulable unit: a single instruction. It has a fixed duration and specified channels.
@@ -167,6 +169,8 @@ Novel channel types can often utilize the [`ControlChannel`](qiskit.pulse.channe
All channels are children of the same abstract base class:
+### Channel
+
Base class of channels. Channels provide a Qiskit-side label for typical quantum control hardware signal channels. The final label -> physical channel mapping is the responsibility of the hardware backend. For instance, `DriveChannel(0)` holds instructions which the backend should map to the signal line driving gate operations on the qubit labeled (indexed) 0.
@@ -183,6 +187,8 @@ All channels are children of the same abstract base class:
And classical IO channels are children of:
+### ClassicalIOChannel
+
Base class of classical IO channels. These cannot have instructions scheduled on them.
@@ -230,6 +236,8 @@ The alignment transforms define alignment policies of instructions in [`Schedule
These are all subtypes of the abstract base class [`AlignmentKind`](#qiskit.pulse.transforms.AlignmentKind "qiskit.pulse.transforms.AlignmentKind").
+#### AlignmentKind
+
An abstract class for schedule alignment.
@@ -677,6 +685,8 @@ There are 1e-06 seconds in 4500 samples.
## Exceptions
+### PulseError
+
Errors raised by the pulse module.
diff --git a/docs/api/qiskit/0.39/utils.mdx b/docs/api/qiskit/0.39/utils.mdx
index 345aa991ede..47c1d025eba 100644
--- a/docs/api/qiskit/0.39/utils.mdx
+++ b/docs/api/qiskit/0.39/utils.mdx
@@ -108,6 +108,8 @@ Each of the lazy checkers is an instance of [`LazyDependencyManager`](#qiskit.ut
from qiskit.utils import LazyImportTester
```
+#### LazyDependencyManager
+
A mananger for some optional features that are expensive to import, or to verify the existence of.
@@ -146,7 +148,7 @@ from qiskit.utils import LazyImportTester
* **install** – how to install this optional dependency. Passed to `MissingOptionalLibraryError` as the `pip_install` parameter.
* **msg** – an extra message to include in the error raised if this is required.
- ### \_is\_available
+ ##### \_is\_available
Subclasses of [`LazyDependencyManager`](#qiskit.utils.LazyDependencyManager "qiskit.utils.LazyDependencyManager") should override this method to implement the actual test of availability. This method should return a Boolean, where `True` indicates that the dependency was available. This method will only ever be called once.
@@ -156,13 +158,13 @@ from qiskit.utils import LazyImportTester
`bool`
- ### disable\_locally
+ ##### disable\_locally
Create a context, during which the value of the dependency manager will be `False`. This means that within the context, any calls to this object will behave as if the dependency is not available, including raising errors. It is valid to call this method whether or not the dependency has already been evaluated. This is most useful in tests.
- ### require\_in\_call
+ ##### require\_in\_call
Create a decorator for callables that requires that the dependency is available when the decorated function or method is called.
@@ -180,7 +182,7 @@ from qiskit.utils import LazyImportTester
Callable
- ### require\_in\_instance
+ ##### require\_in\_instance
A class decorator that requires the dependency is available when the class is initialised. This decorator can be used even if the class does not define an `__init__` method.
@@ -198,7 +200,7 @@ from qiskit.utils import LazyImportTester
Callable
- ### require\_now
+ ##### require\_now
Eagerly attempt to import the dependencies in this object, and raise an exception if they cannot be imported.
@@ -213,6 +215,8 @@ from qiskit.utils import LazyImportTester
+#### LazyImportTester
+
A lazy dependency tester for importable Python modules. Any required objects will only be imported at the point that this object is tested for its Boolean value.
@@ -225,6 +229,8 @@ from qiskit.utils import LazyImportTester
**ValueError** – if no modules are given.
+#### LazySubprocessTester
+
A lazy checker that a command-line tool is available. The command will only be run once, at the point that this object is checked for its Boolean value.
diff --git a/docs/api/qiskit/0.40/pulse.mdx b/docs/api/qiskit/0.40/pulse.mdx
index eab31e38062..c5a1eb31809 100644
--- a/docs/api/qiskit/0.40/pulse.mdx
+++ b/docs/api/qiskit/0.40/pulse.mdx
@@ -67,6 +67,8 @@ An instruction can be added to a [`Schedule`](qiskit.pulse.Schedule "qiskit.puls
These are all instances of the same base class:
+### Instruction
+
The smallest schedulable unit: a single instruction. It has a fixed duration and specified channels.
@@ -171,6 +173,8 @@ Novel channel types can often utilize the [`ControlChannel`](qiskit.pulse.channe
All channels are children of the same abstract base class:
+### Channel
+
Base class of channels. Channels provide a Qiskit-side label for typical quantum control hardware signal channels. The final label -> physical channel mapping is the responsibility of the hardware backend. For instance, `DriveChannel(0)` holds instructions which the backend should map to the signal line driving gate operations on the qubit labeled (indexed) 0.
@@ -222,6 +226,8 @@ The alignment transforms define alignment policies of instructions in [`Schedule
These are all subtypes of the abstract base class [`AlignmentKind`](#qiskit.pulse.transforms.AlignmentKind "qiskit.pulse.transforms.AlignmentKind").
+#### AlignmentKind
+
An abstract class for schedule alignment.
@@ -679,6 +685,8 @@ There are 1e-06 seconds in 4500 samples.
## Exceptions
+### PulseError
+
Errors raised by the pulse module.
diff --git a/docs/api/qiskit/0.40/qasm3.mdx b/docs/api/qiskit/0.40/qasm3.mdx
index 751fc937706..c653d6c0c21 100644
--- a/docs/api/qiskit/0.40/qasm3.mdx
+++ b/docs/api/qiskit/0.40/qasm3.mdx
@@ -59,6 +59,8 @@ The high-level functions are simply [`dump()`](#qiskit.qasm3.dump "qiskit.qasm3.
Both of these exporter functions are single-use wrappers around the main [`Exporter`](#qiskit.qasm3.Exporter "qiskit.qasm3.Exporter") class. For more complex exporting needs, including dumping multiple circuits in a single session, it may be more convenient or faster to use the complete interface.
+### Exporter
+
QASM3 exporter main class.
@@ -70,13 +72,13 @@ Both of these exporter functions are single-use wrappers around the main [`Expor
* **alias\_classical\_registers** (`bool`) – If `True`, then classical bit and classical register declarations will look similar to quantum declarations, where the whole set of bits will be declared in a flat array, and the registers will just be aliases to collections of these bits. This is inefficient for running OpenQASM 3 programs, however, and may not be well supported on backends. Instead, the default behaviour of `False` means that individual classical registers will gain their own `bit[size] register;` declarations, and loose [`Clbit`](qiskit.circuit.Clbit "qiskit.circuit.Clbit")s will go onto their own declaration. In this form, each [`Clbit`](qiskit.circuit.Clbit "qiskit.circuit.Clbit") must be in either zero or one [`ClassicalRegister`](qiskit.circuit.ClassicalRegister "qiskit.circuit.ClassicalRegister")s.
* **indent** (`str`) – the indentation string to use for each level within an indented block. Can be set to the empty string to disable indentation.
- ### dump
+ #### dump
Convert the circuit to QASM 3, dumping the result to a file or text stream.
- ### dumps
+ #### dumps
Convert the circuit to QASM 3, returning the result as a string.
diff --git a/docs/api/qiskit/0.40/utils.mdx b/docs/api/qiskit/0.40/utils.mdx
index 1e00b1ab4bb..f21ff8c8ce0 100644
--- a/docs/api/qiskit/0.40/utils.mdx
+++ b/docs/api/qiskit/0.40/utils.mdx
@@ -109,6 +109,8 @@ Each of the lazy checkers is an instance of [`LazyDependencyManager`](#qiskit.ut
from qiskit.utils import LazyImportTester
```
+#### LazyDependencyManager
+
A mananger for some optional features that are expensive to import, or to verify the existence of.
@@ -147,7 +149,7 @@ from qiskit.utils import LazyImportTester
* **install** – how to install this optional dependency. Passed to `MissingOptionalLibraryError` as the `pip_install` parameter.
* **msg** – an extra message to include in the error raised if this is required.
- ### \_is\_available
+ ##### \_is\_available
Subclasses of [`LazyDependencyManager`](#qiskit.utils.LazyDependencyManager "qiskit.utils.LazyDependencyManager") should override this method to implement the actual test of availability. This method should return a Boolean, where `True` indicates that the dependency was available. This method will only ever be called once.
@@ -157,13 +159,13 @@ from qiskit.utils import LazyImportTester
`bool`
- ### disable\_locally
+ ##### disable\_locally
Create a context, during which the value of the dependency manager will be `False`. This means that within the context, any calls to this object will behave as if the dependency is not available, including raising errors. It is valid to call this method whether or not the dependency has already been evaluated. This is most useful in tests.
- ### require\_in\_call
+ ##### require\_in\_call
Create a decorator for callables that requires that the dependency is available when the decorated function or method is called.
@@ -181,7 +183,7 @@ from qiskit.utils import LazyImportTester
Callable
- ### require\_in\_instance
+ ##### require\_in\_instance
A class decorator that requires the dependency is available when the class is initialised. This decorator can be used even if the class does not define an `__init__` method.
@@ -199,7 +201,7 @@ from qiskit.utils import LazyImportTester
Callable
- ### require\_now
+ ##### require\_now
Eagerly attempt to import the dependencies in this object, and raise an exception if they cannot be imported.
@@ -214,6 +216,8 @@ from qiskit.utils import LazyImportTester
+#### LazyImportTester
+
A lazy dependency tester for importable Python modules. Any required objects will only be imported at the point that this object is tested for its Boolean value.
@@ -226,6 +230,8 @@ from qiskit.utils import LazyImportTester
**ValueError** – if no modules are given.
+#### LazySubprocessTester
+
A lazy checker that a command-line tool is available. The command will only be run once, at the point that this object is checked for its Boolean value.
diff --git a/docs/api/qiskit/0.41/pulse.mdx b/docs/api/qiskit/0.41/pulse.mdx
index 52bf31ee27e..5323155c48a 100644
--- a/docs/api/qiskit/0.41/pulse.mdx
+++ b/docs/api/qiskit/0.41/pulse.mdx
@@ -67,6 +67,8 @@ An instruction can be added to a [`Schedule`](qiskit.pulse.Schedule "qiskit.puls
These are all instances of the same base class:
+### Instruction
+
The smallest schedulable unit: a single instruction. It has a fixed duration and specified channels.
@@ -171,6 +173,8 @@ Novel channel types can often utilize the [`ControlChannel`](qiskit.pulse.channe
All channels are children of the same abstract base class:
+### Channel
+
Base class of channels. Channels provide a Qiskit-side label for typical quantum control hardware signal channels. The final label -> physical channel mapping is the responsibility of the hardware backend. For instance, `DriveChannel(0)` holds instructions which the backend should map to the signal line driving gate operations on the qubit labeled (indexed) 0.
@@ -222,6 +226,8 @@ The alignment transforms define alignment policies of instructions in [`Schedule
These are all subtypes of the abstract base class [`AlignmentKind`](#qiskit.pulse.transforms.AlignmentKind "qiskit.pulse.transforms.AlignmentKind").
+#### AlignmentKind
+
An abstract class for schedule alignment.
@@ -669,6 +675,8 @@ There are 1e-06 seconds in 4500 samples.
## Exceptions
+### PulseError
+
Errors raised by the pulse module.
diff --git a/docs/api/qiskit/0.41/qasm3.mdx b/docs/api/qiskit/0.41/qasm3.mdx
index 737c759e605..dac94f66d3a 100644
--- a/docs/api/qiskit/0.41/qasm3.mdx
+++ b/docs/api/qiskit/0.41/qasm3.mdx
@@ -59,6 +59,8 @@ The high-level functions are simply [`dump()`](#qiskit.qasm3.dump "qiskit.qasm3.
Both of these exporter functions are single-use wrappers around the main [`Exporter`](#qiskit.qasm3.Exporter "qiskit.qasm3.Exporter") class. For more complex exporting needs, including dumping multiple circuits in a single session, it may be more convenient or faster to use the complete interface.
+### Exporter
+
QASM3 exporter main class.
@@ -70,13 +72,13 @@ Both of these exporter functions are single-use wrappers around the main [`Expor
* **alias\_classical\_registers** (`bool`) – If `True`, then classical bit and classical register declarations will look similar to quantum declarations, where the whole set of bits will be declared in a flat array, and the registers will just be aliases to collections of these bits. This is inefficient for running OpenQASM 3 programs, however, and may not be well supported on backends. Instead, the default behaviour of `False` means that individual classical registers will gain their own `bit[size] register;` declarations, and loose [`Clbit`](qiskit.circuit.Clbit "qiskit.circuit.Clbit")s will go onto their own declaration. In this form, each [`Clbit`](qiskit.circuit.Clbit "qiskit.circuit.Clbit") must be in either zero or one [`ClassicalRegister`](qiskit.circuit.ClassicalRegister "qiskit.circuit.ClassicalRegister")s.
* **indent** (`str`) – the indentation string to use for each level within an indented block. Can be set to the empty string to disable indentation.
- ### dump
+ #### dump
Convert the circuit to QASM 3, dumping the result to a file or text stream.
- ### dumps
+ #### dumps
Convert the circuit to QASM 3, returning the result as a string.
diff --git a/docs/api/qiskit/0.41/utils.mdx b/docs/api/qiskit/0.41/utils.mdx
index 1e00b1ab4bb..f21ff8c8ce0 100644
--- a/docs/api/qiskit/0.41/utils.mdx
+++ b/docs/api/qiskit/0.41/utils.mdx
@@ -109,6 +109,8 @@ Each of the lazy checkers is an instance of [`LazyDependencyManager`](#qiskit.ut
from qiskit.utils import LazyImportTester
```
+#### LazyDependencyManager
+
A mananger for some optional features that are expensive to import, or to verify the existence of.
@@ -147,7 +149,7 @@ from qiskit.utils import LazyImportTester
* **install** – how to install this optional dependency. Passed to `MissingOptionalLibraryError` as the `pip_install` parameter.
* **msg** – an extra message to include in the error raised if this is required.
- ### \_is\_available
+ ##### \_is\_available
Subclasses of [`LazyDependencyManager`](#qiskit.utils.LazyDependencyManager "qiskit.utils.LazyDependencyManager") should override this method to implement the actual test of availability. This method should return a Boolean, where `True` indicates that the dependency was available. This method will only ever be called once.
@@ -157,13 +159,13 @@ from qiskit.utils import LazyImportTester
`bool`
- ### disable\_locally
+ ##### disable\_locally
Create a context, during which the value of the dependency manager will be `False`. This means that within the context, any calls to this object will behave as if the dependency is not available, including raising errors. It is valid to call this method whether or not the dependency has already been evaluated. This is most useful in tests.
- ### require\_in\_call
+ ##### require\_in\_call
Create a decorator for callables that requires that the dependency is available when the decorated function or method is called.
@@ -181,7 +183,7 @@ from qiskit.utils import LazyImportTester
Callable
- ### require\_in\_instance
+ ##### require\_in\_instance
A class decorator that requires the dependency is available when the class is initialised. This decorator can be used even if the class does not define an `__init__` method.
@@ -199,7 +201,7 @@ from qiskit.utils import LazyImportTester
Callable
- ### require\_now
+ ##### require\_now
Eagerly attempt to import the dependencies in this object, and raise an exception if they cannot be imported.
@@ -214,6 +216,8 @@ from qiskit.utils import LazyImportTester
+#### LazyImportTester
+
A lazy dependency tester for importable Python modules. Any required objects will only be imported at the point that this object is tested for its Boolean value.
@@ -226,6 +230,8 @@ from qiskit.utils import LazyImportTester
**ValueError** – if no modules are given.
+#### LazySubprocessTester
+
A lazy checker that a command-line tool is available. The command will only be run once, at the point that this object is checked for its Boolean value.
diff --git a/docs/api/qiskit/0.42/pulse.mdx b/docs/api/qiskit/0.42/pulse.mdx
index c22096095d3..f11bdad5cc9 100644
--- a/docs/api/qiskit/0.42/pulse.mdx
+++ b/docs/api/qiskit/0.42/pulse.mdx
@@ -67,6 +67,8 @@ An instruction can be added to a [`Schedule`](qiskit.pulse.Schedule "qiskit.puls
These are all instances of the same base class:
+### Instruction
+
The smallest schedulable unit: a single instruction. It has a fixed duration and specified channels.
@@ -171,6 +173,8 @@ Novel channel types can often utilize the [`ControlChannel`](qiskit.pulse.channe
All channels are children of the same abstract base class:
+### Channel
+
Base class of channels. Channels provide a Qiskit-side label for typical quantum control hardware signal channels. The final label -> physical channel mapping is the responsibility of the hardware backend. For instance, `DriveChannel(0)` holds instructions which the backend should map to the signal line driving gate operations on the qubit labeled (indexed) 0.
@@ -222,6 +226,8 @@ The alignment transforms define alignment policies of instructions in [`Schedule
These are all subtypes of the abstract base class [`AlignmentKind`](#qiskit.pulse.transforms.AlignmentKind "qiskit.pulse.transforms.AlignmentKind").
+#### AlignmentKind
+
An abstract class for schedule alignment.
@@ -669,6 +675,8 @@ There are 1e-06 seconds in 4500 samples.
## Exceptions
+### PulseError
+
Errors raised by the pulse module.
diff --git a/docs/api/qiskit/0.42/qasm3.mdx b/docs/api/qiskit/0.42/qasm3.mdx
index 737c759e605..dac94f66d3a 100644
--- a/docs/api/qiskit/0.42/qasm3.mdx
+++ b/docs/api/qiskit/0.42/qasm3.mdx
@@ -59,6 +59,8 @@ The high-level functions are simply [`dump()`](#qiskit.qasm3.dump "qiskit.qasm3.
Both of these exporter functions are single-use wrappers around the main [`Exporter`](#qiskit.qasm3.Exporter "qiskit.qasm3.Exporter") class. For more complex exporting needs, including dumping multiple circuits in a single session, it may be more convenient or faster to use the complete interface.
+### Exporter
+
QASM3 exporter main class.
@@ -70,13 +72,13 @@ Both of these exporter functions are single-use wrappers around the main [`Expor
* **alias\_classical\_registers** (`bool`) – If `True`, then classical bit and classical register declarations will look similar to quantum declarations, where the whole set of bits will be declared in a flat array, and the registers will just be aliases to collections of these bits. This is inefficient for running OpenQASM 3 programs, however, and may not be well supported on backends. Instead, the default behaviour of `False` means that individual classical registers will gain their own `bit[size] register;` declarations, and loose [`Clbit`](qiskit.circuit.Clbit "qiskit.circuit.Clbit")s will go onto their own declaration. In this form, each [`Clbit`](qiskit.circuit.Clbit "qiskit.circuit.Clbit") must be in either zero or one [`ClassicalRegister`](qiskit.circuit.ClassicalRegister "qiskit.circuit.ClassicalRegister")s.
* **indent** (`str`) – the indentation string to use for each level within an indented block. Can be set to the empty string to disable indentation.
- ### dump
+ #### dump
Convert the circuit to QASM 3, dumping the result to a file or text stream.
- ### dumps
+ #### dumps
Convert the circuit to QASM 3, returning the result as a string.
diff --git a/docs/api/qiskit/0.42/utils.mdx b/docs/api/qiskit/0.42/utils.mdx
index 1e00b1ab4bb..f21ff8c8ce0 100644
--- a/docs/api/qiskit/0.42/utils.mdx
+++ b/docs/api/qiskit/0.42/utils.mdx
@@ -109,6 +109,8 @@ Each of the lazy checkers is an instance of [`LazyDependencyManager`](#qiskit.ut
from qiskit.utils import LazyImportTester
```
+#### LazyDependencyManager
+
A mananger for some optional features that are expensive to import, or to verify the existence of.
@@ -147,7 +149,7 @@ from qiskit.utils import LazyImportTester
* **install** – how to install this optional dependency. Passed to `MissingOptionalLibraryError` as the `pip_install` parameter.
* **msg** – an extra message to include in the error raised if this is required.
- ### \_is\_available
+ ##### \_is\_available
Subclasses of [`LazyDependencyManager`](#qiskit.utils.LazyDependencyManager "qiskit.utils.LazyDependencyManager") should override this method to implement the actual test of availability. This method should return a Boolean, where `True` indicates that the dependency was available. This method will only ever be called once.
@@ -157,13 +159,13 @@ from qiskit.utils import LazyImportTester
`bool`
- ### disable\_locally
+ ##### disable\_locally
Create a context, during which the value of the dependency manager will be `False`. This means that within the context, any calls to this object will behave as if the dependency is not available, including raising errors. It is valid to call this method whether or not the dependency has already been evaluated. This is most useful in tests.
- ### require\_in\_call
+ ##### require\_in\_call
Create a decorator for callables that requires that the dependency is available when the decorated function or method is called.
@@ -181,7 +183,7 @@ from qiskit.utils import LazyImportTester
Callable
- ### require\_in\_instance
+ ##### require\_in\_instance
A class decorator that requires the dependency is available when the class is initialised. This decorator can be used even if the class does not define an `__init__` method.
@@ -199,7 +201,7 @@ from qiskit.utils import LazyImportTester
Callable
- ### require\_now
+ ##### require\_now
Eagerly attempt to import the dependencies in this object, and raise an exception if they cannot be imported.
@@ -214,6 +216,8 @@ from qiskit.utils import LazyImportTester
+#### LazyImportTester
+
A lazy dependency tester for importable Python modules. Any required objects will only be imported at the point that this object is tested for its Boolean value.
@@ -226,6 +230,8 @@ from qiskit.utils import LazyImportTester
**ValueError** – if no modules are given.
+#### LazySubprocessTester
+
A lazy checker that a command-line tool is available. The command will only be run once, at the point that this object is checked for its Boolean value.
diff --git a/docs/api/qiskit/0.43/pulse.mdx b/docs/api/qiskit/0.43/pulse.mdx
index 75a5ef8b4d4..a336aecdafd 100644
--- a/docs/api/qiskit/0.43/pulse.mdx
+++ b/docs/api/qiskit/0.43/pulse.mdx
@@ -71,6 +71,8 @@ An instruction can be added to a [`Schedule`](qiskit.pulse.Schedule "qiskit.puls
These are all instances of the same base class:
+### Instruction
+
The smallest schedulable unit: a single instruction. It has a fixed duration and specified channels.
@@ -178,6 +180,8 @@ Novel channel types can often utilize the [`ControlChannel`](qiskit.pulse.channe
All channels are children of the same abstract base class:
+### Channel
+
Base class of channels. Channels provide a Qiskit-side label for typical quantum control hardware signal channels. The final label -> physical channel mapping is the responsibility of the hardware backend. For instance, `DriveChannel(0)` holds instructions which the backend should map to the signal line driving gate operations on the qubit labeled (indexed) 0.
@@ -231,6 +235,8 @@ The alignment transforms define alignment policies of instructions in [`Schedule
These are all subtypes of the abstract base class [`AlignmentKind`](#qiskit.pulse.transforms.AlignmentKind "qiskit.pulse.transforms.AlignmentKind").
+#### AlignmentKind
+
An abstract class for schedule alignment.
@@ -678,6 +684,8 @@ There are 1e-06 seconds in 4500 samples.
## Exceptions
+### PulseError
+
Errors raised by the pulse module.
diff --git a/docs/api/qiskit/0.43/qasm.mdx b/docs/api/qiskit/0.43/qasm.mdx
index 9de85171726..19c7123ff4f 100644
--- a/docs/api/qiskit/0.43/qasm.mdx
+++ b/docs/api/qiskit/0.43/qasm.mdx
@@ -27,14 +27,20 @@ python_api_name: qiskit.qasm
## Pygments
+### OpenQASMLexer
+
A pygments lexer for OpenQasm.
+### QasmHTMLStyle
+
A style for OpenQasm in a HTML env (e.g. Jupyter widget).
+### QasmTerminalStyle
+
A style for OpenQasm in a Terminal env (e.g. Jupyter print).
diff --git a/docs/api/qiskit/0.43/qasm2.mdx b/docs/api/qiskit/0.43/qasm2.mdx
index 0cf667c730c..7dbfeebb906 100644
--- a/docs/api/qiskit/0.43/qasm2.mdx
+++ b/docs/api/qiskit/0.43/qasm2.mdx
@@ -81,6 +81,8 @@ Both of these loading functions also take an argument `include_path`, which is a
You can extend the quantum components of the OpenQASM 2 language by passing an iterable of information on custom instructions as the argument `custom_instructions`. In files that have compatible definitions for these instructions, the given `constructor` will be used in place of whatever other handling [`qiskit.qasm2`](#module-qiskit.qasm2 "qiskit.qasm2") would have done. These instructions may optionally be marked as `builtin`, which causes them to not require an `opaque` or `gate` declaration, but they will silently ignore a compatible declaration. Either way, it is an error to provide a custom instruction that has a different number of parameters or qubits as a defined instruction in a parsed program. Each element of the argument iterable should be a particular data class:
+#### CustomInstruction
+
Information about a custom instruction that should be defined during the parse.
@@ -95,6 +97,8 @@ You can extend the quantum components of the OpenQASM 2 language by passing an i
Similar to the quantum extensions above, you can also extend the processing done to classical expressions (arguments to gates) by passing an iterable to the argument `custom_classical` to either loader. This needs the `name` (a valid OpenQASM 2 identifier), the number `num_params` of parameters it takes, and a Python callable that implements the function. The Python callable must be able to accept `num_params` positional floating-point arguments, and must return a float or integer (which will be converted to a float). Builtin functions cannot be overridden.
+#### CustomClassical
+
Information about a custom classical function that should be defined in mathematical expressions.
diff --git a/docs/api/qiskit/0.43/qasm3.mdx b/docs/api/qiskit/0.43/qasm3.mdx
index 497ebedc830..b8cda3fae80 100644
--- a/docs/api/qiskit/0.43/qasm3.mdx
+++ b/docs/api/qiskit/0.43/qasm3.mdx
@@ -57,6 +57,8 @@ The high-level functions are simply [`dump()`](#qiskit.qasm3.dump "qiskit.qasm3.
Both of these exporter functions are single-use wrappers around the main [`Exporter`](#qiskit.qasm3.Exporter "qiskit.qasm3.Exporter") class. For more complex exporting needs, including dumping multiple circuits in a single session, it may be more convenient or faster to use the complete interface.
+### Exporter
+
QASM3 exporter main class.
@@ -69,13 +71,13 @@ Both of these exporter functions are single-use wrappers around the main [`Expor
* **indent** (*str*) – the indentation string to use for each level within an indented block. Can be set to the empty string to disable indentation.
* **experimental** ([*ExperimentalFeatures*](#qiskit.qasm3.ExperimentalFeatures "qiskit.qasm3.experimental.ExperimentalFeatures")) – any experimental features to enable during the export. See [`ExperimentalFeatures`](#qiskit.qasm3.ExperimentalFeatures "qiskit.qasm3.ExperimentalFeatures") for more details.
- ### dump
+ #### dump
Convert the circuit to QASM 3, dumping the result to a file or text stream.
- ### dumps
+ #### dumps
Convert the circuit to QASM 3, returning the result as a string.
@@ -96,12 +98,14 @@ All of these interfaces will raise [`QASM3ExporterError`](#qiskit.qasm3.QASM3Exp
The OpenQASM 3 language is still evolving as hardware capabilities improve, so there is no final syntax that Qiskit can reliably target. In order to represent the evolving language, we will sometimes release features before formal standardization, which may need to change as the review process in the OpenQASM 3 design committees progresses. By default, the exporters will only support standardised features of the language. To enable these early-release features, use the `experimental` keyword argument of [`dump()`](#qiskit.qasm3.dump "qiskit.qasm3.dump") and [`dumps()`](#qiskit.qasm3.dumps "qiskit.qasm3.dumps"). The available feature flags are:
+#### ExperimentalFeatures
+
Flags for experimental features that the OpenQASM 3 exporter supports.
These are experimental and are more liable to change, because the OpenQASM 3 specification has not formally accepted them yet, so the syntax may not be finalized.
- ### SWITCH\_CASE\_V1
+ ##### SWITCH\_CASE\_V1
Support exporting switch-case statements as proposed by [https://github.com/openqasm/openqasm/pull/463](https://github.com/openqasm/openqasm/pull/463) at [commit bfa787aa3078](https://github.com/openqasm/openqasm/pull/463/commits/bfa787aa3078).
diff --git a/docs/api/qiskit/0.43/utils.mdx b/docs/api/qiskit/0.43/utils.mdx
index a4afca7c015..cf2038a1bbd 100644
--- a/docs/api/qiskit/0.43/utils.mdx
+++ b/docs/api/qiskit/0.43/utils.mdx
@@ -116,6 +116,8 @@ Each of the lazy checkers is an instance of [`LazyDependencyManager`](#qiskit.ut
from qiskit.utils import LazyImportTester
```
+#### LazyDependencyManager
+
A mananger for some optional features that are expensive to import, or to verify the existence of.
@@ -154,7 +156,7 @@ from qiskit.utils import LazyImportTester
* **install** – how to install this optional dependency. Passed to `MissingOptionalLibraryError` as the `pip_install` parameter.
* **msg** – an extra message to include in the error raised if this is required.
- ### \_is\_available
+ ##### \_is\_available
Subclasses of [`LazyDependencyManager`](#qiskit.utils.LazyDependencyManager "qiskit.utils.LazyDependencyManager") should override this method to implement the actual test of availability. This method should return a Boolean, where `True` indicates that the dependency was available. This method will only ever be called once.
@@ -164,13 +166,13 @@ from qiskit.utils import LazyImportTester
bool
- ### disable\_locally
+ ##### disable\_locally
Create a context, during which the value of the dependency manager will be `False`. This means that within the context, any calls to this object will behave as if the dependency is not available, including raising errors. It is valid to call this method whether or not the dependency has already been evaluated. This is most useful in tests.
- ### require\_in\_call
+ ##### require\_in\_call
Create a decorator for callables that requires that the dependency is available when the decorated function or method is called.
@@ -188,7 +190,7 @@ from qiskit.utils import LazyImportTester
Callable
- ### require\_in\_instance
+ ##### require\_in\_instance
A class decorator that requires the dependency is available when the class is initialised. This decorator can be used even if the class does not define an `__init__` method.
@@ -206,7 +208,7 @@ from qiskit.utils import LazyImportTester
Callable
- ### require\_now
+ ##### require\_now
Eagerly attempt to import the dependencies in this object, and raise an exception if they cannot be imported.
@@ -221,6 +223,8 @@ from qiskit.utils import LazyImportTester
+#### LazyImportTester
+
A lazy dependency tester for importable Python modules. Any required objects will only be imported at the point that this object is tested for its Boolean value.
@@ -233,6 +237,8 @@ from qiskit.utils import LazyImportTester
**ValueError** – if no modules are given.
+#### LazySubprocessTester
+
A lazy checker that a command-line tool is available. The command will only be run once, at the point that this object is checked for its Boolean value.
diff --git a/docs/api/qiskit/0.44/algorithms.mdx b/docs/api/qiskit/0.44/algorithms.mdx
index 6cac8047e91..a71bafc7bd2 100644
--- a/docs/api/qiskit/0.44/algorithms.mdx
+++ b/docs/api/qiskit/0.44/algorithms.mdx
@@ -193,7 +193,7 @@ Algorithms that compute the fidelity of pairs of quantum states.
### Exceptions
-### AlgorithmError
+#### AlgorithmError
For Algorithm specific errors.
@@ -213,7 +213,7 @@ Utility classes used by algorithms (mainly for type-hinting purposes).
Utility functions used by algorithms.
-### eval\_observables
+#### eval\_observables
Deprecated: Accepts a list or a dictionary of operators and calculates their expectation values - means and standard deviations. They are calculated with respect to a quantum state provided. A user can optionally provide a threshold value which filters mean values falling below the threshold.
@@ -245,7 +245,7 @@ Utility functions used by algorithms.
ListOrDict\[[tuple](https://docs.python.org/3/library/stdtypes.html#tuple "(in Python v3.12)")\[[complex](https://docs.python.org/3/library/functions.html#complex "(in Python v3.12)"), [complex](https://docs.python.org/3/library/functions.html#complex "(in Python v3.12)")]]
-### estimate\_observables
+#### estimate\_observables
Accepts a sequence of operators and calculates their expectation values - means and metadata. They are calculated with respect to a quantum state provided. A user can optionally provide a threshold value which filters mean values falling below the threshold.
diff --git a/docs/api/qiskit/0.44/circuit.mdx b/docs/api/qiskit/0.44/circuit.mdx
index 26bf366411e..72850665efd 100644
--- a/docs/api/qiskit/0.44/circuit.mdx
+++ b/docs/api/qiskit/0.44/circuit.mdx
@@ -284,7 +284,7 @@ with qc.switch(cr) as case:
### Random Circuits
-### random\_circuit
+#### random\_circuit
Generate random circuit of arbitrary size and form.
@@ -327,7 +327,7 @@ with qc.switch(cr) as case:
Almost all circuit functions and methods will raise a [`CircuitError`](#qiskit.circuit.CircuitError "qiskit.circuit.CircuitError") when encountering an error that is particular to usage of Qiskit (as opposed to regular typing or indexing problems, which will typically raise the corresponding standard Python error).
-### CircuitError
+#### CircuitError
Base class for errors raised while processing a circuit.
diff --git a/docs/api/qiskit/0.44/circuit_classical.mdx b/docs/api/qiskit/0.44/circuit_classical.mdx
index a78509aaafc..94ddb528798 100644
--- a/docs/api/qiskit/0.44/circuit_classical.mdx
+++ b/docs/api/qiskit/0.44/circuit_classical.mdx
@@ -48,6 +48,8 @@ There are two pathways for constructing expressions. The classes that form [the
The expression system is based on tree representation. All nodes in the tree are final (uninheritable) instances of the abstract base class:
+#### Expr
+
Root base class of all nodes in the expression tree. The base case should never be instantiated directly.
@@ -60,18 +62,24 @@ These objects are mutable and should not be reused in a different location witho
The entry point from general circuit objects to the expression system is by wrapping the object in a [`Var`](#qiskit.circuit.classical.expr.Var "qiskit.circuit.classical.expr.Var") node and associating a [`Type`](#qiskit.circuit.classical.types.Type "qiskit.circuit.classical.types.Type") with it.
+#### Var
+
A classical variable.
Similarly, literals used in comparison (such as integers) should be lifted to [`Value`](#qiskit.circuit.classical.expr.Value "qiskit.circuit.classical.expr.Value") nodes with associated types.
+#### Value
+
A single scalar value.
The operations traditionally associated with pre-, post- or infix operators in programming are represented by the [`Unary`](#qiskit.circuit.classical.expr.Unary "qiskit.circuit.classical.expr.Unary") and [`Binary`](#qiskit.circuit.classical.expr.Binary "qiskit.circuit.classical.expr.Binary") nodes as appropriate. These each take an operation type code, which are exposed as enumerations inside each class as [`Unary.Op`](#qiskit.circuit.classical.expr.Unary.Op "qiskit.circuit.classical.expr.Unary.Op") and [`Binary.Op`](#qiskit.circuit.classical.expr.Binary.Op "qiskit.circuit.classical.expr.Binary.Op") respectively.
+#### Unary
+
A unary expression.
@@ -81,6 +89,8 @@ The operations traditionally associated with pre-, post- or infix operators in p
* **operand** ([*Expr*](#qiskit.circuit.classical.expr.Expr "qiskit.circuit.classical.expr.Expr")) – The operand of the operation.
* **type** ([*Type*](#qiskit.circuit.classical.types.Type "qiskit.circuit.classical.types.types.Type")) – The resolved type of the result.
+ ##### Op
+
Enumeration of the opcodes for unary operations.
@@ -88,13 +98,13 @@ The operations traditionally associated with pre-, post- or infix operators in p
The logical negation [`LOGIC_NOT`](#qiskit.circuit.classical.expr.Unary.Op.LOGIC_NOT "qiskit.circuit.classical.expr.Unary.Op.LOGIC_NOT") takes an input that is implicitly coerced to a Boolean, and returns a Boolean.
- ### BIT\_NOT
+ ###### BIT\_NOT
Bitwise negation. `~operand`.
- ### LOGIC\_NOT
+ ###### LOGIC\_NOT
Logical negation. `!operand`.
@@ -102,6 +112,8 @@ The operations traditionally associated with pre-, post- or infix operators in p
+#### Binary
+
A binary expression.
@@ -112,6 +124,8 @@ The operations traditionally associated with pre-, post- or infix operators in p
* **right** ([*Expr*](#qiskit.circuit.classical.expr.Expr "qiskit.circuit.classical.expr.Expr")) – The right-hand operand.
* **type** ([*Type*](#qiskit.circuit.classical.types.Type "qiskit.circuit.classical.types.types.Type")) – The resolved type of the result.
+ ##### Op
+
Enumeration of the opcodes for binary operations.
@@ -121,67 +135,67 @@ The operations traditionally associated with pre-, post- or infix operators in p
The binary mathematical relations [`EQUAL`](#qiskit.circuit.classical.expr.Binary.Op.EQUAL "qiskit.circuit.classical.expr.Binary.Op.EQUAL"), [`NOT_EQUAL`](#qiskit.circuit.classical.expr.Binary.Op.NOT_EQUAL "qiskit.circuit.classical.expr.Binary.Op.NOT_EQUAL"), [`LESS`](#qiskit.circuit.classical.expr.Binary.Op.LESS "qiskit.circuit.classical.expr.Binary.Op.LESS"), [`LESS_EQUAL`](#qiskit.circuit.classical.expr.Binary.Op.LESS_EQUAL "qiskit.circuit.classical.expr.Binary.Op.LESS_EQUAL"), [`GREATER`](#qiskit.circuit.classical.expr.Binary.Op.GREATER "qiskit.circuit.classical.expr.Binary.Op.GREATER") and [`GREATER_EQUAL`](#qiskit.circuit.classical.expr.Binary.Op.GREATER_EQUAL "qiskit.circuit.classical.expr.Binary.Op.GREATER_EQUAL") take unsigned integers (with an implicit cast to make them the same width), and return a Boolean.
- ### BIT\_AND
+ ###### BIT\_AND
Bitwise “and”. `lhs & rhs`.
- ### BIT\_OR
+ ###### BIT\_OR
Bitwise “or”. `lhs | rhs`.
- ### BIT\_XOR
+ ###### BIT\_XOR
Bitwise “exclusive or”. `lhs ^ rhs`.
- ### LOGIC\_AND
+ ###### LOGIC\_AND
Logical “and”. `lhs && rhs`.
- ### LOGIC\_OR
+ ###### LOGIC\_OR
Logical “or”. `lhs || rhs`.
- ### EQUAL
+ ###### EQUAL
Numeric equality. `lhs == rhs`.
- ### NOT\_EQUAL
+ ###### NOT\_EQUAL
Numeric inequality. `lhs != rhs`.
- ### LESS
+ ###### LESS
Numeric less than. `lhs < rhs`.
- ### LESS\_EQUAL
+ ###### LESS\_EQUAL
Numeric less than or equal to. `lhs <= rhs`
- ### GREATER
+ ###### GREATER
Numeric greater than. `lhs > rhs`.
- ### GREATER\_EQUAL
+ ###### GREATER\_EQUAL
Numeric greater than or equal to. `lhs >= rhs`.
@@ -193,6 +207,8 @@ When constructing expressions, one must ensure that the types are valid for the
Expressions in this system are defined to act only on certain sets of types. However, values may be cast to a suitable supertype in order to satisfy the typing requirements. In these cases, a node in the expression tree is used to represent the promotion. In all cases where operations note that they “implicitly cast” or “coerce” their arguments, the expression tree must have this node representing the conversion.
+#### Cast
+
A cast from one type to another, implied by the use of an expression in a different context.
@@ -205,7 +221,7 @@ Constructing the tree representation directly is verbose and easy to make a mist
The functions and methods described in this section are a more user-friendly way to build the expression tree, while staying close to the internal representation. All these functions will automatically lift valid Python scalar values into corresponding [`Var`](#qiskit.circuit.classical.expr.Var "qiskit.circuit.classical.expr.Var") or [`Value`](#qiskit.circuit.classical.expr.Value "qiskit.circuit.classical.expr.Value") objects, and will resolve any required implicit casts on your behalf.
-### lift
+#### lift
Lift the given Python `value` to a [`Value`](#qiskit.circuit.classical.expr.Value "qiskit.circuit.classical.expr.expr.Value") or [`Var`](#qiskit.circuit.classical.expr.Var "qiskit.circuit.classical.expr.expr.Var").
@@ -243,7 +259,7 @@ The functions and methods described in this section are a more user-friendly way
You can manually specify casts in cases where the cast is allowed in explicit form, but may be lossy (such as the cast of a higher precision [`Uint`](#qiskit.circuit.classical.types.Uint "qiskit.circuit.classical.types.Uint") to a lower precision one).
-### cast
+#### cast
Create an explicit cast from the given value to the given type.
@@ -266,7 +282,7 @@ You can manually specify casts in cases where the cast is allowed in explicit fo
There are helper constructor functions for each of the unary operations.
-### bit\_not
+#### bit\_not
Create a bitwise ‘not’ expression node from the given value, resolving any implicit casts and lifting the value into a [`Value`](#qiskit.circuit.classical.expr.Value "qiskit.circuit.classical.expr.Value") node if required.
@@ -287,7 +303,7 @@ There are helper constructor functions for each of the unary operations.
[*Expr*](#qiskit.circuit.classical.expr.Expr "qiskit.circuit.classical.expr.expr.Expr")
-### logic\_not
+#### logic\_not
Create a logical ‘not’ expression node from the given value, resolving any implicit casts and lifting the value into a [`Value`](#qiskit.circuit.classical.expr.Value "qiskit.circuit.classical.expr.Value") node if required.
@@ -310,7 +326,7 @@ There are helper constructor functions for each of the unary operations.
Similarly, the binary operations and relations have helper functions defined.
-### bit\_and
+#### bit\_and
Create a bitwise ‘and’ expression node from the given value, resolving any implicit casts and lifting the values into [`Value`](#qiskit.circuit.classical.expr.Value "qiskit.circuit.classical.expr.Value") nodes if required.
@@ -331,7 +347,7 @@ Similarly, the binary operations and relations have helper functions defined.
[*Expr*](#qiskit.circuit.classical.expr.Expr "qiskit.circuit.classical.expr.expr.Expr")
-### bit\_or
+#### bit\_or
Create a bitwise ‘or’ expression node from the given value, resolving any implicit casts and lifting the values into [`Value`](#qiskit.circuit.classical.expr.Value "qiskit.circuit.classical.expr.Value") nodes if required.
@@ -352,7 +368,7 @@ Similarly, the binary operations and relations have helper functions defined.
[*Expr*](#qiskit.circuit.classical.expr.Expr "qiskit.circuit.classical.expr.expr.Expr")
-### bit\_xor
+#### bit\_xor
Create a bitwise ‘exclusive or’ expression node from the given value, resolving any implicit casts and lifting the values into [`Value`](#qiskit.circuit.classical.expr.Value "qiskit.circuit.classical.expr.Value") nodes if required.
@@ -373,7 +389,7 @@ Similarly, the binary operations and relations have helper functions defined.
[*Expr*](#qiskit.circuit.classical.expr.Expr "qiskit.circuit.classical.expr.expr.Expr")
-### logic\_and
+#### logic\_and
Create a logical ‘and’ expression node from the given value, resolving any implicit casts and lifting the values into [`Value`](#qiskit.circuit.classical.expr.Value "qiskit.circuit.classical.expr.Value") nodes if required.
@@ -394,7 +410,7 @@ Similarly, the binary operations and relations have helper functions defined.
[*Expr*](#qiskit.circuit.classical.expr.Expr "qiskit.circuit.classical.expr.expr.Expr")
-### logic\_or
+#### logic\_or
Create a logical ‘or’ expression node from the given value, resolving any implicit casts and lifting the values into [`Value`](#qiskit.circuit.classical.expr.Value "qiskit.circuit.classical.expr.Value") nodes if required.
@@ -415,7 +431,7 @@ Similarly, the binary operations and relations have helper functions defined.
[*Expr*](#qiskit.circuit.classical.expr.Expr "qiskit.circuit.classical.expr.expr.Expr")
-### equal
+#### equal
Create an ‘equal’ expression node from the given value, resolving any implicit casts and lifting the values into [`Value`](#qiskit.circuit.classical.expr.Value "qiskit.circuit.classical.expr.Value") nodes if required.
@@ -436,7 +452,7 @@ Similarly, the binary operations and relations have helper functions defined.
[*Expr*](#qiskit.circuit.classical.expr.Expr "qiskit.circuit.classical.expr.expr.Expr")
-### not\_equal
+#### not\_equal
Create a ‘not equal’ expression node from the given value, resolving any implicit casts and lifting the values into [`Value`](#qiskit.circuit.classical.expr.Value "qiskit.circuit.classical.expr.Value") nodes if required.
@@ -457,7 +473,7 @@ Similarly, the binary operations and relations have helper functions defined.
[*Expr*](#qiskit.circuit.classical.expr.Expr "qiskit.circuit.classical.expr.expr.Expr")
-### less
+#### less
Create a ‘less than’ expression node from the given value, resolving any implicit casts and lifting the values into [`Value`](#qiskit.circuit.classical.expr.Value "qiskit.circuit.classical.expr.Value") nodes if required.
@@ -478,7 +494,7 @@ Similarly, the binary operations and relations have helper functions defined.
[*Expr*](#qiskit.circuit.classical.expr.Expr "qiskit.circuit.classical.expr.expr.Expr")
-### less\_equal
+#### less\_equal
Create a ‘less than or equal to’ expression node from the given value, resolving any implicit casts and lifting the values into [`Value`](#qiskit.circuit.classical.expr.Value "qiskit.circuit.classical.expr.Value") nodes if required.
@@ -499,7 +515,7 @@ Similarly, the binary operations and relations have helper functions defined.
[*Expr*](#qiskit.circuit.classical.expr.Expr "qiskit.circuit.classical.expr.expr.Expr")
-### greater
+#### greater
Create a ‘greater than’ expression node from the given value, resolving any implicit casts and lifting the values into [`Value`](#qiskit.circuit.classical.expr.Value "qiskit.circuit.classical.expr.Value") nodes if required.
@@ -520,7 +536,7 @@ Similarly, the binary operations and relations have helper functions defined.
[*Expr*](#qiskit.circuit.classical.expr.Expr "qiskit.circuit.classical.expr.expr.Expr")
-### greater\_equal
+#### greater\_equal
Create a ‘greater than or equal to’ expression node from the given value, resolving any implicit casts and lifting the values into [`Value`](#qiskit.circuit.classical.expr.Value "qiskit.circuit.classical.expr.Value") nodes if required.
@@ -543,7 +559,7 @@ Similarly, the binary operations and relations have helper functions defined.
Qiskit’s legacy method for specifying equality conditions for use in conditionals is to use a two-tuple of a [`Clbit`](qiskit.circuit.Clbit "qiskit.circuit.Clbit") or [`ClassicalRegister`](qiskit.circuit.ClassicalRegister "qiskit.circuit.ClassicalRegister") and an integer. This represents an exact equality condition, and there are no ways to specify any other relations. The helper function [`lift_legacy_condition()`](#qiskit.circuit.classical.expr.lift_legacy_condition "qiskit.circuit.classical.expr.lift_legacy_condition") converts this legacy format into the new expression syntax.
-### lift\_legacy\_condition
+#### lift\_legacy\_condition
Lift a legacy two-tuple equality condition into a new-style [`Expr`](#qiskit.circuit.classical.expr.Expr "qiskit.circuit.classical.expr.Expr").
@@ -572,10 +588,12 @@ Qiskit’s legacy method for specifying equality conditions for use in condition
A typical consumer of the expression tree wants to recursively walk through the tree, potentially statefully, acting on each node differently depending on its type. This is naturally a double-dispatch problem; the logic of ‘what is to be done’ is likely stateful and users should be free to define their own operations, yet each node defines ‘what is being acted on’. We enable this double dispatch by providing a base visitor class for the expression tree.
+#### ExprVisitor
+
Base class for visitors to the [`Expr`](#qiskit.circuit.classical.expr.Expr "qiskit.circuit.classical.expr.Expr") tree. Subclasses should override whichever of the `visit_*` methods that they are able to handle, and should be organised such that non-existent methods will never be called.
- ### visit\_binary
+ ##### visit\_binary
**Return type**
@@ -583,7 +601,7 @@ A typical consumer of the expression tree wants to recursively walk through the
*\_T\_co*
- ### visit\_cast
+ ##### visit\_cast
**Return type**
@@ -591,7 +609,7 @@ A typical consumer of the expression tree wants to recursively walk through the
*\_T\_co*
- ### visit\_generic
+ ##### visit\_generic
**Return type**
@@ -599,7 +617,7 @@ A typical consumer of the expression tree wants to recursively walk through the
*\_T\_co*
- ### visit\_unary
+ ##### visit\_unary
**Return type**
@@ -607,7 +625,7 @@ A typical consumer of the expression tree wants to recursively walk through the
*\_T\_co*
- ### visit\_value
+ ##### visit\_value
**Return type**
@@ -615,7 +633,7 @@ A typical consumer of the expression tree wants to recursively walk through the
*\_T\_co*
- ### visit\_var
+ ##### visit\_var
**Return type**
@@ -628,7 +646,7 @@ Consumers of the expression tree should subclass the visitor, and override the `
For the convenience of simple visitors that only need to inspect the variables in an expression and not the general structure, the iterator method [`iter_vars()`](#qiskit.circuit.classical.expr.iter_vars "qiskit.circuit.classical.expr.iter_vars") is provided.
-### iter\_vars
+#### iter\_vars
Get an iterator over the [`Var`](#qiskit.circuit.classical.expr.Var "qiskit.circuit.classical.expr.expr.Var") nodes referenced at any level in the given [`Expr`](#qiskit.circuit.classical.expr.Expr "qiskit.circuit.classical.expr.expr.Expr").
@@ -656,7 +674,7 @@ For the convenience of simple visitors that only need to inspect the variables i
Two expressions can be compared for direct structural equality by using the built-in Python `==` operator. In general, though, one might want to compare two expressions slightly more semantically, allowing that the [`Var`](#qiskit.circuit.classical.expr.Var "qiskit.circuit.classical.expr.Var") nodes inside them are bound to different memory-location descriptions between two different circuits. In this case, one can use [`structurally_equivalent()`](#qiskit.circuit.classical.expr.structurally_equivalent "qiskit.circuit.classical.expr.structurally_equivalent") with two suitable “key” functions to do the comparison.
-### structurally\_equivalent
+#### structurally\_equivalent
Do these two expressions have exactly the same tree structure, up to some key function for the [`Var`](#qiskit.circuit.classical.expr.Var "qiskit.circuit.classical.expr.expr.Var") objects?
@@ -715,6 +733,8 @@ The type system of the expression tree is exposed through this module. This is i
All types inherit from an abstract base class:
+### Type
+
Root base class of all nodes in the type tree. The base case should never be instantiated directly.
@@ -725,10 +745,14 @@ Types should be considered immutable objects, and you must not mutate them. It i
The two different types available are for Booleans (corresponding to [`Clbit`](qiskit.circuit.Clbit "qiskit.circuit.Clbit") and the literals `True` and `False`), and unsigned integers (corresponding to [`ClassicalRegister`](qiskit.circuit.ClassicalRegister "qiskit.circuit.ClassicalRegister") and Python integers).
+### Bool
+
The Boolean type. This has exactly two values: `True` and `False`.
+### Uint
+
An unsigned integer of fixed bit width.
@@ -770,6 +794,8 @@ The low-level interface to querying the subtyping relationship is the [`order()`
The return value is an enumeration [`Ordering`](#qiskit.circuit.classical.types.Ordering "qiskit.circuit.classical.types.Ordering") that describes what, if any, subtyping relationship exists between the two types.
+### Ordering
+
Enumeration listing the possible relations between two types. Types only have a partial ordering, so it’s possible for two types to have no sub-typing relationship.
diff --git a/docs/api/qiskit/0.44/circuit_library.mdx b/docs/api/qiskit/0.44/circuit_library.mdx
index 371a1b31943..6d046e318ed 100644
--- a/docs/api/qiskit/0.44/circuit_library.mdx
+++ b/docs/api/qiskit/0.44/circuit_library.mdx
@@ -313,7 +313,7 @@ Template circuits for [`XGate`](qiskit.circuit.library.XGate "qiskit.circuit.lib
**Reference:** Maslov, D. and Dueck, G. W. and Miller, D. M., Techniques for the synthesis of reversible Toffoli networks, 2007 [http://dx.doi.org/10.1145/1278349.1278355](http://dx.doi.org/10.1145/1278349.1278355)
-### template\_nct\_2a\_1
+#### template\_nct\_2a\_1
**Returns**
@@ -325,7 +325,7 @@ Template circuits for [`XGate`](qiskit.circuit.library.XGate "qiskit.circuit.lib
[QuantumCircuit](qiskit.circuit.QuantumCircuit "qiskit.circuit.QuantumCircuit")
-### template\_nct\_2a\_2
+#### template\_nct\_2a\_2
**Returns**
@@ -337,7 +337,7 @@ Template circuits for [`XGate`](qiskit.circuit.library.XGate "qiskit.circuit.lib
[QuantumCircuit](qiskit.circuit.QuantumCircuit "qiskit.circuit.QuantumCircuit")
-### template\_nct\_2a\_3
+#### template\_nct\_2a\_3
**Returns**
@@ -349,7 +349,7 @@ Template circuits for [`XGate`](qiskit.circuit.library.XGate "qiskit.circuit.lib
[QuantumCircuit](qiskit.circuit.QuantumCircuit "qiskit.circuit.QuantumCircuit")
-### template\_nct\_4a\_1
+#### template\_nct\_4a\_1
**Returns**
@@ -361,7 +361,7 @@ Template circuits for [`XGate`](qiskit.circuit.library.XGate "qiskit.circuit.lib
[QuantumCircuit](qiskit.circuit.QuantumCircuit "qiskit.circuit.QuantumCircuit")
-### template\_nct\_4a\_2
+#### template\_nct\_4a\_2
**Returns**
@@ -373,7 +373,7 @@ Template circuits for [`XGate`](qiskit.circuit.library.XGate "qiskit.circuit.lib
[QuantumCircuit](qiskit.circuit.QuantumCircuit "qiskit.circuit.QuantumCircuit")
-### template\_nct\_4a\_3
+#### template\_nct\_4a\_3
**Returns**
@@ -385,7 +385,7 @@ Template circuits for [`XGate`](qiskit.circuit.library.XGate "qiskit.circuit.lib
[QuantumCircuit](qiskit.circuit.QuantumCircuit "qiskit.circuit.QuantumCircuit")
-### template\_nct\_4b\_1
+#### template\_nct\_4b\_1
**Returns**
@@ -397,7 +397,7 @@ Template circuits for [`XGate`](qiskit.circuit.library.XGate "qiskit.circuit.lib
[QuantumCircuit](qiskit.circuit.QuantumCircuit "qiskit.circuit.QuantumCircuit")
-### template\_nct\_4b\_2
+#### template\_nct\_4b\_2
**Returns**
@@ -409,7 +409,7 @@ Template circuits for [`XGate`](qiskit.circuit.library.XGate "qiskit.circuit.lib
[QuantumCircuit](qiskit.circuit.QuantumCircuit "qiskit.circuit.QuantumCircuit")
-### template\_nct\_5a\_1
+#### template\_nct\_5a\_1
**Returns**
@@ -421,7 +421,7 @@ Template circuits for [`XGate`](qiskit.circuit.library.XGate "qiskit.circuit.lib
[QuantumCircuit](qiskit.circuit.QuantumCircuit "qiskit.circuit.QuantumCircuit")
-### template\_nct\_5a\_2
+#### template\_nct\_5a\_2
**Returns**
@@ -433,7 +433,7 @@ Template circuits for [`XGate`](qiskit.circuit.library.XGate "qiskit.circuit.lib
[QuantumCircuit](qiskit.circuit.QuantumCircuit "qiskit.circuit.QuantumCircuit")
-### template\_nct\_5a\_3
+#### template\_nct\_5a\_3
**Returns**
@@ -445,7 +445,7 @@ Template circuits for [`XGate`](qiskit.circuit.library.XGate "qiskit.circuit.lib
[QuantumCircuit](qiskit.circuit.QuantumCircuit "qiskit.circuit.QuantumCircuit")
-### template\_nct\_5a\_4
+#### template\_nct\_5a\_4
**Returns**
@@ -457,7 +457,7 @@ Template circuits for [`XGate`](qiskit.circuit.library.XGate "qiskit.circuit.lib
[QuantumCircuit](qiskit.circuit.QuantumCircuit "qiskit.circuit.QuantumCircuit")
-### template\_nct\_6a\_1
+#### template\_nct\_6a\_1
**Returns**
@@ -469,7 +469,7 @@ Template circuits for [`XGate`](qiskit.circuit.library.XGate "qiskit.circuit.lib
[QuantumCircuit](qiskit.circuit.QuantumCircuit "qiskit.circuit.QuantumCircuit")
-### template\_nct\_6a\_2
+#### template\_nct\_6a\_2
**Returns**
@@ -481,7 +481,7 @@ Template circuits for [`XGate`](qiskit.circuit.library.XGate "qiskit.circuit.lib
[QuantumCircuit](qiskit.circuit.QuantumCircuit "qiskit.circuit.QuantumCircuit")
-### template\_nct\_6a\_3
+#### template\_nct\_6a\_3
**Returns**
@@ -493,7 +493,7 @@ Template circuits for [`XGate`](qiskit.circuit.library.XGate "qiskit.circuit.lib
[QuantumCircuit](qiskit.circuit.QuantumCircuit "qiskit.circuit.QuantumCircuit")
-### template\_nct\_6a\_4
+#### template\_nct\_6a\_4
**Returns**
@@ -505,7 +505,7 @@ Template circuits for [`XGate`](qiskit.circuit.library.XGate "qiskit.circuit.lib
[QuantumCircuit](qiskit.circuit.QuantumCircuit "qiskit.circuit.QuantumCircuit")
-### template\_nct\_6b\_1
+#### template\_nct\_6b\_1
**Returns**
@@ -517,7 +517,7 @@ Template circuits for [`XGate`](qiskit.circuit.library.XGate "qiskit.circuit.lib
[QuantumCircuit](qiskit.circuit.QuantumCircuit "qiskit.circuit.QuantumCircuit")
-### template\_nct\_6b\_2
+#### template\_nct\_6b\_2
**Returns**
@@ -529,7 +529,7 @@ Template circuits for [`XGate`](qiskit.circuit.library.XGate "qiskit.circuit.lib
[QuantumCircuit](qiskit.circuit.QuantumCircuit "qiskit.circuit.QuantumCircuit")
-### template\_nct\_6c\_1
+#### template\_nct\_6c\_1
**Returns**
@@ -541,7 +541,7 @@ Template circuits for [`XGate`](qiskit.circuit.library.XGate "qiskit.circuit.lib
[QuantumCircuit](qiskit.circuit.QuantumCircuit "qiskit.circuit.QuantumCircuit")
-### template\_nct\_7a\_1
+#### template\_nct\_7a\_1
**Returns**
@@ -553,7 +553,7 @@ Template circuits for [`XGate`](qiskit.circuit.library.XGate "qiskit.circuit.lib
[QuantumCircuit](qiskit.circuit.QuantumCircuit "qiskit.circuit.QuantumCircuit")
-### template\_nct\_7b\_1
+#### template\_nct\_7b\_1
**Returns**
@@ -565,7 +565,7 @@ Template circuits for [`XGate`](qiskit.circuit.library.XGate "qiskit.circuit.lib
[QuantumCircuit](qiskit.circuit.QuantumCircuit "qiskit.circuit.QuantumCircuit")
-### template\_nct\_7c\_1
+#### template\_nct\_7c\_1
**Returns**
@@ -577,7 +577,7 @@ Template circuits for [`XGate`](qiskit.circuit.library.XGate "qiskit.circuit.lib
[QuantumCircuit](qiskit.circuit.QuantumCircuit "qiskit.circuit.QuantumCircuit")
-### template\_nct\_7d\_1
+#### template\_nct\_7d\_1
**Returns**
@@ -589,7 +589,7 @@ Template circuits for [`XGate`](qiskit.circuit.library.XGate "qiskit.circuit.lib
[QuantumCircuit](qiskit.circuit.QuantumCircuit "qiskit.circuit.QuantumCircuit")
-### template\_nct\_7e\_1
+#### template\_nct\_7e\_1
**Returns**
@@ -601,7 +601,7 @@ Template circuits for [`XGate`](qiskit.circuit.library.XGate "qiskit.circuit.lib
[QuantumCircuit](qiskit.circuit.QuantumCircuit "qiskit.circuit.QuantumCircuit")
-### template\_nct\_9a\_1
+#### template\_nct\_9a\_1
**Returns**
@@ -613,7 +613,7 @@ Template circuits for [`XGate`](qiskit.circuit.library.XGate "qiskit.circuit.lib
[QuantumCircuit](qiskit.circuit.QuantumCircuit "qiskit.circuit.QuantumCircuit")
-### template\_nct\_9c\_1
+#### template\_nct\_9c\_1
**Returns**
@@ -625,7 +625,7 @@ Template circuits for [`XGate`](qiskit.circuit.library.XGate "qiskit.circuit.lib
[QuantumCircuit](qiskit.circuit.QuantumCircuit "qiskit.circuit.QuantumCircuit")
-### template\_nct\_9c\_2
+#### template\_nct\_9c\_2
**Returns**
@@ -637,7 +637,7 @@ Template circuits for [`XGate`](qiskit.circuit.library.XGate "qiskit.circuit.lib
[QuantumCircuit](qiskit.circuit.QuantumCircuit "qiskit.circuit.QuantumCircuit")
-### template\_nct\_9c\_3
+#### template\_nct\_9c\_3
**Returns**
@@ -649,7 +649,7 @@ Template circuits for [`XGate`](qiskit.circuit.library.XGate "qiskit.circuit.lib
[QuantumCircuit](qiskit.circuit.QuantumCircuit "qiskit.circuit.QuantumCircuit")
-### template\_nct\_9c\_4
+#### template\_nct\_9c\_4
**Returns**
@@ -661,7 +661,7 @@ Template circuits for [`XGate`](qiskit.circuit.library.XGate "qiskit.circuit.lib
[QuantumCircuit](qiskit.circuit.QuantumCircuit "qiskit.circuit.QuantumCircuit")
-### template\_nct\_9c\_5
+#### template\_nct\_9c\_5
**Returns**
@@ -673,7 +673,7 @@ Template circuits for [`XGate`](qiskit.circuit.library.XGate "qiskit.circuit.lib
[QuantumCircuit](qiskit.circuit.QuantumCircuit "qiskit.circuit.QuantumCircuit")
-### template\_nct\_9c\_6
+#### template\_nct\_9c\_6
**Returns**
@@ -685,7 +685,7 @@ Template circuits for [`XGate`](qiskit.circuit.library.XGate "qiskit.circuit.lib
[QuantumCircuit](qiskit.circuit.QuantumCircuit "qiskit.circuit.QuantumCircuit")
-### template\_nct\_9c\_7
+#### template\_nct\_9c\_7
**Returns**
@@ -697,7 +697,7 @@ Template circuits for [`XGate`](qiskit.circuit.library.XGate "qiskit.circuit.lib
[QuantumCircuit](qiskit.circuit.QuantumCircuit "qiskit.circuit.QuantumCircuit")
-### template\_nct\_9c\_8
+#### template\_nct\_9c\_8
**Returns**
@@ -709,7 +709,7 @@ Template circuits for [`XGate`](qiskit.circuit.library.XGate "qiskit.circuit.lib
[QuantumCircuit](qiskit.circuit.QuantumCircuit "qiskit.circuit.QuantumCircuit")
-### template\_nct\_9c\_9
+#### template\_nct\_9c\_9
**Returns**
@@ -721,7 +721,7 @@ Template circuits for [`XGate`](qiskit.circuit.library.XGate "qiskit.circuit.lib
[QuantumCircuit](qiskit.circuit.QuantumCircuit "qiskit.circuit.QuantumCircuit")
-### template\_nct\_9c\_10
+#### template\_nct\_9c\_10
**Returns**
@@ -733,7 +733,7 @@ Template circuits for [`XGate`](qiskit.circuit.library.XGate "qiskit.circuit.lib
[QuantumCircuit](qiskit.circuit.QuantumCircuit "qiskit.circuit.QuantumCircuit")
-### template\_nct\_9c\_11
+#### template\_nct\_9c\_11
**Returns**
@@ -745,7 +745,7 @@ Template circuits for [`XGate`](qiskit.circuit.library.XGate "qiskit.circuit.lib
[QuantumCircuit](qiskit.circuit.QuantumCircuit "qiskit.circuit.QuantumCircuit")
-### template\_nct\_9c\_12
+#### template\_nct\_9c\_12
**Returns**
@@ -757,7 +757,7 @@ Template circuits for [`XGate`](qiskit.circuit.library.XGate "qiskit.circuit.lib
[QuantumCircuit](qiskit.circuit.QuantumCircuit "qiskit.circuit.QuantumCircuit")
-### template\_nct\_9d\_1
+#### template\_nct\_9d\_1
**Returns**
@@ -769,7 +769,7 @@ Template circuits for [`XGate`](qiskit.circuit.library.XGate "qiskit.circuit.lib
[QuantumCircuit](qiskit.circuit.QuantumCircuit "qiskit.circuit.QuantumCircuit")
-### template\_nct\_9d\_2
+#### template\_nct\_9d\_2
**Returns**
@@ -781,7 +781,7 @@ Template circuits for [`XGate`](qiskit.circuit.library.XGate "qiskit.circuit.lib
[QuantumCircuit](qiskit.circuit.QuantumCircuit "qiskit.circuit.QuantumCircuit")
-### template\_nct\_9d\_3
+#### template\_nct\_9d\_3
**Returns**
@@ -793,7 +793,7 @@ Template circuits for [`XGate`](qiskit.circuit.library.XGate "qiskit.circuit.lib
[QuantumCircuit](qiskit.circuit.QuantumCircuit "qiskit.circuit.QuantumCircuit")
-### template\_nct\_9d\_4
+#### template\_nct\_9d\_4
**Returns**
@@ -805,7 +805,7 @@ Template circuits for [`XGate`](qiskit.circuit.library.XGate "qiskit.circuit.lib
[QuantumCircuit](qiskit.circuit.QuantumCircuit "qiskit.circuit.QuantumCircuit")
-### template\_nct\_9d\_5
+#### template\_nct\_9d\_5
**Returns**
@@ -817,7 +817,7 @@ Template circuits for [`XGate`](qiskit.circuit.library.XGate "qiskit.circuit.lib
[QuantumCircuit](qiskit.circuit.QuantumCircuit "qiskit.circuit.QuantumCircuit")
-### template\_nct\_9d\_6
+#### template\_nct\_9d\_6
**Returns**
@@ -829,7 +829,7 @@ Template circuits for [`XGate`](qiskit.circuit.library.XGate "qiskit.circuit.lib
[QuantumCircuit](qiskit.circuit.QuantumCircuit "qiskit.circuit.QuantumCircuit")
-### template\_nct\_9d\_7
+#### template\_nct\_9d\_7
**Returns**
@@ -841,7 +841,7 @@ Template circuits for [`XGate`](qiskit.circuit.library.XGate "qiskit.circuit.lib
[QuantumCircuit](qiskit.circuit.QuantumCircuit "qiskit.circuit.QuantumCircuit")
-### template\_nct\_9d\_8
+#### template\_nct\_9d\_8
**Returns**
@@ -853,7 +853,7 @@ Template circuits for [`XGate`](qiskit.circuit.library.XGate "qiskit.circuit.lib
[QuantumCircuit](qiskit.circuit.QuantumCircuit "qiskit.circuit.QuantumCircuit")
-### template\_nct\_9d\_9
+#### template\_nct\_9d\_9
**Returns**
@@ -865,7 +865,7 @@ Template circuits for [`XGate`](qiskit.circuit.library.XGate "qiskit.circuit.lib
[QuantumCircuit](qiskit.circuit.QuantumCircuit "qiskit.circuit.QuantumCircuit")
-### template\_nct\_9d\_10
+#### template\_nct\_9d\_10
**Returns**
@@ -881,7 +881,7 @@ Template circuits for [`XGate`](qiskit.circuit.library.XGate "qiskit.circuit.lib
Template circuits over Clifford gates.
-### clifford\_2\_1
+#### clifford\_2\_1
**Returns**
@@ -893,7 +893,7 @@ Template circuits over Clifford gates.
[QuantumCircuit](qiskit.circuit.QuantumCircuit "qiskit.circuit.QuantumCircuit")
-### clifford\_2\_2
+#### clifford\_2\_2
**Returns**
@@ -905,7 +905,7 @@ Template circuits over Clifford gates.
[QuantumCircuit](qiskit.circuit.QuantumCircuit "qiskit.circuit.QuantumCircuit")
-### clifford\_2\_3
+#### clifford\_2\_3
**Returns**
@@ -917,7 +917,7 @@ Template circuits over Clifford gates.
[QuantumCircuit](qiskit.circuit.QuantumCircuit "qiskit.circuit.QuantumCircuit")
-### clifford\_2\_4
+#### clifford\_2\_4
**Returns**
@@ -929,7 +929,7 @@ Template circuits over Clifford gates.
[QuantumCircuit](qiskit.circuit.QuantumCircuit "qiskit.circuit.QuantumCircuit")
-### clifford\_3\_1
+#### clifford\_3\_1
**Returns**
@@ -941,7 +941,7 @@ Template circuits over Clifford gates.
[QuantumCircuit](qiskit.circuit.QuantumCircuit "qiskit.circuit.QuantumCircuit")
-### clifford\_4\_1
+#### clifford\_4\_1
**Returns**
@@ -953,7 +953,7 @@ Template circuits over Clifford gates.
[QuantumCircuit](qiskit.circuit.QuantumCircuit "qiskit.circuit.QuantumCircuit")
-### clifford\_4\_2
+#### clifford\_4\_2
**Returns**
@@ -965,7 +965,7 @@ Template circuits over Clifford gates.
[QuantumCircuit](qiskit.circuit.QuantumCircuit "qiskit.circuit.QuantumCircuit")
-### clifford\_4\_3
+#### clifford\_4\_3
**Returns**
@@ -977,7 +977,7 @@ Template circuits over Clifford gates.
[QuantumCircuit](qiskit.circuit.QuantumCircuit "qiskit.circuit.QuantumCircuit")
-### clifford\_4\_4
+#### clifford\_4\_4
**Returns**
@@ -989,7 +989,7 @@ Template circuits over Clifford gates.
[QuantumCircuit](qiskit.circuit.QuantumCircuit "qiskit.circuit.QuantumCircuit")
-### clifford\_5\_1
+#### clifford\_5\_1
**Returns**
@@ -1001,7 +1001,7 @@ Template circuits over Clifford gates.
[QuantumCircuit](qiskit.circuit.QuantumCircuit "qiskit.circuit.QuantumCircuit")
-### clifford\_6\_1
+#### clifford\_6\_1
**Returns**
@@ -1013,7 +1013,7 @@ Template circuits over Clifford gates.
[QuantumCircuit](qiskit.circuit.QuantumCircuit "qiskit.circuit.QuantumCircuit")
-### clifford\_6\_2
+#### clifford\_6\_2
**Returns**
@@ -1025,7 +1025,7 @@ Template circuits over Clifford gates.
[QuantumCircuit](qiskit.circuit.QuantumCircuit "qiskit.circuit.QuantumCircuit")
-### clifford\_6\_3
+#### clifford\_6\_3
**Returns**
@@ -1037,7 +1037,7 @@ Template circuits over Clifford gates.
[QuantumCircuit](qiskit.circuit.QuantumCircuit "qiskit.circuit.QuantumCircuit")
-### clifford\_6\_4
+#### clifford\_6\_4
**Returns**
@@ -1049,7 +1049,7 @@ Template circuits over Clifford gates.
[QuantumCircuit](qiskit.circuit.QuantumCircuit "qiskit.circuit.QuantumCircuit")
-### clifford\_6\_5
+#### clifford\_6\_5
**Returns**
@@ -1061,7 +1061,7 @@ Template circuits over Clifford gates.
[QuantumCircuit](qiskit.circuit.QuantumCircuit "qiskit.circuit.QuantumCircuit")
-### clifford\_8\_1
+#### clifford\_8\_1
**Returns**
@@ -1073,7 +1073,7 @@ Template circuits over Clifford gates.
[QuantumCircuit](qiskit.circuit.QuantumCircuit "qiskit.circuit.QuantumCircuit")
-### clifford\_8\_2
+#### clifford\_8\_2
**Returns**
@@ -1085,7 +1085,7 @@ Template circuits over Clifford gates.
[QuantumCircuit](qiskit.circuit.QuantumCircuit "qiskit.circuit.QuantumCircuit")
-### clifford\_8\_3
+#### clifford\_8\_3
**Returns**
@@ -1101,37 +1101,37 @@ Template circuits over Clifford gates.
Template circuits with [`RZXGate`](qiskit.circuit.library.RZXGate "qiskit.circuit.library.RZXGate").
-### rzx\_yz
+#### rzx\_yz
Template for CX - RYGate - CX.
-### rzx\_xz
+#### rzx\_xz
Template for CX - RXGate - CX.
-### rzx\_cy
+#### rzx\_cy
Template for CX - RYGate - CX.
-### rzx\_zz1
+#### rzx\_zz1
Template for CX - RZGate - CX.
-### rzx\_zz2
+#### rzx\_zz2
Template for CX - RZGate - CX.
-### rzx\_zz3
+#### rzx\_zz3
Template for CX - RZGate - CX.
diff --git a/docs/api/qiskit/0.44/providers.mdx b/docs/api/qiskit/0.44/providers.mdx
index a1c659888a2..760c3d12dbe 100644
--- a/docs/api/qiskit/0.44/providers.mdx
+++ b/docs/api/qiskit/0.44/providers.mdx
@@ -75,7 +75,7 @@ It’s worth pointing out that Terra’s version support policy doesn’t mean p
### Exceptions
-### QiskitBackendNotFoundError
+#### QiskitBackendNotFoundError
Base class for errors raised while looking for a backend.
@@ -83,7 +83,7 @@ It’s worth pointing out that Terra’s version support policy doesn’t mean p
Set the error message.
-### BackendPropertyError
+#### BackendPropertyError
Base class for errors raised while looking for a backend property.
@@ -91,7 +91,7 @@ It’s worth pointing out that Terra’s version support policy doesn’t mean p
Set the error message.
-### JobError
+#### JobError
Base class for errors raised by Jobs.
@@ -99,7 +99,7 @@ It’s worth pointing out that Terra’s version support policy doesn’t mean p
Set the error message.
-### JobTimeoutError
+#### JobTimeoutError
Base class for timeout errors raised by jobs.
@@ -107,7 +107,7 @@ It’s worth pointing out that Terra’s version support policy doesn’t mean p
Set the error message.
-### BackendConfigurationError
+#### BackendConfigurationError
Base class for errors raised by the BackendConfiguration.
diff --git a/docs/api/qiskit/0.44/pulse.mdx b/docs/api/qiskit/0.44/pulse.mdx
index 490d8131ea8..6c234dec12c 100644
--- a/docs/api/qiskit/0.44/pulse.mdx
+++ b/docs/api/qiskit/0.44/pulse.mdx
@@ -75,6 +75,8 @@ An instruction can be added to a [`Schedule`](qiskit.pulse.Schedule "qiskit.puls
These are all instances of the same base class:
+### Instruction
+
The smallest schedulable unit: a single instruction. It has a fixed duration and specified channels.
@@ -117,7 +119,7 @@ In contrast, the [`SymbolicPulse`](qiskit.pulse.library.SymbolicPulse "qiskit.pu
### Waveform Pulse Representation
-### constant
+#### constant
Generates constant-sampled [`Waveform`](qiskit.pulse.library.Waveform "qiskit.pulse.library.Waveform").
@@ -143,7 +145,7 @@ $$
[*Waveform*](qiskit.pulse.library.Waveform "qiskit.pulse.library.waveform.Waveform")
-### zero
+#### zero
Generates zero-sampled [`Waveform`](qiskit.pulse.library.Waveform "qiskit.pulse.library.Waveform").
@@ -168,7 +170,7 @@ $$
[*Waveform*](qiskit.pulse.library.Waveform "qiskit.pulse.library.waveform.Waveform")
-### square
+#### square
Generates square wave [`Waveform`](qiskit.pulse.library.Waveform "qiskit.pulse.library.Waveform").
@@ -198,7 +200,7 @@ $$
[*Waveform*](qiskit.pulse.library.Waveform "qiskit.pulse.library.waveform.Waveform")
-### sawtooth
+#### sawtooth
Generates sawtooth wave [`Waveform`](qiskit.pulse.library.Waveform "qiskit.pulse.library.Waveform").
@@ -245,7 +247,7 @@ $$
![../\_images/pulse-1.png](/images/api/qiskit/0.44/pulse-1.png)
-### triangle
+#### triangle
Generates triangle wave [`Waveform`](qiskit.pulse.library.Waveform "qiskit.pulse.library.Waveform").
@@ -292,7 +294,7 @@ $$
![../\_images/pulse-2.png](/images/api/qiskit/0.44/pulse-2.png)
-### cos
+#### cos
Generates cosine wave [`Waveform`](qiskit.pulse.library.Waveform "qiskit.pulse.library.Waveform").
@@ -320,7 +322,7 @@ $$
[*Waveform*](qiskit.pulse.library.Waveform "qiskit.pulse.library.waveform.Waveform")
-### sin
+#### sin
Generates sine wave [`Waveform`](qiskit.pulse.library.Waveform "qiskit.pulse.library.Waveform").
@@ -348,7 +350,7 @@ $$
[*Waveform*](qiskit.pulse.library.Waveform "qiskit.pulse.library.waveform.Waveform")
-### gaussian
+#### gaussian
Generates unnormalized gaussian [`Waveform`](qiskit.pulse.library.Waveform "qiskit.pulse.library.Waveform").
@@ -388,7 +390,7 @@ $$
[*Waveform*](qiskit.pulse.library.Waveform "qiskit.pulse.library.waveform.Waveform")
-### gaussian\_deriv
+#### gaussian\_deriv
Generates unnormalized gaussian derivative [`Waveform`](qiskit.pulse.library.Waveform "qiskit.pulse.library.Waveform").
@@ -418,7 +420,7 @@ $$
[*Waveform*](qiskit.pulse.library.Waveform "qiskit.pulse.library.waveform.Waveform")
-### sech
+#### sech
Generates unnormalized sech [`Waveform`](qiskit.pulse.library.Waveform "qiskit.pulse.library.Waveform").
@@ -456,7 +458,7 @@ $$
[*Waveform*](qiskit.pulse.library.Waveform "qiskit.pulse.library.waveform.Waveform")
-### sech\_deriv
+#### sech\_deriv
Generates unnormalized sech derivative [`Waveform`](qiskit.pulse.library.Waveform "qiskit.pulse.library.Waveform").
@@ -485,7 +487,7 @@ $$
[*Waveform*](qiskit.pulse.library.Waveform "qiskit.pulse.library.waveform.Waveform")
-### gaussian\_square
+#### gaussian\_square
Generates gaussian square [`Waveform`](qiskit.pulse.library.Waveform "qiskit.pulse.library.Waveform").
@@ -527,7 +529,7 @@ $$
[*Waveform*](qiskit.pulse.library.Waveform "qiskit.pulse.library.waveform.Waveform")
-### drag
+#### drag
Generates Y-only correction DRAG [`Waveform`](qiskit.pulse.library.Waveform "qiskit.pulse.library.Waveform") for standard nonlinear oscillator (SNO) \[1].
@@ -619,6 +621,8 @@ Novel channel types can often utilize the [`ControlChannel`](qiskit.pulse.channe
All channels are children of the same abstract base class:
+### Channel
+
Base class of channels. Channels provide a Qiskit-side label for typical quantum control hardware signal channels. The final label -> physical channel mapping is the responsibility of the hardware backend. For instance, `DriveChannel(0)` holds instructions which the backend should map to the signal line driving gate operations on the qubit labeled (indexed) 0.
@@ -672,6 +676,8 @@ The alignment transforms define alignment policies of instructions in [`Schedule
These are all subtypes of the abstract base class [`AlignmentKind`](#qiskit.pulse.transforms.AlignmentKind "qiskit.pulse.transforms.AlignmentKind").
+#### AlignmentKind
+
An abstract class for schedule alignment.
@@ -684,7 +690,7 @@ These are all subtypes of the abstract base class [`AlignmentKind`](#qiskit.puls
The canonicalization transforms convert schedules to a form amenable for execution on OpenPulse backends.
-### add\_implicit\_acquires
+#### add\_implicit\_acquires
Return a new schedule with implicit acquires from the measurement mapping replaced by explicit ones.
@@ -707,7 +713,7 @@ The canonicalization transforms convert schedules to a form amenable for executi
[*Schedule*](qiskit.pulse.Schedule "qiskit.pulse.schedule.Schedule")
-### align\_measures
+#### align\_measures
Return new schedules where measurements occur at the same physical time.
@@ -774,7 +780,7 @@ The canonicalization transforms convert schedules to a form amenable for executi
[*List*](https://docs.python.org/3/library/typing.html#typing.List "(in Python v3.12)")\[[*Schedule*](qiskit.pulse.Schedule "qiskit.pulse.schedule.Schedule")]
-### block\_to\_schedule
+#### block\_to\_schedule
Convert `ScheduleBlock` to `Schedule`.
@@ -801,7 +807,7 @@ The canonicalization transforms convert schedules to a form amenable for executi
-### compress\_pulses
+#### compress\_pulses
Optimization pass to replace identical pulses.
@@ -819,7 +825,7 @@ The canonicalization transforms convert schedules to a form amenable for executi
[*List*](https://docs.python.org/3/library/typing.html#typing.List "(in Python v3.12)")\[[*Schedule*](qiskit.pulse.Schedule "qiskit.pulse.schedule.Schedule")]
-### flatten
+#### flatten
Flatten (inline) any called nodes into a Schedule tree with no nested children.
@@ -841,7 +847,7 @@ The canonicalization transforms convert schedules to a form amenable for executi
[*Schedule*](qiskit.pulse.Schedule "qiskit.pulse.schedule.Schedule")
-### inline\_subroutines
+#### inline\_subroutines
Recursively remove call instructions and inline the respective subroutine instructions.
@@ -865,7 +871,7 @@ The canonicalization transforms convert schedules to a form amenable for executi
[*Schedule*](qiskit.pulse.Schedule "qiskit.pulse.schedule.Schedule") | [*ScheduleBlock*](qiskit.pulse.ScheduleBlock "qiskit.pulse.schedule.ScheduleBlock")
-### pad
+#### pad
Pad the input Schedule with `Delay``s on all unoccupied timeslots until ``schedule.duration` or `until` if not `None`.
@@ -891,7 +897,7 @@ The canonicalization transforms convert schedules to a form amenable for executi
[*Schedule*](qiskit.pulse.Schedule "qiskit.pulse.schedule.Schedule")
-### remove\_directives
+#### remove\_directives
Remove directives.
@@ -909,7 +915,7 @@ The canonicalization transforms convert schedules to a form amenable for executi
[*Schedule*](qiskit.pulse.Schedule "qiskit.pulse.schedule.Schedule")
-### remove\_trivial\_barriers
+#### remove\_trivial\_barriers
Remove trivial barriers with 0 or 1 channels.
@@ -933,7 +939,7 @@ The canonicalization transforms convert schedules to a form amenable for executi
The DAG transforms create DAG representation of input program. This can be used for optimization of instructions and equality checks.
-### block\_to\_dag
+#### block\_to\_dag
Convert schedule block instruction into DAG.
@@ -991,7 +997,7 @@ The DAG transforms create DAG representation of input program. This can be used
A sequence of transformations to generate a target code.
-### target\_qobj\_transform
+#### target\_qobj\_transform
A basic pulse program transformation for OpenPulse API execution.
@@ -1264,7 +1270,7 @@ with pulse.build(backend) as drive_sched:
DriveChannel(0)
```
-### acquire\_channel
+#### acquire\_channel
Return `AcquireChannel` for `qubit` on the active builder backend.
@@ -1290,7 +1296,7 @@ DriveChannel(0)
[*AcquireChannel*](qiskit.pulse.channels.AcquireChannel "qiskit.pulse.channels.AcquireChannel")
-### control\_channels
+#### control\_channels
Return `ControlChannel` for `qubit` on the active builder backend.
@@ -1325,7 +1331,7 @@ DriveChannel(0)
[*List*](https://docs.python.org/3/library/typing.html#typing.List "(in Python v3.12)")\[[*ControlChannel*](qiskit.pulse.channels.ControlChannel "qiskit.pulse.channels.ControlChannel")]
-### drive\_channel
+#### drive\_channel
Return `DriveChannel` for `qubit` on the active builder backend.
@@ -1351,7 +1357,7 @@ DriveChannel(0)
[*DriveChannel*](qiskit.pulse.channels.DriveChannel "qiskit.pulse.channels.DriveChannel")
-### measure\_channel
+#### measure\_channel
Return `MeasureChannel` for `qubit` on the active builder backend.
@@ -1410,7 +1416,7 @@ drive_sched.draw()
![../\_images/pulse-6.png](/images/api/qiskit/0.44/pulse-6.png)
-### acquire
+#### acquire
Acquire for a `duration` on a `channel` and store the result in a `register`.
@@ -1447,7 +1453,7 @@ drive_sched.draw()
[**exceptions.PulseError**](#qiskit.pulse.PulseError "qiskit.pulse.exceptions.PulseError") – If the register type is not supported.
-### barrier
+#### barrier
Barrier directive for a set of channels and qubits.
@@ -1514,7 +1520,7 @@ drive_sched.draw()
* **name** ([*str*](https://docs.python.org/3/library/stdtypes.html#str "(in Python v3.12)") *| None*) – Name for the barrier
-### call
+#### call
Call the subroutine within the currently active builder context with arbitrary parameters which will be assigned to the target program.
@@ -1728,7 +1734,7 @@ drive_sched.draw()
* **kw\_params** ([*ParameterExpression*](qiskit.circuit.ParameterExpression "qiskit.circuit.parameterexpression.ParameterExpression") *|*[*float*](https://docs.python.org/3/library/functions.html#float "(in Python v3.12)")) – Alternative way to provide parameters. Since this is keyed on the string parameter name, the parameters having the same name are all updated together. If you want to avoid name collision, use `value_dict` with [`Parameter`](qiskit.circuit.Parameter "qiskit.circuit.Parameter") objects instead.
-### delay
+#### delay
Delay on a `channel` for a `duration`.
@@ -1751,7 +1757,7 @@ drive_sched.draw()
* **name** ([*str*](https://docs.python.org/3/library/stdtypes.html#str "(in Python v3.12)") *| None*) – Name of the instruction.
-### play
+#### play
Play a `pulse` on a `channel`.
@@ -1774,7 +1780,7 @@ drive_sched.draw()
* **name** ([*str*](https://docs.python.org/3/library/stdtypes.html#str "(in Python v3.12)") *| None*) – Name of the pulse.
-### reference
+#### reference
Refer to undefined subroutine by string keys.
@@ -1799,7 +1805,7 @@ drive_sched.draw()
* **extra\_keys** ([*str*](https://docs.python.org/3/library/stdtypes.html#str "(in Python v3.12)")) – Helper keys to uniquely specify the subroutine.
-### set\_frequency
+#### set\_frequency
Set the `frequency` of a pulse `channel`.
@@ -1822,7 +1828,7 @@ drive_sched.draw()
* **name** ([*str*](https://docs.python.org/3/library/stdtypes.html#str "(in Python v3.12)") *| None*) – Name of the instruction.
-### set\_phase
+#### set\_phase
Set the `phase` of a pulse `channel`.
@@ -1847,7 +1853,7 @@ drive_sched.draw()
* **name** ([*str*](https://docs.python.org/3/library/stdtypes.html#str "(in Python v3.12)") *| None*) – Name of the instruction.
-### shift\_frequency
+#### shift\_frequency
Shift the `frequency` of a pulse `channel`.
@@ -1870,7 +1876,7 @@ drive_sched.draw()
* **name** ([*str*](https://docs.python.org/3/library/stdtypes.html#str "(in Python v3.12)") *| None*) – Name of the instruction.
-### shift\_phase
+#### shift\_phase
Shift the `phase` of a pulse `channel`.
@@ -1895,7 +1901,7 @@ drive_sched.draw()
* **name** ([*str*](https://docs.python.org/3/library/stdtypes.html#str "(in Python v3.12)") *| None*) – Name of the instruction.
-### snapshot
+#### snapshot
Simulator snapshot.
@@ -1937,7 +1943,7 @@ pulse_prog.draw()
![../\_images/pulse-7.png](/images/api/qiskit/0.44/pulse-7.png)
-### align\_equispaced
+#### align\_equispaced
Equispaced alignment pulse scheduling context.
@@ -1983,7 +1989,7 @@ pulse_prog.draw()
The scheduling is performed for sub-schedules within the context rather than channel-wise. If you want to apply the equispaced context for each channel, you should use the context independently for channels.
-### align\_func
+#### align\_func
Callback defined alignment pulse scheduling context.
@@ -2035,7 +2041,7 @@ pulse_prog.draw()
The scheduling is performed for sub-schedules within the context rather than channel-wise. If you want to apply the numerical context for each channel, you need to apply the context independently to channels.
-### align\_left
+#### align\_left
Left alignment pulse scheduling context.
@@ -2070,7 +2076,7 @@ pulse_prog.draw()
[*ContextManager*](https://docs.python.org/3/library/typing.html#typing.ContextManager "(in Python v3.12)")\[None]
-### align\_right
+#### align\_right
Right alignment pulse scheduling context.
@@ -2105,7 +2111,7 @@ pulse_prog.draw()
[*AlignmentKind*](#qiskit.pulse.transforms.AlignmentKind "qiskit.pulse.transforms.alignments.AlignmentKind")
-### align\_sequential
+#### align\_sequential
Sequential alignment pulse scheduling context.
@@ -2140,7 +2146,7 @@ pulse_prog.draw()
[*AlignmentKind*](#qiskit.pulse.transforms.AlignmentKind "qiskit.pulse.transforms.alignments.AlignmentKind")
-### circuit\_scheduler\_settings
+#### circuit\_scheduler\_settings
Set the currently active circuit scheduler settings for this context.
@@ -2169,7 +2175,7 @@ pulse_prog.draw()
[*ContextManager*](https://docs.python.org/3/library/typing.html#typing.ContextManager "(in Python v3.12)")\[None]
-### frequency\_offset
+#### frequency\_offset
Shift the frequency of inputs channels on entry into context and undo on exit.
@@ -2213,7 +2219,7 @@ pulse_prog.draw()
[*ContextManager*](https://docs.python.org/3/library/typing.html#typing.ContextManager "(in Python v3.12)")\[None]
-### phase\_offset
+#### phase\_offset
Shift the phase of input channels on entry into context and undo on exit.
@@ -2248,7 +2254,7 @@ pulse_prog.draw()
[*ContextManager*](https://docs.python.org/3/library/typing.html#typing.ContextManager "(in Python v3.12)")\[None]
-### transpiler\_settings
+#### transpiler\_settings
Set the currently active transpiler settings for this context.
@@ -2296,7 +2302,7 @@ with pulse.build(backend) as measure_sched:
MemorySlot(0)
```
-### measure
+#### measure
Measure a qubit within the currently active builder context.
@@ -2351,7 +2357,7 @@ MemorySlot(0)
[*List*](https://docs.python.org/3/library/typing.html#typing.List "(in Python v3.12)")\[StorageLocation] | StorageLocation
-### measure\_all
+#### measure\_all
Measure all qubits within the currently active builder context.
@@ -2384,7 +2390,7 @@ MemorySlot(0)
[*List*](https://docs.python.org/3/library/typing.html#typing.List "(in Python v3.12)")\[[*MemorySlot*](qiskit.pulse.channels.MemorySlot "qiskit.pulse.channels.MemorySlot")]
-### delay\_qubits
+#### delay\_qubits
Insert delays on all of the `channels.Channel`s that correspond to the input `qubits` at the same time.
@@ -2432,7 +2438,7 @@ with pulse.build(backend) as u3_sched:
pulse.u3(math.pi, 0, math.pi, 0)
```
-### cx
+#### cx
Call a `CXGate` on the input physical qubits.
@@ -2454,7 +2460,7 @@ with pulse.build(backend) as u3_sched:
```
-### u1
+#### u1
Call a `U1Gate` on the input physical qubit.
@@ -2478,7 +2484,7 @@ with pulse.build(backend) as u3_sched:
```
-### u2
+#### u2
Call a `U2Gate` on the input physical qubit.
@@ -2502,7 +2508,7 @@ with pulse.build(backend) as u3_sched:
```
-### u3
+#### u3
Call a `U3Gate` on the input physical qubit.
@@ -2526,7 +2532,7 @@ with pulse.build(backend) as u3_sched:
```
-### x
+#### x
Call a `XGate` on the input physical qubit.
@@ -2577,7 +2583,7 @@ There are 160 samples in 3.5555555555555554e-08 seconds
There are 1e-06 seconds in 4500 samples.
```
-### active\_backend
+#### active\_backend
Get the backend of the currently active builder context.
@@ -2597,7 +2603,7 @@ There are 1e-06 seconds in 4500 samples.
[**exceptions.BackendNotSet**](#qiskit.pulse.BackendNotSet "qiskit.pulse.exceptions.BackendNotSet") – If the builder does not have a backend set.
-### active\_transpiler\_settings
+#### active\_transpiler\_settings
Return the current active builder context’s transpiler settings.
@@ -2626,7 +2632,7 @@ There are 1e-06 seconds in 4500 samples.
[*Dict*](https://docs.python.org/3/library/typing.html#typing.Dict "(in Python v3.12)")\[[str](https://docs.python.org/3/library/stdtypes.html#str "(in Python v3.12)"), [*Any*](https://docs.python.org/3/library/typing.html#typing.Any "(in Python v3.12)")]
-### active\_circuit\_scheduler\_settings
+#### active\_circuit\_scheduler\_settings
Return the current active builder context’s circuit scheduler settings.
@@ -2656,7 +2662,7 @@ There are 1e-06 seconds in 4500 samples.
[*Dict*](https://docs.python.org/3/library/typing.html#typing.Dict "(in Python v3.12)")\[[str](https://docs.python.org/3/library/stdtypes.html#str "(in Python v3.12)"), [*Any*](https://docs.python.org/3/library/typing.html#typing.Any "(in Python v3.12)")]
-### num\_qubits
+#### num\_qubits
Return number of qubits in the currently active backend.
@@ -2686,7 +2692,7 @@ There are 1e-06 seconds in 4500 samples.
[int](https://docs.python.org/3/library/functions.html#int "(in Python v3.12)")
-### qubit\_channels
+#### qubit\_channels
Returns the set of channels associated with a qubit.
@@ -2720,7 +2726,7 @@ There are 1e-06 seconds in 4500 samples.
[*Set*](https://docs.python.org/3/library/typing.html#typing.Set "(in Python v3.12)")\[[*Channel*](#qiskit.pulse.channels.Channel "qiskit.pulse.channels.Channel")]
-### samples\_to\_seconds
+#### samples\_to\_seconds
Obtain the time in seconds that will elapse for the input number of samples on the active backend.
@@ -2738,7 +2744,7 @@ There are 1e-06 seconds in 4500 samples.
[float](https://docs.python.org/3/library/functions.html#float "(in Python v3.12)") | [*ndarray*](https://numpy.org/doc/stable/reference/generated/numpy.ndarray.html#numpy.ndarray "(in NumPy v1.26)")
-### seconds\_to\_samples
+#### seconds\_to\_samples
Obtain the number of samples that will elapse in `seconds` on the active backend.
diff --git a/docs/api/qiskit/0.44/qasm.mdx b/docs/api/qiskit/0.44/qasm.mdx
index fc92249ca1e..066e0af9a95 100644
--- a/docs/api/qiskit/0.44/qasm.mdx
+++ b/docs/api/qiskit/0.44/qasm.mdx
@@ -20,6 +20,8 @@ python_api_name: qiskit.qasm
## QASM Routines
+### Qasm
+
OPENQASM circuit object.
@@ -28,14 +30,20 @@ python_api_name: qiskit.qasm
## Pygments
+### OpenQASMLexer
+
A pygments lexer for OpenQasm.
+### QasmHTMLStyle
+
A style for OpenQasm in a HTML env (e.g. Jupyter widget).
+### QasmTerminalStyle
+
A style for OpenQasm in a Terminal env (e.g. Jupyter print).
diff --git a/docs/api/qiskit/0.44/qasm2.mdx b/docs/api/qiskit/0.44/qasm2.mdx
index 56a3a71ab09..d63789eb490 100644
--- a/docs/api/qiskit/0.44/qasm2.mdx
+++ b/docs/api/qiskit/0.44/qasm2.mdx
@@ -81,6 +81,8 @@ Both of these loading functions also take an argument `include_path`, which is a
You can extend the quantum components of the OpenQASM 2 language by passing an iterable of information on custom instructions as the argument `custom_instructions`. In files that have compatible definitions for these instructions, the given `constructor` will be used in place of whatever other handling [`qiskit.qasm2`](#module-qiskit.qasm2 "qiskit.qasm2") would have done. These instructions may optionally be marked as `builtin`, which causes them to not require an `opaque` or `gate` declaration, but they will silently ignore a compatible declaration. Either way, it is an error to provide a custom instruction that has a different number of parameters or qubits as a defined instruction in a parsed program. Each element of the argument iterable should be a particular data class:
+#### CustomInstruction
+
Information about a custom instruction that should be defined during the parse.
@@ -97,6 +99,8 @@ This can be particularly useful when trying to resolve ambiguities in the global
Similar to the quantum extensions above, you can also extend the processing done to classical expressions (arguments to gates) by passing an iterable to the argument `custom_classical` to either loader. This needs the `name` (a valid OpenQASM 2 identifier), the number `num_params` of parameters it takes, and a Python callable that implements the function. The Python callable must be able to accept `num_params` positional floating-point arguments, and must return a float or integer (which will be converted to a float). Builtin functions cannot be overridden.
+#### CustomClassical
+
Information about a custom classical function that should be defined in mathematical expressions.
diff --git a/docs/api/qiskit/0.44/qasm3.mdx b/docs/api/qiskit/0.44/qasm3.mdx
index d6300fbe26c..743d1736329 100644
--- a/docs/api/qiskit/0.44/qasm3.mdx
+++ b/docs/api/qiskit/0.44/qasm3.mdx
@@ -57,6 +57,8 @@ The high-level functions are simply [`dump()`](#qiskit.qasm3.dump "qiskit.qasm3.
Both of these exporter functions are single-use wrappers around the main [`Exporter`](#qiskit.qasm3.Exporter "qiskit.qasm3.Exporter") class. For more complex exporting needs, including dumping multiple circuits in a single session, it may be more convenient or faster to use the complete interface.
+### Exporter
+
QASM3 exporter main class.
@@ -88,13 +90,13 @@ Both of these exporter functions are single-use wrappers around the main [`Expor
* **experimental** ([*ExperimentalFeatures*](#qiskit.qasm3.ExperimentalFeatures "qiskit.qasm3.experimental.ExperimentalFeatures")) – any experimental features to enable during the export. See [`ExperimentalFeatures`](#qiskit.qasm3.ExperimentalFeatures "qiskit.qasm3.ExperimentalFeatures") for more details.
- ### dump
+ #### dump
Convert the circuit to OpenQASM 3, dumping the result to a file or text stream.
- ### dumps
+ #### dumps
Convert the circuit to OpenQASM 3, returning the result as a string.
@@ -115,12 +117,14 @@ All of these interfaces will raise [`QASM3ExporterError`](#qiskit.qasm3.QASM3Exp
The OpenQASM 3 language is still evolving as hardware capabilities improve, so there is no final syntax that Qiskit can reliably target. In order to represent the evolving language, we will sometimes release features before formal standardization, which may need to change as the review process in the OpenQASM 3 design committees progresses. By default, the exporters will only support standardised features of the language. To enable these early-release features, use the `experimental` keyword argument of [`dump()`](#qiskit.qasm3.dump "qiskit.qasm3.dump") and [`dumps()`](#qiskit.qasm3.dumps "qiskit.qasm3.dumps"). The available feature flags are:
+#### ExperimentalFeatures
+
Flags for experimental features that the OpenQASM 3 exporter supports.
These are experimental and are more liable to change, because the OpenQASM 3 specification has not formally accepted them yet, so the syntax may not be finalized.
- ### SWITCH\_CASE\_V1
+ ##### SWITCH\_CASE\_V1
Support exporting switch-case statements as proposed by [https://github.com/openqasm/openqasm/pull/463](https://github.com/openqasm/openqasm/pull/463) at [commit bfa787aa3078](https://github.com/openqasm/openqasm/pull/463/commits/bfa787aa3078).
diff --git a/docs/api/qiskit/0.44/qpy.mdx b/docs/api/qiskit/0.44/qpy.mdx
index b7636f1060a..8c9efab18d4 100644
--- a/docs/api/qiskit/0.44/qpy.mdx
+++ b/docs/api/qiskit/0.44/qpy.mdx
@@ -55,7 +55,7 @@ and then loading that file will return a list with all the circuits
### API documentation
-### load
+#### load
Load a QPY binary file
@@ -100,7 +100,7 @@ and then loading that file will return a list with all the circuits
[*List*](https://docs.python.org/3/library/typing.html#typing.List "(in Python v3.12)")\[[*QuantumCircuit*](qiskit.circuit.QuantumCircuit "qiskit.circuit.quantumcircuit.QuantumCircuit") | [*ScheduleBlock*](qiskit.pulse.ScheduleBlock "qiskit.pulse.schedule.ScheduleBlock")]
-### dump
+#### dump
Write QPY binary data to a file
@@ -155,7 +155,7 @@ and then loading that file will return a list with all the circuits
These functions will raise a custom subclass of [`QiskitError`](exceptions#qiskit.exceptions.QiskitError "qiskit.exceptions.QiskitError") if they encounter problems during serialization or deserialization.
-### QpyError
+#### QpyError
Errors raised by the qpy module.
diff --git a/docs/api/qiskit/0.44/scheduler.mdx b/docs/api/qiskit/0.44/scheduler.mdx
index 34a4de13b86..67cce56182a 100644
--- a/docs/api/qiskit/0.44/scheduler.mdx
+++ b/docs/api/qiskit/0.44/scheduler.mdx
@@ -20,6 +20,8 @@ python_api_name: qiskit.scheduler
A circuit scheduler compiles a circuit program to a pulse program.
+### ScheduleConfig
+
Configuration for pulse scheduling.
diff --git a/docs/api/qiskit/0.44/tools.mdx b/docs/api/qiskit/0.44/tools.mdx
index 9bcdf1d96c4..cc3bc4125c0 100644
--- a/docs/api/qiskit/0.44/tools.mdx
+++ b/docs/api/qiskit/0.44/tools.mdx
@@ -149,6 +149,8 @@ A helper module to get IBM backend information and submitted job status.
A helper component for publishing and subscribing to events.
+#### TextProgressBar
+
A simple text-based progress bar.
diff --git a/docs/api/qiskit/0.44/transpiler.mdx b/docs/api/qiskit/0.44/transpiler.mdx
index b3a2d5b92c2..537af658de7 100644
--- a/docs/api/qiskit/0.44/transpiler.mdx
+++ b/docs/api/qiskit/0.44/transpiler.mdx
@@ -934,7 +934,7 @@ See [https://arxiv.org/abs/2102.01682](https://arxiv.org/abs/2102.01682) for mor
### Exceptions
-### TranspilerError
+#### TranspilerError
Exceptions raised during transpilation.
@@ -942,7 +942,7 @@ See [https://arxiv.org/abs/2102.01682](https://arxiv.org/abs/2102.01682) for mor
Set the error message.
-### TranspilerAccessError
+#### TranspilerAccessError
DEPRECATED: Exception of access error in the transpiler passes.
@@ -950,7 +950,7 @@ See [https://arxiv.org/abs/2102.01682](https://arxiv.org/abs/2102.01682) for mor
Set the error message.
-### CouplingError
+#### CouplingError
Base class for errors raised by the coupling graph object.
@@ -958,7 +958,7 @@ See [https://arxiv.org/abs/2102.01682](https://arxiv.org/abs/2102.01682) for mor
Set the error message.
-### LayoutError
+#### LayoutError
Errors raised by the layout object.
diff --git a/docs/api/qiskit/0.44/utils.mdx b/docs/api/qiskit/0.44/utils.mdx
index bed5ffff05a..a3ed3a9e305 100644
--- a/docs/api/qiskit/0.44/utils.mdx
+++ b/docs/api/qiskit/0.44/utils.mdx
@@ -448,6 +448,8 @@ Each of the lazy checkers is an instance of [`LazyDependencyManager`](#qiskit.ut
from qiskit.utils import LazyImportTester
```
+#### LazyDependencyManager
+
A mananger for some optional features that are expensive to import, or to verify the existence of.
@@ -486,7 +488,7 @@ from qiskit.utils import LazyImportTester
* **install** – how to install this optional dependency. Passed to [`MissingOptionalLibraryError`](exceptions#qiskit.exceptions.MissingOptionalLibraryError "qiskit.exceptions.MissingOptionalLibraryError") as the `pip_install` parameter.
* **msg** – an extra message to include in the error raised if this is required.
- ### \_is\_available
+ ##### \_is\_available
Subclasses of [`LazyDependencyManager`](#qiskit.utils.LazyDependencyManager "qiskit.utils.LazyDependencyManager") should override this method to implement the actual test of availability. This method should return a Boolean, where `True` indicates that the dependency was available. This method will only ever be called once.
@@ -496,13 +498,13 @@ from qiskit.utils import LazyImportTester
[bool](https://docs.python.org/3/library/functions.html#bool "(in Python v3.12)")
- ### disable\_locally
+ ##### disable\_locally
Create a context, during which the value of the dependency manager will be `False`. This means that within the context, any calls to this object will behave as if the dependency is not available, including raising errors. It is valid to call this method whether or not the dependency has already been evaluated. This is most useful in tests.
- ### require\_in\_call
+ ##### require\_in\_call
Create a decorator for callables that requires that the dependency is available when the decorated function or method is called.
@@ -520,7 +522,7 @@ from qiskit.utils import LazyImportTester
Callable
- ### require\_in\_instance
+ ##### require\_in\_instance
A class decorator that requires the dependency is available when the class is initialised. This decorator can be used even if the class does not define an `__init__` method.
@@ -538,7 +540,7 @@ from qiskit.utils import LazyImportTester
Callable
- ### require\_now
+ ##### require\_now
Eagerly attempt to import the dependencies in this object, and raise an exception if they cannot be imported.
@@ -553,6 +555,8 @@ from qiskit.utils import LazyImportTester
+#### LazyImportTester
+
A lazy dependency tester for importable Python modules. Any required objects will only be imported at the point that this object is tested for its Boolean value.
@@ -565,6 +569,8 @@ from qiskit.utils import LazyImportTester
[**ValueError**](https://docs.python.org/3/library/exceptions.html#ValueError "(in Python v3.12)") – if no modules are given.
+#### LazySubprocessTester
+
A lazy checker that a command-line tool is available. The command will only be run once, at the point that this object is checked for its Boolean value.
diff --git a/docs/api/qiskit/0.45/algorithms.mdx b/docs/api/qiskit/0.45/algorithms.mdx
index bc6ae941f5a..53efd605364 100644
--- a/docs/api/qiskit/0.45/algorithms.mdx
+++ b/docs/api/qiskit/0.45/algorithms.mdx
@@ -193,7 +193,7 @@ Algorithms that compute the fidelity of pairs of quantum states.
### Exceptions
-### AlgorithmError
+#### AlgorithmError
For Algorithm specific errors.
@@ -213,7 +213,7 @@ Utility classes used by algorithms (mainly for type-hinting purposes).
Utility functions used by algorithms.
-### eval\_observables
+#### eval\_observables
Deprecated: Accepts a list or a dictionary of operators and calculates their expectation values - means and standard deviations. They are calculated with respect to a quantum state provided. A user can optionally provide a threshold value which filters mean values falling below the threshold.
@@ -245,7 +245,7 @@ Utility functions used by algorithms.
ListOrDict\[[tuple](https://docs.python.org/3/library/stdtypes.html#tuple "(in Python v3.12)")\[[complex](https://docs.python.org/3/library/functions.html#complex "(in Python v3.12)"), [complex](https://docs.python.org/3/library/functions.html#complex "(in Python v3.12)")]]
-### estimate\_observables
+#### estimate\_observables
Accepts a sequence of operators and calculates their expectation values - means and metadata. They are calculated with respect to a quantum state provided. A user can optionally provide a threshold value which filters mean values falling below the threshold.
diff --git a/docs/api/qiskit/0.45/circuit.mdx b/docs/api/qiskit/0.45/circuit.mdx
index 4deb217fe69..425d866ed94 100644
--- a/docs/api/qiskit/0.45/circuit.mdx
+++ b/docs/api/qiskit/0.45/circuit.mdx
@@ -284,7 +284,7 @@ with qc.switch(cr) as case:
### Random Circuits
-### random\_circuit
+#### random\_circuit
Generate random circuit of arbitrary size and form.
@@ -342,7 +342,7 @@ with qc.switch(cr) as case:
Almost all circuit functions and methods will raise a [`CircuitError`](#qiskit.circuit.CircuitError "qiskit.circuit.CircuitError") when encountering an error that is particular to usage of Qiskit (as opposed to regular typing or indexing problems, which will typically raise the corresponding standard Python error).
-### CircuitError
+#### CircuitError
Base class for errors raised while processing a circuit.
diff --git a/docs/api/qiskit/0.45/circuit_classical.mdx b/docs/api/qiskit/0.45/circuit_classical.mdx
index 6b88e639f9c..94dd4fba451 100644
--- a/docs/api/qiskit/0.45/circuit_classical.mdx
+++ b/docs/api/qiskit/0.45/circuit_classical.mdx
@@ -48,6 +48,8 @@ There are two pathways for constructing expressions. The classes that form [the
The expression system is based on tree representation. All nodes in the tree are final (uninheritable) instances of the abstract base class:
+#### Expr
+
Root base class of all nodes in the expression tree. The base case should never be instantiated directly.
@@ -60,18 +62,24 @@ These objects are mutable and should not be reused in a different location witho
The entry point from general circuit objects to the expression system is by wrapping the object in a [`Var`](#qiskit.circuit.classical.expr.Var "qiskit.circuit.classical.expr.Var") node and associating a [`Type`](#qiskit.circuit.classical.types.Type "qiskit.circuit.classical.types.Type") with it.
+#### Var
+
A classical variable.
Similarly, literals used in comparison (such as integers) should be lifted to [`Value`](#qiskit.circuit.classical.expr.Value "qiskit.circuit.classical.expr.Value") nodes with associated types.
+#### Value
+
A single scalar value.
The operations traditionally associated with pre-, post- or infix operators in programming are represented by the [`Unary`](#qiskit.circuit.classical.expr.Unary "qiskit.circuit.classical.expr.Unary") and [`Binary`](#qiskit.circuit.classical.expr.Binary "qiskit.circuit.classical.expr.Binary") nodes as appropriate. These each take an operation type code, which are exposed as enumerations inside each class as [`Unary.Op`](#qiskit.circuit.classical.expr.Unary.Op "qiskit.circuit.classical.expr.Unary.Op") and [`Binary.Op`](#qiskit.circuit.classical.expr.Binary.Op "qiskit.circuit.classical.expr.Binary.Op") respectively.
+#### Unary
+
A unary expression.
@@ -81,6 +89,8 @@ The operations traditionally associated with pre-, post- or infix operators in p
* **operand** ([*Expr*](#qiskit.circuit.classical.expr.Expr "qiskit.circuit.classical.expr.Expr")) – The operand of the operation.
* **type** ([*Type*](#qiskit.circuit.classical.types.Type "qiskit.circuit.classical.types.types.Type")) – The resolved type of the result.
+ ##### Op
+
Enumeration of the opcodes for unary operations.
@@ -88,13 +98,13 @@ The operations traditionally associated with pre-, post- or infix operators in p
The logical negation [`LOGIC_NOT`](#qiskit.circuit.classical.expr.Unary.Op.LOGIC_NOT "qiskit.circuit.classical.expr.Unary.Op.LOGIC_NOT") takes an input that is implicitly coerced to a Boolean, and returns a Boolean.
- ### BIT\_NOT
+ ###### BIT\_NOT
Bitwise negation. `~operand`.
- ### LOGIC\_NOT
+ ###### LOGIC\_NOT
Logical negation. `!operand`.
@@ -102,6 +112,8 @@ The operations traditionally associated with pre-, post- or infix operators in p
+#### Binary
+
A binary expression.
@@ -112,6 +124,8 @@ The operations traditionally associated with pre-, post- or infix operators in p
* **right** ([*Expr*](#qiskit.circuit.classical.expr.Expr "qiskit.circuit.classical.expr.Expr")) – The right-hand operand.
* **type** ([*Type*](#qiskit.circuit.classical.types.Type "qiskit.circuit.classical.types.types.Type")) – The resolved type of the result.
+ ##### Op
+
Enumeration of the opcodes for binary operations.
@@ -121,67 +135,67 @@ The operations traditionally associated with pre-, post- or infix operators in p
The binary mathematical relations [`EQUAL`](#qiskit.circuit.classical.expr.Binary.Op.EQUAL "qiskit.circuit.classical.expr.Binary.Op.EQUAL"), [`NOT_EQUAL`](#qiskit.circuit.classical.expr.Binary.Op.NOT_EQUAL "qiskit.circuit.classical.expr.Binary.Op.NOT_EQUAL"), [`LESS`](#qiskit.circuit.classical.expr.Binary.Op.LESS "qiskit.circuit.classical.expr.Binary.Op.LESS"), [`LESS_EQUAL`](#qiskit.circuit.classical.expr.Binary.Op.LESS_EQUAL "qiskit.circuit.classical.expr.Binary.Op.LESS_EQUAL"), [`GREATER`](#qiskit.circuit.classical.expr.Binary.Op.GREATER "qiskit.circuit.classical.expr.Binary.Op.GREATER") and [`GREATER_EQUAL`](#qiskit.circuit.classical.expr.Binary.Op.GREATER_EQUAL "qiskit.circuit.classical.expr.Binary.Op.GREATER_EQUAL") take unsigned integers (with an implicit cast to make them the same width), and return a Boolean.
- ### BIT\_AND
+ ###### BIT\_AND
Bitwise “and”. `lhs & rhs`.
- ### BIT\_OR
+ ###### BIT\_OR
Bitwise “or”. `lhs | rhs`.
- ### BIT\_XOR
+ ###### BIT\_XOR
Bitwise “exclusive or”. `lhs ^ rhs`.
- ### LOGIC\_AND
+ ###### LOGIC\_AND
Logical “and”. `lhs && rhs`.
- ### LOGIC\_OR
+ ###### LOGIC\_OR
Logical “or”. `lhs || rhs`.
- ### EQUAL
+ ###### EQUAL
Numeric equality. `lhs == rhs`.
- ### NOT\_EQUAL
+ ###### NOT\_EQUAL
Numeric inequality. `lhs != rhs`.
- ### LESS
+ ###### LESS
Numeric less than. `lhs < rhs`.
- ### LESS\_EQUAL
+ ###### LESS\_EQUAL
Numeric less than or equal to. `lhs <= rhs`
- ### GREATER
+ ###### GREATER
Numeric greater than. `lhs > rhs`.
- ### GREATER\_EQUAL
+ ###### GREATER\_EQUAL
Numeric greater than or equal to. `lhs >= rhs`.
@@ -193,6 +207,8 @@ When constructing expressions, one must ensure that the types are valid for the
Expressions in this system are defined to act only on certain sets of types. However, values may be cast to a suitable supertype in order to satisfy the typing requirements. In these cases, a node in the expression tree is used to represent the promotion. In all cases where operations note that they “implicitly cast” or “coerce” their arguments, the expression tree must have this node representing the conversion.
+#### Cast
+
A cast from one type to another, implied by the use of an expression in a different context.
@@ -205,7 +221,7 @@ Constructing the tree representation directly is verbose and easy to make a mist
The functions and methods described in this section are a more user-friendly way to build the expression tree, while staying close to the internal representation. All these functions will automatically lift valid Python scalar values into corresponding [`Var`](#qiskit.circuit.classical.expr.Var "qiskit.circuit.classical.expr.Var") or [`Value`](#qiskit.circuit.classical.expr.Value "qiskit.circuit.classical.expr.Value") objects, and will resolve any required implicit casts on your behalf.
-### lift
+#### lift
Lift the given Python `value` to a [`Value`](#qiskit.circuit.classical.expr.Value "qiskit.circuit.classical.expr.expr.Value") or [`Var`](#qiskit.circuit.classical.expr.Var "qiskit.circuit.classical.expr.expr.Var").
@@ -243,7 +259,7 @@ The functions and methods described in this section are a more user-friendly way
You can manually specify casts in cases where the cast is allowed in explicit form, but may be lossy (such as the cast of a higher precision [`Uint`](#qiskit.circuit.classical.types.Uint "qiskit.circuit.classical.types.Uint") to a lower precision one).
-### cast
+#### cast
Create an explicit cast from the given value to the given type.
@@ -266,7 +282,7 @@ You can manually specify casts in cases where the cast is allowed in explicit fo
There are helper constructor functions for each of the unary operations.
-### bit\_not
+#### bit\_not
Create a bitwise ‘not’ expression node from the given value, resolving any implicit casts and lifting the value into a [`Value`](#qiskit.circuit.classical.expr.Value "qiskit.circuit.classical.expr.Value") node if required.
@@ -287,7 +303,7 @@ There are helper constructor functions for each of the unary operations.
[*Expr*](#qiskit.circuit.classical.expr.Expr "qiskit.circuit.classical.expr.expr.Expr")
-### logic\_not
+#### logic\_not
Create a logical ‘not’ expression node from the given value, resolving any implicit casts and lifting the value into a [`Value`](#qiskit.circuit.classical.expr.Value "qiskit.circuit.classical.expr.Value") node if required.
@@ -310,7 +326,7 @@ There are helper constructor functions for each of the unary operations.
Similarly, the binary operations and relations have helper functions defined.
-### bit\_and
+#### bit\_and
Create a bitwise ‘and’ expression node from the given value, resolving any implicit casts and lifting the values into [`Value`](#qiskit.circuit.classical.expr.Value "qiskit.circuit.classical.expr.Value") nodes if required.
@@ -331,7 +347,7 @@ Similarly, the binary operations and relations have helper functions defined.
[*Expr*](#qiskit.circuit.classical.expr.Expr "qiskit.circuit.classical.expr.expr.Expr")
-### bit\_or
+#### bit\_or
Create a bitwise ‘or’ expression node from the given value, resolving any implicit casts and lifting the values into [`Value`](#qiskit.circuit.classical.expr.Value "qiskit.circuit.classical.expr.Value") nodes if required.
@@ -352,7 +368,7 @@ Similarly, the binary operations and relations have helper functions defined.
[*Expr*](#qiskit.circuit.classical.expr.Expr "qiskit.circuit.classical.expr.expr.Expr")
-### bit\_xor
+#### bit\_xor
Create a bitwise ‘exclusive or’ expression node from the given value, resolving any implicit casts and lifting the values into [`Value`](#qiskit.circuit.classical.expr.Value "qiskit.circuit.classical.expr.Value") nodes if required.
@@ -373,7 +389,7 @@ Similarly, the binary operations and relations have helper functions defined.
[*Expr*](#qiskit.circuit.classical.expr.Expr "qiskit.circuit.classical.expr.expr.Expr")
-### logic\_and
+#### logic\_and
Create a logical ‘and’ expression node from the given value, resolving any implicit casts and lifting the values into [`Value`](#qiskit.circuit.classical.expr.Value "qiskit.circuit.classical.expr.Value") nodes if required.
@@ -394,7 +410,7 @@ Similarly, the binary operations and relations have helper functions defined.
[*Expr*](#qiskit.circuit.classical.expr.Expr "qiskit.circuit.classical.expr.expr.Expr")
-### logic\_or
+#### logic\_or
Create a logical ‘or’ expression node from the given value, resolving any implicit casts and lifting the values into [`Value`](#qiskit.circuit.classical.expr.Value "qiskit.circuit.classical.expr.Value") nodes if required.
@@ -415,7 +431,7 @@ Similarly, the binary operations and relations have helper functions defined.
[*Expr*](#qiskit.circuit.classical.expr.Expr "qiskit.circuit.classical.expr.expr.Expr")
-### equal
+#### equal
Create an ‘equal’ expression node from the given value, resolving any implicit casts and lifting the values into [`Value`](#qiskit.circuit.classical.expr.Value "qiskit.circuit.classical.expr.Value") nodes if required.
@@ -436,7 +452,7 @@ Similarly, the binary operations and relations have helper functions defined.
[*Expr*](#qiskit.circuit.classical.expr.Expr "qiskit.circuit.classical.expr.expr.Expr")
-### not\_equal
+#### not\_equal
Create a ‘not equal’ expression node from the given value, resolving any implicit casts and lifting the values into [`Value`](#qiskit.circuit.classical.expr.Value "qiskit.circuit.classical.expr.Value") nodes if required.
@@ -457,7 +473,7 @@ Similarly, the binary operations and relations have helper functions defined.
[*Expr*](#qiskit.circuit.classical.expr.Expr "qiskit.circuit.classical.expr.expr.Expr")
-### less
+#### less
Create a ‘less than’ expression node from the given value, resolving any implicit casts and lifting the values into [`Value`](#qiskit.circuit.classical.expr.Value "qiskit.circuit.classical.expr.Value") nodes if required.
@@ -478,7 +494,7 @@ Similarly, the binary operations and relations have helper functions defined.
[*Expr*](#qiskit.circuit.classical.expr.Expr "qiskit.circuit.classical.expr.expr.Expr")
-### less\_equal
+#### less\_equal
Create a ‘less than or equal to’ expression node from the given value, resolving any implicit casts and lifting the values into [`Value`](#qiskit.circuit.classical.expr.Value "qiskit.circuit.classical.expr.Value") nodes if required.
@@ -499,7 +515,7 @@ Similarly, the binary operations and relations have helper functions defined.
[*Expr*](#qiskit.circuit.classical.expr.Expr "qiskit.circuit.classical.expr.expr.Expr")
-### greater
+#### greater
Create a ‘greater than’ expression node from the given value, resolving any implicit casts and lifting the values into [`Value`](#qiskit.circuit.classical.expr.Value "qiskit.circuit.classical.expr.Value") nodes if required.
@@ -520,7 +536,7 @@ Similarly, the binary operations and relations have helper functions defined.
[*Expr*](#qiskit.circuit.classical.expr.Expr "qiskit.circuit.classical.expr.expr.Expr")
-### greater\_equal
+#### greater\_equal
Create a ‘greater than or equal to’ expression node from the given value, resolving any implicit casts and lifting the values into [`Value`](#qiskit.circuit.classical.expr.Value "qiskit.circuit.classical.expr.Value") nodes if required.
@@ -543,7 +559,7 @@ Similarly, the binary operations and relations have helper functions defined.
Qiskit’s legacy method for specifying equality conditions for use in conditionals is to use a two-tuple of a [`Clbit`](qiskit.circuit.Clbit "qiskit.circuit.Clbit") or [`ClassicalRegister`](qiskit.circuit.ClassicalRegister "qiskit.circuit.ClassicalRegister") and an integer. This represents an exact equality condition, and there are no ways to specify any other relations. The helper function [`lift_legacy_condition()`](#qiskit.circuit.classical.expr.lift_legacy_condition "qiskit.circuit.classical.expr.lift_legacy_condition") converts this legacy format into the new expression syntax.
-### lift\_legacy\_condition
+#### lift\_legacy\_condition
Lift a legacy two-tuple equality condition into a new-style [`Expr`](#qiskit.circuit.classical.expr.Expr "qiskit.circuit.classical.expr.Expr").
@@ -572,10 +588,12 @@ Qiskit’s legacy method for specifying equality conditions for use in condition
A typical consumer of the expression tree wants to recursively walk through the tree, potentially statefully, acting on each node differently depending on its type. This is naturally a double-dispatch problem; the logic of ‘what is to be done’ is likely stateful and users should be free to define their own operations, yet each node defines ‘what is being acted on’. We enable this double dispatch by providing a base visitor class for the expression tree.
+#### ExprVisitor
+
Base class for visitors to the [`Expr`](#qiskit.circuit.classical.expr.Expr "qiskit.circuit.classical.expr.Expr") tree. Subclasses should override whichever of the `visit_*` methods that they are able to handle, and should be organised such that non-existent methods will never be called.
- ### visit\_binary
+ ##### visit\_binary
**Return type**
@@ -583,7 +601,7 @@ A typical consumer of the expression tree wants to recursively walk through the
*\_T\_co*
- ### visit\_cast
+ ##### visit\_cast
**Return type**
@@ -591,7 +609,7 @@ A typical consumer of the expression tree wants to recursively walk through the
*\_T\_co*
- ### visit\_generic
+ ##### visit\_generic
**Return type**
@@ -599,7 +617,7 @@ A typical consumer of the expression tree wants to recursively walk through the
*\_T\_co*
- ### visit\_unary
+ ##### visit\_unary
**Return type**
@@ -607,7 +625,7 @@ A typical consumer of the expression tree wants to recursively walk through the
*\_T\_co*
- ### visit\_value
+ ##### visit\_value
**Return type**
@@ -615,7 +633,7 @@ A typical consumer of the expression tree wants to recursively walk through the
*\_T\_co*
- ### visit\_var
+ ##### visit\_var
**Return type**
@@ -628,7 +646,7 @@ Consumers of the expression tree should subclass the visitor, and override the `
For the convenience of simple visitors that only need to inspect the variables in an expression and not the general structure, the iterator method [`iter_vars()`](#qiskit.circuit.classical.expr.iter_vars "qiskit.circuit.classical.expr.iter_vars") is provided.
-### iter\_vars
+#### iter\_vars
Get an iterator over the [`Var`](#qiskit.circuit.classical.expr.Var "qiskit.circuit.classical.expr.expr.Var") nodes referenced at any level in the given [`Expr`](#qiskit.circuit.classical.expr.Expr "qiskit.circuit.classical.expr.expr.Expr").
@@ -656,7 +674,7 @@ For the convenience of simple visitors that only need to inspect the variables i
Two expressions can be compared for direct structural equality by using the built-in Python `==` operator. In general, though, one might want to compare two expressions slightly more semantically, allowing that the [`Var`](#qiskit.circuit.classical.expr.Var "qiskit.circuit.classical.expr.Var") nodes inside them are bound to different memory-location descriptions between two different circuits. In this case, one can use [`structurally_equivalent()`](#qiskit.circuit.classical.expr.structurally_equivalent "qiskit.circuit.classical.expr.structurally_equivalent") with two suitable “key” functions to do the comparison.
-### structurally\_equivalent
+#### structurally\_equivalent
Do these two expressions have exactly the same tree structure, up to some key function for the [`Var`](#qiskit.circuit.classical.expr.Var "qiskit.circuit.classical.expr.expr.Var") objects?
@@ -715,6 +733,8 @@ The type system of the expression tree is exposed through this module. This is i
All types inherit from an abstract base class:
+### Type
+
Root base class of all nodes in the type tree. The base case should never be instantiated directly.
@@ -725,10 +745,14 @@ Types should be considered immutable objects, and you must not mutate them. It i
The two different types available are for Booleans (corresponding to [`Clbit`](qiskit.circuit.Clbit "qiskit.circuit.Clbit") and the literals `True` and `False`), and unsigned integers (corresponding to [`ClassicalRegister`](qiskit.circuit.ClassicalRegister "qiskit.circuit.ClassicalRegister") and Python integers).
+### Bool
+
The Boolean type. This has exactly two values: `True` and `False`.
+### Uint
+
An unsigned integer of fixed bit width.
@@ -770,6 +794,8 @@ The low-level interface to querying the subtyping relationship is the [`order()`
The return value is an enumeration [`Ordering`](#qiskit.circuit.classical.types.Ordering "qiskit.circuit.classical.types.Ordering") that describes what, if any, subtyping relationship exists between the two types.
+### Ordering
+
Enumeration listing the possible relations between two types. Types only have a partial ordering, so it’s possible for two types to have no sub-typing relationship.
diff --git a/docs/api/qiskit/0.45/circuit_library.mdx b/docs/api/qiskit/0.45/circuit_library.mdx
index 946ac59627f..dde56ac8ce2 100644
--- a/docs/api/qiskit/0.45/circuit_library.mdx
+++ b/docs/api/qiskit/0.45/circuit_library.mdx
@@ -324,7 +324,7 @@ Template circuits for [`XGate`](qiskit.circuit.library.XGate "qiskit.circuit.lib
**Reference:** Maslov, D. and Dueck, G. W. and Miller, D. M., Techniques for the synthesis of reversible Toffoli networks, 2007 [http://dx.doi.org/10.1145/1278349.1278355](http://dx.doi.org/10.1145/1278349.1278355)
-### template\_nct\_2a\_1
+#### template\_nct\_2a\_1
**Returns**
@@ -336,7 +336,7 @@ Template circuits for [`XGate`](qiskit.circuit.library.XGate "qiskit.circuit.lib
[QuantumCircuit](qiskit.circuit.QuantumCircuit "qiskit.circuit.QuantumCircuit")
-### template\_nct\_2a\_2
+#### template\_nct\_2a\_2
**Returns**
@@ -348,7 +348,7 @@ Template circuits for [`XGate`](qiskit.circuit.library.XGate "qiskit.circuit.lib
[QuantumCircuit](qiskit.circuit.QuantumCircuit "qiskit.circuit.QuantumCircuit")
-### template\_nct\_2a\_3
+#### template\_nct\_2a\_3
**Returns**
@@ -360,7 +360,7 @@ Template circuits for [`XGate`](qiskit.circuit.library.XGate "qiskit.circuit.lib
[QuantumCircuit](qiskit.circuit.QuantumCircuit "qiskit.circuit.QuantumCircuit")
-### template\_nct\_4a\_1
+#### template\_nct\_4a\_1
**Returns**
@@ -372,7 +372,7 @@ Template circuits for [`XGate`](qiskit.circuit.library.XGate "qiskit.circuit.lib
[QuantumCircuit](qiskit.circuit.QuantumCircuit "qiskit.circuit.QuantumCircuit")
-### template\_nct\_4a\_2
+#### template\_nct\_4a\_2
**Returns**
@@ -384,7 +384,7 @@ Template circuits for [`XGate`](qiskit.circuit.library.XGate "qiskit.circuit.lib
[QuantumCircuit](qiskit.circuit.QuantumCircuit "qiskit.circuit.QuantumCircuit")
-### template\_nct\_4a\_3
+#### template\_nct\_4a\_3
**Returns**
@@ -396,7 +396,7 @@ Template circuits for [`XGate`](qiskit.circuit.library.XGate "qiskit.circuit.lib
[QuantumCircuit](qiskit.circuit.QuantumCircuit "qiskit.circuit.QuantumCircuit")
-### template\_nct\_4b\_1
+#### template\_nct\_4b\_1
**Returns**
@@ -408,7 +408,7 @@ Template circuits for [`XGate`](qiskit.circuit.library.XGate "qiskit.circuit.lib
[QuantumCircuit](qiskit.circuit.QuantumCircuit "qiskit.circuit.QuantumCircuit")
-### template\_nct\_4b\_2
+#### template\_nct\_4b\_2
**Returns**
@@ -420,7 +420,7 @@ Template circuits for [`XGate`](qiskit.circuit.library.XGate "qiskit.circuit.lib
[QuantumCircuit](qiskit.circuit.QuantumCircuit "qiskit.circuit.QuantumCircuit")
-### template\_nct\_5a\_1
+#### template\_nct\_5a\_1
**Returns**
@@ -432,7 +432,7 @@ Template circuits for [`XGate`](qiskit.circuit.library.XGate "qiskit.circuit.lib
[QuantumCircuit](qiskit.circuit.QuantumCircuit "qiskit.circuit.QuantumCircuit")
-### template\_nct\_5a\_2
+#### template\_nct\_5a\_2
**Returns**
@@ -444,7 +444,7 @@ Template circuits for [`XGate`](qiskit.circuit.library.XGate "qiskit.circuit.lib
[QuantumCircuit](qiskit.circuit.QuantumCircuit "qiskit.circuit.QuantumCircuit")
-### template\_nct\_5a\_3
+#### template\_nct\_5a\_3
**Returns**
@@ -456,7 +456,7 @@ Template circuits for [`XGate`](qiskit.circuit.library.XGate "qiskit.circuit.lib
[QuantumCircuit](qiskit.circuit.QuantumCircuit "qiskit.circuit.QuantumCircuit")
-### template\_nct\_5a\_4
+#### template\_nct\_5a\_4
**Returns**
@@ -468,7 +468,7 @@ Template circuits for [`XGate`](qiskit.circuit.library.XGate "qiskit.circuit.lib
[QuantumCircuit](qiskit.circuit.QuantumCircuit "qiskit.circuit.QuantumCircuit")
-### template\_nct\_6a\_1
+#### template\_nct\_6a\_1
**Returns**
@@ -480,7 +480,7 @@ Template circuits for [`XGate`](qiskit.circuit.library.XGate "qiskit.circuit.lib
[QuantumCircuit](qiskit.circuit.QuantumCircuit "qiskit.circuit.QuantumCircuit")
-### template\_nct\_6a\_2
+#### template\_nct\_6a\_2
**Returns**
@@ -492,7 +492,7 @@ Template circuits for [`XGate`](qiskit.circuit.library.XGate "qiskit.circuit.lib
[QuantumCircuit](qiskit.circuit.QuantumCircuit "qiskit.circuit.QuantumCircuit")
-### template\_nct\_6a\_3
+#### template\_nct\_6a\_3
**Returns**
@@ -504,7 +504,7 @@ Template circuits for [`XGate`](qiskit.circuit.library.XGate "qiskit.circuit.lib
[QuantumCircuit](qiskit.circuit.QuantumCircuit "qiskit.circuit.QuantumCircuit")
-### template\_nct\_6a\_4
+#### template\_nct\_6a\_4
**Returns**
@@ -516,7 +516,7 @@ Template circuits for [`XGate`](qiskit.circuit.library.XGate "qiskit.circuit.lib
[QuantumCircuit](qiskit.circuit.QuantumCircuit "qiskit.circuit.QuantumCircuit")
-### template\_nct\_6b\_1
+#### template\_nct\_6b\_1
**Returns**
@@ -528,7 +528,7 @@ Template circuits for [`XGate`](qiskit.circuit.library.XGate "qiskit.circuit.lib
[QuantumCircuit](qiskit.circuit.QuantumCircuit "qiskit.circuit.QuantumCircuit")
-### template\_nct\_6b\_2
+#### template\_nct\_6b\_2
**Returns**
@@ -540,7 +540,7 @@ Template circuits for [`XGate`](qiskit.circuit.library.XGate "qiskit.circuit.lib
[QuantumCircuit](qiskit.circuit.QuantumCircuit "qiskit.circuit.QuantumCircuit")
-### template\_nct\_6c\_1
+#### template\_nct\_6c\_1
**Returns**
@@ -552,7 +552,7 @@ Template circuits for [`XGate`](qiskit.circuit.library.XGate "qiskit.circuit.lib
[QuantumCircuit](qiskit.circuit.QuantumCircuit "qiskit.circuit.QuantumCircuit")
-### template\_nct\_7a\_1
+#### template\_nct\_7a\_1
**Returns**
@@ -564,7 +564,7 @@ Template circuits for [`XGate`](qiskit.circuit.library.XGate "qiskit.circuit.lib
[QuantumCircuit](qiskit.circuit.QuantumCircuit "qiskit.circuit.QuantumCircuit")
-### template\_nct\_7b\_1
+#### template\_nct\_7b\_1
**Returns**
@@ -576,7 +576,7 @@ Template circuits for [`XGate`](qiskit.circuit.library.XGate "qiskit.circuit.lib
[QuantumCircuit](qiskit.circuit.QuantumCircuit "qiskit.circuit.QuantumCircuit")
-### template\_nct\_7c\_1
+#### template\_nct\_7c\_1
**Returns**
@@ -588,7 +588,7 @@ Template circuits for [`XGate`](qiskit.circuit.library.XGate "qiskit.circuit.lib
[QuantumCircuit](qiskit.circuit.QuantumCircuit "qiskit.circuit.QuantumCircuit")
-### template\_nct\_7d\_1
+#### template\_nct\_7d\_1
**Returns**
@@ -600,7 +600,7 @@ Template circuits for [`XGate`](qiskit.circuit.library.XGate "qiskit.circuit.lib
[QuantumCircuit](qiskit.circuit.QuantumCircuit "qiskit.circuit.QuantumCircuit")
-### template\_nct\_7e\_1
+#### template\_nct\_7e\_1
**Returns**
@@ -612,7 +612,7 @@ Template circuits for [`XGate`](qiskit.circuit.library.XGate "qiskit.circuit.lib
[QuantumCircuit](qiskit.circuit.QuantumCircuit "qiskit.circuit.QuantumCircuit")
-### template\_nct\_9a\_1
+#### template\_nct\_9a\_1
**Returns**
@@ -624,7 +624,7 @@ Template circuits for [`XGate`](qiskit.circuit.library.XGate "qiskit.circuit.lib
[QuantumCircuit](qiskit.circuit.QuantumCircuit "qiskit.circuit.QuantumCircuit")
-### template\_nct\_9c\_1
+#### template\_nct\_9c\_1
**Returns**
@@ -636,7 +636,7 @@ Template circuits for [`XGate`](qiskit.circuit.library.XGate "qiskit.circuit.lib
[QuantumCircuit](qiskit.circuit.QuantumCircuit "qiskit.circuit.QuantumCircuit")
-### template\_nct\_9c\_2
+#### template\_nct\_9c\_2
**Returns**
@@ -648,7 +648,7 @@ Template circuits for [`XGate`](qiskit.circuit.library.XGate "qiskit.circuit.lib
[QuantumCircuit](qiskit.circuit.QuantumCircuit "qiskit.circuit.QuantumCircuit")
-### template\_nct\_9c\_3
+#### template\_nct\_9c\_3
**Returns**
@@ -660,7 +660,7 @@ Template circuits for [`XGate`](qiskit.circuit.library.XGate "qiskit.circuit.lib
[QuantumCircuit](qiskit.circuit.QuantumCircuit "qiskit.circuit.QuantumCircuit")
-### template\_nct\_9c\_4
+#### template\_nct\_9c\_4
**Returns**
@@ -672,7 +672,7 @@ Template circuits for [`XGate`](qiskit.circuit.library.XGate "qiskit.circuit.lib
[QuantumCircuit](qiskit.circuit.QuantumCircuit "qiskit.circuit.QuantumCircuit")
-### template\_nct\_9c\_5
+#### template\_nct\_9c\_5
**Returns**
@@ -684,7 +684,7 @@ Template circuits for [`XGate`](qiskit.circuit.library.XGate "qiskit.circuit.lib
[QuantumCircuit](qiskit.circuit.QuantumCircuit "qiskit.circuit.QuantumCircuit")
-### template\_nct\_9c\_6
+#### template\_nct\_9c\_6
**Returns**
@@ -696,7 +696,7 @@ Template circuits for [`XGate`](qiskit.circuit.library.XGate "qiskit.circuit.lib
[QuantumCircuit](qiskit.circuit.QuantumCircuit "qiskit.circuit.QuantumCircuit")
-### template\_nct\_9c\_7
+#### template\_nct\_9c\_7
**Returns**
@@ -708,7 +708,7 @@ Template circuits for [`XGate`](qiskit.circuit.library.XGate "qiskit.circuit.lib
[QuantumCircuit](qiskit.circuit.QuantumCircuit "qiskit.circuit.QuantumCircuit")
-### template\_nct\_9c\_8
+#### template\_nct\_9c\_8
**Returns**
@@ -720,7 +720,7 @@ Template circuits for [`XGate`](qiskit.circuit.library.XGate "qiskit.circuit.lib
[QuantumCircuit](qiskit.circuit.QuantumCircuit "qiskit.circuit.QuantumCircuit")
-### template\_nct\_9c\_9
+#### template\_nct\_9c\_9
**Returns**
@@ -732,7 +732,7 @@ Template circuits for [`XGate`](qiskit.circuit.library.XGate "qiskit.circuit.lib
[QuantumCircuit](qiskit.circuit.QuantumCircuit "qiskit.circuit.QuantumCircuit")
-### template\_nct\_9c\_10
+#### template\_nct\_9c\_10
**Returns**
@@ -744,7 +744,7 @@ Template circuits for [`XGate`](qiskit.circuit.library.XGate "qiskit.circuit.lib
[QuantumCircuit](qiskit.circuit.QuantumCircuit "qiskit.circuit.QuantumCircuit")
-### template\_nct\_9c\_11
+#### template\_nct\_9c\_11
**Returns**
@@ -756,7 +756,7 @@ Template circuits for [`XGate`](qiskit.circuit.library.XGate "qiskit.circuit.lib
[QuantumCircuit](qiskit.circuit.QuantumCircuit "qiskit.circuit.QuantumCircuit")
-### template\_nct\_9c\_12
+#### template\_nct\_9c\_12
**Returns**
@@ -768,7 +768,7 @@ Template circuits for [`XGate`](qiskit.circuit.library.XGate "qiskit.circuit.lib
[QuantumCircuit](qiskit.circuit.QuantumCircuit "qiskit.circuit.QuantumCircuit")
-### template\_nct\_9d\_1
+#### template\_nct\_9d\_1
**Returns**
@@ -780,7 +780,7 @@ Template circuits for [`XGate`](qiskit.circuit.library.XGate "qiskit.circuit.lib
[QuantumCircuit](qiskit.circuit.QuantumCircuit "qiskit.circuit.QuantumCircuit")
-### template\_nct\_9d\_2
+#### template\_nct\_9d\_2
**Returns**
@@ -792,7 +792,7 @@ Template circuits for [`XGate`](qiskit.circuit.library.XGate "qiskit.circuit.lib
[QuantumCircuit](qiskit.circuit.QuantumCircuit "qiskit.circuit.QuantumCircuit")
-### template\_nct\_9d\_3
+#### template\_nct\_9d\_3
**Returns**
@@ -804,7 +804,7 @@ Template circuits for [`XGate`](qiskit.circuit.library.XGate "qiskit.circuit.lib
[QuantumCircuit](qiskit.circuit.QuantumCircuit "qiskit.circuit.QuantumCircuit")
-### template\_nct\_9d\_4
+#### template\_nct\_9d\_4
**Returns**
@@ -816,7 +816,7 @@ Template circuits for [`XGate`](qiskit.circuit.library.XGate "qiskit.circuit.lib
[QuantumCircuit](qiskit.circuit.QuantumCircuit "qiskit.circuit.QuantumCircuit")
-### template\_nct\_9d\_5
+#### template\_nct\_9d\_5
**Returns**
@@ -828,7 +828,7 @@ Template circuits for [`XGate`](qiskit.circuit.library.XGate "qiskit.circuit.lib
[QuantumCircuit](qiskit.circuit.QuantumCircuit "qiskit.circuit.QuantumCircuit")
-### template\_nct\_9d\_6
+#### template\_nct\_9d\_6
**Returns**
@@ -840,7 +840,7 @@ Template circuits for [`XGate`](qiskit.circuit.library.XGate "qiskit.circuit.lib
[QuantumCircuit](qiskit.circuit.QuantumCircuit "qiskit.circuit.QuantumCircuit")
-### template\_nct\_9d\_7
+#### template\_nct\_9d\_7
**Returns**
@@ -852,7 +852,7 @@ Template circuits for [`XGate`](qiskit.circuit.library.XGate "qiskit.circuit.lib
[QuantumCircuit](qiskit.circuit.QuantumCircuit "qiskit.circuit.QuantumCircuit")
-### template\_nct\_9d\_8
+#### template\_nct\_9d\_8
**Returns**
@@ -864,7 +864,7 @@ Template circuits for [`XGate`](qiskit.circuit.library.XGate "qiskit.circuit.lib
[QuantumCircuit](qiskit.circuit.QuantumCircuit "qiskit.circuit.QuantumCircuit")
-### template\_nct\_9d\_9
+#### template\_nct\_9d\_9
**Returns**
@@ -876,7 +876,7 @@ Template circuits for [`XGate`](qiskit.circuit.library.XGate "qiskit.circuit.lib
[QuantumCircuit](qiskit.circuit.QuantumCircuit "qiskit.circuit.QuantumCircuit")
-### template\_nct\_9d\_10
+#### template\_nct\_9d\_10
**Returns**
@@ -892,7 +892,7 @@ Template circuits for [`XGate`](qiskit.circuit.library.XGate "qiskit.circuit.lib
Template circuits over Clifford gates.
-### clifford\_2\_1
+#### clifford\_2\_1
**Returns**
@@ -904,7 +904,7 @@ Template circuits over Clifford gates.
[QuantumCircuit](qiskit.circuit.QuantumCircuit "qiskit.circuit.QuantumCircuit")
-### clifford\_2\_2
+#### clifford\_2\_2
**Returns**
@@ -916,7 +916,7 @@ Template circuits over Clifford gates.
[QuantumCircuit](qiskit.circuit.QuantumCircuit "qiskit.circuit.QuantumCircuit")
-### clifford\_2\_3
+#### clifford\_2\_3
**Returns**
@@ -928,7 +928,7 @@ Template circuits over Clifford gates.
[QuantumCircuit](qiskit.circuit.QuantumCircuit "qiskit.circuit.QuantumCircuit")
-### clifford\_2\_4
+#### clifford\_2\_4
**Returns**
@@ -940,7 +940,7 @@ Template circuits over Clifford gates.
[QuantumCircuit](qiskit.circuit.QuantumCircuit "qiskit.circuit.QuantumCircuit")
-### clifford\_3\_1
+#### clifford\_3\_1
**Returns**
@@ -952,7 +952,7 @@ Template circuits over Clifford gates.
[QuantumCircuit](qiskit.circuit.QuantumCircuit "qiskit.circuit.QuantumCircuit")
-### clifford\_4\_1
+#### clifford\_4\_1
**Returns**
@@ -964,7 +964,7 @@ Template circuits over Clifford gates.
[QuantumCircuit](qiskit.circuit.QuantumCircuit "qiskit.circuit.QuantumCircuit")
-### clifford\_4\_2
+#### clifford\_4\_2
**Returns**
@@ -976,7 +976,7 @@ Template circuits over Clifford gates.
[QuantumCircuit](qiskit.circuit.QuantumCircuit "qiskit.circuit.QuantumCircuit")
-### clifford\_4\_3
+#### clifford\_4\_3
**Returns**
@@ -988,7 +988,7 @@ Template circuits over Clifford gates.
[QuantumCircuit](qiskit.circuit.QuantumCircuit "qiskit.circuit.QuantumCircuit")
-### clifford\_4\_4
+#### clifford\_4\_4
**Returns**
@@ -1000,7 +1000,7 @@ Template circuits over Clifford gates.
[QuantumCircuit](qiskit.circuit.QuantumCircuit "qiskit.circuit.QuantumCircuit")
-### clifford\_5\_1
+#### clifford\_5\_1
**Returns**
@@ -1012,7 +1012,7 @@ Template circuits over Clifford gates.
[QuantumCircuit](qiskit.circuit.QuantumCircuit "qiskit.circuit.QuantumCircuit")
-### clifford\_6\_1
+#### clifford\_6\_1
**Returns**
@@ -1024,7 +1024,7 @@ Template circuits over Clifford gates.
[QuantumCircuit](qiskit.circuit.QuantumCircuit "qiskit.circuit.QuantumCircuit")
-### clifford\_6\_2
+#### clifford\_6\_2
**Returns**
@@ -1036,7 +1036,7 @@ Template circuits over Clifford gates.
[QuantumCircuit](qiskit.circuit.QuantumCircuit "qiskit.circuit.QuantumCircuit")
-### clifford\_6\_3
+#### clifford\_6\_3
**Returns**
@@ -1048,7 +1048,7 @@ Template circuits over Clifford gates.
[QuantumCircuit](qiskit.circuit.QuantumCircuit "qiskit.circuit.QuantumCircuit")
-### clifford\_6\_4
+#### clifford\_6\_4
**Returns**
@@ -1060,7 +1060,7 @@ Template circuits over Clifford gates.
[QuantumCircuit](qiskit.circuit.QuantumCircuit "qiskit.circuit.QuantumCircuit")
-### clifford\_6\_5
+#### clifford\_6\_5
**Returns**
@@ -1072,7 +1072,7 @@ Template circuits over Clifford gates.
[QuantumCircuit](qiskit.circuit.QuantumCircuit "qiskit.circuit.QuantumCircuit")
-### clifford\_8\_1
+#### clifford\_8\_1
**Returns**
@@ -1084,7 +1084,7 @@ Template circuits over Clifford gates.
[QuantumCircuit](qiskit.circuit.QuantumCircuit "qiskit.circuit.QuantumCircuit")
-### clifford\_8\_2
+#### clifford\_8\_2
**Returns**
@@ -1096,7 +1096,7 @@ Template circuits over Clifford gates.
[QuantumCircuit](qiskit.circuit.QuantumCircuit "qiskit.circuit.QuantumCircuit")
-### clifford\_8\_3
+#### clifford\_8\_3
**Returns**
@@ -1112,37 +1112,37 @@ Template circuits over Clifford gates.
Template circuits with [`RZXGate`](qiskit.circuit.library.RZXGate "qiskit.circuit.library.RZXGate").
-### rzx\_yz
+#### rzx\_yz
Template for CX - RYGate - CX.
-### rzx\_xz
+#### rzx\_xz
Template for CX - RXGate - CX.
-### rzx\_cy
+#### rzx\_cy
Template for CX - RYGate - CX.
-### rzx\_zz1
+#### rzx\_zz1
Template for CX - RZGate - CX.
-### rzx\_zz2
+#### rzx\_zz2
Template for CX - RZGate - CX.
-### rzx\_zz3
+#### rzx\_zz3
Template for CX - RZGate - CX.
diff --git a/docs/api/qiskit/0.45/circuit_singleton.mdx b/docs/api/qiskit/0.45/circuit_singleton.mdx
index d931e3e696f..4be8535fdc2 100644
--- a/docs/api/qiskit/0.45/circuit_singleton.mdx
+++ b/docs/api/qiskit/0.45/circuit_singleton.mdx
@@ -44,6 +44,8 @@ assert XGate() is XGate()
The public classes correspond to the standard classes [`Instruction`](qiskit.circuit.Instruction "qiskit.circuit.Instruction") and [`Gate`](qiskit.circuit.Gate "qiskit.circuit.Gate"), respectively, and are subclasses of these.
+### SingletonInstruction
+
A base class to use for [`Instruction`](qiskit.circuit.Instruction "qiskit.circuit.Instruction") objects that by default are singleton instances.
@@ -52,12 +54,16 @@ The public classes correspond to the standard classes [`Instruction`](qiskit.cir
The exception to be aware of with this class though are the [`Instruction`](qiskit.circuit.Instruction "qiskit.circuit.Instruction") attributes [`label`](qiskit.circuit.Instruction#label "qiskit.circuit.Instruction.label"), [`condition`](qiskit.circuit.Instruction#condition "qiskit.circuit.Instruction.condition"), [`duration`](qiskit.circuit.Instruction#duration "qiskit.circuit.Instruction.duration"), and [`unit`](qiskit.circuit.Instruction#unit "qiskit.circuit.Instruction.unit") which can be set differently for specific instances of gates. For [`SingletonInstruction`](#qiskit.circuit.singleton.SingletonInstruction "qiskit.circuit.singleton.SingletonInstruction") usage to be sound setting these attributes is not available and they can only be set at creation time, or on an object that has been specifically made mutable using [`to_mutable()`](qiskit.circuit.Instruction#to_mutable "qiskit.circuit.Instruction.to_mutable"). If any of these attributes are used during creation, then instead of using a single shared global instance of the same gate a new separate instance will be created.
+### SingletonGate
+
A base class to use for [`Gate`](qiskit.circuit.Gate "qiskit.circuit.Gate") objects that by default are singleton instances.
This class is very similar to [`SingletonInstruction`](#qiskit.circuit.singleton.SingletonInstruction "qiskit.circuit.singleton.SingletonInstruction"), except implies unitary [`Gate`](qiskit.circuit.Gate "qiskit.circuit.Gate") semantics as well. The same caveats around setting attributes in that class apply here as well.
+### SingletonControlledGate
+
A base class to use for [`ControlledGate`](qiskit.circuit.ControlledGate "qiskit.circuit.ControlledGate") objects that by default are singleton instances
@@ -118,7 +124,7 @@ If your constructor does not have defaults for all its arguments, you must set `
Subclasses of [`SingletonInstruction`](#qiskit.circuit.singleton.SingletonInstruction "qiskit.circuit.singleton.SingletonInstruction") and the other associated classes can control how their constructor’s arguments are interpreted, in order to help the singleton machinery return the singleton even in the case than an optional argument is explicitly set to its default.
-### \_singleton\_lookup\_key
+#### \_singleton\_lookup\_key
Given the arguments to the constructor, return a key tuple that identifies the singleton instance to retrieve, or `None` if the arguments imply that a mutable object must be created.
diff --git a/docs/api/qiskit/0.45/passmanager.mdx b/docs/api/qiskit/0.45/passmanager.mdx
index f871bce7621..8dfe2fc3c70 100644
--- a/docs/api/qiskit/0.45/passmanager.mdx
+++ b/docs/api/qiskit/0.45/passmanager.mdx
@@ -161,7 +161,7 @@ With the pass manager framework, a developer can flexibly customize the optimiza
### Exceptions
-### PassManagerError
+#### PassManagerError
Pass manager error.
diff --git a/docs/api/qiskit/0.45/providers.mdx b/docs/api/qiskit/0.45/providers.mdx
index 6265e202220..8a6b3fe060f 100644
--- a/docs/api/qiskit/0.45/providers.mdx
+++ b/docs/api/qiskit/0.45/providers.mdx
@@ -75,7 +75,7 @@ It’s worth pointing out that Terra’s version support policy doesn’t mean p
### Exceptions
-### QiskitBackendNotFoundError
+#### QiskitBackendNotFoundError
Base class for errors raised while looking for a backend.
@@ -83,7 +83,7 @@ It’s worth pointing out that Terra’s version support policy doesn’t mean p
Set the error message.
-### BackendPropertyError
+#### BackendPropertyError
Base class for errors raised while looking for a backend property.
@@ -91,7 +91,7 @@ It’s worth pointing out that Terra’s version support policy doesn’t mean p
Set the error message.
-### JobError
+#### JobError
Base class for errors raised by Jobs.
@@ -99,7 +99,7 @@ It’s worth pointing out that Terra’s version support policy doesn’t mean p
Set the error message.
-### JobTimeoutError
+#### JobTimeoutError
Base class for timeout errors raised by jobs.
@@ -107,7 +107,7 @@ It’s worth pointing out that Terra’s version support policy doesn’t mean p
Set the error message.
-### BackendConfigurationError
+#### BackendConfigurationError
Base class for errors raised by the BackendConfiguration.
diff --git a/docs/api/qiskit/0.45/providers_fake_provider.mdx b/docs/api/qiskit/0.45/providers_fake_provider.mdx
index ef19b11291c..991a94e78a9 100644
--- a/docs/api/qiskit/0.45/providers_fake_provider.mdx
+++ b/docs/api/qiskit/0.45/providers_fake_provider.mdx
@@ -209,6 +209,8 @@ Special fake backends are fake backends that were created for special testing pu
The fake backends based on IBM hardware are based on a set of base classes:
+### FakeBackendV2
+
A fake backend class for testing and noisy simulation using real backend snapshots.
@@ -217,6 +219,8 @@ The fake backends based on IBM hardware are based on a set of base classes:
FakeBackendV2 initializer.
+### FakeBackend
+
This is a dummy backend just for testing purposes.
@@ -228,6 +232,8 @@ The fake backends based on IBM hardware are based on a set of base classes:
* **time\_alive** ([*int*](https://docs.python.org/3/library/functions.html#int "(in Python v3.12)")) – time to wait before returning result
+### FakeQasmBackend
+
A fake OpenQASM backend.
@@ -239,6 +245,8 @@ The fake backends based on IBM hardware are based on a set of base classes:
* **time\_alive** ([*int*](https://docs.python.org/3/library/functions.html#int "(in Python v3.12)")) – time to wait before returning result
+### FakePulseBackend
+
A fake pulse backend.
diff --git a/docs/api/qiskit/0.45/pulse.mdx b/docs/api/qiskit/0.45/pulse.mdx
index d1737526709..495f2460c43 100644
--- a/docs/api/qiskit/0.45/pulse.mdx
+++ b/docs/api/qiskit/0.45/pulse.mdx
@@ -71,6 +71,8 @@ An instruction can be added to a [`Schedule`](qiskit.pulse.Schedule "qiskit.puls
These are all instances of the same base class:
+### Instruction
+
The smallest schedulable unit: a single instruction. It has a fixed duration and specified channels.
@@ -112,7 +114,7 @@ In contrast, the [`SymbolicPulse`](qiskit.pulse.library.SymbolicPulse "qiskit.pu
### Waveform Pulse Representation
-### constant
+#### constant
Generates constant-sampled [`Waveform`](qiskit.pulse.library.Waveform "qiskit.pulse.library.Waveform").
@@ -138,7 +140,7 @@ $$
[*Waveform*](qiskit.pulse.library.Waveform "qiskit.pulse.library.waveform.Waveform")
-### zero
+#### zero
Generates zero-sampled [`Waveform`](qiskit.pulse.library.Waveform "qiskit.pulse.library.Waveform").
@@ -163,7 +165,7 @@ $$
[*Waveform*](qiskit.pulse.library.Waveform "qiskit.pulse.library.waveform.Waveform")
-### square
+#### square
Generates square wave [`Waveform`](qiskit.pulse.library.Waveform "qiskit.pulse.library.Waveform").
@@ -193,7 +195,7 @@ $$
[*Waveform*](qiskit.pulse.library.Waveform "qiskit.pulse.library.waveform.Waveform")
-### sawtooth
+#### sawtooth
Generates sawtooth wave [`Waveform`](qiskit.pulse.library.Waveform "qiskit.pulse.library.Waveform").
@@ -240,7 +242,7 @@ $$
![../\_images/pulse-1.png](/images/api/qiskit/0.45/pulse-1.png)
-### triangle
+#### triangle
Generates triangle wave [`Waveform`](qiskit.pulse.library.Waveform "qiskit.pulse.library.Waveform").
@@ -287,7 +289,7 @@ $$
![../\_images/pulse-2.png](/images/api/qiskit/0.45/pulse-2.png)
-### cos
+#### cos
Generates cosine wave [`Waveform`](qiskit.pulse.library.Waveform "qiskit.pulse.library.Waveform").
@@ -315,7 +317,7 @@ $$
[*Waveform*](qiskit.pulse.library.Waveform "qiskit.pulse.library.waveform.Waveform")
-### sin
+#### sin
Generates sine wave [`Waveform`](qiskit.pulse.library.Waveform "qiskit.pulse.library.Waveform").
@@ -343,7 +345,7 @@ $$
[*Waveform*](qiskit.pulse.library.Waveform "qiskit.pulse.library.waveform.Waveform")
-### gaussian
+#### gaussian
Generates unnormalized gaussian [`Waveform`](qiskit.pulse.library.Waveform "qiskit.pulse.library.Waveform").
@@ -383,7 +385,7 @@ $$
[*Waveform*](qiskit.pulse.library.Waveform "qiskit.pulse.library.waveform.Waveform")
-### gaussian\_deriv
+#### gaussian\_deriv
Generates unnormalized gaussian derivative [`Waveform`](qiskit.pulse.library.Waveform "qiskit.pulse.library.Waveform").
@@ -413,7 +415,7 @@ $$
[*Waveform*](qiskit.pulse.library.Waveform "qiskit.pulse.library.waveform.Waveform")
-### sech
+#### sech
Generates unnormalized sech [`Waveform`](qiskit.pulse.library.Waveform "qiskit.pulse.library.Waveform").
@@ -451,7 +453,7 @@ $$
[*Waveform*](qiskit.pulse.library.Waveform "qiskit.pulse.library.waveform.Waveform")
-### sech\_deriv
+#### sech\_deriv
Generates unnormalized sech derivative [`Waveform`](qiskit.pulse.library.Waveform "qiskit.pulse.library.Waveform").
@@ -482,7 +484,7 @@ $$
[*Waveform*](qiskit.pulse.library.Waveform "qiskit.pulse.library.waveform.Waveform")
-### gaussian\_square
+#### gaussian\_square
Generates gaussian square [`Waveform`](qiskit.pulse.library.Waveform "qiskit.pulse.library.Waveform").
@@ -524,7 +526,7 @@ $$
[*Waveform*](qiskit.pulse.library.Waveform "qiskit.pulse.library.waveform.Waveform")
-### drag
+#### drag
Generates Y-only correction DRAG [`Waveform`](qiskit.pulse.library.Waveform "qiskit.pulse.library.Waveform") for standard nonlinear oscillator (SNO) \[1].
@@ -616,6 +618,8 @@ Novel channel types can often utilize the [`ControlChannel`](qiskit.pulse.channe
All channels are children of the same abstract base class:
+### Channel
+
Base class of channels. Channels provide a Qiskit-side label for typical quantum control hardware signal channels. The final label -> physical channel mapping is the responsibility of the hardware backend. For instance, `DriveChannel(0)` holds instructions which the backend should map to the signal line driving gate operations on the qubit labeled (indexed) 0.
@@ -669,6 +673,8 @@ The alignment transforms define alignment policies of instructions in [`Schedule
These are all subtypes of the abstract base class [`AlignmentKind`](#qiskit.pulse.transforms.AlignmentKind "qiskit.pulse.transforms.AlignmentKind").
+#### AlignmentKind
+
An abstract class for schedule alignment.
@@ -681,7 +687,7 @@ These are all subtypes of the abstract base class [`AlignmentKind`](#qiskit.puls
The canonicalization transforms convert schedules to a form amenable for execution on OpenPulse backends.
-### add\_implicit\_acquires
+#### add\_implicit\_acquires
Return a new schedule with implicit acquires from the measurement mapping replaced by explicit ones.
@@ -704,7 +710,7 @@ The canonicalization transforms convert schedules to a form amenable for executi
[*Schedule*](qiskit.pulse.Schedule "qiskit.pulse.schedule.Schedule")
-### align\_measures
+#### align\_measures
Return new schedules where measurements occur at the same physical time.
@@ -771,7 +777,7 @@ The canonicalization transforms convert schedules to a form amenable for executi
[*List*](https://docs.python.org/3/library/typing.html#typing.List "(in Python v3.12)")\[[*Schedule*](qiskit.pulse.Schedule "qiskit.pulse.schedule.Schedule")]
-### block\_to\_schedule
+#### block\_to\_schedule
Convert `ScheduleBlock` to `Schedule`.
@@ -798,7 +804,7 @@ The canonicalization transforms convert schedules to a form amenable for executi
-### compress\_pulses
+#### compress\_pulses
Optimization pass to replace identical pulses.
@@ -816,7 +822,7 @@ The canonicalization transforms convert schedules to a form amenable for executi
[*List*](https://docs.python.org/3/library/typing.html#typing.List "(in Python v3.12)")\[[*Schedule*](qiskit.pulse.Schedule "qiskit.pulse.schedule.Schedule")]
-### flatten
+#### flatten
Flatten (inline) any called nodes into a Schedule tree with no nested children.
@@ -838,7 +844,7 @@ The canonicalization transforms convert schedules to a form amenable for executi
[*Schedule*](qiskit.pulse.Schedule "qiskit.pulse.schedule.Schedule")
-### inline\_subroutines
+#### inline\_subroutines
Recursively remove call instructions and inline the respective subroutine instructions.
@@ -862,7 +868,7 @@ The canonicalization transforms convert schedules to a form amenable for executi
[*Schedule*](qiskit.pulse.Schedule "qiskit.pulse.schedule.Schedule") | [*ScheduleBlock*](qiskit.pulse.ScheduleBlock "qiskit.pulse.schedule.ScheduleBlock")
-### pad
+#### pad
Pad the input Schedule with `Delay``s on all unoccupied timeslots until ``schedule.duration` or `until` if not `None`.
@@ -888,7 +894,7 @@ The canonicalization transforms convert schedules to a form amenable for executi
[*Schedule*](qiskit.pulse.Schedule "qiskit.pulse.schedule.Schedule")
-### remove\_directives
+#### remove\_directives
Remove directives.
@@ -906,7 +912,7 @@ The canonicalization transforms convert schedules to a form amenable for executi
[*Schedule*](qiskit.pulse.Schedule "qiskit.pulse.schedule.Schedule")
-### remove\_trivial\_barriers
+#### remove\_trivial\_barriers
Remove trivial barriers with 0 or 1 channels.
@@ -930,7 +936,7 @@ The canonicalization transforms convert schedules to a form amenable for executi
The DAG transforms create DAG representation of input program. This can be used for optimization of instructions and equality checks.
-### block\_to\_dag
+#### block\_to\_dag
Convert schedule block instruction into DAG.
@@ -988,7 +994,7 @@ The DAG transforms create DAG representation of input program. This can be used
A sequence of transformations to generate a target code.
-### target\_qobj\_transform
+#### target\_qobj\_transform
A basic pulse program transformation for OpenPulse API execution.
@@ -1261,7 +1267,7 @@ with pulse.build(backend) as drive_sched:
DriveChannel(0)
```
-### acquire\_channel
+#### acquire\_channel
Return `AcquireChannel` for `qubit` on the active builder backend.
@@ -1287,7 +1293,7 @@ DriveChannel(0)
[*AcquireChannel*](qiskit.pulse.channels.AcquireChannel "qiskit.pulse.channels.AcquireChannel")
-### control\_channels
+#### control\_channels
Return `ControlChannel` for `qubit` on the active builder backend.
@@ -1322,7 +1328,7 @@ DriveChannel(0)
[*List*](https://docs.python.org/3/library/typing.html#typing.List "(in Python v3.12)")\[[*ControlChannel*](qiskit.pulse.channels.ControlChannel "qiskit.pulse.channels.ControlChannel")]
-### drive\_channel
+#### drive\_channel
Return `DriveChannel` for `qubit` on the active builder backend.
@@ -1348,7 +1354,7 @@ DriveChannel(0)
[*DriveChannel*](qiskit.pulse.channels.DriveChannel "qiskit.pulse.channels.DriveChannel")
-### measure\_channel
+#### measure\_channel
Return `MeasureChannel` for `qubit` on the active builder backend.
@@ -1407,7 +1413,7 @@ drive_sched.draw()
![../\_images/pulse-6.png](/images/api/qiskit/0.45/pulse-6.png)
-### acquire
+#### acquire
Acquire for a `duration` on a `channel` and store the result in a `register`.
@@ -1444,7 +1450,7 @@ drive_sched.draw()
[**exceptions.PulseError**](#qiskit.pulse.PulseError "qiskit.pulse.exceptions.PulseError") – If the register type is not supported.
-### barrier
+#### barrier
Barrier directive for a set of channels and qubits.
@@ -1511,7 +1517,7 @@ drive_sched.draw()
* **name** ([*str*](https://docs.python.org/3/library/stdtypes.html#str "(in Python v3.12)") *| None*) – Name for the barrier
-### call
+#### call
Call the subroutine within the currently active builder context with arbitrary parameters which will be assigned to the target program.
@@ -1725,7 +1731,7 @@ drive_sched.draw()
* **kw\_params** ([*ParameterExpression*](qiskit.circuit.ParameterExpression "qiskit.circuit.parameterexpression.ParameterExpression") *|*[*float*](https://docs.python.org/3/library/functions.html#float "(in Python v3.12)")) – Alternative way to provide parameters. Since this is keyed on the string parameter name, the parameters having the same name are all updated together. If you want to avoid name collision, use `value_dict` with [`Parameter`](qiskit.circuit.Parameter "qiskit.circuit.Parameter") objects instead.
-### delay
+#### delay
Delay on a `channel` for a `duration`.
@@ -1748,7 +1754,7 @@ drive_sched.draw()
* **name** ([*str*](https://docs.python.org/3/library/stdtypes.html#str "(in Python v3.12)") *| None*) – Name of the instruction.
-### play
+#### play
Play a `pulse` on a `channel`.
@@ -1771,7 +1777,7 @@ drive_sched.draw()
* **name** ([*str*](https://docs.python.org/3/library/stdtypes.html#str "(in Python v3.12)") *| None*) – Name of the pulse.
-### reference
+#### reference
Refer to undefined subroutine by string keys.
@@ -1796,7 +1802,7 @@ drive_sched.draw()
* **extra\_keys** ([*str*](https://docs.python.org/3/library/stdtypes.html#str "(in Python v3.12)")) – Helper keys to uniquely specify the subroutine.
-### set\_frequency
+#### set\_frequency
Set the `frequency` of a pulse `channel`.
@@ -1819,7 +1825,7 @@ drive_sched.draw()
* **name** ([*str*](https://docs.python.org/3/library/stdtypes.html#str "(in Python v3.12)") *| None*) – Name of the instruction.
-### set\_phase
+#### set\_phase
Set the `phase` of a pulse `channel`.
@@ -1844,7 +1850,7 @@ drive_sched.draw()
* **name** ([*str*](https://docs.python.org/3/library/stdtypes.html#str "(in Python v3.12)") *| None*) – Name of the instruction.
-### shift\_frequency
+#### shift\_frequency
Shift the `frequency` of a pulse `channel`.
@@ -1867,7 +1873,7 @@ drive_sched.draw()
* **name** ([*str*](https://docs.python.org/3/library/stdtypes.html#str "(in Python v3.12)") *| None*) – Name of the instruction.
-### shift\_phase
+#### shift\_phase
Shift the `phase` of a pulse `channel`.
@@ -1892,7 +1898,7 @@ drive_sched.draw()
* **name** ([*str*](https://docs.python.org/3/library/stdtypes.html#str "(in Python v3.12)") *| None*) – Name of the instruction.
-### snapshot
+#### snapshot
Simulator snapshot.
@@ -1934,7 +1940,7 @@ pulse_prog.draw()
![../\_images/pulse-7.png](/images/api/qiskit/0.45/pulse-7.png)
-### align\_equispaced
+#### align\_equispaced
Equispaced alignment pulse scheduling context.
@@ -1980,7 +1986,7 @@ pulse_prog.draw()
The scheduling is performed for sub-schedules within the context rather than channel-wise. If you want to apply the equispaced context for each channel, you should use the context independently for channels.
-### align\_func
+#### align\_func
Callback defined alignment pulse scheduling context.
@@ -2032,7 +2038,7 @@ pulse_prog.draw()
The scheduling is performed for sub-schedules within the context rather than channel-wise. If you want to apply the numerical context for each channel, you need to apply the context independently to channels.
-### align\_left
+#### align\_left
Left alignment pulse scheduling context.
@@ -2067,7 +2073,7 @@ pulse_prog.draw()
[*ContextManager*](https://docs.python.org/3/library/typing.html#typing.ContextManager "(in Python v3.12)")\[None]
-### align\_right
+#### align\_right
Right alignment pulse scheduling context.
@@ -2102,7 +2108,7 @@ pulse_prog.draw()
[*AlignmentKind*](#qiskit.pulse.transforms.AlignmentKind "qiskit.pulse.transforms.alignments.AlignmentKind")
-### align\_sequential
+#### align\_sequential
Sequential alignment pulse scheduling context.
@@ -2137,7 +2143,7 @@ pulse_prog.draw()
[*AlignmentKind*](#qiskit.pulse.transforms.AlignmentKind "qiskit.pulse.transforms.alignments.AlignmentKind")
-### circuit\_scheduler\_settings
+#### circuit\_scheduler\_settings
Set the currently active circuit scheduler settings for this context.
@@ -2166,7 +2172,7 @@ pulse_prog.draw()
[*ContextManager*](https://docs.python.org/3/library/typing.html#typing.ContextManager "(in Python v3.12)")\[None]
-### frequency\_offset
+#### frequency\_offset
Shift the frequency of inputs channels on entry into context and undo on exit.
@@ -2210,7 +2216,7 @@ pulse_prog.draw()
[*ContextManager*](https://docs.python.org/3/library/typing.html#typing.ContextManager "(in Python v3.12)")\[None]
-### phase\_offset
+#### phase\_offset
Shift the phase of input channels on entry into context and undo on exit.
@@ -2245,7 +2251,7 @@ pulse_prog.draw()
[*ContextManager*](https://docs.python.org/3/library/typing.html#typing.ContextManager "(in Python v3.12)")\[None]
-### transpiler\_settings
+#### transpiler\_settings
Set the currently active transpiler settings for this context.
@@ -2293,7 +2299,7 @@ with pulse.build(backend) as measure_sched:
MemorySlot(0)
```
-### measure
+#### measure
Measure a qubit within the currently active builder context.
@@ -2348,7 +2354,7 @@ MemorySlot(0)
[*List*](https://docs.python.org/3/library/typing.html#typing.List "(in Python v3.12)")\[StorageLocation] | StorageLocation
-### measure\_all
+#### measure\_all
Measure all qubits within the currently active builder context.
@@ -2381,7 +2387,7 @@ MemorySlot(0)
[*List*](https://docs.python.org/3/library/typing.html#typing.List "(in Python v3.12)")\[[*MemorySlot*](qiskit.pulse.channels.MemorySlot "qiskit.pulse.channels.MemorySlot")]
-### delay\_qubits
+#### delay\_qubits
Insert delays on all of the `channels.Channel`s that correspond to the input `qubits` at the same time.
@@ -2429,7 +2435,7 @@ with pulse.build(backend) as u3_sched:
pulse.u3(math.pi, 0, math.pi, 0)
```
-### cx
+#### cx
Call a `CXGate` on the input physical qubits.
@@ -2451,7 +2457,7 @@ with pulse.build(backend) as u3_sched:
```
-### u1
+#### u1
Call a `U1Gate` on the input physical qubit.
@@ -2475,7 +2481,7 @@ with pulse.build(backend) as u3_sched:
```
-### u2
+#### u2
Call a `U2Gate` on the input physical qubit.
@@ -2499,7 +2505,7 @@ with pulse.build(backend) as u3_sched:
```
-### u3
+#### u3
Call a `U3Gate` on the input physical qubit.
@@ -2523,7 +2529,7 @@ with pulse.build(backend) as u3_sched:
```
-### x
+#### x
Call a `XGate` on the input physical qubit.
@@ -2574,7 +2580,7 @@ There are 160 samples in 3.5555555555555554e-08 seconds
There are 1e-06 seconds in 4500 samples.
```
-### active\_backend
+#### active\_backend
Get the backend of the currently active builder context.
@@ -2594,7 +2600,7 @@ There are 1e-06 seconds in 4500 samples.
[**exceptions.BackendNotSet**](#qiskit.pulse.BackendNotSet "qiskit.pulse.exceptions.BackendNotSet") – If the builder does not have a backend set.
-### active\_transpiler\_settings
+#### active\_transpiler\_settings
Return the current active builder context’s transpiler settings.
@@ -2623,7 +2629,7 @@ There are 1e-06 seconds in 4500 samples.
[*Dict*](https://docs.python.org/3/library/typing.html#typing.Dict "(in Python v3.12)")\[[str](https://docs.python.org/3/library/stdtypes.html#str "(in Python v3.12)"), [*Any*](https://docs.python.org/3/library/typing.html#typing.Any "(in Python v3.12)")]
-### active\_circuit\_scheduler\_settings
+#### active\_circuit\_scheduler\_settings
Return the current active builder context’s circuit scheduler settings.
@@ -2653,7 +2659,7 @@ There are 1e-06 seconds in 4500 samples.
[*Dict*](https://docs.python.org/3/library/typing.html#typing.Dict "(in Python v3.12)")\[[str](https://docs.python.org/3/library/stdtypes.html#str "(in Python v3.12)"), [*Any*](https://docs.python.org/3/library/typing.html#typing.Any "(in Python v3.12)")]
-### num\_qubits
+#### num\_qubits
Return number of qubits in the currently active backend.
@@ -2683,7 +2689,7 @@ There are 1e-06 seconds in 4500 samples.
[int](https://docs.python.org/3/library/functions.html#int "(in Python v3.12)")
-### qubit\_channels
+#### qubit\_channels
Returns the set of channels associated with a qubit.
@@ -2717,7 +2723,7 @@ There are 1e-06 seconds in 4500 samples.
[*Set*](https://docs.python.org/3/library/typing.html#typing.Set "(in Python v3.12)")\[[*Channel*](#qiskit.pulse.channels.Channel "qiskit.pulse.channels.Channel")]
-### samples\_to\_seconds
+#### samples\_to\_seconds
Obtain the time in seconds that will elapse for the input number of samples on the active backend.
@@ -2735,7 +2741,7 @@ There are 1e-06 seconds in 4500 samples.
[float](https://docs.python.org/3/library/functions.html#float "(in Python v3.12)") | [*ndarray*](https://numpy.org/doc/stable/reference/generated/numpy.ndarray.html#numpy.ndarray "(in NumPy v1.26)")
-### seconds\_to\_samples
+#### seconds\_to\_samples
Obtain the number of samples that will elapse in `seconds` on the active backend.
diff --git a/docs/api/qiskit/0.45/qasm.mdx b/docs/api/qiskit/0.45/qasm.mdx
index 8624fabde52..cf9f858253a 100644
--- a/docs/api/qiskit/0.45/qasm.mdx
+++ b/docs/api/qiskit/0.45/qasm.mdx
@@ -20,6 +20,8 @@ python_api_name: qiskit.qasm
## QASM Routines
+### Qasm
+
OPENQASM circuit object.
@@ -28,14 +30,20 @@ python_api_name: qiskit.qasm
## Pygments
+### OpenQASMLexer
+
A pygments lexer for OpenQasm.
+### QasmHTMLStyle
+
A style for OpenQasm in a HTML env (e.g. Jupyter widget).
+### QasmTerminalStyle
+
A style for OpenQasm in a Terminal env (e.g. Jupyter print).
diff --git a/docs/api/qiskit/0.45/qasm2.mdx b/docs/api/qiskit/0.45/qasm2.mdx
index 86563621fc8..dfb2b4cb7c8 100644
--- a/docs/api/qiskit/0.45/qasm2.mdx
+++ b/docs/api/qiskit/0.45/qasm2.mdx
@@ -83,6 +83,8 @@ Both of these loading functions also take an argument `include_path`, which is a
You can extend the quantum components of the OpenQASM 2 language by passing an iterable of information on custom instructions as the argument `custom_instructions`. In files that have compatible definitions for these instructions, the given `constructor` will be used in place of whatever other handling [`qiskit.qasm2`](#module-qiskit.qasm2 "qiskit.qasm2") would have done. These instructions may optionally be marked as `builtin`, which causes them to not require an `opaque` or `gate` declaration, but they will silently ignore a compatible declaration. Either way, it is an error to provide a custom instruction that has a different number of parameters or qubits as a defined instruction in a parsed program. Each element of the argument iterable should be a particular data class:
+#### CustomInstruction
+
Information about a custom instruction that should be defined during the parse.
@@ -99,6 +101,8 @@ This can be particularly useful when trying to resolve ambiguities in the global
Similar to the quantum extensions above, you can also extend the processing done to classical expressions (arguments to gates) by passing an iterable to the argument `custom_classical` to either loader. This needs the `name` (a valid OpenQASM 2 identifier), the number `num_params` of parameters it takes, and a Python callable that implements the function. The Python callable must be able to accept `num_params` positional floating-point arguments, and must return a float or integer (which will be converted to a float). Builtin functions cannot be overridden.
+#### CustomClassical
+
Information about a custom classical function that should be defined in mathematical expressions.
diff --git a/docs/api/qiskit/0.45/qasm3.mdx b/docs/api/qiskit/0.45/qasm3.mdx
index 6bb6378325d..b718045e47d 100644
--- a/docs/api/qiskit/0.45/qasm3.mdx
+++ b/docs/api/qiskit/0.45/qasm3.mdx
@@ -57,6 +57,8 @@ The high-level functions are simply [`dump()`](#qiskit.qasm3.dump "qiskit.qasm3.
Both of these exporter functions are single-use wrappers around the main [`Exporter`](#qiskit.qasm3.Exporter "qiskit.qasm3.Exporter") class. For more complex exporting needs, including dumping multiple circuits in a single session, it may be more convenient or faster to use the complete interface.
+### Exporter
+
QASM3 exporter main class.
@@ -88,13 +90,13 @@ Both of these exporter functions are single-use wrappers around the main [`Expor
* **experimental** ([*ExperimentalFeatures*](#qiskit.qasm3.ExperimentalFeatures "qiskit.qasm3.experimental.ExperimentalFeatures")) – any experimental features to enable during the export. See [`ExperimentalFeatures`](#qiskit.qasm3.ExperimentalFeatures "qiskit.qasm3.ExperimentalFeatures") for more details.
- ### dump
+ #### dump
Convert the circuit to OpenQASM 3, dumping the result to a file or text stream.
- ### dumps
+ #### dumps
Convert the circuit to OpenQASM 3, returning the result as a string.
@@ -115,12 +117,14 @@ All of these interfaces will raise [`QASM3ExporterError`](#qiskit.qasm3.QASM3Exp
The OpenQASM 3 language is still evolving as hardware capabilities improve, so there is no final syntax that Qiskit can reliably target. In order to represent the evolving language, we will sometimes release features before formal standardization, which may need to change as the review process in the OpenQASM 3 design committees progresses. By default, the exporters will only support standardised features of the language. To enable these early-release features, use the `experimental` keyword argument of [`dump()`](#qiskit.qasm3.dump "qiskit.qasm3.dump") and [`dumps()`](#qiskit.qasm3.dumps "qiskit.qasm3.dumps"). The available feature flags are:
+#### ExperimentalFeatures
+
Flags for experimental features that the OpenQASM 3 exporter supports.
These are experimental and are more liable to change, because the OpenQASM 3 specification has not formally accepted them yet, so the syntax may not be finalized.
- ### SWITCH\_CASE\_V1
+ ##### SWITCH\_CASE\_V1
Support exporting switch-case statements as proposed by [https://github.com/openqasm/openqasm/pull/463](https://github.com/openqasm/openqasm/pull/463) at [commit bfa787aa3078](https://github.com/openqasm/openqasm/pull/463/commits/bfa787aa3078).
diff --git a/docs/api/qiskit/0.45/qpy.mdx b/docs/api/qiskit/0.45/qpy.mdx
index d61b876935a..04d0664542a 100644
--- a/docs/api/qiskit/0.45/qpy.mdx
+++ b/docs/api/qiskit/0.45/qpy.mdx
@@ -55,7 +55,7 @@ and then loading that file will return a list with all the circuits
### API documentation
-### load
+#### load
Load a QPY binary file
@@ -100,7 +100,7 @@ and then loading that file will return a list with all the circuits
[*List*](https://docs.python.org/3/library/typing.html#typing.List "(in Python v3.12)")\[[*QuantumCircuit*](qiskit.circuit.QuantumCircuit "qiskit.circuit.quantumcircuit.QuantumCircuit") | [*ScheduleBlock*](qiskit.pulse.ScheduleBlock "qiskit.pulse.schedule.ScheduleBlock")]
-### dump
+#### dump
Write QPY binary data to a file
@@ -152,7 +152,7 @@ and then loading that file will return a list with all the circuits
These functions will raise a custom subclass of [`QiskitError`](exceptions#qiskit.exceptions.QiskitError "qiskit.exceptions.QiskitError") if they encounter problems during serialization or deserialization.
-### QpyError
+#### QpyError
Errors raised by the qpy module.
diff --git a/docs/api/qiskit/0.45/scheduler.mdx b/docs/api/qiskit/0.45/scheduler.mdx
index 4baeadc27a0..bf68285e9fa 100644
--- a/docs/api/qiskit/0.45/scheduler.mdx
+++ b/docs/api/qiskit/0.45/scheduler.mdx
@@ -20,6 +20,8 @@ python_api_name: qiskit.scheduler
A circuit scheduler compiles a circuit program to a pulse program.
+### ScheduleConfig
+
Configuration for pulse scheduling.
diff --git a/docs/api/qiskit/0.45/tools.mdx b/docs/api/qiskit/0.45/tools.mdx
index 570a29f47ae..9fba3e357c4 100644
--- a/docs/api/qiskit/0.45/tools.mdx
+++ b/docs/api/qiskit/0.45/tools.mdx
@@ -149,6 +149,8 @@ A helper module to get IBM backend information and submitted job status.
A helper component for publishing and subscribing to events.
+#### TextProgressBar
+
A simple text-based progress bar.
diff --git a/docs/api/qiskit/0.45/transpiler.mdx b/docs/api/qiskit/0.45/transpiler.mdx
index 887eec4fcb9..6b757ddd0cd 100644
--- a/docs/api/qiskit/0.45/transpiler.mdx
+++ b/docs/api/qiskit/0.45/transpiler.mdx
@@ -938,7 +938,7 @@ See [https://arxiv.org/abs/2102.01682](https://arxiv.org/abs/2102.01682) for mor
### Exceptions
-### TranspilerError
+#### TranspilerError
Exceptions raised during transpilation.
@@ -946,7 +946,7 @@ See [https://arxiv.org/abs/2102.01682](https://arxiv.org/abs/2102.01682) for mor
Set the error message.
-### TranspilerAccessError
+#### TranspilerAccessError
DEPRECATED: Exception of access error in the transpiler passes.
@@ -954,7 +954,7 @@ See [https://arxiv.org/abs/2102.01682](https://arxiv.org/abs/2102.01682) for mor
Set the error message.
-### CouplingError
+#### CouplingError
Base class for errors raised by the coupling graph object.
@@ -962,7 +962,7 @@ See [https://arxiv.org/abs/2102.01682](https://arxiv.org/abs/2102.01682) for mor
Set the error message.
-### LayoutError
+#### LayoutError
Errors raised by the layout object.
diff --git a/docs/api/qiskit/0.45/utils.mdx b/docs/api/qiskit/0.45/utils.mdx
index 5bd3ce6743c..2cf34c4b5d8 100644
--- a/docs/api/qiskit/0.45/utils.mdx
+++ b/docs/api/qiskit/0.45/utils.mdx
@@ -448,6 +448,8 @@ Each of the lazy checkers is an instance of [`LazyDependencyManager`](#qiskit.ut
from qiskit.utils import LazyImportTester
```
+#### LazyDependencyManager
+
A mananger for some optional features that are expensive to import, or to verify the existence of.
@@ -486,7 +488,7 @@ from qiskit.utils import LazyImportTester
* **install** – how to install this optional dependency. Passed to [`MissingOptionalLibraryError`](exceptions#qiskit.exceptions.MissingOptionalLibraryError "qiskit.exceptions.MissingOptionalLibraryError") as the `pip_install` parameter.
* **msg** – an extra message to include in the error raised if this is required.
- ### \_is\_available
+ ##### \_is\_available
Subclasses of [`LazyDependencyManager`](#qiskit.utils.LazyDependencyManager "qiskit.utils.LazyDependencyManager") should override this method to implement the actual test of availability. This method should return a Boolean, where `True` indicates that the dependency was available. This method will only ever be called once.
@@ -496,13 +498,13 @@ from qiskit.utils import LazyImportTester
[bool](https://docs.python.org/3/library/functions.html#bool "(in Python v3.12)")
- ### disable\_locally
+ ##### disable\_locally
Create a context, during which the value of the dependency manager will be `False`. This means that within the context, any calls to this object will behave as if the dependency is not available, including raising errors. It is valid to call this method whether or not the dependency has already been evaluated. This is most useful in tests.
- ### require\_in\_call
+ ##### require\_in\_call
Create a decorator for callables that requires that the dependency is available when the decorated function or method is called.
@@ -520,7 +522,7 @@ from qiskit.utils import LazyImportTester
Callable
- ### require\_in\_instance
+ ##### require\_in\_instance
A class decorator that requires the dependency is available when the class is initialised. This decorator can be used even if the class does not define an `__init__` method.
@@ -538,7 +540,7 @@ from qiskit.utils import LazyImportTester
Callable
- ### require\_now
+ ##### require\_now
Eagerly attempt to import the dependencies in this object, and raise an exception if they cannot be imported.
@@ -553,6 +555,8 @@ from qiskit.utils import LazyImportTester
+#### LazyImportTester
+
A lazy dependency tester for importable Python modules. Any required objects will only be imported at the point that this object is tested for its Boolean value.
@@ -565,6 +569,8 @@ from qiskit.utils import LazyImportTester
[**ValueError**](https://docs.python.org/3/library/exceptions.html#ValueError "(in Python v3.12)") – if no modules are given.
+#### LazySubprocessTester
+
A lazy checker that a command-line tool is available. The command will only be run once, at the point that this object is checked for its Boolean value.
diff --git a/docs/api/qiskit/0.46/algorithms.mdx b/docs/api/qiskit/0.46/algorithms.mdx
index 298effe45aa..ad95f845e01 100644
--- a/docs/api/qiskit/0.46/algorithms.mdx
+++ b/docs/api/qiskit/0.46/algorithms.mdx
@@ -193,7 +193,7 @@ Algorithms that compute the fidelity of pairs of quantum states.
### Exceptions
-### AlgorithmError
+#### AlgorithmError
For Algorithm specific errors.
@@ -213,7 +213,7 @@ Utility classes used by algorithms (mainly for type-hinting purposes).
Utility functions used by algorithms.
-### eval\_observables
+#### eval\_observables
Deprecated: Accepts a list or a dictionary of operators and calculates their expectation values - means and standard deviations. They are calculated with respect to a quantum state provided. A user can optionally provide a threshold value which filters mean values falling below the threshold.
@@ -245,7 +245,7 @@ Utility functions used by algorithms.
ListOrDict\[[tuple](https://docs.python.org/3/library/stdtypes.html#tuple "(in Python v3.12)")\[[complex](https://docs.python.org/3/library/functions.html#complex "(in Python v3.12)"), [complex](https://docs.python.org/3/library/functions.html#complex "(in Python v3.12)")]]
-### estimate\_observables
+#### estimate\_observables
Accepts a sequence of operators and calculates their expectation values - means and metadata. They are calculated with respect to a quantum state provided. A user can optionally provide a threshold value which filters mean values falling below the threshold.
diff --git a/docs/api/qiskit/0.46/circuit.mdx b/docs/api/qiskit/0.46/circuit.mdx
index e7ee6a1a689..b473c603027 100644
--- a/docs/api/qiskit/0.46/circuit.mdx
+++ b/docs/api/qiskit/0.46/circuit.mdx
@@ -285,7 +285,7 @@ with qc.switch(cr) as case:
### Random Circuits
-### random\_circuit
+#### random\_circuit
Generate random circuit of arbitrary size and form.
@@ -343,7 +343,7 @@ with qc.switch(cr) as case:
Almost all circuit functions and methods will raise a [`CircuitError`](#qiskit.circuit.CircuitError "qiskit.circuit.CircuitError") when encountering an error that is particular to usage of Qiskit (as opposed to regular typing or indexing problems, which will typically raise the corresponding standard Python error).
-### CircuitError
+#### CircuitError
Base class for errors raised while processing a circuit.
diff --git a/docs/api/qiskit/0.46/circuit_classical.mdx b/docs/api/qiskit/0.46/circuit_classical.mdx
index d26ca3ba8f5..38654af0ff9 100644
--- a/docs/api/qiskit/0.46/circuit_classical.mdx
+++ b/docs/api/qiskit/0.46/circuit_classical.mdx
@@ -48,6 +48,8 @@ There are two pathways for constructing expressions. The classes that form [the
The expression system is based on tree representation. All nodes in the tree are final (uninheritable) instances of the abstract base class:
+#### Expr
+
Root base class of all nodes in the expression tree. The base case should never be instantiated directly.
@@ -60,18 +62,24 @@ These objects are mutable and should not be reused in a different location witho
The entry point from general circuit objects to the expression system is by wrapping the object in a [`Var`](#qiskit.circuit.classical.expr.Var "qiskit.circuit.classical.expr.Var") node and associating a [`Type`](#qiskit.circuit.classical.types.Type "qiskit.circuit.classical.types.Type") with it.
+#### Var
+
A classical variable.
Similarly, literals used in comparison (such as integers) should be lifted to [`Value`](#qiskit.circuit.classical.expr.Value "qiskit.circuit.classical.expr.Value") nodes with associated types.
+#### Value
+
A single scalar value.
The operations traditionally associated with pre-, post- or infix operators in programming are represented by the [`Unary`](#qiskit.circuit.classical.expr.Unary "qiskit.circuit.classical.expr.Unary") and [`Binary`](#qiskit.circuit.classical.expr.Binary "qiskit.circuit.classical.expr.Binary") nodes as appropriate. These each take an operation type code, which are exposed as enumerations inside each class as [`Unary.Op`](#qiskit.circuit.classical.expr.Unary.Op "qiskit.circuit.classical.expr.Unary.Op") and [`Binary.Op`](#qiskit.circuit.classical.expr.Binary.Op "qiskit.circuit.classical.expr.Binary.Op") respectively.
+#### Unary
+
A unary expression.
@@ -81,6 +89,8 @@ The operations traditionally associated with pre-, post- or infix operators in p
* **operand** ([*Expr*](#qiskit.circuit.classical.expr.Expr "qiskit.circuit.classical.expr.Expr")) – The operand of the operation.
* **type** ([*Type*](#qiskit.circuit.classical.types.Type "qiskit.circuit.classical.types.types.Type")) – The resolved type of the result.
+ ##### Op
+
Enumeration of the opcodes for unary operations.
@@ -88,13 +98,13 @@ The operations traditionally associated with pre-, post- or infix operators in p
The logical negation [`LOGIC_NOT`](#qiskit.circuit.classical.expr.Unary.Op.LOGIC_NOT "qiskit.circuit.classical.expr.Unary.Op.LOGIC_NOT") takes an input that is implicitly coerced to a Boolean, and returns a Boolean.
- ### BIT\_NOT
+ ###### BIT\_NOT
Bitwise negation. `~operand`.
- ### LOGIC\_NOT
+ ###### LOGIC\_NOT
Logical negation. `!operand`.
@@ -102,6 +112,8 @@ The operations traditionally associated with pre-, post- or infix operators in p
+#### Binary
+
A binary expression.
@@ -112,6 +124,8 @@ The operations traditionally associated with pre-, post- or infix operators in p
* **right** ([*Expr*](#qiskit.circuit.classical.expr.Expr "qiskit.circuit.classical.expr.Expr")) – The right-hand operand.
* **type** ([*Type*](#qiskit.circuit.classical.types.Type "qiskit.circuit.classical.types.types.Type")) – The resolved type of the result.
+ ##### Op
+
Enumeration of the opcodes for binary operations.
@@ -121,67 +135,67 @@ The operations traditionally associated with pre-, post- or infix operators in p
The binary mathematical relations [`EQUAL`](#qiskit.circuit.classical.expr.Binary.Op.EQUAL "qiskit.circuit.classical.expr.Binary.Op.EQUAL"), [`NOT_EQUAL`](#qiskit.circuit.classical.expr.Binary.Op.NOT_EQUAL "qiskit.circuit.classical.expr.Binary.Op.NOT_EQUAL"), [`LESS`](#qiskit.circuit.classical.expr.Binary.Op.LESS "qiskit.circuit.classical.expr.Binary.Op.LESS"), [`LESS_EQUAL`](#qiskit.circuit.classical.expr.Binary.Op.LESS_EQUAL "qiskit.circuit.classical.expr.Binary.Op.LESS_EQUAL"), [`GREATER`](#qiskit.circuit.classical.expr.Binary.Op.GREATER "qiskit.circuit.classical.expr.Binary.Op.GREATER") and [`GREATER_EQUAL`](#qiskit.circuit.classical.expr.Binary.Op.GREATER_EQUAL "qiskit.circuit.classical.expr.Binary.Op.GREATER_EQUAL") take unsigned integers (with an implicit cast to make them the same width), and return a Boolean.
- ### BIT\_AND
+ ###### BIT\_AND
Bitwise “and”. `lhs & rhs`.
- ### BIT\_OR
+ ###### BIT\_OR
Bitwise “or”. `lhs | rhs`.
- ### BIT\_XOR
+ ###### BIT\_XOR
Bitwise “exclusive or”. `lhs ^ rhs`.
- ### LOGIC\_AND
+ ###### LOGIC\_AND
Logical “and”. `lhs && rhs`.
- ### LOGIC\_OR
+ ###### LOGIC\_OR
Logical “or”. `lhs || rhs`.
- ### EQUAL
+ ###### EQUAL
Numeric equality. `lhs == rhs`.
- ### NOT\_EQUAL
+ ###### NOT\_EQUAL
Numeric inequality. `lhs != rhs`.
- ### LESS
+ ###### LESS
Numeric less than. `lhs < rhs`.
- ### LESS\_EQUAL
+ ###### LESS\_EQUAL
Numeric less than or equal to. `lhs <= rhs`
- ### GREATER
+ ###### GREATER
Numeric greater than. `lhs > rhs`.
- ### GREATER\_EQUAL
+ ###### GREATER\_EQUAL
Numeric greater than or equal to. `lhs >= rhs`.
@@ -193,6 +207,8 @@ When constructing expressions, one must ensure that the types are valid for the
Expressions in this system are defined to act only on certain sets of types. However, values may be cast to a suitable supertype in order to satisfy the typing requirements. In these cases, a node in the expression tree is used to represent the promotion. In all cases where operations note that they “implicitly cast” or “coerce” their arguments, the expression tree must have this node representing the conversion.
+#### Cast
+
A cast from one type to another, implied by the use of an expression in a different context.
@@ -205,7 +221,7 @@ Constructing the tree representation directly is verbose and easy to make a mist
The functions and methods described in this section are a more user-friendly way to build the expression tree, while staying close to the internal representation. All these functions will automatically lift valid Python scalar values into corresponding [`Var`](#qiskit.circuit.classical.expr.Var "qiskit.circuit.classical.expr.Var") or [`Value`](#qiskit.circuit.classical.expr.Value "qiskit.circuit.classical.expr.Value") objects, and will resolve any required implicit casts on your behalf.
-### lift
+#### lift
Lift the given Python `value` to a [`Value`](#qiskit.circuit.classical.expr.Value "qiskit.circuit.classical.expr.expr.Value") or [`Var`](#qiskit.circuit.classical.expr.Var "qiskit.circuit.classical.expr.expr.Var").
@@ -243,7 +259,7 @@ The functions and methods described in this section are a more user-friendly way
You can manually specify casts in cases where the cast is allowed in explicit form, but may be lossy (such as the cast of a higher precision [`Uint`](#qiskit.circuit.classical.types.Uint "qiskit.circuit.classical.types.Uint") to a lower precision one).
-### cast
+#### cast
Create an explicit cast from the given value to the given type.
@@ -266,7 +282,7 @@ You can manually specify casts in cases where the cast is allowed in explicit fo
There are helper constructor functions for each of the unary operations.
-### bit\_not
+#### bit\_not
Create a bitwise ‘not’ expression node from the given value, resolving any implicit casts and lifting the value into a [`Value`](#qiskit.circuit.classical.expr.Value "qiskit.circuit.classical.expr.Value") node if required.
@@ -287,7 +303,7 @@ There are helper constructor functions for each of the unary operations.
[*Expr*](#qiskit.circuit.classical.expr.Expr "qiskit.circuit.classical.expr.expr.Expr")
-### logic\_not
+#### logic\_not
Create a logical ‘not’ expression node from the given value, resolving any implicit casts and lifting the value into a [`Value`](#qiskit.circuit.classical.expr.Value "qiskit.circuit.classical.expr.Value") node if required.
@@ -310,7 +326,7 @@ There are helper constructor functions for each of the unary operations.
Similarly, the binary operations and relations have helper functions defined.
-### bit\_and
+#### bit\_and
Create a bitwise ‘and’ expression node from the given value, resolving any implicit casts and lifting the values into [`Value`](#qiskit.circuit.classical.expr.Value "qiskit.circuit.classical.expr.Value") nodes if required.
@@ -331,7 +347,7 @@ Similarly, the binary operations and relations have helper functions defined.
[*Expr*](#qiskit.circuit.classical.expr.Expr "qiskit.circuit.classical.expr.expr.Expr")
-### bit\_or
+#### bit\_or
Create a bitwise ‘or’ expression node from the given value, resolving any implicit casts and lifting the values into [`Value`](#qiskit.circuit.classical.expr.Value "qiskit.circuit.classical.expr.Value") nodes if required.
@@ -352,7 +368,7 @@ Similarly, the binary operations and relations have helper functions defined.
[*Expr*](#qiskit.circuit.classical.expr.Expr "qiskit.circuit.classical.expr.expr.Expr")
-### bit\_xor
+#### bit\_xor
Create a bitwise ‘exclusive or’ expression node from the given value, resolving any implicit casts and lifting the values into [`Value`](#qiskit.circuit.classical.expr.Value "qiskit.circuit.classical.expr.Value") nodes if required.
@@ -373,7 +389,7 @@ Similarly, the binary operations and relations have helper functions defined.
[*Expr*](#qiskit.circuit.classical.expr.Expr "qiskit.circuit.classical.expr.expr.Expr")
-### logic\_and
+#### logic\_and
Create a logical ‘and’ expression node from the given value, resolving any implicit casts and lifting the values into [`Value`](#qiskit.circuit.classical.expr.Value "qiskit.circuit.classical.expr.Value") nodes if required.
@@ -394,7 +410,7 @@ Similarly, the binary operations and relations have helper functions defined.
[*Expr*](#qiskit.circuit.classical.expr.Expr "qiskit.circuit.classical.expr.expr.Expr")
-### logic\_or
+#### logic\_or
Create a logical ‘or’ expression node from the given value, resolving any implicit casts and lifting the values into [`Value`](#qiskit.circuit.classical.expr.Value "qiskit.circuit.classical.expr.Value") nodes if required.
@@ -415,7 +431,7 @@ Similarly, the binary operations and relations have helper functions defined.
[*Expr*](#qiskit.circuit.classical.expr.Expr "qiskit.circuit.classical.expr.expr.Expr")
-### equal
+#### equal
Create an ‘equal’ expression node from the given value, resolving any implicit casts and lifting the values into [`Value`](#qiskit.circuit.classical.expr.Value "qiskit.circuit.classical.expr.Value") nodes if required.
@@ -436,7 +452,7 @@ Similarly, the binary operations and relations have helper functions defined.
[*Expr*](#qiskit.circuit.classical.expr.Expr "qiskit.circuit.classical.expr.expr.Expr")
-### not\_equal
+#### not\_equal
Create a ‘not equal’ expression node from the given value, resolving any implicit casts and lifting the values into [`Value`](#qiskit.circuit.classical.expr.Value "qiskit.circuit.classical.expr.Value") nodes if required.
@@ -457,7 +473,7 @@ Similarly, the binary operations and relations have helper functions defined.
[*Expr*](#qiskit.circuit.classical.expr.Expr "qiskit.circuit.classical.expr.expr.Expr")
-### less
+#### less
Create a ‘less than’ expression node from the given value, resolving any implicit casts and lifting the values into [`Value`](#qiskit.circuit.classical.expr.Value "qiskit.circuit.classical.expr.Value") nodes if required.
@@ -478,7 +494,7 @@ Similarly, the binary operations and relations have helper functions defined.
[*Expr*](#qiskit.circuit.classical.expr.Expr "qiskit.circuit.classical.expr.expr.Expr")
-### less\_equal
+#### less\_equal
Create a ‘less than or equal to’ expression node from the given value, resolving any implicit casts and lifting the values into [`Value`](#qiskit.circuit.classical.expr.Value "qiskit.circuit.classical.expr.Value") nodes if required.
@@ -499,7 +515,7 @@ Similarly, the binary operations and relations have helper functions defined.
[*Expr*](#qiskit.circuit.classical.expr.Expr "qiskit.circuit.classical.expr.expr.Expr")
-### greater
+#### greater
Create a ‘greater than’ expression node from the given value, resolving any implicit casts and lifting the values into [`Value`](#qiskit.circuit.classical.expr.Value "qiskit.circuit.classical.expr.Value") nodes if required.
@@ -520,7 +536,7 @@ Similarly, the binary operations and relations have helper functions defined.
[*Expr*](#qiskit.circuit.classical.expr.Expr "qiskit.circuit.classical.expr.expr.Expr")
-### greater\_equal
+#### greater\_equal
Create a ‘greater than or equal to’ expression node from the given value, resolving any implicit casts and lifting the values into [`Value`](#qiskit.circuit.classical.expr.Value "qiskit.circuit.classical.expr.Value") nodes if required.
@@ -543,7 +559,7 @@ Similarly, the binary operations and relations have helper functions defined.
Qiskit’s legacy method for specifying equality conditions for use in conditionals is to use a two-tuple of a [`Clbit`](qiskit.circuit.Clbit "qiskit.circuit.Clbit") or [`ClassicalRegister`](qiskit.circuit.ClassicalRegister "qiskit.circuit.ClassicalRegister") and an integer. This represents an exact equality condition, and there are no ways to specify any other relations. The helper function [`lift_legacy_condition()`](#qiskit.circuit.classical.expr.lift_legacy_condition "qiskit.circuit.classical.expr.lift_legacy_condition") converts this legacy format into the new expression syntax.
-### lift\_legacy\_condition
+#### lift\_legacy\_condition
Lift a legacy two-tuple equality condition into a new-style [`Expr`](#qiskit.circuit.classical.expr.Expr "qiskit.circuit.classical.expr.Expr").
@@ -572,10 +588,12 @@ Qiskit’s legacy method for specifying equality conditions for use in condition
A typical consumer of the expression tree wants to recursively walk through the tree, potentially statefully, acting on each node differently depending on its type. This is naturally a double-dispatch problem; the logic of ‘what is to be done’ is likely stateful and users should be free to define their own operations, yet each node defines ‘what is being acted on’. We enable this double dispatch by providing a base visitor class for the expression tree.
+#### ExprVisitor
+
Base class for visitors to the [`Expr`](#qiskit.circuit.classical.expr.Expr "qiskit.circuit.classical.expr.Expr") tree. Subclasses should override whichever of the `visit_*` methods that they are able to handle, and should be organised such that non-existent methods will never be called.
- ### visit\_binary
+ ##### visit\_binary
**Return type**
@@ -583,7 +601,7 @@ A typical consumer of the expression tree wants to recursively walk through the
*\_T\_co*
- ### visit\_cast
+ ##### visit\_cast
**Return type**
@@ -591,7 +609,7 @@ A typical consumer of the expression tree wants to recursively walk through the
*\_T\_co*
- ### visit\_generic
+ ##### visit\_generic
**Return type**
@@ -599,7 +617,7 @@ A typical consumer of the expression tree wants to recursively walk through the
*\_T\_co*
- ### visit\_unary
+ ##### visit\_unary
**Return type**
@@ -607,7 +625,7 @@ A typical consumer of the expression tree wants to recursively walk through the
*\_T\_co*
- ### visit\_value
+ ##### visit\_value
**Return type**
@@ -615,7 +633,7 @@ A typical consumer of the expression tree wants to recursively walk through the
*\_T\_co*
- ### visit\_var
+ ##### visit\_var
**Return type**
@@ -628,7 +646,7 @@ Consumers of the expression tree should subclass the visitor, and override the `
For the convenience of simple visitors that only need to inspect the variables in an expression and not the general structure, the iterator method [`iter_vars()`](#qiskit.circuit.classical.expr.iter_vars "qiskit.circuit.classical.expr.iter_vars") is provided.
-### iter\_vars
+#### iter\_vars
Get an iterator over the [`Var`](#qiskit.circuit.classical.expr.Var "qiskit.circuit.classical.expr.expr.Var") nodes referenced at any level in the given [`Expr`](#qiskit.circuit.classical.expr.Expr "qiskit.circuit.classical.expr.expr.Expr").
@@ -656,7 +674,7 @@ For the convenience of simple visitors that only need to inspect the variables i
Two expressions can be compared for direct structural equality by using the built-in Python `==` operator. In general, though, one might want to compare two expressions slightly more semantically, allowing that the [`Var`](#qiskit.circuit.classical.expr.Var "qiskit.circuit.classical.expr.Var") nodes inside them are bound to different memory-location descriptions between two different circuits. In this case, one can use [`structurally_equivalent()`](#qiskit.circuit.classical.expr.structurally_equivalent "qiskit.circuit.classical.expr.structurally_equivalent") with two suitable “key” functions to do the comparison.
-### structurally\_equivalent
+#### structurally\_equivalent
Do these two expressions have exactly the same tree structure, up to some key function for the [`Var`](#qiskit.circuit.classical.expr.Var "qiskit.circuit.classical.expr.expr.Var") objects?
@@ -715,6 +733,8 @@ The type system of the expression tree is exposed through this module. This is i
All types inherit from an abstract base class:
+### Type
+
Root base class of all nodes in the type tree. The base case should never be instantiated directly.
@@ -725,10 +745,14 @@ Types should be considered immutable objects, and you must not mutate them. It i
The two different types available are for Booleans (corresponding to [`Clbit`](qiskit.circuit.Clbit "qiskit.circuit.Clbit") and the literals `True` and `False`), and unsigned integers (corresponding to [`ClassicalRegister`](qiskit.circuit.ClassicalRegister "qiskit.circuit.ClassicalRegister") and Python integers).
+### Bool
+
The Boolean type. This has exactly two values: `True` and `False`.
+### Uint
+
An unsigned integer of fixed bit width.
@@ -770,6 +794,8 @@ The low-level interface to querying the subtyping relationship is the [`order()`
The return value is an enumeration [`Ordering`](#qiskit.circuit.classical.types.Ordering "qiskit.circuit.classical.types.Ordering") that describes what, if any, subtyping relationship exists between the two types.
+### Ordering
+
Enumeration listing the possible relations between two types. Types only have a partial ordering, so it’s possible for two types to have no sub-typing relationship.
diff --git a/docs/api/qiskit/0.46/circuit_library.mdx b/docs/api/qiskit/0.46/circuit_library.mdx
index c267ab3f318..7550e46b604 100644
--- a/docs/api/qiskit/0.46/circuit_library.mdx
+++ b/docs/api/qiskit/0.46/circuit_library.mdx
@@ -324,7 +324,7 @@ Template circuits for [`XGate`](qiskit.circuit.library.XGate "qiskit.circuit.lib
**Reference:** Maslov, D. and Dueck, G. W. and Miller, D. M., Techniques for the synthesis of reversible Toffoli networks, 2007 [http://dx.doi.org/10.1145/1278349.1278355](http://dx.doi.org/10.1145/1278349.1278355)
-### template\_nct\_2a\_1
+#### template\_nct\_2a\_1
**Returns**
@@ -336,7 +336,7 @@ Template circuits for [`XGate`](qiskit.circuit.library.XGate "qiskit.circuit.lib
[QuantumCircuit](qiskit.circuit.QuantumCircuit "qiskit.circuit.QuantumCircuit")
-### template\_nct\_2a\_2
+#### template\_nct\_2a\_2
**Returns**
@@ -348,7 +348,7 @@ Template circuits for [`XGate`](qiskit.circuit.library.XGate "qiskit.circuit.lib
[QuantumCircuit](qiskit.circuit.QuantumCircuit "qiskit.circuit.QuantumCircuit")
-### template\_nct\_2a\_3
+#### template\_nct\_2a\_3
**Returns**
@@ -360,7 +360,7 @@ Template circuits for [`XGate`](qiskit.circuit.library.XGate "qiskit.circuit.lib
[QuantumCircuit](qiskit.circuit.QuantumCircuit "qiskit.circuit.QuantumCircuit")
-### template\_nct\_4a\_1
+#### template\_nct\_4a\_1
**Returns**
@@ -372,7 +372,7 @@ Template circuits for [`XGate`](qiskit.circuit.library.XGate "qiskit.circuit.lib
[QuantumCircuit](qiskit.circuit.QuantumCircuit "qiskit.circuit.QuantumCircuit")
-### template\_nct\_4a\_2
+#### template\_nct\_4a\_2
**Returns**
@@ -384,7 +384,7 @@ Template circuits for [`XGate`](qiskit.circuit.library.XGate "qiskit.circuit.lib
[QuantumCircuit](qiskit.circuit.QuantumCircuit "qiskit.circuit.QuantumCircuit")
-### template\_nct\_4a\_3
+#### template\_nct\_4a\_3
**Returns**
@@ -396,7 +396,7 @@ Template circuits for [`XGate`](qiskit.circuit.library.XGate "qiskit.circuit.lib
[QuantumCircuit](qiskit.circuit.QuantumCircuit "qiskit.circuit.QuantumCircuit")
-### template\_nct\_4b\_1
+#### template\_nct\_4b\_1
**Returns**
@@ -408,7 +408,7 @@ Template circuits for [`XGate`](qiskit.circuit.library.XGate "qiskit.circuit.lib
[QuantumCircuit](qiskit.circuit.QuantumCircuit "qiskit.circuit.QuantumCircuit")
-### template\_nct\_4b\_2
+#### template\_nct\_4b\_2
**Returns**
@@ -420,7 +420,7 @@ Template circuits for [`XGate`](qiskit.circuit.library.XGate "qiskit.circuit.lib
[QuantumCircuit](qiskit.circuit.QuantumCircuit "qiskit.circuit.QuantumCircuit")
-### template\_nct\_5a\_1
+#### template\_nct\_5a\_1
**Returns**
@@ -432,7 +432,7 @@ Template circuits for [`XGate`](qiskit.circuit.library.XGate "qiskit.circuit.lib
[QuantumCircuit](qiskit.circuit.QuantumCircuit "qiskit.circuit.QuantumCircuit")
-### template\_nct\_5a\_2
+#### template\_nct\_5a\_2
**Returns**
@@ -444,7 +444,7 @@ Template circuits for [`XGate`](qiskit.circuit.library.XGate "qiskit.circuit.lib
[QuantumCircuit](qiskit.circuit.QuantumCircuit "qiskit.circuit.QuantumCircuit")
-### template\_nct\_5a\_3
+#### template\_nct\_5a\_3
**Returns**
@@ -456,7 +456,7 @@ Template circuits for [`XGate`](qiskit.circuit.library.XGate "qiskit.circuit.lib
[QuantumCircuit](qiskit.circuit.QuantumCircuit "qiskit.circuit.QuantumCircuit")
-### template\_nct\_5a\_4
+#### template\_nct\_5a\_4
**Returns**
@@ -468,7 +468,7 @@ Template circuits for [`XGate`](qiskit.circuit.library.XGate "qiskit.circuit.lib
[QuantumCircuit](qiskit.circuit.QuantumCircuit "qiskit.circuit.QuantumCircuit")
-### template\_nct\_6a\_1
+#### template\_nct\_6a\_1
**Returns**
@@ -480,7 +480,7 @@ Template circuits for [`XGate`](qiskit.circuit.library.XGate "qiskit.circuit.lib
[QuantumCircuit](qiskit.circuit.QuantumCircuit "qiskit.circuit.QuantumCircuit")
-### template\_nct\_6a\_2
+#### template\_nct\_6a\_2
**Returns**
@@ -492,7 +492,7 @@ Template circuits for [`XGate`](qiskit.circuit.library.XGate "qiskit.circuit.lib
[QuantumCircuit](qiskit.circuit.QuantumCircuit "qiskit.circuit.QuantumCircuit")
-### template\_nct\_6a\_3
+#### template\_nct\_6a\_3
**Returns**
@@ -504,7 +504,7 @@ Template circuits for [`XGate`](qiskit.circuit.library.XGate "qiskit.circuit.lib
[QuantumCircuit](qiskit.circuit.QuantumCircuit "qiskit.circuit.QuantumCircuit")
-### template\_nct\_6a\_4
+#### template\_nct\_6a\_4
**Returns**
@@ -516,7 +516,7 @@ Template circuits for [`XGate`](qiskit.circuit.library.XGate "qiskit.circuit.lib
[QuantumCircuit](qiskit.circuit.QuantumCircuit "qiskit.circuit.QuantumCircuit")
-### template\_nct\_6b\_1
+#### template\_nct\_6b\_1
**Returns**
@@ -528,7 +528,7 @@ Template circuits for [`XGate`](qiskit.circuit.library.XGate "qiskit.circuit.lib
[QuantumCircuit](qiskit.circuit.QuantumCircuit "qiskit.circuit.QuantumCircuit")
-### template\_nct\_6b\_2
+#### template\_nct\_6b\_2
**Returns**
@@ -540,7 +540,7 @@ Template circuits for [`XGate`](qiskit.circuit.library.XGate "qiskit.circuit.lib
[QuantumCircuit](qiskit.circuit.QuantumCircuit "qiskit.circuit.QuantumCircuit")
-### template\_nct\_6c\_1
+#### template\_nct\_6c\_1
**Returns**
@@ -552,7 +552,7 @@ Template circuits for [`XGate`](qiskit.circuit.library.XGate "qiskit.circuit.lib
[QuantumCircuit](qiskit.circuit.QuantumCircuit "qiskit.circuit.QuantumCircuit")
-### template\_nct\_7a\_1
+#### template\_nct\_7a\_1
**Returns**
@@ -564,7 +564,7 @@ Template circuits for [`XGate`](qiskit.circuit.library.XGate "qiskit.circuit.lib
[QuantumCircuit](qiskit.circuit.QuantumCircuit "qiskit.circuit.QuantumCircuit")
-### template\_nct\_7b\_1
+#### template\_nct\_7b\_1
**Returns**
@@ -576,7 +576,7 @@ Template circuits for [`XGate`](qiskit.circuit.library.XGate "qiskit.circuit.lib
[QuantumCircuit](qiskit.circuit.QuantumCircuit "qiskit.circuit.QuantumCircuit")
-### template\_nct\_7c\_1
+#### template\_nct\_7c\_1
**Returns**
@@ -588,7 +588,7 @@ Template circuits for [`XGate`](qiskit.circuit.library.XGate "qiskit.circuit.lib
[QuantumCircuit](qiskit.circuit.QuantumCircuit "qiskit.circuit.QuantumCircuit")
-### template\_nct\_7d\_1
+#### template\_nct\_7d\_1
**Returns**
@@ -600,7 +600,7 @@ Template circuits for [`XGate`](qiskit.circuit.library.XGate "qiskit.circuit.lib
[QuantumCircuit](qiskit.circuit.QuantumCircuit "qiskit.circuit.QuantumCircuit")
-### template\_nct\_7e\_1
+#### template\_nct\_7e\_1
**Returns**
@@ -612,7 +612,7 @@ Template circuits for [`XGate`](qiskit.circuit.library.XGate "qiskit.circuit.lib
[QuantumCircuit](qiskit.circuit.QuantumCircuit "qiskit.circuit.QuantumCircuit")
-### template\_nct\_9a\_1
+#### template\_nct\_9a\_1
**Returns**
@@ -624,7 +624,7 @@ Template circuits for [`XGate`](qiskit.circuit.library.XGate "qiskit.circuit.lib
[QuantumCircuit](qiskit.circuit.QuantumCircuit "qiskit.circuit.QuantumCircuit")
-### template\_nct\_9c\_1
+#### template\_nct\_9c\_1
**Returns**
@@ -636,7 +636,7 @@ Template circuits for [`XGate`](qiskit.circuit.library.XGate "qiskit.circuit.lib
[QuantumCircuit](qiskit.circuit.QuantumCircuit "qiskit.circuit.QuantumCircuit")
-### template\_nct\_9c\_2
+#### template\_nct\_9c\_2
**Returns**
@@ -648,7 +648,7 @@ Template circuits for [`XGate`](qiskit.circuit.library.XGate "qiskit.circuit.lib
[QuantumCircuit](qiskit.circuit.QuantumCircuit "qiskit.circuit.QuantumCircuit")
-### template\_nct\_9c\_3
+#### template\_nct\_9c\_3
**Returns**
@@ -660,7 +660,7 @@ Template circuits for [`XGate`](qiskit.circuit.library.XGate "qiskit.circuit.lib
[QuantumCircuit](qiskit.circuit.QuantumCircuit "qiskit.circuit.QuantumCircuit")
-### template\_nct\_9c\_4
+#### template\_nct\_9c\_4
**Returns**
@@ -672,7 +672,7 @@ Template circuits for [`XGate`](qiskit.circuit.library.XGate "qiskit.circuit.lib
[QuantumCircuit](qiskit.circuit.QuantumCircuit "qiskit.circuit.QuantumCircuit")
-### template\_nct\_9c\_5
+#### template\_nct\_9c\_5
**Returns**
@@ -684,7 +684,7 @@ Template circuits for [`XGate`](qiskit.circuit.library.XGate "qiskit.circuit.lib
[QuantumCircuit](qiskit.circuit.QuantumCircuit "qiskit.circuit.QuantumCircuit")
-### template\_nct\_9c\_6
+#### template\_nct\_9c\_6
**Returns**
@@ -696,7 +696,7 @@ Template circuits for [`XGate`](qiskit.circuit.library.XGate "qiskit.circuit.lib
[QuantumCircuit](qiskit.circuit.QuantumCircuit "qiskit.circuit.QuantumCircuit")
-### template\_nct\_9c\_7
+#### template\_nct\_9c\_7
**Returns**
@@ -708,7 +708,7 @@ Template circuits for [`XGate`](qiskit.circuit.library.XGate "qiskit.circuit.lib
[QuantumCircuit](qiskit.circuit.QuantumCircuit "qiskit.circuit.QuantumCircuit")
-### template\_nct\_9c\_8
+#### template\_nct\_9c\_8
**Returns**
@@ -720,7 +720,7 @@ Template circuits for [`XGate`](qiskit.circuit.library.XGate "qiskit.circuit.lib
[QuantumCircuit](qiskit.circuit.QuantumCircuit "qiskit.circuit.QuantumCircuit")
-### template\_nct\_9c\_9
+#### template\_nct\_9c\_9
**Returns**
@@ -732,7 +732,7 @@ Template circuits for [`XGate`](qiskit.circuit.library.XGate "qiskit.circuit.lib
[QuantumCircuit](qiskit.circuit.QuantumCircuit "qiskit.circuit.QuantumCircuit")
-### template\_nct\_9c\_10
+#### template\_nct\_9c\_10
**Returns**
@@ -744,7 +744,7 @@ Template circuits for [`XGate`](qiskit.circuit.library.XGate "qiskit.circuit.lib
[QuantumCircuit](qiskit.circuit.QuantumCircuit "qiskit.circuit.QuantumCircuit")
-### template\_nct\_9c\_11
+#### template\_nct\_9c\_11
**Returns**
@@ -756,7 +756,7 @@ Template circuits for [`XGate`](qiskit.circuit.library.XGate "qiskit.circuit.lib
[QuantumCircuit](qiskit.circuit.QuantumCircuit "qiskit.circuit.QuantumCircuit")
-### template\_nct\_9c\_12
+#### template\_nct\_9c\_12
**Returns**
@@ -768,7 +768,7 @@ Template circuits for [`XGate`](qiskit.circuit.library.XGate "qiskit.circuit.lib
[QuantumCircuit](qiskit.circuit.QuantumCircuit "qiskit.circuit.QuantumCircuit")
-### template\_nct\_9d\_1
+#### template\_nct\_9d\_1
**Returns**
@@ -780,7 +780,7 @@ Template circuits for [`XGate`](qiskit.circuit.library.XGate "qiskit.circuit.lib
[QuantumCircuit](qiskit.circuit.QuantumCircuit "qiskit.circuit.QuantumCircuit")
-### template\_nct\_9d\_2
+#### template\_nct\_9d\_2
**Returns**
@@ -792,7 +792,7 @@ Template circuits for [`XGate`](qiskit.circuit.library.XGate "qiskit.circuit.lib
[QuantumCircuit](qiskit.circuit.QuantumCircuit "qiskit.circuit.QuantumCircuit")
-### template\_nct\_9d\_3
+#### template\_nct\_9d\_3
**Returns**
@@ -804,7 +804,7 @@ Template circuits for [`XGate`](qiskit.circuit.library.XGate "qiskit.circuit.lib
[QuantumCircuit](qiskit.circuit.QuantumCircuit "qiskit.circuit.QuantumCircuit")
-### template\_nct\_9d\_4
+#### template\_nct\_9d\_4
**Returns**
@@ -816,7 +816,7 @@ Template circuits for [`XGate`](qiskit.circuit.library.XGate "qiskit.circuit.lib
[QuantumCircuit](qiskit.circuit.QuantumCircuit "qiskit.circuit.QuantumCircuit")
-### template\_nct\_9d\_5
+#### template\_nct\_9d\_5
**Returns**
@@ -828,7 +828,7 @@ Template circuits for [`XGate`](qiskit.circuit.library.XGate "qiskit.circuit.lib
[QuantumCircuit](qiskit.circuit.QuantumCircuit "qiskit.circuit.QuantumCircuit")
-### template\_nct\_9d\_6
+#### template\_nct\_9d\_6
**Returns**
@@ -840,7 +840,7 @@ Template circuits for [`XGate`](qiskit.circuit.library.XGate "qiskit.circuit.lib
[QuantumCircuit](qiskit.circuit.QuantumCircuit "qiskit.circuit.QuantumCircuit")
-### template\_nct\_9d\_7
+#### template\_nct\_9d\_7
**Returns**
@@ -852,7 +852,7 @@ Template circuits for [`XGate`](qiskit.circuit.library.XGate "qiskit.circuit.lib
[QuantumCircuit](qiskit.circuit.QuantumCircuit "qiskit.circuit.QuantumCircuit")
-### template\_nct\_9d\_8
+#### template\_nct\_9d\_8
**Returns**
@@ -864,7 +864,7 @@ Template circuits for [`XGate`](qiskit.circuit.library.XGate "qiskit.circuit.lib
[QuantumCircuit](qiskit.circuit.QuantumCircuit "qiskit.circuit.QuantumCircuit")
-### template\_nct\_9d\_9
+#### template\_nct\_9d\_9
**Returns**
@@ -876,7 +876,7 @@ Template circuits for [`XGate`](qiskit.circuit.library.XGate "qiskit.circuit.lib
[QuantumCircuit](qiskit.circuit.QuantumCircuit "qiskit.circuit.QuantumCircuit")
-### template\_nct\_9d\_10
+#### template\_nct\_9d\_10
**Returns**
@@ -892,7 +892,7 @@ Template circuits for [`XGate`](qiskit.circuit.library.XGate "qiskit.circuit.lib
Template circuits over Clifford gates.
-### clifford\_2\_1
+#### clifford\_2\_1
**Returns**
@@ -904,7 +904,7 @@ Template circuits over Clifford gates.
[QuantumCircuit](qiskit.circuit.QuantumCircuit "qiskit.circuit.QuantumCircuit")
-### clifford\_2\_2
+#### clifford\_2\_2
**Returns**
@@ -916,7 +916,7 @@ Template circuits over Clifford gates.
[QuantumCircuit](qiskit.circuit.QuantumCircuit "qiskit.circuit.QuantumCircuit")
-### clifford\_2\_3
+#### clifford\_2\_3
**Returns**
@@ -928,7 +928,7 @@ Template circuits over Clifford gates.
[QuantumCircuit](qiskit.circuit.QuantumCircuit "qiskit.circuit.QuantumCircuit")
-### clifford\_2\_4
+#### clifford\_2\_4
**Returns**
@@ -940,7 +940,7 @@ Template circuits over Clifford gates.
[QuantumCircuit](qiskit.circuit.QuantumCircuit "qiskit.circuit.QuantumCircuit")
-### clifford\_3\_1
+#### clifford\_3\_1
**Returns**
@@ -952,7 +952,7 @@ Template circuits over Clifford gates.
[QuantumCircuit](qiskit.circuit.QuantumCircuit "qiskit.circuit.QuantumCircuit")
-### clifford\_4\_1
+#### clifford\_4\_1
**Returns**
@@ -964,7 +964,7 @@ Template circuits over Clifford gates.
[QuantumCircuit](qiskit.circuit.QuantumCircuit "qiskit.circuit.QuantumCircuit")
-### clifford\_4\_2
+#### clifford\_4\_2
**Returns**
@@ -976,7 +976,7 @@ Template circuits over Clifford gates.
[QuantumCircuit](qiskit.circuit.QuantumCircuit "qiskit.circuit.QuantumCircuit")
-### clifford\_4\_3
+#### clifford\_4\_3
**Returns**
@@ -988,7 +988,7 @@ Template circuits over Clifford gates.
[QuantumCircuit](qiskit.circuit.QuantumCircuit "qiskit.circuit.QuantumCircuit")
-### clifford\_4\_4
+#### clifford\_4\_4
**Returns**
@@ -1000,7 +1000,7 @@ Template circuits over Clifford gates.
[QuantumCircuit](qiskit.circuit.QuantumCircuit "qiskit.circuit.QuantumCircuit")
-### clifford\_5\_1
+#### clifford\_5\_1
**Returns**
@@ -1012,7 +1012,7 @@ Template circuits over Clifford gates.
[QuantumCircuit](qiskit.circuit.QuantumCircuit "qiskit.circuit.QuantumCircuit")
-### clifford\_6\_1
+#### clifford\_6\_1
**Returns**
@@ -1024,7 +1024,7 @@ Template circuits over Clifford gates.
[QuantumCircuit](qiskit.circuit.QuantumCircuit "qiskit.circuit.QuantumCircuit")
-### clifford\_6\_2
+#### clifford\_6\_2
**Returns**
@@ -1036,7 +1036,7 @@ Template circuits over Clifford gates.
[QuantumCircuit](qiskit.circuit.QuantumCircuit "qiskit.circuit.QuantumCircuit")
-### clifford\_6\_3
+#### clifford\_6\_3
**Returns**
@@ -1048,7 +1048,7 @@ Template circuits over Clifford gates.
[QuantumCircuit](qiskit.circuit.QuantumCircuit "qiskit.circuit.QuantumCircuit")
-### clifford\_6\_4
+#### clifford\_6\_4
**Returns**
@@ -1060,7 +1060,7 @@ Template circuits over Clifford gates.
[QuantumCircuit](qiskit.circuit.QuantumCircuit "qiskit.circuit.QuantumCircuit")
-### clifford\_6\_5
+#### clifford\_6\_5
**Returns**
@@ -1072,7 +1072,7 @@ Template circuits over Clifford gates.
[QuantumCircuit](qiskit.circuit.QuantumCircuit "qiskit.circuit.QuantumCircuit")
-### clifford\_8\_1
+#### clifford\_8\_1
**Returns**
@@ -1084,7 +1084,7 @@ Template circuits over Clifford gates.
[QuantumCircuit](qiskit.circuit.QuantumCircuit "qiskit.circuit.QuantumCircuit")
-### clifford\_8\_2
+#### clifford\_8\_2
**Returns**
@@ -1096,7 +1096,7 @@ Template circuits over Clifford gates.
[QuantumCircuit](qiskit.circuit.QuantumCircuit "qiskit.circuit.QuantumCircuit")
-### clifford\_8\_3
+#### clifford\_8\_3
**Returns**
@@ -1112,37 +1112,37 @@ Template circuits over Clifford gates.
Template circuits with [`RZXGate`](qiskit.circuit.library.RZXGate "qiskit.circuit.library.RZXGate").
-### rzx\_yz
+#### rzx\_yz
Template for CX - RYGate - CX.
-### rzx\_xz
+#### rzx\_xz
Template for CX - RXGate - CX.
-### rzx\_cy
+#### rzx\_cy
Template for CX - RYGate - CX.
-### rzx\_zz1
+#### rzx\_zz1
Template for CX - RZGate - CX.
-### rzx\_zz2
+#### rzx\_zz2
Template for CX - RZGate - CX.
-### rzx\_zz3
+#### rzx\_zz3
Template for CX - RZGate - CX.
diff --git a/docs/api/qiskit/0.46/circuit_singleton.mdx b/docs/api/qiskit/0.46/circuit_singleton.mdx
index bea4618e38d..f57bd19385d 100644
--- a/docs/api/qiskit/0.46/circuit_singleton.mdx
+++ b/docs/api/qiskit/0.46/circuit_singleton.mdx
@@ -44,6 +44,8 @@ assert XGate() is XGate()
The public classes correspond to the standard classes [`Instruction`](qiskit.circuit.Instruction "qiskit.circuit.Instruction") and [`Gate`](qiskit.circuit.Gate "qiskit.circuit.Gate"), respectively, and are subclasses of these.
+### SingletonInstruction
+
A base class to use for [`Instruction`](qiskit.circuit.Instruction "qiskit.circuit.Instruction") objects that by default are singleton instances.
@@ -52,12 +54,16 @@ The public classes correspond to the standard classes [`Instruction`](qiskit.cir
The exception to be aware of with this class though are the [`Instruction`](qiskit.circuit.Instruction "qiskit.circuit.Instruction") attributes [`label`](qiskit.circuit.Instruction#label "qiskit.circuit.Instruction.label"), [`condition`](qiskit.circuit.Instruction#condition "qiskit.circuit.Instruction.condition"), [`duration`](qiskit.circuit.Instruction#duration "qiskit.circuit.Instruction.duration"), and [`unit`](qiskit.circuit.Instruction#unit "qiskit.circuit.Instruction.unit") which can be set differently for specific instances of gates. For [`SingletonInstruction`](#qiskit.circuit.singleton.SingletonInstruction "qiskit.circuit.singleton.SingletonInstruction") usage to be sound setting these attributes is not available and they can only be set at creation time, or on an object that has been specifically made mutable using [`to_mutable()`](qiskit.circuit.Instruction#to_mutable "qiskit.circuit.Instruction.to_mutable"). If any of these attributes are used during creation, then instead of using a single shared global instance of the same gate a new separate instance will be created.
+### SingletonGate
+
A base class to use for [`Gate`](qiskit.circuit.Gate "qiskit.circuit.Gate") objects that by default are singleton instances.
This class is very similar to [`SingletonInstruction`](#qiskit.circuit.singleton.SingletonInstruction "qiskit.circuit.singleton.SingletonInstruction"), except implies unitary [`Gate`](qiskit.circuit.Gate "qiskit.circuit.Gate") semantics as well. The same caveats around setting attributes in that class apply here as well.
+### SingletonControlledGate
+
A base class to use for [`ControlledGate`](qiskit.circuit.ControlledGate "qiskit.circuit.ControlledGate") objects that by default are singleton instances
@@ -118,7 +124,7 @@ If your constructor does not have defaults for all its arguments, you must set `
Subclasses of [`SingletonInstruction`](#qiskit.circuit.singleton.SingletonInstruction "qiskit.circuit.singleton.SingletonInstruction") and the other associated classes can control how their constructor’s arguments are interpreted, in order to help the singleton machinery return the singleton even in the case than an optional argument is explicitly set to its default.
-### \_singleton\_lookup\_key
+#### \_singleton\_lookup\_key
Given the arguments to the constructor, return a key tuple that identifies the singleton instance to retrieve, or `None` if the arguments imply that a mutable object must be created.
diff --git a/docs/api/qiskit/0.46/passmanager.mdx b/docs/api/qiskit/0.46/passmanager.mdx
index 064106ed278..73ab2dffa5e 100644
--- a/docs/api/qiskit/0.46/passmanager.mdx
+++ b/docs/api/qiskit/0.46/passmanager.mdx
@@ -161,7 +161,7 @@ With the pass manager framework, a developer can flexibly customize the optimiza
### Exceptions
-### PassManagerError
+#### PassManagerError
Pass manager error.
diff --git a/docs/api/qiskit/0.46/providers.mdx b/docs/api/qiskit/0.46/providers.mdx
index fca0bad274e..8684cbfd8f7 100644
--- a/docs/api/qiskit/0.46/providers.mdx
+++ b/docs/api/qiskit/0.46/providers.mdx
@@ -75,7 +75,7 @@ It’s worth pointing out that Terra’s version support policy doesn’t mean p
### Exceptions
-### QiskitBackendNotFoundError
+#### QiskitBackendNotFoundError
Base class for errors raised while looking for a backend.
@@ -83,7 +83,7 @@ It’s worth pointing out that Terra’s version support policy doesn’t mean p
Set the error message.
-### BackendPropertyError
+#### BackendPropertyError
Base class for errors raised while looking for a backend property.
@@ -91,7 +91,7 @@ It’s worth pointing out that Terra’s version support policy doesn’t mean p
Set the error message.
-### JobError
+#### JobError
Base class for errors raised by Jobs.
@@ -99,7 +99,7 @@ It’s worth pointing out that Terra’s version support policy doesn’t mean p
Set the error message.
-### JobTimeoutError
+#### JobTimeoutError
Base class for timeout errors raised by jobs.
@@ -107,7 +107,7 @@ It’s worth pointing out that Terra’s version support policy doesn’t mean p
Set the error message.
-### BackendConfigurationError
+#### BackendConfigurationError
Base class for errors raised by the BackendConfiguration.
diff --git a/docs/api/qiskit/0.46/providers_fake_provider.mdx b/docs/api/qiskit/0.46/providers_fake_provider.mdx
index 3b26734b7d8..eb71ff020e4 100644
--- a/docs/api/qiskit/0.46/providers_fake_provider.mdx
+++ b/docs/api/qiskit/0.46/providers_fake_provider.mdx
@@ -210,6 +210,8 @@ Special fake backends are fake backends that were created for special testing pu
The fake backends based on IBM hardware are based on a set of base classes:
+### FakeBackendV2
+
A fake backend class for testing and noisy simulation using real backend snapshots.
@@ -222,6 +224,8 @@ The fake backends based on IBM hardware are based on a set of base classes:
+### FakeBackend
+
This is a dummy backend just for testing purposes.
@@ -233,6 +237,8 @@ The fake backends based on IBM hardware are based on a set of base classes:
* **time\_alive** ([*int*](https://docs.python.org/3/library/functions.html#int "(in Python v3.12)")) – time to wait before returning result
+### FakeQasmBackend
+
A fake OpenQASM backend.
@@ -244,6 +250,8 @@ The fake backends based on IBM hardware are based on a set of base classes:
* **time\_alive** ([*int*](https://docs.python.org/3/library/functions.html#int "(in Python v3.12)")) – time to wait before returning result
+### FakePulseBackend
+
A fake pulse backend.
diff --git a/docs/api/qiskit/0.46/pulse.mdx b/docs/api/qiskit/0.46/pulse.mdx
index c6596123686..20620ea6cad 100644
--- a/docs/api/qiskit/0.46/pulse.mdx
+++ b/docs/api/qiskit/0.46/pulse.mdx
@@ -71,6 +71,8 @@ An instruction can be added to a [`Schedule`](qiskit.pulse.Schedule "qiskit.puls
These are all instances of the same base class:
+### Instruction
+
The smallest schedulable unit: a single instruction. It has a fixed duration and specified channels.
@@ -112,7 +114,7 @@ In contrast, the [`SymbolicPulse`](qiskit.pulse.library.SymbolicPulse "qiskit.pu
### Waveform Pulse Representation
-### constant
+#### constant
Generates constant-sampled [`Waveform`](qiskit.pulse.library.Waveform "qiskit.pulse.library.Waveform").
@@ -138,7 +140,7 @@ $$
[*Waveform*](qiskit.pulse.library.Waveform "qiskit.pulse.library.waveform.Waveform")
-### zero
+#### zero
Generates zero-sampled [`Waveform`](qiskit.pulse.library.Waveform "qiskit.pulse.library.Waveform").
@@ -163,7 +165,7 @@ $$
[*Waveform*](qiskit.pulse.library.Waveform "qiskit.pulse.library.waveform.Waveform")
-### square
+#### square
Generates square wave [`Waveform`](qiskit.pulse.library.Waveform "qiskit.pulse.library.Waveform").
@@ -193,7 +195,7 @@ $$
[*Waveform*](qiskit.pulse.library.Waveform "qiskit.pulse.library.waveform.Waveform")
-### sawtooth
+#### sawtooth
Generates sawtooth wave [`Waveform`](qiskit.pulse.library.Waveform "qiskit.pulse.library.Waveform").
@@ -240,7 +242,7 @@ $$
![../\_images/pulse-1.png](/images/api/qiskit/0.46/pulse-1.png)
-### triangle
+#### triangle
Generates triangle wave [`Waveform`](qiskit.pulse.library.Waveform "qiskit.pulse.library.Waveform").
@@ -287,7 +289,7 @@ $$
![../\_images/pulse-2.png](/images/api/qiskit/0.46/pulse-2.png)
-### cos
+#### cos
Generates cosine wave [`Waveform`](qiskit.pulse.library.Waveform "qiskit.pulse.library.Waveform").
@@ -315,7 +317,7 @@ $$
[*Waveform*](qiskit.pulse.library.Waveform "qiskit.pulse.library.waveform.Waveform")
-### sin
+#### sin
Generates sine wave [`Waveform`](qiskit.pulse.library.Waveform "qiskit.pulse.library.Waveform").
@@ -343,7 +345,7 @@ $$
[*Waveform*](qiskit.pulse.library.Waveform "qiskit.pulse.library.waveform.Waveform")
-### gaussian
+#### gaussian
Generates unnormalized gaussian [`Waveform`](qiskit.pulse.library.Waveform "qiskit.pulse.library.Waveform").
@@ -383,7 +385,7 @@ $$
[*Waveform*](qiskit.pulse.library.Waveform "qiskit.pulse.library.waveform.Waveform")
-### gaussian\_deriv
+#### gaussian\_deriv
Generates unnormalized gaussian derivative [`Waveform`](qiskit.pulse.library.Waveform "qiskit.pulse.library.Waveform").
@@ -413,7 +415,7 @@ $$
[*Waveform*](qiskit.pulse.library.Waveform "qiskit.pulse.library.waveform.Waveform")
-### sech
+#### sech
Generates unnormalized sech [`Waveform`](qiskit.pulse.library.Waveform "qiskit.pulse.library.Waveform").
@@ -451,7 +453,7 @@ $$
[*Waveform*](qiskit.pulse.library.Waveform "qiskit.pulse.library.waveform.Waveform")
-### sech\_deriv
+#### sech\_deriv
Generates unnormalized sech derivative [`Waveform`](qiskit.pulse.library.Waveform "qiskit.pulse.library.Waveform").
@@ -482,7 +484,7 @@ $$
[*Waveform*](qiskit.pulse.library.Waveform "qiskit.pulse.library.waveform.Waveform")
-### gaussian\_square
+#### gaussian\_square
Generates gaussian square [`Waveform`](qiskit.pulse.library.Waveform "qiskit.pulse.library.Waveform").
@@ -524,7 +526,7 @@ $$
[*Waveform*](qiskit.pulse.library.Waveform "qiskit.pulse.library.waveform.Waveform")
-### drag
+#### drag
Generates Y-only correction DRAG [`Waveform`](qiskit.pulse.library.Waveform "qiskit.pulse.library.Waveform") for standard nonlinear oscillator (SNO) \[1].
@@ -616,6 +618,8 @@ Novel channel types can often utilize the [`ControlChannel`](qiskit.pulse.channe
All channels are children of the same abstract base class:
+### Channel
+
Base class of channels. Channels provide a Qiskit-side label for typical quantum control hardware signal channels. The final label -> physical channel mapping is the responsibility of the hardware backend. For instance, `DriveChannel(0)` holds instructions which the backend should map to the signal line driving gate operations on the qubit labeled (indexed) 0.
@@ -669,6 +673,8 @@ The alignment transforms define alignment policies of instructions in [`Schedule
These are all subtypes of the abstract base class [`AlignmentKind`](#qiskit.pulse.transforms.AlignmentKind "qiskit.pulse.transforms.AlignmentKind").
+#### AlignmentKind
+
An abstract class for schedule alignment.
@@ -681,7 +687,7 @@ These are all subtypes of the abstract base class [`AlignmentKind`](#qiskit.puls
The canonicalization transforms convert schedules to a form amenable for execution on OpenPulse backends.
-### add\_implicit\_acquires
+#### add\_implicit\_acquires
Return a new schedule with implicit acquires from the measurement mapping replaced by explicit ones.
@@ -704,7 +710,7 @@ The canonicalization transforms convert schedules to a form amenable for executi
[*Schedule*](qiskit.pulse.Schedule "qiskit.pulse.schedule.Schedule")
-### align\_measures
+#### align\_measures
Return new schedules where measurements occur at the same physical time.
@@ -771,7 +777,7 @@ The canonicalization transforms convert schedules to a form amenable for executi
[*List*](https://docs.python.org/3/library/typing.html#typing.List "(in Python v3.12)")\[[*Schedule*](qiskit.pulse.Schedule "qiskit.pulse.schedule.Schedule")]
-### block\_to\_schedule
+#### block\_to\_schedule
Convert `ScheduleBlock` to `Schedule`.
@@ -798,7 +804,7 @@ The canonicalization transforms convert schedules to a form amenable for executi
-### compress\_pulses
+#### compress\_pulses
Optimization pass to replace identical pulses.
@@ -816,7 +822,7 @@ The canonicalization transforms convert schedules to a form amenable for executi
[*List*](https://docs.python.org/3/library/typing.html#typing.List "(in Python v3.12)")\[[*Schedule*](qiskit.pulse.Schedule "qiskit.pulse.schedule.Schedule")]
-### flatten
+#### flatten
Flatten (inline) any called nodes into a Schedule tree with no nested children.
@@ -838,7 +844,7 @@ The canonicalization transforms convert schedules to a form amenable for executi
[*Schedule*](qiskit.pulse.Schedule "qiskit.pulse.schedule.Schedule")
-### inline\_subroutines
+#### inline\_subroutines
Recursively remove call instructions and inline the respective subroutine instructions.
@@ -862,7 +868,7 @@ The canonicalization transforms convert schedules to a form amenable for executi
[*Schedule*](qiskit.pulse.Schedule "qiskit.pulse.schedule.Schedule") | [*ScheduleBlock*](qiskit.pulse.ScheduleBlock "qiskit.pulse.schedule.ScheduleBlock")
-### pad
+#### pad
Pad the input Schedule with `Delay``s on all unoccupied timeslots until ``schedule.duration` or `until` if not `None`.
@@ -888,7 +894,7 @@ The canonicalization transforms convert schedules to a form amenable for executi
[*Schedule*](qiskit.pulse.Schedule "qiskit.pulse.schedule.Schedule")
-### remove\_directives
+#### remove\_directives
Remove directives.
@@ -906,7 +912,7 @@ The canonicalization transforms convert schedules to a form amenable for executi
[*Schedule*](qiskit.pulse.Schedule "qiskit.pulse.schedule.Schedule")
-### remove\_trivial\_barriers
+#### remove\_trivial\_barriers
Remove trivial barriers with 0 or 1 channels.
@@ -930,7 +936,7 @@ The canonicalization transforms convert schedules to a form amenable for executi
The DAG transforms create DAG representation of input program. This can be used for optimization of instructions and equality checks.
-### block\_to\_dag
+#### block\_to\_dag
Convert schedule block instruction into DAG.
@@ -988,7 +994,7 @@ The DAG transforms create DAG representation of input program. This can be used
A sequence of transformations to generate a target code.
-### target\_qobj\_transform
+#### target\_qobj\_transform
A basic pulse program transformation for OpenPulse API execution.
@@ -1277,7 +1283,7 @@ with pulse.build(backend) as drive_sched:
DriveChannel(0)
```
-### acquire\_channel
+#### acquire\_channel
Return `AcquireChannel` for `qubit` on the active builder backend.
@@ -1303,7 +1309,7 @@ DriveChannel(0)
[*AcquireChannel*](qiskit.pulse.channels.AcquireChannel "qiskit.pulse.channels.AcquireChannel")
-### control\_channels
+#### control\_channels
Return `ControlChannel` for `qubit` on the active builder backend.
@@ -1338,7 +1344,7 @@ DriveChannel(0)
[*List*](https://docs.python.org/3/library/typing.html#typing.List "(in Python v3.12)")\[[*ControlChannel*](qiskit.pulse.channels.ControlChannel "qiskit.pulse.channels.ControlChannel")]
-### drive\_channel
+#### drive\_channel
Return `DriveChannel` for `qubit` on the active builder backend.
@@ -1364,7 +1370,7 @@ DriveChannel(0)
[*DriveChannel*](qiskit.pulse.channels.DriveChannel "qiskit.pulse.channels.DriveChannel")
-### measure\_channel
+#### measure\_channel
Return `MeasureChannel` for `qubit` on the active builder backend.
@@ -1423,7 +1429,7 @@ drive_sched.draw()
![../\_images/pulse-6.png](/images/api/qiskit/0.46/pulse-6.png)
-### acquire
+#### acquire
Acquire for a `duration` on a `channel` and store the result in a `register`.
@@ -1460,7 +1466,7 @@ drive_sched.draw()
[**exceptions.PulseError**](#qiskit.pulse.PulseError "qiskit.pulse.exceptions.PulseError") – If the register type is not supported.
-### barrier
+#### barrier
Barrier directive for a set of channels and qubits.
@@ -1527,7 +1533,7 @@ drive_sched.draw()
* **name** ([*str*](https://docs.python.org/3/library/stdtypes.html#str "(in Python v3.12)") *| None*) – Name for the barrier
-### call
+#### call
Call the subroutine within the currently active builder context with arbitrary parameters which will be assigned to the target program.
@@ -1704,7 +1710,7 @@ drive_sched.draw()
* **kw\_params** ([*ParameterExpression*](qiskit.circuit.ParameterExpression "qiskit.circuit.parameterexpression.ParameterExpression") *|*[*float*](https://docs.python.org/3/library/functions.html#float "(in Python v3.12)")) – Alternative way to provide parameters. Since this is keyed on the string parameter name, the parameters having the same name are all updated together. If you want to avoid name collision, use `value_dict` with [`Parameter`](qiskit.circuit.Parameter "qiskit.circuit.Parameter") objects instead.
-### delay
+#### delay
Delay on a `channel` for a `duration`.
@@ -1727,7 +1733,7 @@ drive_sched.draw()
* **name** ([*str*](https://docs.python.org/3/library/stdtypes.html#str "(in Python v3.12)") *| None*) – Name of the instruction.
-### play
+#### play
Play a `pulse` on a `channel`.
@@ -1750,7 +1756,7 @@ drive_sched.draw()
* **name** ([*str*](https://docs.python.org/3/library/stdtypes.html#str "(in Python v3.12)") *| None*) – Name of the pulse.
-### reference
+#### reference
Refer to undefined subroutine by string keys.
@@ -1775,7 +1781,7 @@ drive_sched.draw()
* **extra\_keys** ([*str*](https://docs.python.org/3/library/stdtypes.html#str "(in Python v3.12)")) – Helper keys to uniquely specify the subroutine.
-### set\_frequency
+#### set\_frequency
Set the `frequency` of a pulse `channel`.
@@ -1798,7 +1804,7 @@ drive_sched.draw()
* **name** ([*str*](https://docs.python.org/3/library/stdtypes.html#str "(in Python v3.12)") *| None*) – Name of the instruction.
-### set\_phase
+#### set\_phase
Set the `phase` of a pulse `channel`.
@@ -1823,7 +1829,7 @@ drive_sched.draw()
* **name** ([*str*](https://docs.python.org/3/library/stdtypes.html#str "(in Python v3.12)") *| None*) – Name of the instruction.
-### shift\_frequency
+#### shift\_frequency
Shift the `frequency` of a pulse `channel`.
@@ -1846,7 +1852,7 @@ drive_sched.draw()
* **name** ([*str*](https://docs.python.org/3/library/stdtypes.html#str "(in Python v3.12)") *| None*) – Name of the instruction.
-### shift\_phase
+#### shift\_phase
Shift the `phase` of a pulse `channel`.
@@ -1871,7 +1877,7 @@ drive_sched.draw()
* **name** ([*str*](https://docs.python.org/3/library/stdtypes.html#str "(in Python v3.12)") *| None*) – Name of the instruction.
-### snapshot
+#### snapshot
Simulator snapshot.
@@ -1913,7 +1919,7 @@ pulse_prog.draw()
![../\_images/pulse-7.png](/images/api/qiskit/0.46/pulse-7.png)
-### align\_equispaced
+#### align\_equispaced
Equispaced alignment pulse scheduling context.
@@ -1959,7 +1965,7 @@ pulse_prog.draw()
The scheduling is performed for sub-schedules within the context rather than channel-wise. If you want to apply the equispaced context for each channel, you should use the context independently for channels.
-### align\_func
+#### align\_func
Callback defined alignment pulse scheduling context.
@@ -2011,7 +2017,7 @@ pulse_prog.draw()
The scheduling is performed for sub-schedules within the context rather than channel-wise. If you want to apply the numerical context for each channel, you need to apply the context independently to channels.
-### align\_left
+#### align\_left
Left alignment pulse scheduling context.
@@ -2046,7 +2052,7 @@ pulse_prog.draw()
[*ContextManager*](https://docs.python.org/3/library/typing.html#typing.ContextManager "(in Python v3.12)")\[None]
-### align\_right
+#### align\_right
Right alignment pulse scheduling context.
@@ -2081,7 +2087,7 @@ pulse_prog.draw()
[*AlignmentKind*](#qiskit.pulse.transforms.AlignmentKind "qiskit.pulse.transforms.alignments.AlignmentKind")
-### align\_sequential
+#### align\_sequential
Sequential alignment pulse scheduling context.
@@ -2116,7 +2122,7 @@ pulse_prog.draw()
[*AlignmentKind*](#qiskit.pulse.transforms.AlignmentKind "qiskit.pulse.transforms.alignments.AlignmentKind")
-### circuit\_scheduler\_settings
+#### circuit\_scheduler\_settings
Set the currently active circuit scheduler settings for this context.
@@ -2149,7 +2155,7 @@ pulse_prog.draw()
[*ContextManager*](https://docs.python.org/3/library/typing.html#typing.ContextManager "(in Python v3.12)")\[None]
-### frequency\_offset
+#### frequency\_offset
Shift the frequency of inputs channels on entry into context and undo on exit.
@@ -2193,7 +2199,7 @@ pulse_prog.draw()
[*ContextManager*](https://docs.python.org/3/library/typing.html#typing.ContextManager "(in Python v3.12)")\[None]
-### phase\_offset
+#### phase\_offset
Shift the phase of input channels on entry into context and undo on exit.
@@ -2228,7 +2234,7 @@ pulse_prog.draw()
[*ContextManager*](https://docs.python.org/3/library/typing.html#typing.ContextManager "(in Python v3.12)")\[None]
-### transpiler\_settings
+#### transpiler\_settings
Set the currently active transpiler settings for this context.
@@ -2280,7 +2286,7 @@ with pulse.build(backend) as measure_sched:
MemorySlot(0)
```
-### measure
+#### measure
Measure a qubit within the currently active builder context.
@@ -2335,7 +2341,7 @@ MemorySlot(0)
[*List*](https://docs.python.org/3/library/typing.html#typing.List "(in Python v3.12)")\[StorageLocation] | StorageLocation
-### measure\_all
+#### measure\_all
Measure all qubits within the currently active builder context.
@@ -2368,7 +2374,7 @@ MemorySlot(0)
[*List*](https://docs.python.org/3/library/typing.html#typing.List "(in Python v3.12)")\[[*MemorySlot*](qiskit.pulse.channels.MemorySlot "qiskit.pulse.channels.MemorySlot")]
-### delay\_qubits
+#### delay\_qubits
Insert delays on all of the `channels.Channel`s that correspond to the input `qubits` at the same time.
@@ -2425,7 +2431,7 @@ There are 160 samples in 3.5555555555555554e-08 seconds
There are 1e-06 seconds in 4500 samples.
```
-### active\_backend
+#### active\_backend
Get the backend of the currently active builder context.
@@ -2445,7 +2451,7 @@ There are 1e-06 seconds in 4500 samples.
[**exceptions.BackendNotSet**](#qiskit.pulse.BackendNotSet "qiskit.pulse.exceptions.BackendNotSet") – If the builder does not have a backend set.
-### active\_transpiler\_settings
+#### active\_transpiler\_settings
Return the current active builder context’s transpiler settings.
@@ -2478,7 +2484,7 @@ There are 1e-06 seconds in 4500 samples.
[*Dict*](https://docs.python.org/3/library/typing.html#typing.Dict "(in Python v3.12)")\[[str](https://docs.python.org/3/library/stdtypes.html#str "(in Python v3.12)"), [*Any*](https://docs.python.org/3/library/typing.html#typing.Any "(in Python v3.12)")]
-### active\_circuit\_scheduler\_settings
+#### active\_circuit\_scheduler\_settings
Return the current active builder context’s circuit scheduler settings.
@@ -2512,7 +2518,7 @@ There are 1e-06 seconds in 4500 samples.
[*Dict*](https://docs.python.org/3/library/typing.html#typing.Dict "(in Python v3.12)")\[[str](https://docs.python.org/3/library/stdtypes.html#str "(in Python v3.12)"), [*Any*](https://docs.python.org/3/library/typing.html#typing.Any "(in Python v3.12)")]
-### num\_qubits
+#### num\_qubits
Return number of qubits in the currently active backend.
@@ -2542,7 +2548,7 @@ There are 1e-06 seconds in 4500 samples.
[int](https://docs.python.org/3/library/functions.html#int "(in Python v3.12)")
-### qubit\_channels
+#### qubit\_channels
Returns the set of channels associated with a qubit.
@@ -2576,7 +2582,7 @@ There are 1e-06 seconds in 4500 samples.
[*Set*](https://docs.python.org/3/library/typing.html#typing.Set "(in Python v3.12)")\[[*Channel*](#qiskit.pulse.channels.Channel "qiskit.pulse.channels.Channel")]
-### samples\_to\_seconds
+#### samples\_to\_seconds
Obtain the time in seconds that will elapse for the input number of samples on the active backend.
@@ -2594,7 +2600,7 @@ There are 1e-06 seconds in 4500 samples.
[float](https://docs.python.org/3/library/functions.html#float "(in Python v3.12)") | [*ndarray*](https://numpy.org/doc/stable/reference/generated/numpy.ndarray.html#numpy.ndarray "(in NumPy v1.26)")
-### seconds\_to\_samples
+#### seconds\_to\_samples
Obtain the number of samples that will elapse in `seconds` on the active backend.
diff --git a/docs/api/qiskit/0.46/qasm.mdx b/docs/api/qiskit/0.46/qasm.mdx
index a3deaab892c..6f306eef6a5 100644
--- a/docs/api/qiskit/0.46/qasm.mdx
+++ b/docs/api/qiskit/0.46/qasm.mdx
@@ -24,6 +24,8 @@ python_api_name: qiskit.qasm
## QASM Routines
+### Qasm
+
OPENQASM circuit object.
@@ -32,14 +34,20 @@ python_api_name: qiskit.qasm
## Pygments
+### OpenQASMLexer
+
A pygments lexer for OpenQasm.
+### QasmHTMLStyle
+
A style for OpenQasm in a HTML env (e.g. Jupyter widget).
+### QasmTerminalStyle
+
A style for OpenQasm in a Terminal env (e.g. Jupyter print).
diff --git a/docs/api/qiskit/0.46/qasm2.mdx b/docs/api/qiskit/0.46/qasm2.mdx
index 3dabaf15ca9..a3029a93fcd 100644
--- a/docs/api/qiskit/0.46/qasm2.mdx
+++ b/docs/api/qiskit/0.46/qasm2.mdx
@@ -83,6 +83,8 @@ Both of these loading functions also take an argument `include_path`, which is a
You can extend the quantum components of the OpenQASM 2 language by passing an iterable of information on custom instructions as the argument `custom_instructions`. In files that have compatible definitions for these instructions, the given `constructor` will be used in place of whatever other handling [`qiskit.qasm2`](#module-qiskit.qasm2 "qiskit.qasm2") would have done. These instructions may optionally be marked as `builtin`, which causes them to not require an `opaque` or `gate` declaration, but they will silently ignore a compatible declaration. Either way, it is an error to provide a custom instruction that has a different number of parameters or qubits as a defined instruction in a parsed program. Each element of the argument iterable should be a particular data class:
+#### CustomInstruction
+
Information about a custom instruction that should be defined during the parse.
@@ -99,6 +101,8 @@ This can be particularly useful when trying to resolve ambiguities in the global
Similar to the quantum extensions above, you can also extend the processing done to classical expressions (arguments to gates) by passing an iterable to the argument `custom_classical` to either loader. This needs the `name` (a valid OpenQASM 2 identifier), the number `num_params` of parameters it takes, and a Python callable that implements the function. The Python callable must be able to accept `num_params` positional floating-point arguments, and must return a float or integer (which will be converted to a float). Builtin functions cannot be overridden.
+#### CustomClassical
+
Information about a custom classical function that should be defined in mathematical expressions.
diff --git a/docs/api/qiskit/0.46/qasm3.mdx b/docs/api/qiskit/0.46/qasm3.mdx
index 88873dfed29..d08dafd7a74 100644
--- a/docs/api/qiskit/0.46/qasm3.mdx
+++ b/docs/api/qiskit/0.46/qasm3.mdx
@@ -57,6 +57,8 @@ The high-level functions are simply [`dump()`](#qiskit.qasm3.dump "qiskit.qasm3.
Both of these exporter functions are single-use wrappers around the main [`Exporter`](#qiskit.qasm3.Exporter "qiskit.qasm3.Exporter") class. For more complex exporting needs, including dumping multiple circuits in a single session, it may be more convenient or faster to use the complete interface.
+### Exporter
+