qiskit-documentation/docs/api/qiskit/0.44/dagcircuit.mdx

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. |