File tree Expand file tree Collapse file tree
Expand file tree Collapse file tree Original file line number Diff line number Diff line change 2020import sys
2121from pathlib import Path
2222
23+ from libsemigroups_pybind11 import LIBSEMIGROUPS_HPCOMBI_ENABLED
24+
2325########################################################################
2426# sphinx options
2527########################################################################
155157extensions = [
156158 "sphinx.ext.autodoc" ,
157159 "sphinx.ext.autosummary" ,
160+ "sphinx.ext.ifconfig" ,
158161 "sphinxcontrib.bibtex" ,
159162 "sphinx_copybutton" ,
160163 "sphinx.ext.doctest" ,
193196
194197############ intersphinx ############
195198
196- # Thhe locations and names of other projects that should be linked to in this
199+ # The locations and names of other projects that should be linked to in this
197200# documentation.
198201intersphinx_mapping = {
199202 "python" : ("https://docs.python.org/3" , None ),
200203 "numpy" : ("https://numpy.org/doc/stable/" , None ),
201204}
205+
206+
207+ def setup (app ):
208+ app .add_config_value ("LIBSEMIGROUPS_HPCOMBI_ENABLED" , LIBSEMIGROUPS_HPCOMBI_ENABLED , "env" )
Original file line number Diff line number Diff line change @@ -18,3 +18,5 @@ This page describes the functionality for various partial transformations in
1818 pperm
1919 transf
2020 helpers
21+
22+ See also :any: `hpcombi.PTransf16 `.
Original file line number Diff line number Diff line change 1+ ..
2+ Copyright (c) 2021-2024 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+ .. currentmodule :: libsemigroups_pybind11
9+
10+ HPCombi
11+ =======
12+
13+ This page describes the functionality from ``HPCombi `` available in
14+ ``libsemigroups_pybind11 ``. This functionality is only available if
15+ :any: `LIBSEMIGROUPS_HPCOMBI_ENABLED ` is ``True ``.
16+
17+ .. py :attribute :: LIBSEMIGROUPS_HPCOMBI_ENABLED
18+ :type: bool
19+
20+ This variable indicates whether or not the version of ``libsemigroups ``
21+ being used by ``libsemigroups_pybind11 `` was compiled with ``HPCombi ``
22+ enabled.
23+
24+ .. ifconfig :: LIBSEMIGROUPS_HPCOMBI_ENABLED
25+
26+ .. toctree ::
27+ :maxdepth: 1
28+
29+ perm16
30+ pperm16
31+ ptransf16
32+ transf16
33+ vect16
Original file line number Diff line number Diff line change 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+ .. currentmodule :: libsemigroups_pybind11.hpcombi
9+
10+ The Perm16 class
11+ ==================
12+
13+ .. autoclass :: Perm16
14+ :doc-only:
15+
16+ Contents
17+ --------
18+
19+ .. autosummary ::
20+ :signatures: short
21+
22+ ~Perm16
23+ Perm16.copy
24+ Perm16.cycles_partition
25+ Perm16.elementary_transposition
26+ Perm16.inverse
27+ Perm16.inverse_arr
28+ Perm16.inverse_cycl
29+ Perm16.inverse_find
30+ Perm16.inverse_pow
31+ Perm16.inverse_ref
32+ Perm16.inverse_sort
33+ Perm16.left_weak_leq
34+ Perm16.left_weak_leq_length
35+ Perm16.left_weak_leq_ref
36+ Perm16.lehmer
37+ Perm16.lehmer_arr
38+ Perm16.lehmer_ref
39+ Perm16.length
40+ Perm16.length_arr
41+ Perm16.length_ref
42+ Perm16.nb_cycles
43+ Perm16.nb_cycles_ref
44+ Perm16.nb_cycles_unroll
45+ Perm16.nb_descents
46+ Perm16.nb_descents_ref
47+ Perm16.one
48+ Perm16.unrankSJT
49+ Perm16.validate
50+
51+ Full API
52+ --------
53+
54+ .. autoclass :: Perm16
55+ :class-doc-from: init
56+ :members:
Original file line number Diff line number Diff line change 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+ .. currentmodule :: libsemigroups_pybind11.hpcombi
9+
10+ The PPerm16 class
11+ =================
12+
13+ .. autoclass :: PPerm16
14+ :doc-only:
15+
16+ Contents
17+ --------
18+
19+ .. autosummary ::
20+ :signatures: short
21+
22+ ~PPerm16
23+ PPerm16.copy
24+ PPerm16.inverse_ref
25+ PPerm16.left_one
26+ PPerm16.one
27+ PPerm16.right_one
28+ PPerm16.validate
29+
30+ Full API
31+ --------
32+
33+ .. autoclass :: PPerm16
34+ :class-doc-from: init
35+ :members:
Original file line number Diff line number Diff line change 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+ .. currentmodule :: libsemigroups_pybind11.hpcombi
9+
10+ The PTransf16 class
11+ ===================
12+
13+ .. autoclass :: PTransf16
14+ :doc-only:
15+
16+ Contents
17+ --------
18+
19+ .. autosummary ::
20+ :signatures: short
21+
22+ ~PTransf16
23+ PTransf16.copy
24+ PTransf16.domain_bitset
25+ PTransf16.domain_mask
26+ PTransf16.fix_points_bitset
27+ PTransf16.fix_points_mask
28+ PTransf16.image_bitset
29+ PTransf16.image_mask
30+ PTransf16.image_mask_ref
31+ PTransf16.largest_fix_point
32+ PTransf16.largest_moved_point
33+ PTransf16.left_one
34+ PTransf16.nb_fix_points
35+ PTransf16.one
36+ PTransf16.rank
37+ PTransf16.rank_cmpestrm
38+ PTransf16.rank_ref
39+ PTransf16.right_one
40+ PTransf16.smallest_fix_point
41+ PTransf16.smallest_moved_point
42+ PTransf16.validate
43+
44+ Full API
45+ --------
46+
47+ .. autoclass :: PTransf16
48+ :class-doc-from: init
49+ :members:
Original file line number Diff line number Diff line change 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+ .. currentmodule :: libsemigroups_pybind11.hpcombi
9+
10+ The Transf16 class
11+ ==================
12+
13+ .. autoclass :: Transf16
14+ :doc-only:
15+
16+ Contents
17+ --------
18+
19+ .. autosummary ::
20+ :signatures: short
21+
22+ ~Transf16
23+ Transf16.copy
24+ Transf16.one
25+ Transf16.validate
26+
27+ Full API
28+ --------
29+
30+ .. autoclass :: Transf16
31+ :class-doc-from: init
32+ :members:
Original file line number Diff line number Diff line change 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+ .. currentmodule :: libsemigroups_pybind11.hpcombi
9+
10+ The Vect16 class
11+ ================
12+
13+ .. autoclass :: Vect16
14+ :doc-only:
15+
16+ Contents
17+ --------
18+
19+ .. autosummary ::
20+ :signatures: short
21+
22+ ~Vect16
23+ Vect16.copy
24+ Vect16.eval16
25+ Vect16.first_diff
26+ Vect16.first_non_zero
27+ Vect16.first_zero
28+ Vect16.is_permutation
29+ Vect16.last_diff
30+ Vect16.last_non_zero
31+ Vect16.last_zero
32+ Vect16.less_partial
33+ Vect16.partial_sums
34+ Vect16.sum
35+
36+ Full API
37+ --------
38+
39+ .. autoclass :: Vect16
40+ :class-doc-from: init
41+ :members:
Original file line number Diff line number Diff line change @@ -139,6 +139,7 @@ We would like to thank the authors and contributors of these projects!
139139 data-structures/constants/index
140140 data-structures/elements/index
141141 data-structures/enums/index
142+ data-structures/hpcombi/index
142143 data-structures/order/index
143144 data-structures/presentations/index
144145 data-structures/suffix-trees/index
You can’t perform that action at this time.
0 commit comments