Saya bertanya-tanya apakah ada cara untuk menyusun program dengan beberapa sirkuit kuantum tanpa register diinisialisasi ulang pada untuk setiap sirkuit.
Secara khusus, saya ingin menjalankan sirkuit kuantum kedua setelah menjalankan yang pertama, seperti dalam contoh ini:
qp = QuantumProgram()
qr = qp.create_quantum_register('qr',2)
cr = qp.create_classical_register('cr',2)
qc1 = qp.create_circuit('B1',[qr],[cr])
qc1.x(qr)
qc1.measure(qr[0], cr[0])
qc1.measure(qr[1], cr[1])
qc2 = qp.create_circuit('B2', [qr], [cr])
qc2.x(qr)
qc2.measure(qr[0], cr[0])
qc2.measure(qr[1], cr[1])
#qp.add_circuit('B1', qc1)
#qp.add_circuit('B2', qc2)
pprint(qp.get_qasms())
result = qp.execute()
print(result.get_counts('B1'))
print(result.get_counts('B2'))
Sayangnya, apa yang saya dapatkan adalah hasil yang sama untuk dua kali berjalan (yaitu hitungan 11untuk B1dan B2bukannya 11dan 00untuk yang kedua, seolah-olah B2dijalankan pada keadaan yang sama sekali baru diinisialisasi 00setelah B1.