Welcome to RepLAB!

Current version: 0.9.5-SNAP (GitHub / latest release ZIP / installation instructions).

RepLAB provides tools to study representations of finite groups and decompose them numerically. It is compatible with both MATLAB and Octave.


Decomposition of the \(U \otimes U\) representation of the unitary group of dimension 2.


Integrated help system in RepLAB

How to start using RepLAB?

Have a look at the tutorials! They have everything to get you started, from installation instructions to hands-on examples.

The documentation of RepLAB is organized along 4 directions, following this approach:

  • Tutorials: are short hands-on presentations that give you a taste of the goodness of RepLAB

  • How-to guides: are concise recipes that show you how to achieve a specific goal

  • Topic guides: are understanding-oriented presentations that explain the big picture and the key notions on which this software is built

  • Technical reference: contains a complete and accurate description of each object of the library

Work in progress

RepLAB is a work-in-progress. In particular:

  • RepLAB works in double floating-point precision.

  • We are still working on the estimation/control of numerical errors (a few criteria are currently hard-coded). That said, RepLAB works fine for representations of medium size (\(d\) equal to a few thousands).

  • While RepLAB has implementations of several computational group theory algorithms, their performance is not competitive with dedicated computational group theory software such as GAP or Magma.

  • The documentation is still a work in progress, and tutorials/how to guides/… will be added as the project progresses.

Why RepLAB?

Because no open source library exists to decomposes arbitrary permutation/monomial representations into irreducible representations over the reals. RepLAB implements numerical methods that perform this decomposition up to machine precision.

That said, other libraries working on the same problem space include:


RepLAB and the group theory/linear algebra libraries it depends on were initiated by Denis Rosset and Jean-Daniel Bancal. The project has now more contributors.

RepLAB references in the /external directory the following libraries: the MOxUnit test framework by Nikolaas N. Oosterhof, the MOcov code coverage report generator by Nikolaas N. Oosterhof, the YALMIP toolbox for optimization modeling by Johan Löfberg, the SDPT3 solver, and the VPI big integer library by John D’Errico.

Feedback and suggestions are always welcome. We ask participants to follow the guidelines of the Typelevel Code of Conduct.


RepLAB is (C) 2018-2021 Denis Rosset, Jean-Daniel Bancal and other collaborators, and licensed under the Mozilla Public License 2.0.