Skip to content

(Bo)son (S)ampling (S)imulator based on the most current works in the field! Yay!

License

Notifications You must be signed in to change notification settings

Tomev-CTP/theboss

Repository files navigation

(Bo)son (S)ampling (S)imulator

The project is meant to implement the ideas proposed in references [1] and [2] for classically simulating lossy boson sampling.

Summary

Getting Started

So far, to get the project one only needs to download it from the repository (or any other source).

It's also possible to download it as a package with

pip install theboss

which will download the package from pypi.

Prerequisites

To run the scripts there will be needed some version of Python. During the development I'm using 3.8, but I believe that it will also work just fine with some earlier or newer version (at least for now).

The package has been tested for python 3.7 to 3.10.

In some places I use math.prod and typing package, that's why 3.8 version is desirable.

Code style

Throughout this work PEP-8 will be used. There are several cases where this may go south.

  • In some versions of the code matrices may be denoted by capital letters (as in standard mathematical notation). In order to be more PEP-friendly I'll try to use prefix m_ instead of capital letters, e.g. m_u would be the equivalent of U. Alternatively explicit use of matrix is also acceptable.

Running the tests

Just run all test in tests folder with pytest or via tox command.

Versioning

I'll use SemVer for versioning and try to keep track of the version in the tags.

Authors

License

This project is licensed under the Apache License, v.2.0. See the LICENSE.md file for details.

Acknowledgments

References

This project follows / uses the ideas presented in following papers:

[0] Clifford P., Clifford R., arXiv:1706.01260 [quant-ph].

[1] Oszmaniec M., Brod D. J., arXiv:1801.06166 [quant-ph].

[2] Brod D. J., Oszmaniec M., arXiv:1906.06696 [quant-ph].

[3] Maciejewski F. B., Zimboras Z., Oszmaniec M., arXiv:1907.08518 [quant-ph].

[4] Mezzadri F., arXiv:math-ph/0609050 [math-ph].

[5] Clifford P., Clifford R., arXiv:2005.04214 [quant-ph].