Notions of Equivalence#

This class captures all the different notions of equivalence that can be the result of a run().

EquivalenceCriterionName#

alias of Literal[‘no_information’, ‘not_equivalent’, ‘equivalent’, ‘equivalent_up_to_phase’, ‘equivalent_up_to_global_phase’, ‘probably_equivalent’, ‘probably_not_equivalent’]

class EquivalenceCriterion#

Members:

no_information : No information on the equivalence is available. This can be due to the fact that the check has not been run or that a timeout happened.

not_equivalent : Circuits are shown to be non-equivalent.

equivalent : Circuits are shown to be equivalent.

equivalent_up_to_phase : Circuits are equivalent up to a certain (global or relative) phase.

equivalent_up_to_global_phase : Circuits are equivalent up to a global phase factor.

probably_equivalent : Circuits are probably equivalent. A result that is obtained whenever a couple of simulations did not show the non-equivalence in the simulation checker.

probably_not_equivalent : Circuits are probably not equivalent. A result that is obtained whenever the ZX-calculus checker could not reduce the combined circuit to the identity.

equivalent = <EquivalenceCriterion.equivalent: 1>#
equivalent_up_to_global_phase = <EquivalenceCriterion.equivalent_up_to_global_phase: 4>#
equivalent_up_to_phase = <EquivalenceCriterion.equivalent_up_to_phase: 5>#
name()#

__str__(*args, **kwargs) Overloaded function.

  1. __str__(self: mqt.qcec.pyqcec.EquivalenceCriterion) -> str

  2. __str__(self: handle) -> str

no_information = <EquivalenceCriterion.no_information: 2>#
not_equivalent = <EquivalenceCriterion.not_equivalent: 0>#
probably_equivalent = <EquivalenceCriterion.probably_equivalent: 3>#
probably_not_equivalent = <EquivalenceCriterion.probably_not_equivalent: 6>#
property value#