コード例 #1
0
    def test_empty_dag_true(self):
        """Test the dag fixed point of an empty dag."""
        circuit = QuantumCircuit()
        dag = circuit_to_dag(circuit)

        pass_ = DAGFixedPoint()
        pass_.run(dag)
        self.assertFalse(pass_.property_set["dag_fixed_point"])
        pass_.run(dag)
        self.assertTrue(pass_.property_set["dag_fixed_point"])
コード例 #2
0
    def test_nonempty_dag_false(self):
        """Test the dag false fixed point of a non-empty dag."""
        qr = QuantumRegister(2)
        circuit = QuantumCircuit(qr)
        circuit.h(qr[0])
        circuit.cx(qr[0], qr[1])
        dag = circuit_to_dag(circuit)

        pass_ = DAGFixedPoint()
        pass_.run(dag)
        self.assertFalse(pass_.property_set["dag_fixed_point"])
        dag.remove_all_ops_named("h")
        pass_.run(dag)
        self.assertFalse(pass_.property_set["dag_fixed_point"])