Quantum Software Ecosystem Design
Abstract
The rapid advancements in quantum computing necessitate a scientific and rigorous approach to the construction of a corresponding software ecosystem, a topic underexplored and primed for systematic investigation. This chapter takes an important step in this direction: It presents scientific considerations essential for building a quantum software ecosystem that makes quantum computing available for scientific and industrial problem solving. Central to this discourse is the concept of hardware-software co-design, which fosters a bidirectional feedback loop from the application layer at the top of the software stack down to the hardware. This approach begins with compilers and low-level software that are specifically designed to align with the unique specifications and constraints of the quantum processor, proceeds with algorithms developed with a clear understanding of underlying hardware and computational model features, and extends to applications that effectively leverage the capabilities to achieve a quantum advantage. We analyze the ecosystem from two critical perspectives: the conceptual view, focusing on theoretical foundations, and the technical infrastructure, addressing practical implementations around real quantum devices necessary for a functional ecosystem. This approach ensures that the focus is towards promising applications with optimized algorithm-circuit synergy, while ensuring a user-friendly design, an effective data management and an overall orchestration. Our chapter thus offers a guide to the essential concepts and practical strategies necessary for developing a scientifically grounded quantum software ecosystem.
Cite
@article{arxiv.2405.13244,
title = {Quantum Software Ecosystem Design},
author = {Achim Basermann and Michael Epping and Benedikt Fauseweh and Michael Felderer and Elisabeth Lobe and Melven Röhrig-Zöllner and Gary Schmiedinghoff and Peter K. Schuhmacher and Yoshinta Setyawati and Alexander Weinert},
journal= {arXiv preprint arXiv:2405.13244},
year = {2025}
}