-
Notifications
You must be signed in to change notification settings - Fork 0
/
Copy pathtimes.py
32 lines (27 loc) · 849 Bytes
/
times.py
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
from final2 import phase_helper
from IPython import embed
import pickle
#import matplotlib
#import matplotlib.pyplot as plt
def main():
primes = [5,7,11,13,17,19]
muls = [x*y for x in primes for y in primes]
muls = list(set(muls))
muls.sort()
bits = [x.bit_length() for x in muls]
gates = []
qubits = []
f = open("jar/gates.pickle", "bw")
for i, x in enumerate(muls):
print("{} : {} bits".format(x, bits[i]))
p = phase_helper(3, x, bits[i])
num_gates = len(p.instructions)
num_qubits = len(p.get_qubits())
gates.append(num_gates)
qubits.append(num_qubits)
print("{} gates".format(num_gates))
print("{} qubits".format(num_qubits))
pickle.dump((muls, bits, gates, qubits), f)
embed(colors="Neutral")
if __name__ == "__main__":
main()