AILinearFunctionSynthesis
class qiskit_transpiler_service.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(opens in a new tab)) – Name of the backend used for doing the AI Linear Function synthesis.
- replace_only_if_better (bool(opens in a new tab), optional) – Determine if replace the original circuit with the synthesized one if it’s better, defaults to True.
- max_threads (int(opens in a new tab), 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(opens in a new tab)) – Qiskit IR to optimize.
- state (PassManagerState) – State associated with workflow execution by the pass manager itself.
- callback (Callable(opens in a new tab) | None) – A callback function which is caller per execution of optimization task.
Returns
Optimized Qiskit IR and state of the workflow.
Return type
tuple(opens in a new tab)[Any(opens in a new tab), PassManagerState]
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(opens in a new tab) – 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