@@ -17,7 +17,7 @@ This documentation is still under development, we welcome contributions! © Open
17
17
///
18
18
19
19
### What's here:
20
- This repository contains the supporting infrastructure, base classes, and abstractions
20
+ This repository contains the supporting infrastructure, base classes, and abstractions
21
21
for creating custom compiler analysis, verification, and transformation passes.
22
22
The modules in the repository are utilized for, e.g., lowering from the analog to atomic
23
23
intermediate representations, and the atomic representation to base metal descriptions of
@@ -26,47 +26,47 @@ quantum programs.
26
26
``` mermaid
27
27
block-beta
28
28
columns 3
29
-
29
+
30
30
block:Interface
31
31
columns 1
32
32
InterfaceTitle("<i><b>Interfaces</b><i/>")
33
- InterfaceDigital["<b>Digital Interface</b>\nQuantum circuits with discrete gates"]
33
+ InterfaceDigital["<b>Digital Interface</b>\nQuantum circuits with discrete gates"]
34
34
space
35
- InterfaceAnalog["<b>Analog Interface</b>\n Continuous-time evolution with Hamiltonians"]
35
+ InterfaceAnalog["<b>Analog Interface</b>\n Continuous-time evolution with Hamiltonians"]
36
36
space
37
37
InterfaceAtomic["<b>Atomic Interface</b>\nLight-matter interactions between lasers and ions"]
38
38
space
39
39
end
40
-
40
+
41
41
block:IR
42
42
columns 1
43
43
IRTitle("<i><b>IRs</b><i/>")
44
- IRDigital["Quantum circuit IR\nopenQASM, LLVM+QIR"]
44
+ IRDigital["Quantum circuit IR\nopenQASM, LLVM+QIR"]
45
45
space
46
46
IRAnalog["openQSIM"]
47
47
space
48
48
IRAtomic["openAPL"]
49
49
space
50
50
end
51
-
51
+
52
52
block:Emulator
53
53
columns 1
54
54
EmulatorsTitle("<i><b>Classical Emulators</b><i/>")
55
-
56
- EmulatorDigital["Pennylane, Qiskit"]
55
+
56
+ EmulatorDigital["Pennylane, Qiskit"]
57
57
space
58
58
EmulatorAnalog["QuTiP, QuantumOptics.jl"]
59
59
space
60
60
EmulatorAtomic["TrICal, QuantumIon.jl"]
61
61
space
62
62
end
63
-
63
+
64
64
space
65
65
block:RealTime
66
66
columns 1
67
67
RealTimeTitle("<i><b>Real-Time</b><i/>")
68
68
space
69
- RTSoftware["ARTIQ, DAX, OQDAX"]
69
+ RTSoftware["ARTIQ, DAX, OQDAX"]
70
70
space
71
71
RTGateware["Sinara Real-Time Control"]
72
72
space
@@ -76,39 +76,39 @@ block-beta
76
76
space
77
77
end
78
78
space
79
-
79
+
80
80
InterfaceDigital --> IRDigital
81
81
InterfaceAnalog --> IRAnalog
82
82
InterfaceAtomic --> IRAtomic
83
-
83
+
84
84
IRDigital --> IRAnalog
85
85
IRAnalog --> IRAtomic
86
-
86
+
87
87
IRDigital --> EmulatorDigital
88
88
IRAnalog --> EmulatorAnalog
89
89
IRAtomic --> EmulatorAtomic
90
-
90
+
91
91
IRAtomic --> RealTimeTitle
92
-
92
+
93
93
RTSoftware --> RTGateware
94
94
RTGateware --> RTHardware
95
95
RTHardware --> RTApparatus
96
-
96
+
97
97
classDef title fill:#d6d4d4,stroke:#333,color:#333;
98
98
classDef digital fill:#E7E08B,stroke:#333,color:#333;
99
99
classDef analog fill:#E4E9B2,stroke:#333,color:#333;
100
100
classDef atomic fill:#D2E4C4,stroke:#333,color:#333;
101
101
classDef realtime fill:#B5CBB7,stroke:#333,color:#333;
102
102
103
103
classDef highlight fill:#f2bbbb,stroke:#333,color:#333,stroke-dasharray: 5 5;
104
-
104
+
105
105
class InterfaceTitle,IRTitle,EmulatorsTitle,RealTimeTitle title
106
106
class InterfaceDigital,IRDigital,EmulatorDigital digital
107
107
class InterfaceAnalog,IRAnalog,EmulatorAnalog analog
108
108
class InterfaceAtomic,IRAtomic,EmulatorAtomic atomic
109
109
class RTSoftware,RTGateware,RTHardware,RTApparatus realtime
110
-
110
+
111
111
```
112
112
The lowering and compilation passes, used in the vertical lines connecting
113
- abstraction layers, are based on the compiler infrastructure components contained
114
- in this repository.
113
+ abstraction layers, are based on the compiler infrastructure components contained
114
+ in this repository.
0 commit comments