Soeken, MathiasMeuli, GiuliaSchmitt, BrunoMozafari, FereshteRiener, HeinzDe Micheli, Giovanni2020-03-032020-03-032020-03-032020-02-0710.1098/rsta.2019.0161https://infoscience.epfl.ch/handle/20.500.14299/166638WOS:000504088100014Quantum compilation is the task of translating a quantum algorithm implemented in a high-level quantum programming language into a technology-dependent instructions flow for a physical quantum computer. To tackle the large gap between the quantum program and the low-level instructions, quantum compilation is split into a multi-stage flow consisting of several layers of abstraction. Several different individual tasks have been proposed for the layers in the flow, many of them are NP-hard. In this article, we will describe the flow and we will propose algorithms based on Boolean satisfiability, which is a good match to tackle such computationally complex problems. This article is part of the theme issue 'Harmonizing energy-autonomous computing and intelligence'.Multidisciplinary SciencesScience & Technology - Other Topicsquantum computingquantum programming languagesquantum compilationboolean satisfiabilitylogic synthesiscircuitsBoolean satisfiability in quantum compilationtext::journal::journal article::research article