Skip to content

Commit 5715b4c

Browse files
paths: add helpers
1 parent 1801686 commit 5715b4c

File tree

9 files changed

+465
-3
lines changed

9 files changed

+465
-3
lines changed

docs/source/data-structures/enums/index.rst

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -17,6 +17,7 @@ In this section, we describe the :any:`Enum <enum.Enum>` classes available in
1717
congruence-kind
1818
matrix-kind
1919
order
20+
paths-algorithm
2021
side
2122
tril
22-
23+
Lines changed: 20 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,20 @@
1+
..
2+
Copyright (c) 2025, James Mitchell
3+
4+
Distributed under the terms of the GPL license version 3.
5+
6+
The full license is in the file LICENSE, distributed with this software.
7+
8+
.. currentmodule:: libsemigroups_pybind11
9+
10+
The paths.algorithm enum
11+
========================
12+
13+
This page describes the enum class :any:`paths.algorithm` in ``libsemigroups_pybind11``.
14+
15+
Full API
16+
--------
17+
18+
.. currentmodule:: libsemigroups_pybind11.paths
19+
20+
.. autoclass:: algorithm

docs/source/data-structures/word-graph/index.rst

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -21,5 +21,7 @@ This page contains links to the documentation for the parts of
2121
joiner
2222
meeter
2323
paths
24+
paths-helpers
2425
word-graph
26+
paths-helpers
2527
helpers
Lines changed: 33 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,33 @@
1+
..
2+
Copyright (c) 2025 J. D. Mitchell
3+
4+
Distributed under the terms of the GPL license version 3.
5+
6+
The full license is in the file LICENSE, distributed with this software.
7+
8+
Paths helpers
9+
=============
10+
11+
This page contains the documentation for the ``paths`` subpackage, that
12+
contains helper functions for the :any:`Paths` class.
13+
14+
Contents
15+
--------
16+
17+
.. currentmodule:: libsemigroups_pybind11.paths
18+
19+
.. autosummary::
20+
:signatures: short
21+
22+
number_of_paths_algorithm
23+
number_of_paths
24+
25+
Full API
26+
--------
27+
28+
.. currentmodule:: libsemigroups_pybind11
29+
30+
.. automodule:: libsemigroups_pybind11.paths
31+
:members:
32+
:imported-members:
33+
:exclude-members: algorithm

docs/source/libsemigroups.bib

Lines changed: 7 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -6,6 +6,13 @@
66
77
%% Saved with string encoding Unicode (UTF-8)
88
9+
@misc{Guennebaud2010aa,
10+
author = {Ga\"{e}l Guennebaud and Beno\^{i}t Jacob and others},
11+
title = {Eigen v3},
12+
howpublished = {http://eigen.tuxfamily.org},
13+
year = {2010}
14+
}
15+
916
@inbook{Carnino2011,
1017
title = {Random Generation of Deterministic Acyclic Automata Using Markov Chains},
1118
ISBN = {9783642222566},

src/libsemigroups_pybind11/__init__.py

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -19,6 +19,7 @@
1919
import libsemigroups_pybind11.kambites
2020
import libsemigroups_pybind11.knuth_bendix
2121
import libsemigroups_pybind11.matrix
22+
import libsemigroups_pybind11.paths
2223
import libsemigroups_pybind11.pbr
2324
import libsemigroups_pybind11.sims
2425
import libsemigroups_pybind11.stephen
Lines changed: 23 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,23 @@
1+
# -*- coding: utf-8 -*-
2+
3+
# Copyright (c) 2025 J. D. Mitchell
4+
#
5+
# Distributed under the terms of the GPL license version 3.
6+
#
7+
# The full license is in the file LICENSE, distributed with this software.
8+
9+
"""
10+
This page contains the documentation for the ``paths`` subpackage, that
11+
contains helper functions for the :any:`Paths` class.
12+
"""
13+
14+
from _libsemigroups_pybind11 import ( # pylint: disable=no-name-in-module,unused-import
15+
paths_algorithm as algorithm,
16+
paths_number_of_paths_algorithm as number_of_paths_algorithm,
17+
paths_number_of_paths as number_of_paths,
18+
)
19+
20+
# The following fools sphinx into thinking that "algorithm" is not an
21+
# alias.
22+
algorithm.__module__ = __name__
23+
algorithm.__name__ = "algorithm"

0 commit comments

Comments
 (0)