QdAlgorithmIR#

class qudas.gate.ir.QdAlgorithmIR(gates: List[QdGateIR])[source]#

Bases: object

classmethod from_blocks(blocks: Iterable[Iterable[QdGateIR]])[source]#

量子回路ブロックの集合から QdAlgorithmIR を生成する。

Parameters:

blocks (Iterable[Iterable[QdGateIR]]) – 各ブロックが QdGateIR を要素にもつ反復可能オブジェクト。 典型的には qudas.gate.block.QdGateBlock のリストを想定。

classmethod from_qasm(qasm)[source]#

OpenQASM 文字列 / ファイルパス / QuantumCircuit から QdAlgorithmIR を生成する。 (QdGateIR ベース)

to_qiskit()[source]#

保持している QdGateIR 一覧から qiskit.circuit.QuantumCircuit を生成する。

QdGateIR#

class qudas.gate.gate_ir.QdGateIR(gate: str, targets: List[int], controls: List[int] | None = None, params: List[float] | None = None)[source]#

Bases: object

単一ゲートのIR表現。