Skip to main content
Log in

Quantum loop programs

  • Original Article
  • Published:
Acta Informatica Aims and scope Submit manuscript

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.

This is a preview of subscription content, log in via an institution to check access.

Access this article

Price excludes VAT (USA)
Tax calculation will be finalised during checkout.

Instant access to the full article PDF.

Similar content being viewed by others

References

  1. 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)

  2. 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)

  3. 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)

    Article  Google Scholar 

  4. 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

    Article  Google Scholar 

  5. 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)

  6. Bernstein E., Vazirani U.: Quantum complexity theory. SIAM J. Comput. 26, 1411–1473 (1997)

    Article  MATH  MathSciNet  Google Scholar 

  7. Bhatia R.: Matrix analysis. Springer, Berlin (1991)

    Google Scholar 

  8. D’Hondt, E., Panangaden, P.: Quantum weakest preconditions. Math. Struct. Comput. Sci. (2006)

  9. Dijkstra E.W.: A discipline of programming. Prentice-Hall, NJ, USA (1976)

    MATH  Google Scholar 

  10. 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

    Article  MathSciNet  Google Scholar 

  11. 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

    Article  MathSciNet  Google Scholar 

  12. Gay, S.J.: Quantum programming languages: survey and bibliography. Math. Struct. Comput. Sci. 16(4) (2006) (in press)

  13. Gay, S.J., Nagarajan, R.: Communicating quantum processes. In: Proceedings of the 32nd ACM Symposium on Principles of Programming Languages (2005)

  14. Gay, S.J., Nagarajan, R.: Typechecking communicating quantum processes. Math. Struct. Comput. Sci. (2006) (in press)

  15. 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)

  16. 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)

  17. Kemeny J., Snell J.: Finite Markov chains. Springer, Berlin (1983)

    MATH  Google Scholar 

  18. Knill, E.H.: Conventions for quantum pseudocode, LANL Report, LAUR-96-2724 (1996)

  19. 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)

  20. Nielsen M.A., Chuang I.L.: Quantum computation and quantum information. Cambridge University Press, Cambridge (2000)

    MATH  Google Scholar 

  21. Ö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)

  22. Ömer, B.: Structured quantum programming. Ph.D thesis, Technical University of Vienna (2003)

  23. Sanders, J.W., Zuliani, P.: Quantum programming. In: Proceedings, Mathematics of Program Construction 2000, LNCS 1837, pp. 80–99 (2000)

  24. Selinger P.: Towards a quantum programming language. Math. Struct. Comput. Sci 14, 527–586 (2004)

    Article  MATH  MathSciNet  Google Scholar 

  25. 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)

  26. 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)

  27. Ying M.S., Chen J.X., Feng Y., Duan R.Y.: Commutativity of quantum weakest preconditions. Inf. Process. Lett. 104, 152–158 (2007)

    Article  MATH  MathSciNet  Google Scholar 

  28. Ying, M.S., Feng, Y., Duan, R.Y., Ji, Z.F.: An algebra of quantum processes. ACM Trans. Comput. Log. 10 (2009)

  29. 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)

  30. Zuliani, P.: Quantum programming. Ph.D thesis, Oxford University (2001)

  31. Zuliani P.: Compiling quantum program. Acta Inform 41, 435–474 (2005)

    Article  MATH  MathSciNet  Google Scholar 

  32. Zuliani, P.: Quantum programming with mixed states. In: Proceedings of the 3rd International Workshop on Quantum Programming Languages, June 30-July 1, Chicago (2005)

Download references

Author information

Authors and Affiliations

Authors

Corresponding author

Correspondence to Mingsheng Ying.

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

Reprints 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

Download citation

  • Received:

  • Accepted:

  • Published:

  • Issue Date:

  • DOI: https://doi.org/10.1007/s00236-010-0117-4

Keywords

Navigation