Foundations of Quantum Programming

Foundations of Quantum Programming

1st Edition - March 9, 2016

Write a review

  • Author: Mingsheng Ying
  • Paperback ISBN: 9780128023068
  • eBook ISBN: 9780128025468

Purchase options

Purchase options
DRM-free (PDF, EPub, Mobi)
Sales tax will be calculated at check-out

Institutional Subscription

Free Global Shipping
No minimum order


Foundations of Quantum Programming discusses how new programming methodologies and technologies developed for current computers can be extended to exploit the unique power of quantum computers, which promise dramatic advantages in processing speed over currently available computer systems. Governments and industries around the globe are now investing vast amounts of money with the expectation of building practical quantum computers. Drawing upon years of experience and research in quantum computing research and using numerous examples and illustrations, Mingsheng Ying has created a very useful reference on quantum programming languages and important tools and techniques required for quantum programming, making the book a valuable resource for academics, researchers, and developers.

Key Features

  • Demystifies the theory of quantum programming using a step-by-step approach
  • Covers the interdisciplinary nature of quantum programming by providing examples from many different fields including, engineering, computer science, medicine, and life sciences
  • Includes techniques and tools to solve complex control flow patterns and synchronize computations
  • Presents a coherent and self-contained treatment that will be valuable for academics and industrial researchers and developers


Software engineers in high performance computing, researchers in the areas of programming languages and quantum computing

Table of Contents

    • Preface
    • Acknowledgments
    • Part I: Introduction and Preliminaries
      • Chapter 1: Introduction
        • Abstract
        • 1.1 Brief history of quantum programming research
        • 1.2 Approaches to quantum programming
        • 1.3 Structure of the book
      • Chapter 2: Preliminaries
        • Abstract
        • 2.1 Quantum mechanics
        • 2.2 Quantum circuits
        • 2.3 Quantum algorithms
        • 2.4 Bibliographic remarks
    • Part II: Quantum Programs with Classical Control
      • Chapter 3: Syntax and semantics of quantum programs
        • Abstract
        • 3.1 Syntax
        • 3.2 Operational Semantics
        • 3.3 Denotational semantics
        • 3.4 Classical recursion in quantum programming
        • 3.5 Illustrative example: Grover quantum search
        • 3.6 Proofs of lemmas
        • 3.7 Bibliographic remarks
      • Chapter 4: Logic for quantum programs
        • Abstract
        • 4.1 Quantum predicates
        • 4.2 Floyd-Hoare logic for quantum programs
        • 4.3 Commutativity of quantum weakest preconditions
        • 4.4 Bibliographic remarks
      • Chapter 5: Analysis of quantum programs
        • Abstract
        • 5.1 Termination analysis of quantum while-loops
        • 5.2 Quantum graph theory
        • 5.3 Reachability analysis of quantum markov chains
        • 5.4 Proofs of technical lemmas
        • 5.5 Bibliographic remarks
    • Part III: Quantum Programs with Quantum Control
      • Chapter 6: Quantum case statements
        • Abstract
        • 6.1 Case statements: from classical to quantum
        • 6.2 QuGCL: a language with quantum case statement
        • 6.3 Guarded compositions of quantum operations
        • 6.4 Semantics of QuGCL programs
        • 6.5 Quantum choice
        • 6.6 Algebraic laws
        • 6.7 Illustrative examples
        • 6.8 Discussions
        • 6.9 Proofs of lemmas, propositions and theorems
        • 6.10 Bibliographic remarks
      • Chapter 7: Quantum recursion
        • Abstract
        • 7.1 Syntax of quantum recursive programs
        • 7.2 Motivating examples: recursive quantum walks
        • 7.3 Second quantization
        • 7.4 Solving recursive equations in the free fock space
        • 7.5 Recovering symmetry and antisymmetry
        • 7.6 Principal system semantics of quantum recursion
        • 7.7 Illustrative examples: Revisit recursive quantum walks
        • 7.8 Quantum while-loops (with quantum control)
        • 7.9 Bibliographic remarks
    • Part IV: Prospects
      • Chapter 8: Prospects
        • Abstract
        • 8.1 Quantum programs and quantum machines
        • 8.2 Implementation of quantum programming languages
        • 8.3 Functional quantum programming
        • 8.4 Categorical semantics of quantum programs
        • 8.5 From concurrent quantum programs to quantum concurrency
        • 8.6 Entanglement in quantum programming
        • 8.7 Model-checking quantum systems
        • 8.8 Quantum programming applied to physics
    • Bibliography
    • Index

Product details

  • No. of pages: 372
  • Language: English
  • Copyright: © Morgan Kaufmann 2016
  • Published: March 9, 2016
  • Imprint: Morgan Kaufmann
  • Paperback ISBN: 9780128023068
  • eBook ISBN: 9780128025468

About the Author

Mingsheng Ying

Mingsheng Ying is currently Deputy Director for Research of the Institute of Software, Chinese Academy of Sciences; Director of the Centre for Quantum Software, Tsinghua University; and Hui Yan Chair Professor of Computer Science, Tsinghua University. He has published three books and served on the editorial board of several publications, including Artificial Intelligence Journal (Elsevier). He is inaugural Editor-in-Chief of ACM Transactions on Quantum Computing. He received an NSF China Distinguished Young Scholar Award (1997) and a China National Science Award in Natural Science (2008).

Affiliations and Expertise

Deputy Director for Research of the Institute of Software, Chinese Academy of Sciences; Director of the Centre for Quantum Software, Tsinghua University; and Hui Yan Chair Professor of Computer Science, Tsinghua University,China

Ratings and Reviews

Write a review

Latest reviews

(Total rating for all reviews)

  • Willy N. Tue Aug 13 2019

    A Complete Foundational Concept for Future Programmers

    It is really good to understand brief but deep foundational concept. This book provide a linking between the behavior of quantum computer hardware and how the way it programmed. This book contain highly precious concept to understand for future programmers.