Replace each block of consecutive gates by a single Unitary node.
Pass to consolidate sequences of uninterrupted gates acting on the same qubits into a Unitary node, to be resynthesized later, to a potentially more optimal subcircuit.
This pass assumes that the ‘blocks_list’ property that it reads is given such that blocks are in topological order. The blocks are collected by a previous pass, such as Collect2qBlocks.
kak_basis_gate (Gate) – Basis gate for KAK decomposition.
force_consolidate (bool) – Force block consolidation
basis_gates (List(str)) – Basis gates from which to choose a KAK gate.
Check if the pass is an analysis pass.
Check if the pass is a transformation pass.
Return the name of the pass.
Run the ConsolidateBlocks pass on dag.