uniqc.transpiler.qiskit_transpiler module#

Qiskit transpiler backend integration.

This module provides transpilation services using Qiskit’s transpiler for optimizing quantum circuits with configurable topology and gate sets.

uniqc.transpiler.qiskit_transpiler.transpile_originir(originir_strings, topology=None, optimization_level=1, basis_gates=None)[source]#

使用指定的拓扑、基本门和优化级别编译一组 OriginIR 线路字符串。

Parameters:
  • originir_strings (List[str]) – 包含 OriginIR 线路描述的字符串列表。

  • topology (List[List[int] | Tuple[int, int]]) – 定义硬件拓扑的耦合图列表。 例如: [[0, 1], [1, 2], [1, 3]] 表示 0<->1, 1<->2, 1<->3 的连接。

  • optimization_level (int) – Qiskit transpile 的优化级别 (0 到 3)。 0: No optimization 1: Light optimization 2: Heavy optimization 3: Heaviest optimization

  • basis_gates (List[str] | None) – 用于编译的目标基本门集。如果为 None,则使用默认 [‘cz’, ‘sx’, ‘rz’]。 请确保您选择的门在 Qiskit 的标准库中或已被正确定义。

Returns:

一个字符串列表,包含编译后的 OriginIR 线路。

Raises:
  • ImportError – 如果 Qiskit 未安装。

  • QiskitError – 如果输入的 OriginIR 字符串无效或编译过程中发生错误。

  • ValueError – 如果优化级别无效。

uniqc.transpiler.qiskit_transpiler.transpile_qasm(qasm_strings, topology=None, optimization_level=1, basis_gates=None)[source]#

使用指定的拓扑、基本门和优化级别编译一组OPENQASM 2.0线路字符串。

Parameters:
  • qasm_strings (List[str]) – 包含 OPENQASM 2.0 线路描述的字符串列表。

  • topology (List[List[int] | Tuple[int, int]]) – 定义硬件拓扑的耦合图列表。 例如: [[0, 1], [1, 2], [1, 3]] 表示 0<->1, 1<->2, 1<->3 的连接。

  • optimization_level (int) – Qiskit transpile 的优化级别 (0 到 3)。 0: No optimization 1: Light optimization 2: Heavy optimization 3: Heaviest optimization

  • basis_gates (List[str] | None) – 用于编译的目标基本门集。如果为 None,则使用默认 [‘cz’, ‘sx’, ‘rz’]。 请确保您选择的门在 Qiskit 的标准库中或已被正确定义。

Returns:

一个字符串列表,包含编译后的 OPENQASM 2.0 线路。

Raises:
  • ImportError – 如果 Qiskit 未安装。

  • QiskitError – 如果输入的 QASM 字符串无效或编译过程中发生错误。

  • ValueError – 如果优化级别无效。

Return type:

List[str]