An open source framework for programming photonic quantum computers.
Through a simple object-oriented Python API, Perceval provides tools for composing circuits from linear optical components, defining single-photon sources, manipulating Fock states, running simulations, reproducing published experimental papers and experimenting with a new generation of quantum algorithms. It aims to be a companion tool for developing photonic circuits – for simulating and optimising their design, modelling both the ideal and realistic behaviours, and proposing a normalised interface to control them through the concept of backends.
Code extract



Access powerful backends to simulate quantum algorithms on photonic circuits. Numerically and symbolically, Perceval is optimized to run on a local desktop, with several extensions for HPC clusters.


Design algorithms and complex linear optics circuits through a large collection of predefined components. A collection of known algorithms are available and presented as tutorials.


Run experiments to fine-tune algorithms, compare with experimental data, and reproduce published articles in few lines of code.


Unique framework fully dedicated to linear optics and photonic quantum computing
Evolve from performing local or cloud-hosted simulations to running code on photonic chips within the same framework
Open Source Project, and modular architecture welcoming contributions from the community

Get started with