Acta Informatica

, Volume 51, Issue 1, pp 1–24 | Cite as

Termination of nondeterministic quantum programs

  • Yangjia LiEmail author
  • Nengkun Yu
  • Mingsheng Ying
Original Article


We define a language-independent model of nondeterministic quantum programs in which a quantum program consists of a finite set of quantum processes. These processes are represented by quantum Markov chains over the common state space, which formalize the quantum mechanical behaviors of the machine. An execution of a nondeterministic quantum program is modeled by a sequence of actions of individual processes, and at each step of an execution a process is chosen nondeterministically to perform the next action. This execution model formalize the users’ behavior of calling the processes in the classical world. Applying the model to a quantum walk as an instance of physically realizable systems, we describe an execution step by step. A characterization of reachable space and a characterization of diverging states of a nondeterministic quantum program are presented. We establish a zero-one law for termination probability of the states in the reachable space. A combination of these results leads to a necessary and sufficient condition for termination of nondeterministic quantum programs. Based on this condition, an algorithm is found for checking termination of nondeterministic quantum programs within a fixed finite-dimensional state space.



We are grateful to Runyao Duan and Yuan Feng for useful discussions. This work was partly supported by the Australian Research Council (Grant No: DP110103473) and the National Natural Science Foundation of China (Grant No: 60736011).


  1. 1.
    Abramsky, S.: High-level methods for quantum computation and information. In: Proceedings of the 19th Annual IEEE Symposium on Logic in Computer Science (LICS), pp. 410–414 (2004)Google Scholar
  2. 2.
    Aharonov, D., Ambainis, A., Kempe, J., Vazirani, U.V.: Quantum walks on graphs. In: Proceedings on 33rd Annual ACM Symposium on Theory of Computing (STOC), pp. 50–59 (2001)Google Scholar
  3. 3.
    Altenkirch, T., Grattage, J.: A functional quantum programming language. In: Proceedings of the 20th Annual IEEE Symposium on Logic in Computer Science (LICS), pp. 249–258 (2005)Google Scholar
  4. 4.
    Baltag, A., Smets, S.: LQP: the dynamic logic of quantum information. Math. Struct. Comput. Sci. 16, 491–525 (2006)CrossRefzbMATHMathSciNetGoogle Scholar
  5. 5.
    Betteli, S., Calarco, T., Serafini, L.: Toward an architecture for quantum programming. Eur. Phys. J. D25, 181–200 (2003)Google Scholar
  6. 6.
    Brunet, O., Jorrand, P.: Dynamic quantum logic for quantum programs. Int. J. Quantum Inf. 2, 45–54 (2004)CrossRefzbMATHGoogle Scholar
  7. 7.
    Chadha, R., Mateus, P., Sernadas, A.: Reasoning about imperative quantum programs. Electron. Notes Theor. Comput. Sci. 158, 19–39 (2006)CrossRefGoogle Scholar
  8. 8.
    D’Hondt, E., Panangaden, P.: Quantum weakest preconditions. Math. Struct. Comput. Sci. 16, 429–451 (2006)CrossRefzbMATHMathSciNetGoogle Scholar
  9. 9.
    Feng, Y., Duan, R.Y., Ji, Z.F., Ying, M.S.: Proof rules for the correctness of quantum programs. Theor. Comput. Sci. 386, 151–166 (2007)Google Scholar
  10. 10.
    Feng, Y., Duan, R.Y., Ying, M.S.: Bisimulation for quantum processes. In: Proceedings of the 38th ACM SIGPLAN-SIGACT Symposium on Principles of Programming Languages (POPL), pp. 523–534 (2011)Google Scholar
  11. 11.
    Gay, S.J.: Quantum programming languages: survey and bibliography. Math. Struct. Comput. Sci. 16, 581–600 (2006)CrossRefzbMATHMathSciNetGoogle Scholar
  12. 12.
    Gay, S.J., Nagarajan, R.: Communicating quantum processes. In: Proceedings of the 32nd ACM SIGPLAN-SIGACT Symposium on Principles of Programming Languages (POPL), pp. 145–157 (2005)Google Scholar
  13. 13.
    Hart, S., Sharir, M., Pnueli, A.: Termination of probabilistic concurrent programs. ACM Trans. Program. Lang. Syst. 5, 356–380 (1983)CrossRefzbMATHGoogle Scholar
  14. 14.
    Jorrand, P., Lalire, M.: Toward a quantum process algebra. In: Proceedings of the First ACM Conference on Computing Frontiers, pp. 111–119 (2004)Google Scholar
  15. 15.
    Mitchison, G., Josza, R.: Counterfactual computation. Proc. R. Soc. Lond. A 457, 1175–1193 (2001)CrossRefzbMATHGoogle Scholar
  16. 16.
    Nagarajan, R., Papanikolaou, N., Williams, D.: Simulating and compiling code for the sequential quantum random access machine. Electron. Notes Theor. Comput. Sci. 170, 101–124 (2007)CrossRefGoogle Scholar
  17. 17.
    Nielsen, M.A., Chuang, I.L.: Quantum Computation and Quantum Information. Cambridge University Press, Cambridge (2000)zbMATHGoogle Scholar
  18. 18.
    Ömer, B.: Structured Quantum Programming, Ph.D thesis, Technical University of Vienna (2003)Google Scholar
  19. 19.
    Roman, S.: Advanced Linear Algebra. Springer, Berlin (2008)zbMATHGoogle Scholar
  20. 20.
    Sanders, J.W., Zuliani, P.: Quantum programming. In: Proceedings, Mathematics of Program Construction, LNCS, pp. 80–99 (2000)Google Scholar
  21. 21.
    Selinger, P.: Towards a quantum programming language. Math. Struct. Comput. Sci. 14, 527–586 (2004)CrossRefzbMATHMathSciNetGoogle Scholar
  22. 22.
    Selinger, P.: A brief survey of quantum programming languages. In: Proceedings of the 7th International Symposium Functional and Logic Programming (FLOPS), pp. 1–6 (2004)Google Scholar
  23. 23.
    Svore, K.M., Aho, A.V., Cross, A.W., Chuang, I., Markov, I.L.: A layered software architecture for quantum computing design tools. IEEE Comput. 39, 74–83 (2006)Google Scholar
  24. 24.
    Ying, M.S.: Floyd-Hoare logic for quantum programs. ACM Trans. Program. Langu. Syst. 33, 19 (2011)Google Scholar
  25. 25.
    Ying, M.S., Duan, R.Y., Feng, Y., Ji, Z.F.: Predicate Transformer Semantics of Quantum Programs, Semantic Techniques in Quantum Computation. Cambridge University Press, Cambridge (2010)Google Scholar
  26. 26.
    Ying, M.S., Feng, Y.: Quantum loop programs. Acta Informatica 47, 221–250 (2010)CrossRefzbMATHMathSciNetGoogle Scholar
  27. 27.
    Ying, M.S., Feng, Y.: A flowchart language for quantum programming. IEEE Trans. Softw. Eng. 37, 466–485 (2011)CrossRefGoogle Scholar
  28. 28.
    Zuliani, P.: Nondeterminstic quantum programming. In: Proceedings of the 2nd International Workshop on Quantum Programming Languages, pp. 179–195 (2004)Google Scholar
  29. 29.
    Zuliani, P.: Compiling quantum programs. Acta Informatica 41, 435–473 (2005)CrossRefzbMATHMathSciNetGoogle Scholar

Copyright information

© Springer-Verlag Berlin Heidelberg 2013

Authors and Affiliations

  1. 1.Tsinghua National Laboratory of Information Science and Technology, Department of Computer Science and TechnologyTsinghua UniversityBeijingChina
  2. 2.Center for Quantum Computation and Intelligent Systems, Faculty of Engineering and Information TechnologyUniversity of TechnologySydneyAustralia

Personalised recommendations