TY - GEN
T1 - An Abstraction Hierarchy Toward Productive Quantum Programming
AU - Di Matteo, Olivia
AU - Nunez-Corrales, Santiago
AU - Stechly, Michal
AU - Reinhardt, Steven P.
AU - Mattson, Tim
N1 - The authors thank Tom Lubinski and Yuval Sanders for useful discussions. ODM acknowledges funding from Canada's NSERC (RGPIN-2022-04609), the Canada Research Chairs program, and UBC. SNC acknowledges support and partial funding by the National Center for Supercomputing Applications and the Illinois Quantum Information Science and Technology Center, University of Illinois Urbana-Champaign.
PY - 2024
Y1 - 2024
N2 - The computer industry, with over seven decades of experience to draw on, has shown that to thrive, there must be a community of software engineers that produce the applications users depend on. Supporting those software engineers so they can write code that performs well across multiple generations of hardware (since application software generally lasts longer than hardware) is fundamental to sustaining the computer industry. Today's quantum software developers must reason at a low level, close to the hardware, which is not sustainable. In this paper, we assert that quantum computing needs high-level abstractions that support a quantum computing applications ecosystem. A single abstraction that bridges from the mental models used by a programmer to the details of how qubits are realized in hardware is unlikely to work. We need a hierarchy of tightly coupled models that define a framework for reasoning about the software development process in quantum computing. We propose an abstraction hierarchy and then explore its utility with two approaches to the eigenvalue estimation problem: (1) a variational algorithm with error mitigation, and (2) phase estimation with error correction. We use our proposed abstraction hierarchy to pinpoint key differences between these approaches and demonstrate how an abstraction hierarchy helps us understand software development. This supports our central conclusion; that it is not enough to understand individual components of a software stack. To make progress, we need to think about an abstraction hierarchy holistically.
AB - The computer industry, with over seven decades of experience to draw on, has shown that to thrive, there must be a community of software engineers that produce the applications users depend on. Supporting those software engineers so they can write code that performs well across multiple generations of hardware (since application software generally lasts longer than hardware) is fundamental to sustaining the computer industry. Today's quantum software developers must reason at a low level, close to the hardware, which is not sustainable. In this paper, we assert that quantum computing needs high-level abstractions that support a quantum computing applications ecosystem. A single abstraction that bridges from the mental models used by a programmer to the details of how qubits are realized in hardware is unlikely to work. We need a hierarchy of tightly coupled models that define a framework for reasoning about the software development process in quantum computing. We propose an abstraction hierarchy and then explore its utility with two approaches to the eigenvalue estimation problem: (1) a variational algorithm with error mitigation, and (2) phase estimation with error correction. We use our proposed abstraction hierarchy to pinpoint key differences between these approaches and demonstrate how an abstraction hierarchy helps us understand software development. This supports our central conclusion; that it is not enough to understand individual components of a software stack. To make progress, we need to think about an abstraction hierarchy holistically.
KW - abstraction hierarchy
KW - productive quantum programming
KW - quantum computing
KW - quantum execution model
KW - quantum hardware model
KW - quantum programming model
UR - http://www.scopus.com/inward/record.url?scp=85217410459&partnerID=8YFLogxK
UR - http://www.scopus.com/inward/citedby.url?scp=85217410459&partnerID=8YFLogxK
U2 - 10.1109/QCE60285.2024.00117
DO - 10.1109/QCE60285.2024.00117
M3 - Conference contribution
AN - SCOPUS:85217410459
T3 - Proceedings - IEEE Quantum Week 2024, QCE 2024
SP - 979
EP - 989
BT - Technical Papers Program
A2 - Culhane, Candace
A2 - Byrd, Greg T.
A2 - Muller, Hausi
A2 - Alexeev, Yuri
A2 - Alexeev, Yuri
A2 - Sheldon, Sarah
PB - Institute of Electrical and Electronics Engineers Inc.
T2 - 5th IEEE International Conference on Quantum Computing and Engineering, QCE 2024
Y2 - 15 September 2024 through 20 September 2024
ER -