Skip to main content
Log in

Classical Concepts in Quantum Programming

  • Published:
International Journal of Theoretical Physics Aims and scope Submit manuscript

Abstract

The rapid progress of computer technology has been accompanied by a corresponding evolution of software development, from hardwired components and binary machine code to high level programming languages, which allowed to master the increasing hardware complexity and fully exploit its potential.

This paper investigates, how classical concepts like hardware abstraction, hierarchical programs, data types, memory management, flow of control, and structured programming can be used in quantum computing. The experimental language QCL will be introduced as an example, how elements like irreversible functions, local variables, and conditional branching, which have no direct quantum counterparts, can be implemented, and how nonclassical features like the reversibility of unitary transformation or the nonobservability of quantum states can be accounted for within the framework of a procedural programming language.

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

  • Aaby, A. A. (1996). Introduction to Programming Languages. Available at http://cs.wwc.edu/ aabyan/221_2/PLBOOK/

  • Bani-Eqbal, B. (1992). Exclusive Normal Form of Boolean Circuits, Technical Report Series, UMCS-92-4-1, University of Manchester, Manchester, UK. Available at http://www.cs.man.ac.uk/cstechrep/Abstracts/UMCS-92-4-1.html

  • Bennett, C. H. (1973). Logical reversibility of computation. IBM Journal of Research and Development 17, 525.

    Article  MATH  ISI  Google Scholar 

  • Dahl, O.-J., Dijkstra, E. W., and Hoare, C. A. R. (1972). 1972 Structured Programming, Academic, London.

    Google Scholar 

  • Deutsch, D. (1989). Quantum Computational Networks. Proceedings of the Royal Society of London, A 439, 553–558.

  • Dijkstra, E. W. (1969). In Structured Programming, Software Engineering Techniques, J. N. Buxton and B. Randell, eds., NATO Science Committee, Brussels, Belgium, pp. 84–88.

  • Ekert, A. and Jozsa, R. (1996). Shor's quantum algorithm for factoring numbers. Reviews in Modern Physics 68(3), 733–753.

    ADS  MathSciNet  Google Scholar 

  • Nielsen, M. A. and Chuang, I. L. (2000). Quantum Computation and Quantum Information, Cambridge University Press, Cambridge, UK.

    MATH  Google Scholar 

  • Ömer, B. (1998). A Procedural Formalism for Quantum Computing, Master-Thesis, Technical University Vienna, Vienna, Austria. Available at http://tph.tuwien.ac.at/oemer/qcl.html

  • Shor, P. W. (1994). Algorithms for quantum computation: Discrete logarithms and factoring. In Proceedings of the 35th IEEE Symposium on Foundations of Computer Science, S. Goldwasser, ed., IEEE Computer Society, Los Alamitos, California, USA pp. 124–134.

  • Wallace, J. (2001). Quantum computer simulators. In Partial Proceedings of the 4th International Conference CASYS 2000, D. M. Dubois (ed.), International Journal of Computing Anticipatory Systems, Vol. 10, pp. 230–245.

Download references

Author information

Authors and Affiliations

Authors

Corresponding author

Correspondence to Bernhard Ömer.

Rights and permissions

Reprints and permissions

About this article

Cite this article

Ömer, B. Classical Concepts in Quantum Programming. Int J Theor Phys 44, 943–955 (2005). https://doi.org/10.1007/s10773-005-7071-x

Download citation

  • Received:

  • Accepted:

  • Issue Date:

  • DOI: https://doi.org/10.1007/s10773-005-7071-x

Keywords

Navigation