def tket_run(file_name, device_name): connection_list = qcdevice(device_name).connection_list circ = circuit_from_qasm(file_name) circ.measure_all() arc = Architecture(connection_list) dev = Device(arc) routed_circ = route(circ, arc) # cu = CompilationUnit(routed_circ) Transform.DecomposeBRIDGE().apply(routed_circ) # pass1 = DecomposeSwapsToCXs(dev) # pass1.apply(cu) # circ2 = cu.circuit return routed_circ
from ast import literal_eval import math from info import qiskit_info_after, qiskit_info_original start_time = sys_time.time() set_param("parallel.enable", True) set_param("parallel.threads.max", 64) file_name = sys.argv[1] device_name = sys.argv[2] objective_name = sys.argv[3] # T = literal_eval(sys.argv[3]) device_test = qcdevice(device_name) N = device_test.count_physical_qubit e = device_test.connection_list S = 1 [M, g, gate_spec] = read_qasm(file_name) new_file_name = "result/paper/" + file_name.split('/')[-1].replace('.qasm', "_{}_tbolsq_{}".format(device_name, objective_name)) # pre-processing K = len(e) L = len(g) print("Input gate count = {}".format(L)) if objective_name == "fidelity": f_1qbg = [int(1000 * math.log(device_test.fidelity_single_qubit[n])) for n in range(N)] #print(f_1qbg)