@article {3191, title = {Quantum Natural Proof: A New Perspective of Hybrid Quantum-Classical Program Verification}, year = {2022}, month = {11/11/2022}, abstract = {

Many quantum programs are assured by formal verification, but such verification is usually laborious and time-consuming. This paper proposes quantum natural proof (QNP), an automated proof system for verifying hybrid quantum-classical algorithms. Natural proofs are a subclass of proofs that are amenable to completely automated reasoning, provide sound but incomplete procedures, and capture common reasoning tactics in program verification. The core of QNP is a type-guided quantum proof system, named Qafny, which views quantum operations as some classical array operations that can be modeled as proof rules in a classical separation logic framework, suitable for automated reasoning. We proved the soundness and completeness of the Qafny proof system as well as the soundness of the proof system compilation from Qafny to Dafny. By using the QNP implementation in Dafny, automated verification can be efficiently perform for many hybrid quantum-classical algorithms, including GHZ, Shor\&$\#$39;s, Grover\&$\#$39;s, and quantum walk algorithms, which saves a great amount of human efforts. In addition, quantum programs written in Qafny can be compiled to quantum circuits so that every verified quantum program can be run on a quantum machine.

}, keywords = {FOS: Computer and information sciences, FOS: Physical sciences, Programming Languages (cs.PL), Quantum Physics (quant-ph)}, doi = {10.48550/ARXIV.2211.06411}, url = {https://arxiv.org/abs/2211.06411}, author = {Li, Liyi and Zhu, Mingwei and Lee, Yi and Chang, Le and Wu, Xiaodi} } @article {3186, title = {Qunity: A Unified Language for Quantum and Classical Computing (Extended Version)}, year = {2022}, month = {4/26/2022}, abstract = {

We introduce Qunity, a new quantum programming language designed to treat quantum computing as a natural generalization of classical computing. Qunity presents a unified syntax where familiar programming constructs can have both quantum and classical effects. For example, one can use sum types to implement the direct sum of linear operators, exception-handling syntax to implement projective measurements, and aliasing to induce entanglement. Further, Qunity takes advantage of the overlooked BQP subroutine theorem, allowing one to construct reversible subroutines from irreversible quantum algorithms through the uncomputation of \"garbage\" outputs. Unlike existing languages that enable quantum aspects with separate add-ons (like a classical language with quantum gates bolted on), Qunity provides a unified syntax and a novel denotational semantics that guarantees that programs are quantum mechanically valid. We present Qunity\&$\#$39;s syntax, type system, and denotational semantics, showing how it can cleanly express several quantum algorithms. We also detail how Qunity can be compiled into a low-level qubit circuit language like OpenQASM, proving the realizability of our design.

}, keywords = {FOS: Computer and information sciences, FOS: Physical sciences, Logic in Computer Science (cs.LO), Programming Languages (cs.PL), Quantum Physics (quant-ph)}, doi = {https://doi.org/10.48550/arXiv.2204.12384}, url = {https://arxiv.org/abs/2204.12384}, author = {Voichick, Finn and Li, Liyi and Rand, Robert and Hicks, Michael} } @article {2942, title = {Proving Quantum Programs Correct}, journal = {12th International Conference on Interactive Theorem Proving (ITP 2021)}, volume = {193}, year = {2021}, month = {06/2021}, pages = {21:1{\textendash}21:19}, abstract = {

As quantum computing progresses steadily from theory into practice, programmers will face
a common problem: How can they be sure that their code does what they intend it to do? This
paper presents encouraging results in the application of mechanized proof to the domain of quantum
programming in the context of the sqir development. It verifies the correctness of a range of a
quantum algorithms including Grover\’s algorithm and quantum phase estimation, a key component
of Shor\’s algorithm. In doing so, it aims to highlight both the successes and challenges of formal
verification in the quantum context and motivate the theorem proving community to target quantum
computing as an application domain.

}, isbn = {978-3-95977-188-7}, issn = {1868-8969}, doi = {10.4230/LIPIcs.ITP.2021.21}, url = {https://drops.dagstuhl.de/opus/volltexte/2021/13916}, author = {Hietala, Kesha and Rand, Robert and Hung, Shih-Han and Li, Liyi and Hicks, Michael}, editor = {Cohen, Liron and Kaliszyk, Cezary} }