AILinearFunctionSynthesis
class qiskit_ibm_transpiler.ai.AILinearFunctionSynthesis(backend_name: str, replace_only_if_better: bool = True, max_threads: int | None = None)
Bases: AISynthesis
Synthesis for Linear Function circuits (blocks of CX and SWAP gates). Currently up to 9 qubit blocks.
Parameters
- backend_name (str) – Name of the backend used for doing the AI Linear Function synthesis.
- replace_only_if_better (bool, optional) – Determine if replace the original circuit with the synthesized one if it’s better, defaults to True.
- max_threads (int, optional) – Set the number of requests to send in parallel.
Methods
execute
execute(passmanager_ir, state, callback=None)
Execute optimization task for input Qiskit IR.
Parameters
- passmanager_ir (Any) – Qiskit IR to optimize.
- state (PassManagerState) – State associated with workflow execution by the pass manager itself.
- callback (Callable) – A callback function which is caller per execution of optimization task.
Returns
Optimized Qiskit IR and state of the workflow.
Return type
name
run
run(dag)
Run a pass on the DAGCircuit. This is implemented by the pass developer.
Parameters
dag (DAGCircuit) – the dag on which the pass is run.
Raises
NotImplementedError – when this is left unimplemented for a pass.
synth_nodes
synth_nodes(nodes)
update_status
update_status(state, run_state)
Update workflow status.
Parameters
- state (PassManagerState) – Pass manager state to update.
- run_state (RunState) – Completion status of current task.
Returns
Updated pass manager state.
Return type