KoniecznyΒΆ

libsemigroups_pybind11 contains a preliminary implementation of Konieczny's generalisation of the Lallement-McFadden algorithm for computing the structure of finite semigroups that act on sets; see the documentation below for further details. It is preliminary in the sense that the interface exposed by the relevant classes is minimal, and that certain optimisations remain to be performed.

The implementation of the Konieczny and Lallement-McFadden algorithm can be used "interactively", in the sense that they can be run for a particular amount of time, or until some condition is met; for further details see, for example, Konieczny.run_for() and Konieczny.run_until().

The classes implementing the Konieczny and Lallement-McFadden algorithm are: