Abstract
Loop is a powerful program construct in classical computation, but its power is still not exploited fully in quantum computation. The exploitation of such power definitely requires a deep understanding of the mechanism of quantum loop programs. In this paper, we introduce a general scheme of quantum loops and describe its computational process. The function computed by a quantum loop is defined, and a denotational semantics and a weakest precondition semantics of a quantum loop are given. The notions of termination and almost termination are proposed for quantum loops. This paper only consider the case of finite-dimensional state spaces. Necessary and sufficient conditions for termination and almost termination of a general quantum loop on any mixed input state are presented. A quantum loop is said to be (almost) terminating if it (almost) terminates on any input state. We show that a quantum loop is almost terminating if and only if it is uniformly almost terminating. It is observed that a small disturbance either on the unitary transformation in the loop body or on the measurement in the loop guard can make any quantum loop (almost) terminating, provided that some dimension restriction is satisfied. Moreover, a representation of the function computed by a quantum loop is given in terms of finite summations of matrices. To illustrate the notions and results obtained in this paper, two simple classes of quantum loop programs, one qubit quantum loops, and two qubit quantum loops defined by controlled gates, are carefully examined, and to show their expressive power, quantum loops are applied in describing quantum walks.
Similar content being viewed by others
Explore related subjects
Discover the latest articles, news and stories from top researchers in related subjects.References
Aharonov, D., Ambainis, A., Kempe, J., Vazirani, U.: Quantum walks on graphs. In: Proceedings of the 30th Annual ACM Symposium on Theory of Computation, p. 50. ACM Press, New York (2001)
Altenkirch, T., Grattage, J.: A functional quantum programming language. In: Proceedings of the 20th Annual IEEE Symposium on Logic in Computer Science (LICS). IEEE Computer Society, Also arXiv:quant-ph/0409065 (2005)
Barenco A., Bennett C.H., Cleve R., DiVincenzo D.P., Margolus N., Shor P., Sleator T., Smolin J., Weinfurter H.: Phys. Rev. A 52, 3457–3467 (1995)
Betteli S., Calarco T., Serafini L.: Toward an architecture for quantum programming. Eur. Phy. J. D 25, 181–200 (2003) Also see: arXiv:cs.PL/0103009 v2, Nov. 2001
Bernstein, E., Vazirani, U.: Quantum complexity theory. In: Proceedings of the 25th Annual ACM Symposium on Theory of Computing, pp. 11–22. ACM Press, New Ork (1993)
Bernstein E., Vazirani U.: Quantum complexity theory. SIAM J. Comput. 26, 1411–1473 (1997)
Bhatia R.: Matrix analysis. Springer, Berlin (1991)
D’Hondt, E., Panangaden, P.: Quantum weakest preconditions. Math. Struct. Comput. Sci. (2006)
Dijkstra E.W.: A discipline of programming. Prentice-Hall, NJ, USA (1976)
Feng Y., Duan R., Ji Z., Ying M.: Proof rules for purely quantum programs. Theor. Comput. Sci. 386, 151–166 (2005) Also see: arXiv:cs.PL/0507043
Feng Y., Duan R., Ji Z., Ying M.: Probabilistic bisimilarities between quantum processes. Inf. Comput. 205, 1608–1639 (2006) Also see: arXiv:cs.LO/0601014
Gay, S.J.: Quantum programming languages: survey and bibliography. Math. Struct. Comput. Sci. 16(4) (2006) (in press)
Gay, S.J., Nagarajan, R.: Communicating quantum processes. In: Proceedings of the 32nd ACM Symposium on Principles of Programming Languages (2005)
Gay, S.J., Nagarajan, R.: Typechecking communicating quantum processes. Math. Struct. Comput. Sci. (2006) (in press)
Grover, L.: A fast quantum mechanical algorithm for database search. In: Proceedings, 28th Annual ACM Symposium on the Theory of Computing, pp. 212–219. ACM Press, New York (1996)
Jorrand, P., Lalire, M.: Toward a quantum process algebra. In: Proceedings of the 1st ACM Conference on Computing Frontier, ACM Press, Also see: arXiv: quant-ph/0312067. (2004)
Kemeny J., Snell J.: Finite Markov chains. Springer, Berlin (1983)
Knill, E.H.: Conventions for quantum pseudocode, LANL Report, LAUR-96-2724 (1996)
Lalire, M., Jorrand, P.: A process algebraic approach to concurrent and distributed quantum computation: operational semantics. In: Proceedings of the 2nd International Workshop on Quantum Programming Languages, July 12–13, Turku, Finland (2004)
Nielsen M.A., Chuang I.L.: Quantum computation and quantum information. Cambridge University Press, Cambridge (2000)
Ömer, B.: A procedural formalism for quantum computing. Master’s thesis, Department of theoretical Physics, Technical University of Vienna, July 1998. http://tph.tuwien.ac.at/~oemer/qcl.html (1998)
Ömer, B.: Structured quantum programming. Ph.D thesis, Technical University of Vienna (2003)
Sanders, J.W., Zuliani, P.: Quantum programming. In: Proceedings, Mathematics of Program Construction 2000, LNCS 1837, pp. 80–99 (2000)
Selinger P.: Towards a quantum programming language. Math. Struct. Comput. Sci 14, 527–586 (2004)
Selinger, P.: A brief survey of quantum programming languages. In: Proceedings of the 7th International Symposium on Functional and Logic Programming, Nara, Japan, LNCS 2998, pp. 1–6, Springer, Berlin (2004)
Shor, P.W.: Algorithms for quantum computation: discrete logarithms and factoring. In: Proceedings, 35th Annual Symposium on Foundations of Computer Science, pp. 124–134, IEEE Press, Los Alamitos, CA (1994)
Ying M.S., Chen J.X., Feng Y., Duan R.Y.: Commutativity of quantum weakest preconditions. Inf. Process. Lett. 104, 152–158 (2007)
Ying, M.S., Feng, Y., Duan, R.Y., Ji, Z.F.: An algebra of quantum processes. ACM Trans. Comput. Log. 10 (2009)
Ying, M.S., Duan, R.Y., Feng, Y., Ji, Z.F.: Predicate transformer semantics of quantum programs. In: Gay, S., Mackie, I. (eds.) Semantic techniques in quantum computation. Cambridge University Press, pp. 311–360 (2010)
Zuliani, P.: Quantum programming. Ph.D thesis, Oxford University (2001)
Zuliani P.: Compiling quantum program. Acta Inform 41, 435–474 (2005)
Zuliani, P.: Quantum programming with mixed states. In: Proceedings of the 3rd International Workshop on Quantum Programming Languages, June 30-July 1, Chicago (2005)
Author information
Authors and Affiliations
Corresponding author
Additional information
M. Ying and Y. Feng: This work was partly supported by the National Foundation of Natural Sciences of China (Grant No: 60736011, 60621062) and the National Key Project for Fundamental Research of China (Grant No: 2007CB807901).
Rights and permissions
About this article
Cite this article
Ying, M., Feng, Y. Quantum loop programs. Acta Informatica 47, 221–250 (2010). https://doi.org/10.1007/s00236-010-0117-4
Received:
Accepted:
Published:
Issue Date:
DOI: https://doi.org/10.1007/s00236-010-0117-4