SimulaQron is an application level simulator for a quantum internet that allows you to program your own quantum internet applications. Explore how to realize software for a quantum internet connecting local quantum processors by quantum communication, and develop your own libraries and software engineering concepts suitable for a quantum internet.



What does SimulaQron do?

SimulaQron is a simulator written to provide an essential tool for software development for a quantum internet. Specifically, SimulaQron provides a distributed simulation of several quantum processors, connected by a simulated quantum communication channels.  Each local quantum processor is accessible via a server running on classical computer. In the background, SimulaQron will connect these servers using classical communication to simulate the exchange of qubits and the creation of entanglement between distant processors. Each simulated processor may thereby run on a different classical computer, and supports the execution of local quantum gates and measurements, as well as commands for sending qubits to remote nodes.

Your quantum internet application can access the simulated local quantum hardware via a Python or C library, as well as a universal instruction set format (CQC). We aim to make a (possibly slightly advanced) version of CQC available also on the planned 2020 QuTech quantum internet demonstrator connecting four dutch cities. Here, we will connect quantum processors each having a few qubits to form a small quantum internet. SimulaQron allows you to develop your software already now!

SimulaQron can be used as a tool for software development in all areas ranging from the implementation of the actual applications, the development of application level abstractions and programming libraries, to exploring the implemention of a quantum network stack.

Checkout what is under the hood, how to get started or our paper.


Get the code. Report bugs. Contribute!

The full code can be freely accessed on GitHub. Here you can also report bugs, make feature requests or even contribute with your own code.