コード例 #1
0
    def test_1(self, vector):
        q = QuantumRegister(4)
        c = ClassicalRegister(4)
        qc = QuantumCircuit(q, c)

        qc.x(q[1])
        qc.x(q[2])
        qc.x(q[3])
        qc.ccx_uni_rot(7, [q[1], q[2], q[3]], q[0])
        qc.measure(q, c)

        backend = qiskit.BasicAer.get_backend('qasm_simulator')
        job_sim = execute(qc, backend, shots=10000)
        sim_result = job_sim.result()  # type: Result

        counts = sim_result.get_counts(qc)  # type: dict
        log.info(counts)
        self.assertIsNotNone(counts.keys())
        self.assertListEqual(list(counts.keys()), ['1111'])
コード例 #2
0
    def test_2(self):
        q = QuantumRegister(4)
        c = ClassicalRegister(4)
        qc = QuantumCircuit(q, c)

        qc.h(q[0])
        qc.h(q[2])
        # State now ['0000', '0001', '0100', '0101']
        qc.ccx_uni_rot(5, [q[0], q[1], q[2]], q[3])
        # State now ['0000', '0001', '0100', '1101']
        qc.measure(q, c)

        backend = qiskit.BasicAer.get_backend('qasm_simulator')
        job_sim = execute(qc, backend, shots=10000)
        sim_result = job_sim.result()  # type: Result

        counts = sim_result.get_counts(qc)  # type: dict
        log.info(counts)
        self.assertIsNotNone(counts.keys())
        self.assertListEqual(list(sorted(counts.keys())),
                             ['0000', '0001', '0100', '1101'])