QGAT: A Generate-and-Test Paradigm for Quantum Circuits
summary
A DSL called QGAT implements a generate-and-test paradigm and compiles to Quipper, adding a param monad and a buildOracle annotation that lifts classical Haskell code into circuits. It encodes Bernstein–Vazirani, Deutsch–Jozsa, Simon and Shor style period-finding queries, simulates them, and reports resource counts (Bernstein–Vazirani example uses ~18 qubits/34 gates; factoring 15 case shows ~400 qubits/60,000 gates). Generated circuits work but are naive: many constant ancillas and a nonoptimized modular multiplication remain; source code is available.
AI-written summary · about
chapters (12)
- 0:00QGAT introduction
- 1:50DSL design and oracles
- 3:22Quantum algorithms structure
- 5:10Quipper integration
- 7:19Param monad handling
- 8:47Shaw's algorithm in QGAT
- 10:14Circuit efficiency
- 12:42Summary and future work
- 13:23Acknowledgments
- 13:45Q&A: Beyond oracles
- 14:51Q&A: Tool-based optimization
- 16:01Closing remarks
related talks
19mExtracting maximum value from today's quantum computers while prep
18mVerifying Quantum Circuits in GAP
17mQuantum Applications with Classiq
26mGenerating Compilers for Qubit Mapping and Routing
33mVerified Compilation of Quantum Oracles
29mEfficiently Verifying Quantum Programs with Few T Gates
18mAn Automata-Based Framework for Verification and Bug Hunting in Quantum Circuits
26mQrisp: A Framework for Compilable High-Level Programming of Gate-Based Quantu...
