Abstract
As implementations of quantum computers grow in size and maturity, the question of how to program this new class of machines is attracting increasing attention in the software engineering domain. Yet, many questions from how to design expressible quantum languages augmented with formal semantics via implementing appropriate optimizing compilers to abstracting details of machine properties in software systems remain challenging. Performing research at this intersection of quantum computing and software engineering requires sufficient knowledge of the physical processes underlying quantum computations, and how to model these. In this chapter, we review a superoperator-based approach to quantum dynamics, as it can provide means that are sufficiently abstract, yet concrete enough to be useful in quantum software and systems engineering, and outline how it is used in several important applications in the field.
Chapter PDF
Keywords
References
Auletta, G., Fortunato, M., Parisi, G.: Quantum Mechanics. Cambridge University Press, Cambridge (2009). https://doi.org/10.1017/CBO9780511813955
Bichsel, B., et al. (June 2020) Silq: A High-Level Quantum Language with Safe Uncomputation and Intuitive Semantics. In: Proc. 41st ACM SIGPLAN, pp. 286–300. ACM. ISBN: 978-1-4503-7613-6. https://doi.org/10.1145/3385412.3386007 (visited on 24/04/2023)
Cirac, J.I. et al.: Distributed quantum computation over noisy channels. Phys. Rev. A 59(6), 4249–4254 (1999). https://doi.org/10.1103/PhysRevA.59.4249https://link.aps.org/doi/10.1103/PhysRevA.59.4249
Ekert, A., Hosgold, T.: Introduction to Quantum Information Science (2022). https://qubit.guide/qubit_guide.pdf
Garhwal, S., Ghorani, M., Ahmad, A.: Quantum programming language: a systematic review of research topic and top cited languages. Arch. Comput. Methods Eng. 28(2), 289–310 (Mar. 2021). ISSN: 1134-3060, 1886-1784. https://doi.org/10.1007/s11831-019-09372-6
Georgopoulos, K., Emary, C., Zuliani, P.: Modeling and simulating the noisy behavior of near-term quantum computers. Phys. Rev. A 104(6), 062432 (Dec. 2021). https://doi.org/10.1103/PhysRevA.104.062432. https://link.aps.org/doi/10.1103/PhysRevA.104.062432
Green, A.S. et al.: Quipper: a scalable quantum programming language. SIGPLAN Not. 48(6), 333–342 (2013). ISSN: 0362-1340. https://doi.org/10.1145/2499370.2462177
Greiwe, F., Krüger, T., Mauerer, W.: Effects of Imperfections on Quantum Algorithms: A Software Engineering Perspective. In: 2023 IEEE International Conference on Quantum Software (QSW), pp. 31–42. https://doi.org/10.1109/QSW59989.2023.00014
Harper, R., Flammia, S.T., Wallman, J.J.: Efficient learning of quantum noise. Nature Phys. 16(12), 1184–1188 (2020). https://doi.org/10.1038/s41567-020-0992-8
Khatri, S., Wilde, M.M.: Principles of quantum communication theory: A modern approach. Preprint (2020). arXiv:2011.04672. https://doi.org/10.48550/arXiv.2011.04672
Kraus, K.: States, Effects, and Operations Fundamental Notions of Quantum Theory, vol. 190. In: Lecture Notes in Physics. Springer, Berlin, Heidelberg (1983). ISBN: 9783540127321. https://doi.org/10.1007/3-540-12732-1. http://springerlink.fh-diploma.de/10.1007/3-540-12732-1
Lewis, M., Soudjani, S., Zuliani, P.: Formal verification of quantum programs: theory, tools and challenges. ACM Trans. Quantum Comput. (2023). https://doi.org/10.1145/3624483
Leymann, F.: Towards a Pattern Language for Quantum Algorithms. Quantum Technology and Optimization Problems, vol. 11413. In: Lecture Notes in Computer Science (LNCS), pp. 218–230. Springer International Publishing, Cham (2019). https://doi.org/10.1007/978-3-030-14082-3_19
Marshall, J. et al.: Characterizing local noise in QAOA circuits. IOP SciNotes 1(2), 025208 (2020). https://doi.org/10.1088/2633-1357/abb0d7
Mauerer, W.: Semantics and Simulation of Communication in Quantum Programming (2005). https://doi.org/10.48550/ARXIV.QUANT-PH/0511145. https://arxiv.org/abs/quant-ph/0511145
Moggi, E.: Notions of computation and monads. Inf. Comput. 93(1), (1991). Selections from 1989 IEEE Symposium on Logic in Computer Science, pp. 55–92. ISSN: 0890-5401. https://doi.org/10.1016/0890-5401(91)90052-4. https://www.sciencedirect.com/science/article/pii/0890540191900524
Mu, S.-C., Bird, R.: Functional Quantum Programming. In: Asian Workshop on Programming Languages and Systems KAIST, Dajeaon, Korea (Dec. 2001). http://www.cs.ox.ac.uk/people/richard.bird/online/MuBird2001Functional.pdf
Nielsen, M.A., Chuang, I.L.: Quantum Computation and Quantum Information: 10th Anniversary Edition. Cambridge University Press, Cambridge (2010). https://doi.org/10.1017/CBO9780511976667
Ömer, B.: Procedural quantum programming. AIP Confer. Proc. 627(1), 276–285 (Sept. 2002). ISSN: 0094-243X. https://doi.org/10.1063/1.1503695. eprint: https://pubs.aip.org/aip/acp/article-pdf/627/1/276/11571870/276_1_online.pdf
Peduri, A., Schaefer, I., Walter, M.: QbC: Quantum Correctness by Construction (2023). arXiv: 2307.15641 [quant-ph]
Perdrix, S.: A hierarchy of quantum semantics. Electron. Notes Theor. Comput. Sci. 192(3), 71–83 (Nov. 2008). ISSN: 1571-0661. https://doi.org/10.1016/j.entcs.2008.10.028
Preskill, J.: Lecture Notes for Physics 229:Quantum Information and Computation. CreateSpace Independent Publishing Platform (2015). ISBN: 9781506189918. https://books.google.de/books?id=MIv8rQEACAAJ
Safi, H., Winterspergerm, K., Mauerer, W.: Influence of HW-SW-Co-Design on Quantum Computing Scalability. In: 2023 IEEE International Conference on Quantum Software (QSW), pp. 104–115 (2023). https://doi.org/10.1109/QSW59989.2023.00022
Schönberger, M., et al.: Peel — Pile? Cross-Framework Portability of Quantum Software. In: 2022 IEEE 19th International Conference on Software Architecture Companion (ICSA-C), pp. 164–169 (2022). https://doi.org/10.1109/ICSA-C54293.2022.00039
Scott, D., Strachey, C.: Toward a Mathematical Semantics for Computer Languages. Technical Monograph PRG-6. Programming Research Group. Oxford Univ. Computing Lab., Oxford (1971)
Selinger, P.: Towards a quantum programming language. Math. Struct. Comput. Sci. 14(4), 527–586 (Aug. 2004). ISSN: 0960-1295, 1469-8072. https://doi.org/10.1017/S0960129504004256
Svore, K., et al.: Q#: Enabling Scalable Quantum Computing and Development with a High-level DSL. In: Proceedings of the Real World Domain Specific Languages Workshop 2018, pp. 1–10. ACM, (Feb. 2018). ISBN: 978-1-4503-6355-6. https://doi.org/10.1145/3183895.3183901 (visited on 24/08/2023)
Vedral, V.: Introduction to Quantum Information Science (Oxford Graduate Texts). Oxford University Press, USA (2006). ISBN: 0199215707
Vizotto, J., Altenkirch, T., Sabry, A.: Structuring quantum effects: superoperators as arrows. Math. Struct. Comput. Sci. 16(3), 453–468 (2006). https://doi.org/10.1017/S0960129506005287
Voichick, F., et al.: Qunity: a unified language for quantum and classical computing. Proc. ACM Program. Lang. 7(POPL), (2023). https://doi.org/10.1145/357122510.1145/3571225
Wecker, D., Svore, K.M.: LIQUi\(\mid >\): A Software Design Architecture and Domain-Specific Language for Quantum Computing (Feb. 2014). CoRR abs/1402.4467. https://doi.org/10.48550/arXiv.1402.4467
Wintersperger, K., Safi, H., Mauerer, W.: QPU-System Co-Design for Quantum HPC Accelerators. In: Schulz, M., et al. (eds.) Proceedings of the 35th GI/ITG International Conference on the Architecture of Computing Systems. Gesellschaft für Informatik, pp. 100–114 (Aug. 2022). ISBN: 978-3-031-21867-5. https://doi.org/10.1007/978-3-031-21867-5_7
Xue, C., et al.: Effects of quantum noise on quantum approximate optimization algorithm. Chin. Phys. Lett. 38(3), 030302 (2021). https://dx.doi.org/10.1088/0256-307X/38/3/030302
Ying, M., Zhou, L., Li, Y.: Reasoning about Parallel Quantum Programs (Aug. 2019). https://doi.org/10.48550/arXiv.1810.11334. http://arxiv.org/abs/1810.11334
Zhou, L., et al.: CoqQ: Foundational verification of quantum programs. Proc. ACM Program. Lang. 7(POPL), (Jan. 2023). https://doi.org/10.1145/3571222
Author information
Authors and Affiliations
Corresponding author
Editor information
Editors and Affiliations
Rights and permissions
Open Access This chapter is licensed under the terms of the Creative Commons Attribution 4.0 International License (http://creativecommons.org/licenses/by/4.0/), which permits use, sharing, adaptation, distribution and reproduction in any medium or format, as long as you give appropriate credit to the original author(s) and the source, provide a link to the Creative Commons license and indicate if changes were made.
The images or other third party material in this chapter are included in the chapter's Creative Commons license, unless indicated otherwise in a credit line to the material. If material is not included in the chapter's Creative Commons license and your intended use is not permitted by statutory regulation or exceeds the permitted use, you will need to obtain permission directly from the copyright holder.
Copyright information
© 2024 The Author(s)
About this chapter
Cite this chapter
Mauerer, W. (2024). Superoperators for Quantum Software Engineering. In: Exman, I., Pérez-Castillo, R., Piattini, M., Felderer, M. (eds) Quantum Software. Springer, Cham. https://doi.org/10.1007/978-3-031-64136-7_3
Download citation
DOI: https://doi.org/10.1007/978-3-031-64136-7_3
Published:
Publisher Name: Springer, Cham
Print ISBN: 978-3-031-64135-0
Online ISBN: 978-3-031-64136-7
eBook Packages: Computer ScienceComputer Science (R0)