Abstract
The objective of this paper is to develop a functional programming language for quantum computers. We develop a lambda calculus for the classical control model, following the first author’s work on quantum flow-charts. We define a call-by-value operational semantics, and we give a type system using affine intuitionistic linear logic. The main results of this paper are the safety properties of the language and the development of a type inference algorithm.
This is a preview of subscription content, log in via an institution.
Buying options
Tax calculation will be finalised at checkout
Purchases are for personal use only
Learn about institutional subscriptionsPreview
Unable to display preview. Download preview PDF.
References
Altenkirch, T., Grattage, J.: A functional quantum programming language. Available from arXiv:quant-ph/0409065 (2004)
Barendregt, H.P.: The Lambda-Calculus, its Syntax and Semantics. In: Directions in Human Factors for Interactive Systems, 2nd edn., vol. 103, North Holland, Amsterdam (1984)
Benioff, P.: The computer as a physical system: A microscopic quantum mechanical Hamiltonian model of computers as represented by Turing machines. Journal of Statistical Physics 22, 563–591 (1980)
Bettelli, S., Calarco, T., Serafini, L.: Toward an architecture for quantum programming. The European Physical Journal D 25(2), 181–200 (2003)
Danos, V., Joinet, J.-B., Schellinx, H.: On the linear decoration of intuitionistic derivations. Archive for Mathematical Logic 33, 387–412 (1995)
Deutsch, D.: Quantum theory, the Church-Turing principle and the universal quantum computer. In: Proceedings of the Royal Society of London. Series A, Mathematical and Physical Sciences, July 1985, vol. 400(1818), pp. 97–117 (1985)
Girard, J.-Y.: Linear logic. Theoretical Computer Science 50(1), 1–101 (1987)
Knill, E.: Conventions for quantum pseudocode. Technical Report LAUR-96-2724, Los Alamos National Laboratory (1996)
Nielsen, M.A., Chuang, I.L.: Quantum Computation and Quantum Information. Cambridge University Press, Cambridge (2002)
Preskill, J.: Lecture notes for Physics 229, quantum computation (1999), Available from http://www.theory.caltech.edu/people/preskill/ph229/#lecture
Sanders, J.W., Zuliani, P.: Quantum programming. In: Backhouse, R., Oliveira, J.N. (eds.) MPC 2000. LNCS, vol. 1837, pp. 80–99. Springer, Heidelberg (2000)
Selinger, P.: Towards a quantum programming language. Mathematical Structures in Computer Science 14(4), 527–586 (2004)
Valiron, B.: A functional programming language for quantum computation with classical control. Master’s thesis, University of Ottawa (September 2004)
van Tonder, A.: Quantum computation, categorical semantics and linear logic. On arXiv: quant-ph/0312174 (2003)
van Tonder, A.: A lambda calculus for quantum computation. SIAM Journal of Computing 33(5), 1109–1135 (2004) (Available from arXiv:quant-ph/0307150)
Author information
Authors and Affiliations
Editor information
Editors and Affiliations
Rights and permissions
Copyright information
© 2005 Springer-Verlag Berlin Heidelberg
About this paper
Cite this paper
Selinger, P., Valiron, B. (2005). A Lambda Calculus for Quantum Computation with Classical Control. In: Urzyczyn, P. (eds) Typed Lambda Calculi and Applications. TLCA 2005. Lecture Notes in Computer Science, vol 3461. Springer, Berlin, Heidelberg. https://doi.org/10.1007/11417170_26
Download citation
DOI: https://doi.org/10.1007/11417170_26
Publisher Name: Springer, Berlin, Heidelberg
Print ISBN: 978-3-540-25593-2
Online ISBN: 978-3-540-32014-2
eBook Packages: Computer ScienceComputer Science (R0)