Quantum computing has recently transitioned from a theoretical prediction to a nascent technology. Nevertheless, there is still a gap between the computational ability and reliability of current QIP technologies and the requirements of the first useful quantum computing applications. It will require tremendous efforts and investment to solve the engineering and research challenges to close the gap. Because of the uncertainties and difficulties in relying on hardware breakthroughs, it will also be crucial to close the gap using higher-level quantum optimizations and software-hardware co-design, which could maximally utilize noisy devices and potentially provide an accelerated pathway to real-world quantum computing applications. This thesis develops methods to explore the vast design space for highly optimized and reliable quantum computing architectures and software and focuses on the compilation, verification, and error correction aspects of the quantum computing stack. Specifically, the three main chapters in this thesis discuss, respectively, a direct-to-pulse compiler, a protocol to fault-tolerantly prepare approximate GKP (Gottesman-Kitave-Preskill) qubit states, and a verification framework that helps quantum programmers write provably correct compiler components through formal verification. Though touching many aspects of the stack and based on different technologies in physics and computer science, the majority of this thesis can be connected by a main theme --- improving the efficiency of existing quantum computing stacks by breaking the abstraction between layers in the quantum computing stack.
Quantum computing has recently transitioned from a theoretical prediction to a nascent technology. Nevertheless, there is still a gap between the computational ability and reliability of current QIP technologies and the requirements of the first useful quantum computing applications. It will require tremendous efforts and investment to solve the engineering and research challenges to close the gap. Because of the uncertainties and difficulties in relying on hardware breakthroughs, it will also be crucial to close the gap using higher-level quantum optimizations and software-hardware co-design, which could maximally utilize noisy devices and potentially provide an accelerated pathway to real-world quantum computing applications. This thesis develops methods to explore the vast design space for highly optimized and reliable quantum computing architectures and software and focuses on the compilation, verification, and error correction aspects of the quantum computing stack. Specifically, the three main chapters in this thesis discuss, respectively, a direct-to-pulse compiler, a protocol to fault-tolerantly prepare approximate GKP (Gottesman-Kitave-Preskill) qubit states, and a verification framework that helps quantum programmers write provably correct compiler components through formal verification. Though touching many aspects of the stack and based on different technologies in physics and computer science, the majority of this thesis can be connected by a main theme --- improving the efficiency of existing quantum computing stacks by breaking the abstraction between layers in the quantum computing stack.
Quantumtechnologies, especially quantum computers, show great promise for revolutionizing high-performance computing and simulation.As prototype quantum computers come online, it is becoming clear that obtaining useful output from such devices will require layers of sophisticated classical software that provide interpretation and analysis of the quantum computer's state and output.We will develop critical components in this "software stack" with a particular focus on enabling near-term Noisy Intermediate-Scale Quantum (NISQ) technologies.We have identified three critical needs for near-term quantum computing platforms, and the project is structured around three thrusts that address these needs.Application layer e.g., Abstract algorithms and interfaces with classical software.Thrust 3 Logical layer e.g., Compilation software that translates algorithms to quantum circuits.Thrust 1 Hardware layer e.g., Quantum circuit programs and hardware-level error mitigation.Thrust 2 Verification of correctness of circuit compilations New robust circuit compilations Verification of' correctness of new VHP heuristics Symmetries, influential circuit parameters New VHP heuristicsHow the project thrusts fit into the conventional picture of a quantum computing software stack, and how the outcomes of each thrust inform the other ones. Research HighlightsProveIt theorem proving assistant pv
The advances in quantum hardware with functional quantum processors integrating tens of noisy qubits, together with the availability of near-term quantum algorithms have allowed the development of the so-called full-stacks that bridge quantum applications with quantum devices. In this talk, we will provide an overview of the different layers of the quantum computing full-stack, with emphasis on the software ones that include the compilation of quantum algorithms. We will then discuss the need for optimal physical-aware and algorithm-driven compilation techniques in the midst of the NISQ (Noisy Intermediate-scale quantum) era. We will also focus on key principles for architecting quantum computers such as codesign, optimization and benchmarking and illustrate how the use of structured design space exploration methodologies could help towards the development of a cross-layer codesign framework for full-stack quantum computing systems. Finally, we will talk about the scalability of quantum computing systems, which is one of the main challenges the quantum computing community is currently facing.
Scalable quantum computation is expected to rely on fault-tolerant quantum computation (FTQC), in which quantum error correction (QEC) suppresses physical errors sufficiently to support reliable logical operations. This requires quantum compilation to move beyond general-purpose circuit optimization toward encoding-aware and protocol-structured compilation across the full stack of fault-tolerant quantum computers. Beyond circuit synthesis and hardware mapping, an FTQC compiler must lower algorithm-level operations into the logical gate set supported by the chosen code, coordinate encoded data and ancilla resources, realize logical operations together with repeated syndrome extraction under hardware constraints, and provide the resulting measurement stream to real-time decoding.
This survey presents a full-stack view of compiler design for QEC-protected quantum computation. We organize existing work into three interacting layers: logical-level QEC compilation, physical-level QEC realization, and decoder runtime integration. At the logical level, we review surface-code lattice-surgery compilers, beyond-surface-code code-surgery frameworks including emerging qLDPC approaches, and compilation support for non-Clifford operations such as magic-state distillation and code switching. At the physical level, we survey hardware-aware QEC realization on superconducting, trapped-ion, and neutral-atom platforms. We further examine decoder models, real-time decoding systems, and frame-management mechanisms that close the feedback loop during fault-tolerant execution. Finally, we identify open challenges in cross-layer optimization, qLDPC compilation, compiler-decoder co-design, runtime adaptivity, and the development of integrated and benchmarkable FTQC compilation stacks. An actively maintained paper list is available at: github.com/chenghongz/QEC-compiler-design.
The transition from noisy intermediate-scale quantum (NISQ) processors to large-scale fault-tolerant machines requires more than incremental improvements in physical qubit fidelity. While advances in quantum error correction (QEC) theory continue to lower the theoretical overhead of quantum computing, much of this research remains abstracted from the physical realities of qubit implementations. This disconnect often results in hardware-agnostic designs that are inefficient or impractical to build. In this dissertation, I identify three primary gaps between theoretical QEC research and practical hardware: (1) the high levels of noise and temporal instability in experimental devices that impede scalable QEC; (2) the prohibitively large qubit and time costs of useful algorithms, driven largely by the limitations of the standard surface code; and (3) the failure of current resource estimates to account for hardware-level constraints, such as limited connectivity and the complexity of implementing non-local operations. To bridge these gaps, I propose a holistic, cross-stack approach where the error correction protocols and the physical hardware are designed in concert. By developing realistic device models and hardware-aware solutions at the lowest levels of the software stack, we can accelerate the path toward functional fault-tolerance. I present my work across three research thrusts: first, leveraging codesign to mitigate hardware-specific noise and reduce physical error rates; second, developing software tools for fault-tolerant quantum computers to reduce the space-time overhead of the QEC layer; and third, proposing two novel hardware-aware QEC architectures that provide practical, high-performance routes to scalable quantum computation.
Practical realizations of quantum computers are poised to deliver outstanding computational capabilities far beyond the reach of any classical supercomputer. While classical systems are reliably implemented using CMOS technology, the fabrication of quantum hardware has not yet reached a commercially viable level of maturity. Nowadays, many different technologies are being developed as competing candidates to build the first error-corrected quantum computer. Among the software resources required to operate such a system, quantum compilers translate a high-level description of a quantum algorithm into low-level, technology-dependent quantum instructions. Many quantum algorithms, including Shor's and Grover's algorithms, require to compute some classical logic functions on the quantum computer. The first part of this thesis deals with the problem of compiling quantum circuits that perform such classical Boolean functions, called oracles, into a fault-tolerant set of instructions. Oracle circuits often demand many resources in terms of the number of qubits and gates. The focus is on compiling quantum circuits starting from multi-level logic networks representing large Boolean functions while minimizing the resource footprint of the obtained quantum circuits. At the same time, the trade-off between memory resources and the number of operations typical of such a compilation process is explored. As part of the effort in reducing the resources required to perform a given quantum program, I also present some quantum circuit optimization techniques. The researched algorithms leverage data structures and techniques borrowed and adapted from classical logic synthesis, e.g., SAT solvers, LUT mapping, and multi-level logic networks. I implemented all the compilation algorithms presented in this thesis as part of open-source projects. In particular, I develop and maintain caterpillar---a C++ header-only library dedicated to the quantum compilation of oracles and quantum memory management. The second part of this thesis describes how to equip quantum programming language compilers with automatic accuracy management. Despite the availability of many of such languages, resource estimation of quantum algorithms does not yet support taking approximation errors into account. This general methodology is applicable to any programming language and I demonstrate its integration into the Q# compiler. The technique consists of providing language support to ease the accuracy-aware programming task. The user can define accuracy parameters that will be automatically optimized according to a constraint and a cost function directly generated from the source code. In the presented practical evaluations, the constraint function is the overall allowed accuracy, while the cost function is application-dependent and related to the number of gates. During the optimization process, such functions are evaluated hundreds of times. For this reason, we extract them as (near-)symbolic expressions, whose evaluation time does not depend on the quantum algorithm size. The algorithms and the methodologies presented in this thesis are part of a widespread effort of the research community to build a complete and efficient software stack to program and control the first practical universal quantum computer.
Quantum computing is poised to revolutionize computational paradigms by leveraging quantum mechanics principles such as superposition and entanglement.However, the full-scale deployment of quantum applications remains constrained by hardware limitations, including high error rates and quantum decoherence.Quantum Software Engineering (QSE) emerges as a critical field addressing these challenges by optimizing algorithm design, error mitigation, and compiler strategies to enhance fault tolerance.Algorithm design in QSE focuses on developing quantum algorithms that efficiently exploit quantum parallelism while minimizing resource overhead.Key advancements include quantum variational algorithms, hybrid quantum-classical frameworks, and novel quantum heuristics tailored for optimization and cryptographic problems.Error mitigation techniques play a pivotal role in extending quantum circuit reliability without requiring full quantum error correction.Methods such as zero-noise extrapolation, probabilistic error cancellation, and quantum embedding techniques help reduce computational inaccuracies.Additionally, compiler optimization ensures efficient quantum program execution by minimizing gate depth, optimizing qubit mapping, and leveraging noise-adaptive scheduling to enhance quantum hardware performance.This paper explores the synergy between these three pillars of QSE, analyzing their impact on improving the feasibility of fault-tolerant quantum computing.It also examines emerging trends, including AI-driven quantum compilers, adaptive error mitigation techniques, and hardware-aware quantum software development.By bridging the gap between theoretical advancements and practical implementations, QSE provides a structured approach to accelerating quantum computing adoption across domains such as cryptography, materials science, and artificial intelligence.The findings underscore the necessity of interdisciplinary collaboration in developing robust quantum software solutions that maximize computational efficiency while mitigating inherent quantum hardware limitations.