Quantum Programming with Inductive Datatypes: Causality and Affine Type Theory

Inductive datatypes in programming languages allow users to define useful data structures such as natural numbers, lists, trees, and others. In this paper we show how inductive datatypes may be added to the quantum programming language QPL. We construct a sound categorical model for the language and by doing so we provide the first detailed semantic treatment of user-defined inductive datatypes in quantum programming. We also show our denotational interpretation is invariant with respect to big-step reduction, thereby establishing another novel result for quantum programming. Compared to classical programming, this property is considerably more difficult to prove and we demonstrate its usefulness by showing how it immediately implies computational adequacy at all types. To further cement our results, our semantics is entirely based on a physically natural model of von Neumann algebras, which are mathematical structures used by physicists to study quantum mechanics.

[1]  Ugo Dal Lago,et al.  The geometry of parallelism: classical, probabilistic, and quantum effects , 2016, POPL.

[2]  J GaySimon,et al.  Quantum programming languages: survey and bibliography , 2006 .

[3]  Kenta Cho,et al.  Von Neumann Algebras form a Model for the Quantum Lambda Calculus , 2016, ArXiv.

[4]  竹崎 正道 Theory of operator algebras , 2002 .

[5]  Martin Rötteler,et al.  Quantum Programming Languages (Dagstuhl Seminar 18381) , 2018, Dagstuhl Reports.

[6]  Abraham Westerbaan Quantum Programs as Kleisli Maps , 2016, QPL.

[7]  Ichiro Hasuo,et al.  Semantics of Higher-Order Quantum Computation via Geometry of Interaction , 2011, 2011 IEEE 26th Annual Symposium on Logic in Computer Science.

[8]  M. Takesaki,et al.  Analyticity and the Unruh effect: a study of local modular flow , 2024, Journal of High Energy Physics.

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

[10]  B. Westerbaan,et al.  Dagger and Dilation in the Category of Von Neumann Algebras , 2018, 1803.01911.

[11]  Simon J. Gay,et al.  Quantum Programming Languages Survey and Bibliography , 2006 .

[12]  Aleks Kissinger,et al.  A categorical semantics for causal structure , 2017, 2017 32nd Annual ACM/IEEE Symposium on Logic in Computer Science (LICS).

[13]  Peter W. Shor,et al.  Polynomial-Time Algorithms for Prime Factorization and Discrete Logarithms on a Quantum Computer , 1995, SIAM Rev..

[14]  Bas Westerbaan Dagger and dilations in the category of von Neumann algebras , 2018, ArXiv.

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

[16]  Sam Staton,et al.  Classical Control and Quantum Circuits in Enriched Category Theory , 2018, MFPS.

[17]  Kenta Cho,et al.  Semantics for a Quantum Programming Language by Operator Algebras , 2014, New Generation Computing.

[18]  Michele Pagani,et al.  Applying quantitative semantics to higher-order quantum computing , 2013, POPL.

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

[20]  Jiří Adámek,et al.  Free algebras and automata realizations in the language of categories , 1974 .

[21]  Umesh V. Vazirani,et al.  Quantum Algorithms , 2001, LATIN.

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

[23]  Martín Abadi,et al.  Syntactic considerations on recursive types , 1996, Proceedings 11th Annual IEEE Symposium on Logic in Computer Science.

[24]  Glynn Winskel,et al.  Game semantics for quantum programming , 2019, Proc. ACM Program. Lang..

[25]  Marcelo P. Fiore Axiomatic domain theory in categories of partial maps , 1994 .

[26]  Andre Kornell Quantum Collections , 2012 .

[27]  R. Jozsa Quantum algorithms , 2001 .

[28]  Vladimir Zamdzhiev,et al.  LNL-FPC: The Linear/Non-linear Fixpoint Calculus , 2019, Log. Methods Comput. Sci..

[29]  Christian Schaffner,et al.  Quantum cryptography beyond quantum key distribution , 2015, Designs, Codes and Cryptography.

[30]  Lov K. Grover A fast quantum mechanical algorithm for database search , 1996, STOC '96.

[31]  Simon Perdrix,et al.  Quantum Entanglement Analysis Based on Abstract Interpretation , 2008, SAS.

[32]  Gilles Brassard,et al.  Quantum cryptography: Public key distribution and coin tossing , 2014, Theor. Comput. Sci..

[33]  Peter Selinger,et al.  Towards a quantum programming language , 2004, Mathematical Structures in Computer Science.

[34]  Mingsheng Ying,et al.  Foundations of Quantum Programming , 2016 .

[35]  A. Harrow,et al.  Quantum algorithm for linear systems of equations. , 2008, Physical review letters.

[36]  Vladimir Zamdzhiev,et al.  Mixed linear and non-linear recursive types , 2019, Proc. ACM Program. Lang..

[37]  Mathys Rennela,et al.  Towards a Quantum Domain Theory: Order-enrichment and Fixpoints in W*-algebras , 2014, MFPS.

[38]  Ralf Hinze,et al.  Adjoint folds and unfolds - An extended study , 2013, Sci. Comput. Program..

[39]  Mathys Rennela,et al.  Operator Algebras in Quantum Computation , 2015, ArXiv.