-
Notifications
You must be signed in to change notification settings - Fork 1
/
Copy pathindexed_bell.txt
71 lines (68 loc) · 3.09 KB
/
indexed_bell.txt
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
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
Do Gate Operations Normalization
Reducde to 22->22
MAX MODULE NUM is : 5
bool [cirq.CNOT]
phasing [cirq.CZ]
sp [cirq.H]
entangle []
[cirq.CNOT, cirq.CZ, cirq.H]
{}
dict_keys([])
{}
Rule Selection Rotuine
C_RULE_ID ['triple_span', 'span', 'open_and_close_B', 'open_and_close_P', 'open_and_close_NC']
P_RULE_ID ['span', 'open_and_close_B']
NC_RULE_ID ['add']
prior module generating
module_gate_num is 4
prior module gen at level 1 done
prior module gen at level 2 done
prior module gen at level 3 done
prior module gen done
Modular Search state search!
concrete_criterion : False
naive_module_gen : True
**Initial State is**
EMPTY STATE
********************
Initdiffers
[('Entangle', ({frozenset({3}), frozenset({2}), frozenset({1}), frozenset({0})}, {frozenset({1}), frozenset({2, 3}), frozenset({0})}))]
===================
curr state
EMPTY STATE
curr_targ_differ ('Entangle', ({frozenset({3}), frozenset({2}), frozenset({1}), frozenset({0})}, {frozenset({1}), frozenset({2, 3}), frozenset({0})}))
check_order : stacked, targ_diff [] ('Entangle', ({frozenset({3}), frozenset({2}), frozenset({1}), frozenset({0})}, {frozenset({1}), frozenset({2, 3}), frozenset({0})}))
cost (0, 0, 0, 2)
{'|0000⟩': ('Entangle', ({frozenset({3}), frozenset({2}), frozenset({1}), frozenset({0})}, {frozenset({1}), frozenset({2, 3}), frozenset({0})})), '|0100⟩': ('Entangle', ({frozenset({3}), frozenset({2}), frozenset({1}), frozenset({0})}, {frozenset({1}), frozenset({2, 3}), frozenset({0})})), '|1000⟩': ('Entangle', ({frozenset({3}), frozenset({2}), frozenset({1}), frozenset({0})}, {frozenset({1}), frozenset({2, 3}), frozenset({0})})), '|1100⟩': ('Entangle', ({frozenset({3}), frozenset({2}), frozenset({1}), frozenset({0})}, {frozenset({1}), frozenset({2, 3}), frozenset({0})}))}
** cnt_num_of_passed_module after seeing all modules in pool ** 3
===================
curr state
Moment #0
-[ H(2)]
Moment #1
-[ CNOT(2, 3)]
curr_targ_differ ('PHASING', None)
check_order : stacked, targ_diff [('Entangle', ({frozenset({3}), frozenset({2}), frozenset({1}), frozenset({0})}, {frozenset({1}), frozenset({2, 3}), frozenset({0})}))] ('PHASING', None)
cost (1, 2, -1, 0)
Choose Best Count Attribute!
{'|0000⟩': 'IDENTICAL', '|0100⟩': ('PHASING', None), '|1000⟩': ('Bool', None), '|1100⟩': ('PHASING', None)}
['PHASING']
GEN for ('PHASING', None)
GEN DONE 3876
MODULES were [('Entangle', ({frozenset({3}), frozenset({2}), frozenset({1}), frozenset({0})}, {frozenset({1}), frozenset({2, 3}), frozenset({0})})), ('PHASING', None)]
================================
Synthesis Result
Benchmark : indexed_bell
Mode : Ours
================================
Synthesized QC
0: ───────────────@───
│
1: ───────────@───┼───
│ │
2: ───H───@───┼───┼───
│ │ │
3: ───────X───@───X───
Stacked Moduels
[('Entangle', ({frozenset({3}), frozenset({2}), frozenset({1}), frozenset({0})}, {frozenset({1}), frozenset({2, 3}), frozenset({0})})), ('PHASING', None)]
Elapsed Time : 2.63