With recent advances in the development of more powerful quantum computers, the research area of quantum software engineering is emerging, having the goal to provide concepts, principles, and guidelines to develop high-quality quantum applications. In classical software engineering, lifecycles are used to document the process of designing, implementing, maintaining, analyzing, and adapting software. Such lifecycles provide a common understanding of how to develop and operate an application, which is especially important due to the interdisciplinary nature of quantum computing. Since today's quantum applications are, in most cases, hybrid, consisting of quantum and classical programs, the lifecycle for quantum applications must involve the development of both kinds of programs. However, the existing lifecycles only target the development of quantum or classical programs in isolation. Additionally, the various programs must be orchestrated, e.g., using workflows. Thus, the development of quantum applications also incorporates the workflow lifecycle. In this chapter, we analyze the software artifacts usually comprising a quantum application and present their corresponding lifecycles. Furthermore, we identify the points of connection between the various lifecycles and integrate them into the overall quantum software development lifecycle. Therefore, the integrated lifecycle serves as a basis for the development and execution of hybrid quantum applications.
Quantum computing can enable a variety of breakthroughs in research and industry in the future. Although some quantum algorithms already exist that show a theoretical speedup compared to the best known classical algorithms, the implementation and execution of these algorithms come with several challenges. The input data determines, e.g., the required number of qubits and gates of a quantum algorithm. An algorithm implementation also depends on the used Software Development Kit which restricts the set of usable quantum computers. Because of the limited capabilities of current quantum computers, choosing an appropriate one to execute a certain implementation for a given input is a difficult challenge that requires immense mathematical knowledge about the implemented quantum algorithm as well as technical knowledge about the used Software Development Kits. Thus, we present a roadmap for the automated analysis and selection of implementations of a certain quantum algorithm and appropriate quantum computers that can execute the selected implementation with the given input data.
As quantum computers are based on the laws of quantum mechanics, they are capable of solving certain problems faster than their classical counterparts. However, quantum algorithms with a theoretical speed-up often assume that data can be loaded efficiently. In general, the runtime complexity of the loading routine depends on (i) the data encoding that defines how the data is represented by the state of the quantum computer and (ii) the data itself. In some cases, loading the data requires at least exponential time that destroys a potential speed-up. And especially for the first generation of devices that are currently available, the resources (qubits and operations) needed to encode the data are limited. In this work, we, therefore, present six patterns that describe how data is handled by quantum computers. K E Y W O R D S computational complexity, quantum computing techniques, quantum computing 1 | INTRODUCTION Recent advantages in quantum technology have led to the first generation of commercial quantum computers [1, 2]. Compared to their classical counterparts, quantum computers have the potential to solve certain problems faster [3]. For example, factoring large prime numbers [4] or unstructured search [5] can, in principle, be done faster by a quantum computer. These speed-ups are possible because quantum computers are based on quantum bits (qubits) and, therefore, can exploit superposition or entanglement, which are unique characteristics of quantum mechanics. The quantum computers of this first generation have been coined Noisy Intermediate Scale Quantum (NISQ) devices [2] as they stillhave severe limitations: Their qubits are noisy and only stable for a limited amount of time until they decay. Measured by their number of qubits, the computers are of intermediate size; ranging from a few dozens to a few hundred qubits. Nevertheless, it is expected that hardware will further improve [1,6,7] and enable novel applications for quantum computers.However, programming these quantum devices is challenging as their quantum nature as well as their hardware limitations must be taken into account. One key difference toThis is an open access article under the terms of the Creative Commons Attribution License, which permits use, distribution and reproduction in any medium, provided the original work is properly cited.
Quantum computing promises breakthroughs in various application areas, such as machine learning, chemistry, or simulations. However, today's quantum computers are errorprone and have limited capabilities. This leads to various challenges when developing and executing quantum algorithms, for example, the mitigation of occurring errors or the selection of a suitable quantum computer to execute a certain quantum circuit. To address these challenges, detailed information about the quantum circuit to be executed as well as past executions, and the up-to-date information about the available quantum computers are required. Thus, this data must be continuously collected and stored in the long-term, which is currently not supported. To overcome this problem, a provenance approach is introduced for quantum computing. Therefore, relevant provenance attributes that should be gathered in the area of quantum computing are identified. Furthermore, QProv, a provenance system that automatically collects the identified provenance attributes and provides them in a uniform manner to the user is introduced. Finally, a case study with the collected provenance data and corresponding use cases that can benefit from this provenance data are presented here.This is an open access article under the terms of the Creative Commons Attribution License, which permits use, distribution and reproduction in any medium, provided the original work is properly cited.
The execution of a quantum algorithm typically requires various classical pre- and post-processing tasks. Hence, workflows are a promising means to orchestrate these tasks, benefiting from their reliability, robustness, and features, such as transactional processing. However, the implementations of the tasks may be very heterogeneous and they depend on the quantum hardware used to execute the quantum circuits of the algorithm. Additionally, today’s quantum computers are still restricted, which limits the size of the quantum circuits that can be executed. As the circuit size often depends on the input data of the algorithm, the selection of quantum hardware to execute a quantum circuit must be done at workflow runtime. However, modeling all possible alternative tasks would clutter the workflow model and require its adaptation whenever a new quantum computer or software tool is released. To overcome this problem, we introduce an approach to automatically select suitable quantum hardware for the execution of quantum circuits in workflows. Furthermore, it enables the dynamic adaptation of the workflows, depending on the selection at runtime based on reusable workflow fragments. We validate our approach with a prototypical implementation and a case study demonstrating the hardware selection for Simon’s algorithm.
scite is a Brooklyn-based organization that helps researchers better discover and understand research articles through Smart Citations–citations that display the context of the citation and describe whether the article provides supporting or contrasting evidence. scite is used by students and researchers from around the world and is funded in part by the National Science Foundation and the National Institute on Drug Abuse of the National Institutes of Health.
hi@scite.ai
10624 S. Eastern Ave., Ste. A-614
Henderson, NV 89052, USA
Copyright © 2024 scite LLC. All rights reserved.
Made with 💙 for researchers
Part of the Research Solutions Family.