dakk / qlasskit

A python-to-quantum compiler
https://dakk.github.io/qlasskit/
Apache License 2.0
56 stars 11 forks source link

Fix decopt random test #61

Closed dakk closed 2 months ago

dakk commented 3 months ago

TestCircuitBooleanOptimizer.test_circuit_boolean_optimizer_random_x_cx randomly fails. Remove the "randomness" and use fixed test cases.

____ TestCircuitBooleanOptimizer.test_circuit_boolean_optimizer_random_x_cx ____

self = <test.test_decopt.TestCircuitBooleanOptimizer testMethod=test_circuit_boolean_optimizer_random_x_cx>

    def test_circuit_boolean_optimizer_random_x_cx(self):
        g_total = 0
        g_simp = 0

        for i in range(12):
            qc = QCircuit.random(3, 8, [gates.X, gates.CX])
            g_total += 8

            qc_n = circuit_boolean_optimizer(qc)
            g_simp += qc_n.num_gates

            qc_un = qiskit_unitary(qc.export())

            qc_n_un = qiskit_unitary(qc_n.export())
>           self.assertEqual(qc_un, qc_n_un)
E           AssertionError: Opera[85 chars]0.j, 0.+0.j, 0.+0.j, 0.+0.j, 1.+0.j, 0.+0.j, 0[521 chars], 2)) != Opera[85 chars]0.j, 1.+0.j, 0.+0.j, 0.+0.j, 0.+0.j, 0.+0.j, 0[521 chars], 2))
dakk commented 2 months ago

I think it is solved with commit e0a10ef