59 lines
4.2 KiB
Plaintext
59 lines
4.2 KiB
Plaintext
---
|
|
title: dagcircuit
|
|
description: API reference for qiskit.dagcircuit
|
|
in_page_toc_min_heading_level: 2
|
|
python_api_type: module
|
|
python_api_name: qiskit.dagcircuit
|
|
---
|
|
|
|
<span id="module-qiskit.dagcircuit" />
|
|
|
|
<span id="qiskit-dagcircuit" />
|
|
|
|
<span id="dag-circuits-qiskit-dagcircuit" />
|
|
|
|
# DAG Circuits
|
|
|
|
<span id="module-qiskit.dagcircuit" />
|
|
|
|
`qiskit.dagcircuit`
|
|
|
|
## Circuits as Directed Acyclic Graphs
|
|
|
|
| | |
|
|
| ----------------------------------------------------------------------------------------------------------------- | -------------------------------------------------------------------------------------------------------- |
|
|
| [`DAGCircuit`](qiskit.dagcircuit.DAGCircuit "qiskit.dagcircuit.DAGCircuit")() | Quantum circuit as a directed acyclic graph. |
|
|
| [`DAGNode`](qiskit.dagcircuit.DAGNode "qiskit.dagcircuit.DAGNode")(\[nid]) | Parent class for DAGOpNode, DAGInNode, and DAGOutNode. |
|
|
| [`DAGOpNode`](qiskit.dagcircuit.DAGOpNode "qiskit.dagcircuit.DAGOpNode")(op\[, qargs, cargs]) | Object to represent an Instruction at a node in the DAGCircuit. |
|
|
| [`DAGInNode`](qiskit.dagcircuit.DAGInNode "qiskit.dagcircuit.DAGInNode")(wire) | Object to represent an incoming wire node in the DAGCircuit. |
|
|
| [`DAGOutNode`](qiskit.dagcircuit.DAGOutNode "qiskit.dagcircuit.DAGOutNode")(wire) | Object to represent an outgoing wire node in the DAGCircuit. |
|
|
| [`DAGDepNode`](qiskit.dagcircuit.DAGDepNode "qiskit.dagcircuit.DAGDepNode")(\[type, op, name, qargs, cargs, ...]) | Object to represent the information at a node in the DAGDependency(). |
|
|
| [`DAGDependency`](qiskit.dagcircuit.DAGDependency "qiskit.dagcircuit.DAGDependency")() | Object to represent a quantum circuit as a Directed Acyclic Graph (DAG) via operation dependencies (i.e. |
|
|
|
|
## Exceptions
|
|
|
|
### DAGCircuitError
|
|
|
|
<Class id="qiskit.dagcircuit.DAGCircuitError" github="https://github.com/qiskit/qiskit/tree/stable/0.25/qiskit/dagcircuit/exceptions.py" signature="qiskit.dagcircuit.DAGCircuitError(*msg)" modifiers="exception">
|
|
Base class for errors raised by the DAGCircuit object.
|
|
|
|
Set the error message.
|
|
</Class>
|
|
|
|
### DAGDependencyError
|
|
|
|
<Class id="qiskit.dagcircuit.DAGDependencyError" github="https://github.com/qiskit/qiskit/tree/stable/0.25/qiskit/dagcircuit/exceptions.py" signature="qiskit.dagcircuit.DAGDependencyError(*msg)" modifiers="exception">
|
|
Base class for errors raised by the DAGDependency object.
|
|
|
|
Set the error message.
|
|
</Class>
|
|
|
|
## Utilities
|
|
|
|
| | |
|
|
| -------------------------------------------------------------------------------------------- | ------------------------------------------------------------------------------------------------------------------------------------- |
|
|
| [`BlockCollapser`](qiskit.dagcircuit.BlockCollapser "qiskit.dagcircuit.BlockCollapser")(dag) | This class implements various strategies of consolidating blocks of nodes in a DAG (direct acyclic graph). |
|
|
| [`BlockCollector`](qiskit.dagcircuit.BlockCollector "qiskit.dagcircuit.BlockCollector")(dag) | This class implements various strategies of dividing a DAG (direct acyclic graph) into blocks of nodes that satisfy certain criteria. |
|
|
| [`BlockSplitter`](qiskit.dagcircuit.BlockSplitter "qiskit.dagcircuit.BlockSplitter")() | Splits a block of nodes into sub-blocks over disjoint qubits. |
|
|
|