mqt.qcec.verify_compilation_flow

Verify compilation flow results.

Functions

verify_compilation(...)

Verify compilation flow results.

Module Contents

verify_compilation(original_circuit: mqt.core.ir.QuantumComputation | str | PathLike[str] | QuantumCircuit, compiled_circuit: mqt.core.ir.QuantumComputation | str | PathLike[str] | QuantumCircuit, optimization_level: int = 1, configuration: mqt.qcec.pyqcec.Configuration | None = None, **kwargs: Unpack[ConfigurationOptions]) → mqt.qcec.pyqcec.EquivalenceCheckingManager.Results[source]

Verify compilation flow results.

Similar to verify, but uses a dedicated compilation flow profile to guide the equivalence checking process. An explicit profile takes precedence over the bundled profile selected by optimization_level.

There are two (non-exclusive) ways of configuring the equivalence checking process:

  1. Pass a Configuration instance as the configuration argument.

2. Pass keyword arguments to this function. These are directly incorporated into the Configuration. Any existing configuration is overridden by keyword arguments.

Parameters:
  • original_circuit – The original circuit.

  • compiled_circuit – The compiled circuit.

  • optimization_level – The optimization level used for compiling the circuit (0, 1, 2, or 3). Defaults to 1.

  • configuration – The configuration to use for the equivalence checking process.

  • **kwargs – Keyword arguments to configure the equivalence checking process.

Returns:

The results of the equivalence checking process.