Concrete Categorical Model of a Quantum Circuit Description Language with Measurement

In this paper, we introduce dynamic lifting to a quantum circuit-description language, following the Proto-Quipper language approach. Dynamic lifting allows programs to transfer the result of measuring quantum data – qubits – into classical data – booleans – . We propose a type system and an operational semantics for the language and we state safety properties. Next, we introduce a concrete categorical semantics for the proposed language, basing our approach on a recent model from Rios&Selinger for Proto-Quipper-M. Our approach is to construct on top of a concrete category of circuits with measurements a Kleisli category, capturing as a side effect the action of retrieving classical content out of a quantum memory. We then show a soundness result for this semantics. 2012 ACM Subject Classification Theory of computation → Categorical semantics

[1]  Nick Benton,et al.  A Mixed Linear and Non-Linear Logic: Proofs, Terms and Models (Extended Abstract) , 1994, CSL.

[2]  Maximilian Baader,et al.  Silq: a high-level quantum language with safe uncomputation and intuitive semantics , 2020, PLDI.

[3]  E. Knill,et al.  Conventions for quantum pseudocode , 1996, 2211.02559.

[4]  P. Selinger A Survey of Graphical Languages for Monoidal Categories , 2009, 0908.3347.

[5]  Carla Piazza,et al.  Towards Quantum Programs Verification: From Quipper Circuits to QPMC , 2016, RC.

[6]  Martin Rötteler,et al.  Q#: Enabling scalable quantum computing and development with a high-level domain-specific language , 2018, ArXiv.

[7]  William J. Zeng,et al.  A Practical Quantum Instruction Set Architecture , 2016, ArXiv.

[8]  Patrick Lincoln,et al.  Linear logic , 1992, SIGA.

[9]  Krysta Marie Svore,et al.  LIQUi|>: A Software Design Architecture and Domain-Specific Language for Quantum Computing , 2014, ArXiv.

[10]  Benoît Valiron,et al.  Semantics for a Higher Order Functional Programming Language for Quantum Computation , 2008 .

[11]  Neil J. Ross,et al.  ALGEBRAIC AND LOGICAL METHODS IN QUANTUM COMPUTATION , 2015, 1510.02198.

[12]  Benoît Valiron,et al.  A Lambda Calculus for Quantum Computation with Classical Control , 2005, TLCA.

[13]  Sam Staton,et al.  Algebraic Effects, Linearity, and Quantum Programming Languages , 2015, POPL.

[14]  Jennifer Paykin,et al.  QWIRE Practice: Formal Verification of Quantum Circuits in Coq , 2018, QPL.

[15]  Eugenio Moggi,et al.  Notions of Computation and Monads , 1991, Inf. Comput..

[16]  W. Wootters,et al.  A single quantum cannot be cloned , 1982, Nature.

[17]  Peter Selinger,et al.  A categorical model for a quantum circuit description language , 2017, QPL.

[18]  Akihito Soeda,et al.  Success-or-Draw: A Strategy Allowing Repeat-Until-Success in Quantum Computation. , 2020, Physical review letters.

[19]  Sam Staton,et al.  Classical Control, Quantum Circuits and Linear Logic in Enriched Category Theory , 2017, Log. Methods Comput. Sci..

[20]  Jennifer Paykin,et al.  QWIRE: a core language for quantum circuits , 2017, POPL.

[21]  Benoît Valiron,et al.  Quipper: a scalable quantum programming language , 2013, PLDI.

[22]  Michael W. Mislove,et al.  Enriching a Linear/Non-linear Lambda Calculus: A Programming Language for String Diagrams , 2018, LICS.