## Abstract

In this paper we explore the structure and applicability of the Distributed Measurement Calculus (DMC), an assembly language for distributed measurement-based quantum computations. We describe the formal language’s syntax and semantics, both operational and denotational, and state several properties that are crucial to the practical usability of our language, such as equivalence of our semantics, as well as compositionality and context-freeness of DMC programs. We show how to put these properties to use by constructing a composite program that implements distributed controlled operations, in the knowledge that the semantics of this program does not change under the various composition operations. Our formal model is the basis of a quantum virtual machine construction for distributed quantum computations, which we elaborate upon in the latter part of this work. This virtual machine embodies the formal semantics of DMC such that programming execution no longer needs to be analysed by hand. Far from a literal translation, it requires a substantial concretisation of the formal model at the level of data structures, naming conventions and abstraction mechanisms. At the same time we provide automatisation techniques for program specification where possible to obtain an expressive and user-friendly programming environment.

## Keywords

Quantum computing Measurement-based quantum computing Distributed computing Formal models Virtual machines## Notes

### Acknowledgments

This work is based on earlier research with V. Danos, E. Kashefi and P. Panangaden. The first author is supported by the Flemish Fund for Scientific Research (FWO) and the second by the CRYPTASC project, funded by the Institute for the encouragement of Scientific Research and Innovation of Brussels (IRSIB/IWOIB).

## References

- Adão P, Mateus P (2005) A process algebra for reasoning about quantum security. In: Selinger P (ed) Proceedings of the 3rd workshop on quantum programming languages (QPL04), pp 3–20Google Scholar
- Bennett C, Brassard G (1984) Quantum cryptography: public key distribution and coin tossing. In: Proceedings of the IEEE international conference on computers, systems and signal processing, Bangalore, IndiaGoogle Scholar
- Bose S, Vedral V, Knight PL (1998) Multiparticle generalization of entanglement swapping. Phys Rev A 57(2):822–829CrossRefGoogle Scholar
- Brock J, Ackerman W (1981) Scenarios: a model of non-determinate computation. In: Diaz J, Ramos I (eds) Formalizations of programming concepts, vol 107. Springer-Verlag, New YorkGoogle Scholar
- Danos V, D’Hondt E, Kashefi E, Panangaden P (2005) Distributed measurement-based quantum computation. In: Selinger P (ed) Proceedings of the 3rd international workshop on quantum programming languages (QPL 2005), volume 170 of ENTCS, pp 73–94, quant-ph/0506070Google Scholar
- Danos V, Kashefi E, Panangaden P (2007) The measurement calculus. JACM 54(2). doi: 10.1145/1219092.1219096. quant-ph/0704.1263v1
- Desmet B, D’Hondt E, Costanza P, D’Hondt T (2006) Simulation of quantum computations in Lisp. In: Lisp workshop at ECOOP (submitted)Google Scholar
- D’Hondt E (2005) Distributed quantum computation—a measurement-based approach. PhD thesis, Vrije Universiteit BrusselGoogle Scholar
- Gay SJ, Nagarajan R (2004) Communicating quantum processes. In: Selinger P (ed) Proceedings of the 2nd workshop on quantum programming languages (QPL04), Turku, Finland. Turku Centre for Computer Science, TUCS General Publication no. 33Google Scholar
- Gay SJ, Nagarajan R, Papanikolaou N (2005) Probabilistic model-checking of quantum protocols. In: Proceedings of the 2nd international workshop on developments in computational models (DCM 2006)Google Scholar
- Gordon M, Thies W, and Amarasinghe S (2006) Exploiting coarse-grained task, data, and pipeline parallelism in stream programs. ACM SIGOPS Oper Syst Rev 40(5):162CrossRefGoogle Scholar
- Jorrand P, Lalire M (2005) Toward a quantum process algebra. In: Proceedings of the first conference on computing frontiers. ACM Press, pp 111–119Google Scholar
- Lalire M, Jorrand P (2004) A process algebraic approach to concurrent and distributed quantum computation: operational semantics. In: Selinger P (ed) Proceedings of the 2nd workshop on Quantum Programming Languages (QPL04), Turku, Finland. Turku Centre for Computer Science, TUCS General Publication no. 33Google Scholar
- McCarthy J (1960) Recursive functions of symbolic expressions and their computation by machine. Commun ACM 3:184–195Google Scholar
- Nielsen MA, Chuang I (2000) Quantum computation and quantum information. Cambridge University Press, CambridgeMATHGoogle Scholar
- Raedt KD, Michielsen K, Raedt HD, Trieu B, Arnold G, Richter M, Lippert T, Watanabe H, Ito N (2006) Massive parallel quantum computer simulator. quant-ph/0608239Google Scholar
- Raussendorf R, Browne DE, Briegel HJ (2003) Measurement-based quantum computation on cluster states. Phys Rev A 68(2):022312CrossRefGoogle Scholar
- Selinger P (2003) Towards a quantum programming language. Math Struct Comput Sci 14(4):527–586Google Scholar
- Svore KM, Aho AV, Cross AW, Chuang IL, Markov IL (2006) A layered software architecture for quantum computing design tools. IEEE Comput 39(1):74–83CrossRefGoogle Scholar
- Verhaegen S (2009) Stream programming for quantum computing. Master’s thesis, Vrije Universiteit BrusselGoogle Scholar
- Yimsiriwattana A, Lomonaco SJ (2005) Generalized GHZ states and distributed quantum computing. AMS Contemp Math 381:131–147Google Scholar
- Zukowski M, Zeilinger A, Horne MA, Ekert A (1993) “Event-ready detectors” Bell experiment via entanglement swapping. Phys Rev Lett 71(26):4287–4290CrossRefGoogle Scholar