monoprop

monoprop Documentation

High-performance C++/Python library for Majorana and Pauli propagation.

monoprop is a high-performance C++ library with Python bindings for Majorana and Pauli propagation, for simulating and variationally optimising quantum circuits. It supports large-scale simulations through multithreading and multi-node runs on HPC clusters via MPI and shared-memory parallelism. Operators and states are expressed in the Majorana basis, with two front-ends: MajoranaPropagator for native Majorana and fermionic problems, and PauliPropagator for qubit (Pauli) problems.

Warning

This package is under active development. This project follows Semantic Versioning. While in 0.x.y, breaking changes may occur in minor releases. Pin your version if you depend on it. If you have feedback, please open an issue.

New here? Install monoprop and run the minimal example in Getting Started, then read Concepts to understand how propagation works.

How the documentation is organised

Getting started — install monoprop and get it running.

  • Getting Started — installation and minimal serial and distributed examples.
  • Building from source — building the Python bindings and the C++ library and executables, with and without MPI, and how to run them.

User guide — understand the method and drive a simulation.

  • Concepts — the Majorana basis, the propagation algorithm, truncation, and the simulation modes.
  • Features — the simulator's capabilities: configuration, cutoffs, expectation value and gradient evaluation, and parallel execution.
  • Tutorials — step-by-step notebooks for concrete problems and workflows.

Reference — look up details.

  • Python API — full API reference for the Python bindings.
  • Benchmarks — performance benchmarks and comparisons to other libraries.
  • References — bibliography of the papers and methods behind monoprop.

Contributing — work on monoprop itself.

  • How to Contribute — contribution workflow, coding standards, and testing requirements.

On this page