Challenges
Datasets
Workspaces
Papers
Discussions
Leaderboard
Log inSign up
Challenges
Datasets
Workspaces
Papers
Discussions
Leaderboard
Blog
Job Board
Q3AS

© 2026 Aqora Quantum S.A.S.

TermsPrivacyLegal Notice

Foundational Abstractions for Quantum Programming

Charles Yuan

Published Sep 1, 2025• 0 citations
OpenAlex

Abstract

Bringing the promise of quantum computation into reality requires not only building a quantum computer but also correctly programming it to run a quantum algorithm. To obtain asymptotic advantage over classical algorithms for applications including simulation, search, and optimization, quantum algorithms rely on the ability of data in quantum superposition to exhibit phenomena such as interference and entanglement. In turn, an implementation of the algorithm as a program must correctly orchestrate these phenomena in the states of qubits. Otherwise, it would yield incorrect outputs or lose quantum computational advantage. Given a quantum algorithm, what are the challenges and costs of realizing it as a program that can run on a physical quantum computer? In this thesis, I answer this question by showing how the basic abstractions of programming upon which many quantum algorithms rely – such as data structures and control flow – can fail to work correctly or efficiently on a quantum computer. I then demonstrate how we can leverage insights from research in programming languages to re-invent the software stack – including abstractions, libraries, and compilers – to meet the demands of quantum algorithms. This approach holds out a promise of expressive and efficient tools to program a quantum computer and thereby practically realize its computational advantage.

Related papers

Quantum Computing Architecture: Integration and Optimization Across the Stack

Kaiwen Gui

Quantum computing is a revolutionary approach to computation that leverages the principles of quantum mechanics, enabling computers to process information in fundamentally different ways than classical computers. Unlike traditional bits, which represent data as either 0s or 1s, quantum bits, or qubits, can exist in multiple states simultaneously due to superposition. Additionally, qubits can be entangled, allowing them to be interconnected in ways that enhance computational power and efficiency. This unique behavior has the potential to run certain types of computation tasks much faster than classical computers can, marking a significant leap forward in technology. When building actual quantum computers to run practical quantum algorithms, one needs efficient ways to map the algorithms to the hardware components, similar to compiling classical algorithms onto CPU/GPU hardware. This thesis aims to tackle some of the important problems in the mapping process. First, can we address hardware errors and algorithm errors at the same time? Second, can we build a better circuit complexity metric to inspire better quantum architecture design, and can we design better quantum algorithms and compilation techniques using this improved metric? Lastly, can we use physics-level simulation results to inspire better circuit-level optimization techniques? We hope to provide positive answers to all three questions above through three separate architectural innovations.

•Dec 1, 2024•0 citations

Exploring Quantum Computing's Potential Breakthroughs and Challenges

Et al. Mukesh Madanan

Recent years have seen the rise of quantum computing as a game-changing technology that might alter the face of many industries, from optimization to cryptography. From theory to practice, this article covers quantum computing's journey. We review the quantum computing foundational concepts of superposition and entanglement and examine their consequences for the paradigm of computation. We emphasize the concrete advances in quantum hardware, error correction methods, and quantum algorithm creation through a thorough survey of recent discoveries. Nevertheless, significant obstacles accompany these advancements. An ever-present problem, quantum de coherence endangers both the consistency of quantum states and the accuracy of calculations. The effectiveness of quantum error correcting approaches in reducing de coherence is examined in our paper. We highlight the need for programming languages, compilers, and simulators that are customized to quantum hardware, as well as the increasing demands for quantum software infrastructure. Questions of security and ethics arise in light of the many possible uses of quantum computing in fields as diverse as optimization, cryptography, and materials research. Error correction and the execution of algorithms containing both classical and quantum logic require the classical part. We provide a comprehensive system stack outlining the various components of a quantum computer. We wrap up by talking about design decisions on the quantum plane and show the control logic and data flow that must be applied when quantum instructions are executed.

International Journal on Recent and Innovation Trends in Computing and Communication•Dec 31, 2023•1 citation

A software methodology for compiling quantum programs

Thomas Häner, Damian S. Steiger, Krysta M. Svore +1 more

Abstract Quantum computers promise to transform our notions of computation by offering a completely new paradigm. To achieve scalable quantum computation, optimizing compilers and a corresponding software design flow will be essential. We present a software architecture for compiling quantum programs from a high-level language program to hardware-specific instructions. We describe the necessary layers of abstraction and their differences and similarities to classical layers of a computer-aided design flow. For each layer of the stack, we discuss the underlying methods for compilation and optimization. Our software methodology facilitates more rapid innovation among quantum algorithm designers, quantum hardware engineers, and experimentalists. It enables scalable compilation of complex quantum algorithms and can be targeted to any specific quantum hardware implementation.

arXiv:1604.01401•Quantum Science and Technology•Jan 8, 2018•172 citations

Quantum Control Machine: The Limits of Control Flow in Quantum Programming

Charles Yuan, Agnes Villanyi, Michael Carbin

Quantum algorithms for tasks such as factorization, search, and simulation rely on control flow such as branching and iteration that depends on the value of data in superposition. High-level programming abstractions for control flow, such as switches, loops, higher-order functions, and continuations, are ubiquitous in classical languages. By contrast, many quantum languages do not provide high-level abstractions for control flow in superposition, and instead require the use of hardware-level logic gates to implement such control flow. The reason for this gap is that whereas a classical computer supports control flow abstractions using a program counter that can depend on data, the typical architecture of a quantum computer does not analogously provide a program counter that can depend on data in superposition. As a result, the complete set of control flow abstractions that can be correctly realized on a quantum computer has not yet been established. In this work, we provide a complete characterization of the properties of control flow abstractions that are correctly realizable on a quantum computer. First, we prove that even on a quantum computer whose program counter exists in superposition, one cannot correctly realize control flow in quantum algorithms by lifting the classical conditional jump instruction to work in superposition. This theorem denies the ability to directly lift general abstractions for control flow such as the λ-calculus from classical to quantum programming. In response, we present the necessary and sufficient conditions for control flow to be correctly realizable on a quantum computer. We introduce the quantum control machine, an instruction set architecture featuring a conditional jump that is restricted to satisfy these conditions. We show how this design enables a developer to correctly express control flow in quantum algorithms using a program counter in place of logic gates.

Proceedings of the ACM on Programming Languages•Apr 29, 2024•9 citations

Quantum Control Machine: The Limits of Control Flow in Quantum Programming

Charles Yuan, Agnes Villanyi, Michael Carbin

Quantum algorithms for tasks such as factorization, search, and simulation rely on control flow such as branching and iteration that depends on the value of data in superposition. High-level programming abstractions for control flow, such as switches, loops, and higher-order functions, are ubiquitous in classical languages. By contrast, many quantum languages do not provide high-level abstractions for control flow in superposition, and instead require the use of hardware-level logic gates to implement such control flow. The reason for this gap is that whereas a classical computer supports control flow using a program counter that can depend on data, the typical architecture of a quantum computer does not provide a program counter that can depend on data in superposition. As a result, the complete set of control flow abstractions that can be correctly realized on a quantum computer has not yet been established. In this work, we provide a complete characterization of the properties of control flow abstractions that are correctly realizable on a quantum computer. First, we prove that even on a quantum computer whose program counter exists in superposition, one cannot correctly realize control flow in quantum algorithms by lifting the classical conditional jump instruction to work in superposition. This theorem denies the ability to directly lift general abstractions for control flow such as the $λ$-calculus from classical to quantum programming. In response, we present the necessary and sufficient conditions for control flow to be correctly realizable on a quantum computer. We introduce the quantum control machine, an instruction set architecture featuring a conditional jump that is restricted to satisfy these conditions. We show how this design enables a developer to correctly express control flow in quantum algorithms using a program counter in place of logic gates.

arXiv:2304.15000•Apr 28, 2023•2 citations

A Survey of Quantum Computing: Foundations, Challenges, and Emerging Directions

Marwa R. Hassan, Taha M. Mahmoud, Naima Kaabouch

Quantum computing represents a transformative shift in computational paradigms by leveraging quantum mechanical phenomena such as superposition, entanglement, and quantum interference. Unlike classical computers, which rely on binary logic, quantum systems exploit these principles to solve certain problems more efficiently. This survey presents a comprehensive overview of the field, drawing from extensive literature spanning foundational quantum principles through key quantum algorithms, hardware platforms, and programming tools. The analysis bridges theoretical foundations with practical engineering challenges, examining both current capabilities and fundamental limitations of quantum systems. The paper also explores applications in cryptography, optimization, and quantum simulation, while addressing the ethical implications and long-term prospects of quantum technologies. Distinct from prior surveys, this work provides a unified perspective that connects quantum theory to practical implementation, supporting researchers and students in navigating the evolving landscape of quantum computing.

•Feb 27, 2026•0 citations
Bringing the promise of quantum computation into reality requires not only building a quantum computer but also correctly programming it to run a quantum algorithm. To obtain asymptotic advantage over classical algorithms for applications including simulation, search, and optimization, quantum algorithms rely on the ability of data in quantum superposition to exhibit phenomena such as interference and entanglement. In turn, an implementation of the algorithm as a program must correctly orchestrate these phenomena in the states of qubits. Otherwise, it would yield incorrect outputs or lose quantum computational advantage. Given a quantum algorithm, what are the challenges and costs of realizing it as a program that can run on a physical quantum computer? In this thesis, I answer this question by showing how the basic abstractions of programming upon which many quantum algorithms rely – such as data structures and control flow – can fail to work correctly or efficiently on a quantum computer. I then demonstrate how we can leverage insights from research in programming languages to re-invent the software stack – including abstractions, libraries, and compilers – to meet the demands of quantum algorithms. This approach holds out a promise of expressive and efficient tools to program a quantum computer and thereby practically realize its computational advantage.
Quantum computing is a revolutionary approach to computation that leverages the principles of quantum mechanics, enabling computers to process information in fundamentally different ways than classical computers. Unlike traditional bits, which represent data as either 0s or 1s, quantum bits, or qubits, can exist in multiple states simultaneously due to superposition. Additionally, qubits can be entangled, allowing them to be interconnected in ways that enhance computational power and efficiency. This unique behavior has the potential to run certain types of computation tasks much faster than classical computers can, marking a significant leap forward in technology. When building actual quantum computers to run practical quantum algorithms, one needs efficient ways to map the algorithms to the hardware components, similar to compiling classical algorithms onto CPU/GPU hardware. This thesis aims to tackle some of the important problems in the mapping process. First, can we address hardware errors and algorithm errors at the same time? Second, can we build a better circuit complexity metric to inspire better quantum architecture design, and can we design better quantum algorithms and compilation techniques using this improved metric? Lastly, can we use physics-level simulation results to inspire better circuit-level optimization techniques? We hope to provide positive answers to all three questions above through three separate architectural innovations.
Recent years have seen the rise of quantum computing as a game-changing technology that might alter the face of many industries, from optimization to cryptography. From theory to practice, this article covers quantum computing's journey. We review the quantum computing foundational concepts of superposition and entanglement and examine their consequences for the paradigm of computation. We emphasize the concrete advances in quantum hardware, error correction methods, and quantum algorithm creation through a thorough survey of recent discoveries. Nevertheless, significant obstacles accompany these advancements. An ever-present problem, quantum de coherence endangers both the consistency of quantum states and the accuracy of calculations. The effectiveness of quantum error correcting approaches in reducing de coherence is examined in our paper. We highlight the need for programming languages, compilers, and simulators that are customized to quantum hardware, as well as the increasing demands for quantum software infrastructure. Questions of security and ethics arise in light of the many possible uses of quantum computing in fields as diverse as optimization, cryptography, and materials research. Error correction and the execution of algorithms containing both classical and quantum logic require the classical part. We provide a comprehensive system stack outlining the various components of a quantum computer. We wrap up by talking about design decisions on the quantum plane and show the control logic and data flow that must be applied when quantum instructions are executed.
Abstract Quantum computers promise to transform our notions of computation by offering a completely new paradigm. To achieve scalable quantum computation, optimizing compilers and a corresponding software design flow will be essential. We present a software architecture for compiling quantum programs from a high-level language program to hardware-specific instructions. We describe the necessary layers of abstraction and their differences and similarities to classical layers of a computer-aided design flow. For each layer of the stack, we discuss the underlying methods for compilation and optimization. Our software methodology facilitates more rapid innovation among quantum algorithm designers, quantum hardware engineers, and experimentalists. It enables scalable compilation of complex quantum algorithms and can be targeted to any specific quantum hardware implementation.
Quantum algorithms for tasks such as factorization, search, and simulation rely on control flow such as branching and iteration that depends on the value of data in superposition. High-level programming abstractions for control flow, such as switches, loops, higher-order functions, and continuations, are ubiquitous in classical languages. By contrast, many quantum languages do not provide high-level abstractions for control flow in superposition, and instead require the use of hardware-level logic gates to implement such control flow. The reason for this gap is that whereas a classical computer supports control flow abstractions using a program counter that can depend on data, the typical architecture of a quantum computer does not analogously provide a program counter that can depend on data in superposition. As a result, the complete set of control flow abstractions that can be correctly realized on a quantum computer has not yet been established. In this work, we provide a complete characterization of the properties of control flow abstractions that are correctly realizable on a quantum computer. First, we prove that even on a quantum computer whose program counter exists in superposition, one cannot correctly realize control flow in quantum algorithms by lifting the classical conditional jump instruction to work in superposition. This theorem denies the ability to directly lift general abstractions for control flow such as the λ-calculus from classical to quantum programming. In response, we present the necessary and sufficient conditions for control flow to be correctly realizable on a quantum computer. We introduce the quantum control machine, an instruction set architecture featuring a conditional jump that is restricted to satisfy these conditions. We show how this design enables a developer to correctly express control flow in quantum algorithms using a program counter in place of logic gates.
Quantum algorithms for tasks such as factorization, search, and simulation rely on control flow such as branching and iteration that depends on the value of data in superposition. High-level programming abstractions for control flow, such as switches, loops, and higher-order functions, are ubiquitous in classical languages. By contrast, many quantum languages do not provide high-level abstractions for control flow in superposition, and instead require the use of hardware-level logic gates to implement such control flow. The reason for this gap is that whereas a classical computer supports control flow using a program counter that can depend on data, the typical architecture of a quantum computer does not provide a program counter that can depend on data in superposition. As a result, the complete set of control flow abstractions that can be correctly realized on a quantum computer has not yet been established. In this work, we provide a complete characterization of the properties of control flow abstractions that are correctly realizable on a quantum computer. First, we prove that even on a quantum computer whose program counter exists in superposition, one cannot correctly realize control flow in quantum algorithms by lifting the classical conditional jump instruction to work in superposition. This theorem denies the ability to directly lift general abstractions for control flow such as the λλλ-calculus from classical to quantum programming. In response, we present the necessary and sufficient conditions for control flow to be correctly realizable on a quantum computer. We introduce the quantum control machine, an instruction set architecture featuring a conditional jump that is restricted to satisfy these conditions. We show how this design enables a developer to correctly express control flow in quantum algorithms using a program counter in place of logic gates.
Quantum computing represents a transformative shift in computational paradigms by leveraging quantum mechanical phenomena such as superposition, entanglement, and quantum interference. Unlike classical computers, which rely on binary logic, quantum systems exploit these principles to solve certain problems more efficiently. This survey presents a comprehensive overview of the field, drawing from extensive literature spanning foundational quantum principles through key quantum algorithms, hardware platforms, and programming tools. The analysis bridges theoretical foundations with practical engineering challenges, examining both current capabilities and fundamental limitations of quantum systems. The paper also explores applications in cryptography, optimization, and quantum simulation, while addressing the ethical implications and long-term prospects of quantum technologies. Distinct from prior surveys, this work provides a unified perspective that connects quantum theory to practical implementation, supporting researchers and students in navigating the evolving landscape of quantum computing.