![]() |
libsemigroups
v3.0.0
C++ library for semigroups and monoids
|
Defined in presentation-examples.hpp
.
This namespace contains functions which give presentations for some common finitely presented semigroups and monoids.
Functions | |
Default presentations | |
Presentation< word_type > | alternating_group (size_t n) |
A presentation for the alternating group. | |
Presentation< word_type > | brauer_monoid (size_t n) |
A presentation for the Brauer monoid. | |
Presentation< word_type > | chinese_monoid (size_t n) |
A presentation for the Chinese monoid. | |
Presentation< word_type > | cyclic_inverse_monoid (size_t n) |
A presentation for the cyclic inverse monoid. | |
Presentation< word_type > | dual_symmetric_inverse_monoid (size_t n) |
A presentation for the dual symmetric inverse monoid. | |
Presentation< word_type > | fibonacci_semigroup (size_t r, size_t n) |
A presentation for a Fibonacci semigroup. | |
Presentation< word_type > | full_transformation_monoid (size_t n) |
A presentation for the full transformation monoid. | |
Presentation< word_type > | hypo_plactic_monoid (size_t n) |
A presentation for the hypoplactic monoid. | |
Presentation< word_type > | monogenic_semigroup (size_t m, size_t r) |
A presentation for a monogenic semigroup. | |
Presentation< word_type > | motzkin_monoid (size_t n) |
A presentation for the Motzkin monoid. | |
Presentation< word_type > | not_renner_type_B_monoid (size_t l, int q) |
A presentation that incorrectly claims to be the Renner monoid of type B. | |
Presentation< word_type > | not_renner_type_D_monoid (size_t l, int q) |
A presentation that incorrectly claims to be the Renner monoid of type D. | |
Presentation< word_type > | not_symmetric_group (size_t n) |
A non-presentation for the symmetric group. | |
Presentation< word_type > | order_preserving_cyclic_inverse_monoid (size_t n) |
A presentation for the order preserving part of the cyclic inverse monoid. | |
Presentation< word_type > | order_preserving_monoid (size_t n) |
A presentation for the monoid of order preserving mappings. | |
Presentation< word_type > | orientation_preserving_monoid (size_t n) |
A presentation for the monoid of orientation preserving mappings. | |
Presentation< word_type > | orientation_preserving_reversing_monoid (size_t n) |
A presentation for the monoid of orientation preserving or reversing mappings. | |
Presentation< word_type > | partial_brauer_monoid (size_t n) |
A presentation for the partial Brauer monoid. | |
Presentation< word_type > | partial_isometries_cycle_graph_monoid (size_t n) |
A presentation for the monoid of partial isometries of a cycle graph. | |
Presentation< word_type > | partial_transformation_monoid (size_t n) |
A presentation for the partial transformation monoid. | |
Presentation< word_type > | partition_monoid (size_t n) |
A presentation for the partition monoid. | |
Presentation< word_type > | plactic_monoid (size_t n) |
A presentation for the plactic monoid. | |
Presentation< word_type > | rectangular_band (size_t m, size_t n) |
A presentation for a rectangular band. | |
Presentation< word_type > | renner_type_B_monoid (size_t l, int q) |
A presentation for the Renner monoid of type B. | |
Presentation< word_type > | renner_type_D_monoid (size_t l, int q) |
A presentation for the Renner monoid of type D. | |
Presentation< word_type > | sigma_plactic_monoid (std::vector< size_t > const &sigma) |
A presentation for the \(\sigma\)-plactic monoid. | |
Presentation< word_type > | singular_brauer_monoid (size_t n) |
A presentation for the singular part of the Brauer monoid. | |
Presentation< word_type > | special_linear_group_2 (size_t q) |
A presentation for the special linear group \(\mathrm{SL}(2, q)\). | |
Presentation< word_type > | stellar_monoid (size_t l) |
A presentation for the stellar monoid. | |
Presentation< word_type > | stylic_monoid (size_t n) |
A presentation for the stylic monoid. | |
Presentation< word_type > | symmetric_group (size_t n) |
A presentation for the symmetric group. | |
Presentation< word_type > | symmetric_inverse_monoid (size_t n) |
A presentation for the partial transformation monoid. | |
Presentation< word_type > | temperley_lieb_monoid (size_t n) |
A presentation for the Temperley-Lieb monoid. | |
Presentation< word_type > | uniform_block_bijection_monoid (size_t n) |
A presentation for the uniform block bijection monoid. | |
Presentation< word_type > | zero_rook_monoid (size_t n) |
A presentation for the \(0\)-rook monoid. | |
Specific presentations | |
The functions documented below provide specific presentations for various semigroups and monoids, usually accompanied by a reference to the source of the presentation. There may be several presentations for any semigroup or monoid. For each semigroup or monoid, there is a corresponding default function that is documented in the Default presentations section. | |
Presentation< word_type > | alternating_group_Moo97 (size_t n) |
A presentation for the alternating group. | |
Presentation< word_type > | brauer_monoid_KM07 (size_t n) |
A presentation for the Brauer monoid. | |
Presentation< word_type > | chinese_monoid_CEKNH01 (size_t n) |
A presentation for the Chinese monoid. | |
Presentation< word_type > | cyclic_inverse_monoid_Fer22_a (size_t n) |
A presentation for the cyclic inverse monoid. | |
Presentation< word_type > | cyclic_inverse_monoid_Fer22_b (size_t n) |
A presentation for the cyclic inverse monoid. | |
Presentation< word_type > | dual_symmetric_inverse_monoid_EEF07 (size_t n) |
A presentation for the dual symmetric inverse monoid. | |
Presentation< word_type > | fibonacci_semigroup_CRRT94 (size_t r, size_t n) |
A presentation for a Fibonacci semigroup. | |
Presentation< word_type > | full_transformation_monoid_Aiz58 (size_t n) |
A presentation for the full transformation monoid. | |
Presentation< word_type > | full_transformation_monoid_II74 (size_t n) |
A presentation for the full transformation monoid. | |
Presentation< word_type > | full_transformation_monoid_MW24_a (size_t n) |
A presentation for the full transformation monoid. | |
Presentation< word_type > | full_transformation_monoid_MW24_b (size_t n) |
A presentation for the full transformation monoid. | |
Presentation< word_type > | hypo_plactic_monoid_Nov00 (size_t n) |
A presentation for the hypoplactic monoid. | |
Presentation< word_type > | motzkin_monoid_PHL13 (size_t n) |
A presentation for the Motzkin monoid. | |
Presentation< word_type > | not_renner_type_B_monoid_Gay18 (size_t l, int q) |
A presentation that incorrectly claims to be the Renner monoid of type B. | |
Presentation< word_type > | not_renner_type_D_monoid_God09 (size_t l, int q) |
A presentation that incorrectly claims to be the Renner monoid of type D. | |
Presentation< word_type > | not_symmetric_group_GKKL08 (size_t n) |
A non-presentation for the symmetric group. | |
Presentation< word_type > | order_preserving_cyclic_inverse_monoid_Fer22 (size_t n) |
A presentation for the order preserving part of the cyclic inverse monoid. | |
Presentation< word_type > | order_preserving_monoid_AR00 (size_t n) |
A presentation for the monoid of order preserving mappings. | |
Presentation< word_type > | orientation_preserving_monoid_AR00 (size_t n) |
A presentation for the monoid of orientation preserving mappings. | |
Presentation< word_type > | orientation_preserving_reversing_monoid_AR00 (size_t n) |
A presentation for the monoid of orientation preserving or reversing mappings. | |
Presentation< word_type > | partial_brauer_monoid_KM07 (size_t n) |
A presentation for the partial Brauer monoid. | |
Presentation< word_type > | partial_isometries_cycle_graph_monoid_FP22 (size_t n) |
A presentation for the monoid of partial isometries of a cycle graph. | |
Presentation< word_type > | partial_transformation_monoid_MW24 (size_t n) |
A presentation for the partial transformation monoid. | |
Presentation< word_type > | partial_transformation_monoid_Shu60 (size_t n) |
A presentation for the partial transformation monoid. | |
Presentation< word_type > | partition_monoid_Eas11 (size_t n) |
A presentation for the partition monoid. | |
Presentation< word_type > | partition_monoid_HR05 (size_t n) |
A presentation for the partition monoid. | |
Presentation< word_type > | plactic_monoid_Knu70 (size_t n) |
A presentation for the plactic monoid. | |
Presentation< word_type > | rectangular_band_ACOR00 (size_t m, size_t n) |
A presentation for a rectangular band. | |
Presentation< word_type > | renner_type_B_monoid_Gay18 (size_t l, int q) |
A presentation for the Renner monoid of type B. | |
Presentation< word_type > | renner_type_D_monoid_Gay18 (size_t l, int q) |
A presentation for the Renner monoid of type D. | |
Presentation< word_type > | sigma_plactic_monoid_AHMNT24 (std::vector< size_t > const &sigma) |
A presentation for the \(\sigma\)-plactic monoid. | |
Presentation< word_type > | singular_brauer_monoid_MM07 (size_t n) |
A presentation for the singular part of the Brauer monoid. | |
Presentation< word_type > | special_linear_group_2_CR80 (size_t q) |
A presentation for the special linear group \(\mathrm{SL}(2, q)\). | |
Presentation< word_type > | stellar_monoid_GH19 (size_t l) |
A presentation for the stellar monoid. | |
Presentation< word_type > | stylic_monoid_AR22 (size_t n) |
A presentation for the stylic monoid. | |
Presentation< word_type > | symmetric_group_Bur12 (size_t n) |
A presentation for the symmetric group. | |
Presentation< word_type > | symmetric_group_Car56 (size_t n) |
A presentation for the symmetric group. | |
Presentation< word_type > | symmetric_group_Moo97_a (size_t n) |
A presentation for the symmetric group. | |
Presentation< word_type > | symmetric_group_Moo97_b (size_t n) |
A presentation for the symmetric group. | |
Presentation< word_type > | symmetric_inverse_monoid_Sol04 (size_t n) |
A presentation for the symmetric inverse monoid. | |
Presentation< word_type > | symmetric_inverse_monoid_MW24 (size_t n) |
A presentation for the symmetric inverse monoid. | |
Presentation< word_type > | symmetric_inverse_monoid_Shu60 (size_t n) |
A presentation for the symmetric inverse monoid. | |
Presentation< word_type > | temperley_lieb_monoid_Eas21 (size_t n) |
A presentation for the Temperley-Lieb monoid. | |
Presentation< word_type > | uniform_block_bijection_monoid_Fit03 (size_t n) |
A presentation for the uniform block bijection monoid. | |
Presentation< word_type > | zero_rook_monoid_Gay18 (size_t n) |
A presentation for the \(0\)-rook monoid. | |
|
inlinenodiscard |
This function returns a monoid presentation defining the alternating group of degree n
, as in Theorem B of [47].
n | the degree of the alternating group. |
Presentation<word_type>
.LibsemigroupsException | if n < 4 . |
alternating_group_Moo97
, and exists as a convenience function for when a presentation for the alternating group is required, but the relations of the presentation are not important.alternating_group_Moo97
.
|
nodiscard |
This function returns a monoid presentation defining the alternating group of degree n
, as in Theorem B of [47].
n | the degree of the alternating group. |
Presentation<word_type>
.LibsemigroupsException | if n < 4 . |
|
inlinenodiscard |
This function returns a monoid presentation defining the Brauer monoid of degree n
, as described in Theorem 3.1 of [41].
n | the degree. |
Presentation<word_type>
.LibsemigroupsException | if n < 1 . |
brauer_monoid_KM07
, and exists as a convenience function for when a presentation for the Brauer monoid is required, but the relations of the presentation are not important.brauer_monoid_KM07
.
|
nodiscard |
This function returns a monoid presentation defining the Brauer monoid of degree n
, as described in Theorem 3.1 of [41].
n | the degree. |
Presentation<word_type>
.LibsemigroupsException | if n < 1 . |
|
inlinenodiscard |
This function returns a monoid presentation defining the Chinese monoid with n
generators, as in [14].
n | the number of generators. |
Presentation<word_type>
.LibsemigroupsException | if n < 2 . |
chinese_monoid_CEKNH01
, and exists as a convenience function for when a presentation for the Chinese monoid is required, but the particular relations in the presentation are not important.chinese_monoid_CEKNH01
.
|
nodiscard |
This function returns a monoid presentation defining the Chinese monoid with n
generators, as in [14].
n | the number of generators. |
Presentation<word_type>
.LibsemigroupsException | if n < 2 . |
|
inlinenodiscard |
This function returns a monoid presentation defining the cyclic inverse monoid of degree n
, as in Theorem 2.7 of [20].
This presentation has \(2\) generators and \(\frac{1}{2}\left(n^2 - n + 6\right)\) relations.
n | the degree. |
Presentation<word_type>
.LibsemigroupsException | if n < 3 . |
cyclic_inverse_monoid_Fer22_b
, and exists as a convenience function for when a presentation for the cyclic inverse monoid is required, but the particular relations in the presentation are not important.
|
nodiscard |
This function returns a monoid presentation defining the cyclic inverse monoid of degree n
, as in Theorem 2.6 of [20].
This has \(n + 1\) generators and \(\frac{1}{2} \left(n^2 + 3n + 4\right)\) relations.
n | the degree. |
Presentation<word_type>
.LibsemigroupsException | if n < 3 . |
|
nodiscard |
This function returns a monoid presentation defining the cyclic inverse monoid of degree n
, as in Theorem 2.7 of [20].
This presentation has \(2\) generators and \(\frac{1}{2}\left(n^2 - n + 6\right)\) relations.
n | the degree. |
Presentation<word_type>
.LibsemigroupsException | if n < 3 . |
|
inlinenodiscard |
This function returns a monoid presentation defining the dual symmetric inverse monoid of degree n
, as in Section 3 of [16].
n | the degree. |
Presentation<word_type>
.LibsemigroupsException | if n < 3 . |
dual_symmetric_inverse_monoid_EEF07
, and exists as a convenience function for when a presentation for the dual symmetric inverse monoid is required, but the particular relations in the presentation are not important.dual_symmetric_inverse_monoid
.
|
nodiscard |
This function returns a monoid presentation defining the dual symmetric inverse monoid of degree n
, as in Section 3 of [16].
n | the degree. |
Presentation<word_type>
.LibsemigroupsException | if n < 3 . |
|
inlinenodiscard |
This function returns a semigroup presentation defining the Fibonacci semigroup \(F(r, n)\), where \(r\) is r
and \(n\) is n
, as described in [11].
r | the length of the left hand sides of the relations. |
n | the number of generators. |
Presentation<word_type>
.LibsemigroupsException | if n < 1 . |
LibsemigroupsException | if r < 1 . |
fibonacci_semigroup_CRRT94
, and exists as a convenience function for when a presentation for the Fibonacci semigroup is required, but the relations of the presentation are not important.fibonacci_semigroup_CRRT94
.
|
nodiscard |
This function returns a semigroup presentation defining the Fibonacci semigroup \(F(r, n)\), where \(r\) is r
and \(n\) is n
, as described in [11].
r | the length of the left hand sides of the relations. |
n | the number of generators. |
Presentation<word_type>
.LibsemigroupsException | if n < 1 . |
LibsemigroupsException | if r < 1 . |
|
nodiscard |
This function returns a monoid presentation defining the full transformation monoid of degree n
.
n | the degree of the full transformation monoid. |
Presentation<word_type>
.LibsemigroupsException | if n < 2 . |
full_transformation_monoid_MW24_a
, and exists as a convenience function for when a presentation for the full transformation monoid is required, but the particular relations in the presentation are not important.
|
nodiscard |
This function returns a monoid presentation defining the full transformation monoid of degree n
, as in Section 5, Theorem 2 of [4] (Russian) and Chapter 3, Proposition 1.7 of [52] (English).
n | the degree of the full transformation monoid. |
Presentation<word_type>
.LibsemigroupsException | if n < 4 . |
|
nodiscard |
This function returns a monoid presentation defining the full transformation monoid of degree n
due to Iwahori and Iwahori [34], as in Theorem 9.3.1 of [24].
n | the degree of the full transformation monoid. |
Presentation<word_type>
.LibsemigroupsException | if n < 4 . |
|
nodiscard |
This function returns a monoid presentation defining the full transformation monoid of degree n
, corresponding to \(\mathcal{T}\) in Theorem 1.5 of [46]. For n >= 4
this presentation has five non-symmetric-group relations.
n | the degree of the full transformation monoid. |
Presentation<word_type>
.LibsemigroupsException | if n < 4 . |
|
nodiscard |
This function returns a monoid presentation defining the full transformation monoid of degree n
, corresponding to \(\mathcal{T}'\) in Theorem 1.5 of [46]. This presentation is only valid for odd values of n
, and for n >= 5
this presentation has four non-symmetric-group relations.
n | the degree of the full transformation monoid. |
Presentation<word_type>
.LibsemigroupsException | if n < 3 . |
LibsemigroupsException | if n is not odd. |
|
inlinenodiscard |
This function returns a presentation for the hypoplactic monoid with n
generators, as in Definition 4.2 of [48].
This monoid is a quotient monoid of the plactic monoid, and this presentation includes the rules from plactic_monoid_Knu70.
n | the number of generators. |
Presentation<word_type>
.LibsemigroupsException | if n < 1 . |
hypo_plactic_monoid_Nov00
, and exists as a convenience function for when a presentation for the hypoplactic monoid is required, but the relations of the presentation are not important.hypo_plactic_monoid_Nov00
.
|
nodiscard |
This function returns a presentation for the hypoplactic monoid with n
generators, as in Definition 4.2 of [48].
This monoid is a quotient monoid of the plactic monoid, and this presentation includes the rules from plactic_monoid_Knu70.
n | the number of generators. |
Presentation<word_type>
.LibsemigroupsException | if n < 1 . |
|
nodiscard |
This function returns a presentation defining the monogenic semigroup defined by the presentation \(\langle a \mid a^{m + r} = a^m \rangle\).
If m
is 0, the presentation returned is a monoid presentation; otherwise, a semigroup presentation is returned.
m | the index. |
r | the period. |
Presentation<word_type>
.LibsemigroupsException | if r == 0 . |
|
inlinenodiscard |
This function returns a monoid presentation defining the Motzkin monoid of degree n
, as described in Theorem 4.1 of [50], with the additional relations \( r_i t_i l_i =
r_i ^ 2 \) added to fix a hole in Lemma 4.10 which rendered the presentation as stated in the paper incorrect.
n | the degree. |
Presentation<word_type>
.LibsemigroupsException | if n < 1 . |
motzkin_monoid_PHL13
, and exists as a convenience function for when a presentation for the Motzkin monoid is required, but the relations of the presentation are not important.motzkin_monoid_PHL13
.
|
nodiscard |
This function returns a monoid presentation defining the Motzkin monoid of degree n
, as described in Theorem 4.1 of [50], with the additional relations \( r_i t_i l_i =
r_i ^ 2 \) added to fix a hole in Lemma 4.10 which rendered the presentation as stated in the paper incorrect.
n | the degree. |
Presentation<word_type>
.LibsemigroupsException | if n < 1 . |
|
inlinenodiscard |
This functions returns a presentation that incorrectly claims to be the Renner monoid of type B with size l
and Iwahori-Hecke deformation q
.
When q == 0
, this corresponds to Example 7.1.2 of [26].
When q == 1
, this corresponds to Section 3.2 of [27].
l | the size of the monoid. |
q | the Iwahori-Hecke deformation. |
Presentation<word_type>
.LibsemigroupsException | if q != 0 or q != 1 . |
not_renner_type_B_monoid_Gay18
, and exists as a convenience function for when a presentation that incorrectly claims to be the Renner monoid of type B is required, but the relations of the presentation are not important.not_renner_type_B_monoid_Gay18
.
|
nodiscard |
This functions returns a presentation that incorrectly claims to be the Renner monoid of type B with size l
and Iwahori-Hecke deformation q
.
When q == 0
, this corresponds to Example 7.1.2 of [26].
When q == 1
, this corresponds to Section 3.2 of [27].
l | the size of the monoid. |
q | the Iwahori-Hecke deformation. |
Presentation<word_type>
.LibsemigroupsException | if q != 0 or q != 1 . |
|
inlinenodiscard |
This functions returns a presentation that incorrectly claims to be the Renner monoid of type D with size l
and Iwahori-Hecke deformation q
.
When q == 1
, this corresponds to Section 3.3 of [27].
l | the size of the monoid. |
q | the Iwahori-Hecke deformation. |
Presentation<word_type>
.LibsemigroupsException | if q != 0 or q != 1 . |
not_renner_type_D_monoid_God09
, and exists as a convenience function for when a presentation that incorrectly claims to be the Renner monoid of type D is required, but the relations of the presentation are not important.not_renner_type_D_monoid_God09
|
nodiscard |
This functions returns a presentation that incorrectly claims to be the Renner monoid of type D with size l
and Iwahori-Hecke deformation q
.
When q == 1
, this corresponds to Section 3.3 of [27].
l | the size of the monoid. |
q | the Iwahori-Hecke deformation. |
Presentation<word_type>
.LibsemigroupsException | if q != 0 or q != 1 . |
|
inlinenodiscard |
This function returns a monoid presentation which is claimed to define the symmetric group of degree n
, but does not, as in Section 2.2 of [29].
n | the claimed degree of the symmetric group. |
Presentation<word_type>
.LibsemigroupsException | if n < 4 . |
not_symmetric_group_GKKL08
, and exists as a convenience function for when a presentation that incorrectly claims to be the symmetric group required, but the particular relations in the presentation are not important.not_symmetric_group_GKKL08
.
|
nodiscard |
This function returns a monoid presentation which is claimed to define the symmetric group of degree n
, but does not, as in Section 2.2 of [29].
n | the claimed degree of the symmetric group. |
Presentation<word_type>
.LibsemigroupsException | if n < 4 . |
|
inlinenodiscard |
This function returns a monoid presentation defining the order preserving part of the cyclic inverse monoid of degree n
, as in Theorem 2.17 of [20].
n | the degree. |
Presentation<word_type>
.LibsemigroupsException | if n < 3 . |
order_preserving_cyclic_inverse_monoid_Fer22
, and exists as a convenience function for when a presentation for the order preserving part of the cyclic inverse monoid is required, but the relations of the presentation are not important.
|
nodiscard |
This function returns a monoid presentation defining the order preserving part of the cyclic inverse monoid of degree n
, as in Theorem 2.17 of [20].
n | the degree. |
Presentation<word_type>
.LibsemigroupsException | if n < 3 . |
|
inlinenodiscard |
This function returns a monoid presentation defining the monoid of order preserving transformations of degree n
, as described in Section 2 of [6].
This presentation has \(2n - 2\) generators and \(n^2\) relations.
n | the degree. |
Presentation<word_type>
.LibsemigroupsException | if n < 3 . |
order_preserving_monoid_AR00
, and exists as a convenience function for when a presentation for the order preserving monoid is required, but the particular relations in the presentation are not important.order_preserving_monoid_AR00
.
|
nodiscard |
This function returns a monoid presentation defining the monoid of order preserving transformations of degree n
, as described in Section 2 of [6].
This presentation has \(2n - 2\) generators and \(n^2\) relations.
n | the degree. |
Presentation<word_type>
.LibsemigroupsException | if n < 3 . |
|
inlinenodiscard |
This function returns a monoid presentation defining the monoid of orientation preserving mappings on a finite chain of order n
, as described in [6].
n | the order of the chain. |
Presentation<word_type>
.LibsemigroupsException | if n < 3 . |
orientation_preserving_monoid_AR00
, and exists as a convenience function for when a presentation for the the monoid of orientation preserving mappings on a finite chain is required, but the particular relations in the presentation are not important.orientation_preserving_monoid_AR00
.
|
nodiscard |
This function returns a monoid presentation defining the monoid of orientation preserving mappings on a finite chain of order n
, as described in [6].
n | the order of the chain. |
Presentation<word_type>
.LibsemigroupsException | if n < 3 . |
|
inlinenodiscard |
This function returns a monoid presentation defining the monoid of orientation preserving or reversing mappings on a finite chain of order n
, as described in [6].
n | the order of the chain. |
Presentation<word_type>
.LibsemigroupsException | if n < 3 . |
orientation_preserving_reversing_monoid_AR00
, and exists as a convenience function for when a presentation for the monoid of orientation preserving or reversing mappings on a finite chain is required, but the particular relations in the presentation are not important.
|
nodiscard |
This function returns a monoid presentation defining the monoid of orientation preserving or reversing mappings on a finite chain of order n
, as described in [6].
n | the order of the chain. |
Presentation<word_type>
.LibsemigroupsException | if n < 3 . |
|
inlinenodiscard |
This function returns a monoid presentation defining the partial Brauer monoid of degree n
, as described in Theorem 5.1 of [41].
n | the degree. |
Presentation<word_type>
.LibsemigroupsException | if n < 1 . |
partial_brauer_monoid_KM07
, and exists as a convenience function for when a presentation for the partial Brauer monoid is required, but the relations of the presentation are not important.partial_brauer_monoid_KM07
.
|
nodiscard |
This function returns a monoid presentation defining the partial Brauer monoid of degree n
, as described in Theorem 5.1 of [41].
n | the degree. |
Presentation<word_type>
.LibsemigroupsException | if n < 1 . |
|
inlinenodiscard |
This function returns a monoid presentation defining the monoid of partial isometries of an \(n\)-cycle graph, as in Theorem 2.8 of [19]
n | the number of vertices of the cycle graph. |
Presentation<word_type>
.LibsemigroupsException | if n < 3 . |
partial_isometries_cycle_graph_monoid_FP22
, and exists as a convenience function for when a presentation for the monoid of partial isometries of an \(n\)-cycle graph is required, but the relations of the presentation are not important.
|
nodiscard |
This function returns a monoid presentation defining the monoid of partial isometries of an \(n\)-cycle graph, as in Theorem 2.8 of [19]
n | the number of vertices of the cycle graph. |
Presentation<word_type>
.LibsemigroupsException | if n < 3 . |
|
inlinenodiscard |
This function returns a monoid presentation defining the partial transformation monoid of degree n
, as in Theorem 1.6 of [46].
n | the degree of the partial transformation monoid. |
Presentation<word_type>
.LibsemigroupsException | if n < 2 . |
partial_transformation_monoid_MW24
, and exists as a convenience function for when a presentation for the partial transformation monoid is required, but the particular relations in the presentation are not important.
|
nodiscard |
This function returns a monoid presentation defining the partial transformation monoid of degree n
, as in Theorem 1.6 of [46].
n | the degree of the partial transformation monoid. |
Presentation<word_type>
.LibsemigroupsException | if n < 2 . |
|
nodiscard |
This function returns a monoid presentation defining the partial transformation monoid of degree n
due to Shutov [53], as in Theorem 9.4.1 of [24].
n | the degree of the partial transformation monoid. |
Presentation<word_type>
.LibsemigroupsException | if n < 4 . |
|
inlinenodiscard |
This function returns a monoid presentation defining the partition monoid of degree n
, as in Theorem 41 of [17].
n | the degree. |
Presentation<word_type>
.LibsemigroupsException | if n < 4 . |
partition_monoid_Eas11
, and exists as a convenience function for when a presentation for the partition monoid is required, but the relations of the presentation are not important.
|
nodiscard |
This function returns a monoid presentation defining the partition monoid of degree n
, as in Theorem 41 of [17].
n | the degree. |
Presentation<word_type>
.LibsemigroupsException | if n < 4 . |
|
nodiscard |
This function returns a monoid presentation defining the partition monoid of degree n
, as in [30].
n | the degree. |
Presentation<word_type>
.LibsemigroupsException | if n < 1 . |
|
inlinenodiscard |
This function returns a monoid presentation defining the plactic monoid with n
generators, as in see Theorem 6 of [38].
n | the number of generators. |
Presentation<word_type>
.LibsemigroupsException | if n < 2 . |
plactic_monoid_Knu70
, and exists as a convenience function for when a presentation for the plactic monoid is required, but the relations of the presentation are not important.plactic_monoid_Knu70
.
|
nodiscard |
This function returns a monoid presentation defining the plactic monoid with n
generators, as in see Theorem 6 of [38].
n | the number of generators. |
Presentation<word_type>
.LibsemigroupsException | if n < 2 . |
|
inlinenodiscard |
This function returns a semigroup presentation defining the m
by n
rectangular band, as given in Proposition 4.2 of [7].
m | the number of rows. |
n | the number of columns. |
Presentation<word_type>
.LibsemigroupsException | if m == 0 . |
LibsemigroupsException | if n == 0 . |
rectangular_band_ACOR00
, and exists as a convenience function for when a presentation for a rectangular band is required, but the relations of the presentation are not important.rectangular_band_ACOR00
.
|
nodiscard |
This function returns a semigroup presentation defining the m
by n
rectangular band, as given in Proposition 4.2 of [7].
m | the number of rows. |
n | the number of columns. |
Presentation<word_type>
.LibsemigroupsException | if m == 0 . |
LibsemigroupsException | if n == 0 . |
|
inlinenodiscard |
This functions returns a presentation for the Renner monoid of type B with size l
and Iwahori-Hecke deformation q
.
When q == 0
, this corresponds to Definition 8.4.1 and Example 8.4.2 of [26].
When q == 1
, this corresponds to Theorem 8.4.19 of [26].
l | the size of the monoid. |
q | the Iwahori-Hecke deformation. |
Presentation<word_type>
.LibsemigroupsException | if q != 0 or q != 1 . |
renner_type_B_monoid_Gay18
, and exists as a convenience function for when a presentation for the Renner monoid of type B is required, but the particular relations in the presentation are not important.renner_type_B_monoid_Gay18
.
|
nodiscard |
This functions returns a presentation for the Renner monoid of type B with size l
and Iwahori-Hecke deformation q
.
When q == 0
, this corresponds to Definition 8.4.1 and Example 8.4.2 of [26].
When q == 1
, this corresponds to Theorem 8.4.19 of [26].
l | the size of the monoid. |
q | the Iwahori-Hecke deformation. |
Presentation<word_type>
.LibsemigroupsException | if q != 0 or q != 1 . |
|
inlinenodiscard |
This functions returns a presentation for the Renner monoid of type D with size l
and Iwahori-Hecke deformation q
.
When q == 0
, this corresponds Definition 8.4.22 of [26].
When q == 1
, this corresponds to Theorem 8.4.43 of [26].
l | the size of the monoid. |
q | the Iwahori-Hecke deformation. |
Presentation<word_type>
.LibsemigroupsException | if q != 0 or q != 1 . |
renner_type_D_monoid_Gay18
, and exists as a convenience function for when a presentation for the Renner monoid of type D is required, but the particular relations in the presentation are not important.renner_type_D_monoid_Gay18
|
nodiscard |
This functions returns a presentation for the Renner monoid of type D with size l
and Iwahori-Hecke deformation q
.
When q == 0
, this corresponds Definition 8.4.22 of [26].
When q == 1
, this corresponds to Theorem 8.4.43 of [26].
l | the size of the monoid. |
q | the Iwahori-Hecke deformation. |
Presentation<word_type>
.LibsemigroupsException | if q != 0 or q != 1 . |
|
inlinenodiscard |
This function returns a presentation for the \(\sigma\)-plactic monoid with sigma.size()
generators as in Section 3.1 [2]. The image of \(\sigma\) is given by the values in sigma
.
The \(\sigma\)-plactic monoid is the quotient of the plactic monoid by the least congruence containing the relation \(a^{\sigma(a)} = a\) for each \(a\) in the alphabet. When \(\sigma(a) = 2\) for all \(a\), the resultant \(\sigma\)-plactic monoid is known as the stylic monoid, and is given in stylic_monoid.
sigma | a vector representing the image of \(\sigma\). |
Presentation<word_type>
.LibsemigroupsException | if sigma.size() < 1 . |
sigma_plactic_monoid_AHMNT24
, and exists as a convenience function for when a presentation for the \(\sigma\)-plactic monoid is required, but the particular relations in the presentation are not important.sigma_plactic_monoid_AHMNT24
|
nodiscard |
This function returns a presentation for the \(\sigma\)-plactic monoid with sigma.size()
generators as in Section 3.1 [2]. The image of \(\sigma\) is given by the values in sigma
.
The \(\sigma\)-plactic monoid is the quotient of the plactic monoid by the least congruence containing the relation \(a^{\sigma(a)} = a\) for each \(a\) in the alphabet. When \(\sigma(a) = 2\) for all \(a\), the resultant \(\sigma\)-plactic monoid is known as the stylic monoid, and is given in stylic_monoid.
sigma | a vector representing the image of \(\sigma\). |
Presentation<word_type>
.LibsemigroupsException | if sigma.size() < 1 . |
|
inlinenodiscard |
This function returns a monoid presentation for the singular part of the Brauer monoid of degree n
, as in Theorem 5 of [43].
n | the degree. |
Presentation<word_type>
.LibsemigroupsException | if n < 3 . |
singular_brauer_monoid_MM07
, and exists as a convenience function for when a presentation for the singular part of the brauer monoid is required, but the particular relations in the presentation are not important.singular_brauer_monoid_MM07
.
|
nodiscard |
This function returns a monoid presentation for the singular part of the Brauer monoid of degree n
, as in Theorem 5 of [43].
n | the degree. |
Presentation<word_type>
.LibsemigroupsException | if n < 3 . |
|
inlinenodiscard |
This function returns a presentation for the special linear group \(\mathrm{SL}(2, q)\) (also written \(\mathrm{SL(2,
\mathbb{Z}_q)}\)), where q
is an odd prime, as in Theorem 4 of [10].
q | the order of the finite field over which the special linear group is constructed. This should be an odd prime for the returned presentation to define claimed group. |
Presentation<word_type>
.LibsemigroupsException | if q < 3 . |
special_linear_group_2_CR80
, and exists as a convenience function for when a presentation for the special linear group \(\mathrm{SL}(2,q)\) is required, but the relations of the presentation are not important.special_linear_group_2_CR80
.
|
nodiscard |
This function returns a presentation for the special linear group \(\mathrm{SL}(2, q)\) (also written \(\mathrm{SL(2,
\mathbb{Z}_q)}\)), where q
is an odd prime, as in Theorem 4 of [10].
q | the order of the finite field over which the special linear group is constructed. This should be an odd prime for the returned presentation to define claimed group. |
Presentation<word_type>
.LibsemigroupsException | if q < 3 . |
|
inlinenodiscard |
This function returns a monoid presentation defining the stellar monoid with l
generators, as in Theorem 4.39 of [25].
l | the number of generators. |
Presentation<word_type>
.LibsemigroupsException | if l < 2 . |
stellar_monoid_GH19
, and exists as a convenience function for when a presentation for the stellar monoid is required, but the relations of the presentation are not important.stellar_monoid_GH19
.
|
nodiscard |
This function returns a monoid presentation defining the stellar monoid with l
generators, as in Theorem 4.39 of [25].
l | the number of generators. |
Presentation<word_type>
.LibsemigroupsException | if l < 2 . |
|
inlinenodiscard |
This function returns a monoid presentation defining the stylic monoid with n
generators, as in Theorem 8.1 of [1].
n | the number of generators. |
Presentation<word_type>
.LibsemigroupsException | if n < 2 . |
stylic_monoid_AR22
, and exists as a convenience function for when a presentation for the stylic monoid is required, but the relations of the presentation are not important.stylic_monoid_AR22
.
|
nodiscard |
This function returns a monoid presentation defining the stylic monoid with n
generators, as in Theorem 8.1 of [1].
n | the number of generators. |
Presentation<word_type>
.LibsemigroupsException | if n < 2 . |
|
inlinenodiscard |
This function returns a monoid presentation for the symmetric group of degree n
, as on page 169 of [12]. This presentation has \(n - 1\) generators and \((n - 1)^2\) relations.
n | the degree of the symmetric group. |
Presentation<word_type>
.LibsemigroupsException | if n < 2 . |
symmetric_group_Car56
, and exists as a convenience function for when a presentation for the symmetric group is required, but the relations of the presentation are not important.
|
nodiscard |
This function returns a monoid presentation for the symmetric group of degree n
, as in p.464 of [9]. This presentation has \(n - 1\) generators and \(n^3 - 5n^2 + 9n - 5\) relations.
n | the degree of the symmetric group. |
Presentation<word_type>
.LibsemigroupsException | if n < 2 . |
|
nodiscard |
This function returns a monoid presentation for the symmetric group of degree n
, as on page 169 of [12]. This presentation has \(n - 1\) generators and \((n - 1)^2\) relations.
n | the degree of the symmetric group. |
Presentation<word_type>
.LibsemigroupsException | if n < 2 . |
|
nodiscard |
This function returns a monoid presentation for the symmetric group of degree n
, as in Theorem A of [47]. This presentation has \(n - 1\) generators and \(\frac{1}{2}n(n - 1)\) relations.
n | the degree of the symmetric group. |
Presentation<word_type>
.LibsemigroupsException | if n < 2 . |
|
nodiscard |
This function returns a monoid presentation for the symmetric group of degree n
, as in in Theorem A' of [47]. This presentation has \(2\) generators and \(n + 1\) relations for \(n
\geq 4\). If \(n<4\) then there are \(4\) relations.
n | the degree of the symmetric group. |
Presentation<word_type>
.LibsemigroupsException | if n < 2 . |
|
inlinenodiscard |
This function returns a monoid presentation defining the partial transformation monoid of degree n
, as in Theorem 1.6 of [46].
n | the degree of the partial transformation monoid. |
Presentation<word_type>
.LibsemigroupsException | if n < 2 . |
symmetric_inverse_monoid_MW24
, and exists as a convenience function for when a presentation for the symmetric inverse monoid is required, but the particular relations in the presentation are not important.
|
nodiscard |
This function returns a monoid presentation defining the partial transformation monoid of degree n
, as in Theorem 1.4 of [46].
n | the degree of the symmetric inverse monoid. |
Presentation<word_type>
.LibsemigroupsException | if n < 4 . |
|
nodiscard |
This function returns a monoid presentation defining the symmetric inverse monoid of degree n
due to Shutov [53], as in Theorem 9.2.2 of [24].
n | the degree of the symmetric inverse monoid. |
Presentation<word_type>
.LibsemigroupsException | if n < 4 . |
|
nodiscard |
This function returns a monoid presentation defining the symmetric inverse monoid of degree n
, as in Equation 1.7 with q = 1 in [55].
n | the degree of the symmetric inverse monoid. |
Presentation<word_type>
.LibsemigroupsException | if n < 2 . |
|
inlinenodiscard |
This function returns a monoid presentation defining the Temperley-Lieb monoid with n
generators, as described in Theorem 2.2 of [18].
n | the number of generators. |
Presentation<word_type>
.LibsemigroupsException | if n < 3 . |
temperley_lieb_monoid_Eas21
, and exists as a convenience function for when a presentation for the Temperley-Lieb monoid is required, but the particular relations in the presentation are not important.temperley_lieb_monoid_Eas21
.
|
nodiscard |
This function returns a monoid presentation defining the Temperley-Lieb monoid with n
generators, as described in Theorem 2.2 of [18].
n | the number of generators. |
Presentation<word_type>
.LibsemigroupsException | if n < 3 . |
|
inlinenodiscard |
This function returns a monoid presentation defining the uniform block bijection monoid of degree n
, as in [21].
n | the degree. |
Presentation<word_type>
.LibsemigroupsException | if n < 3 . |
uniform_block_bijection_monoid_Fit03
, and exists as a convenience function for when a presentation for the uniform block bijection monoid is required, but the relations of the presentation are not important.uniform_block_bijection_monoid_Fit03
.
|
nodiscard |
This function returns a monoid presentation defining the uniform block bijection monoid of degree n
, as in [21].
n | the degree. |
Presentation<word_type>
.LibsemigroupsException | if n < 3 . |
|
inlinenodiscard |
This function returns a presentation for the \(0\)-rook monoid of degree n
, as in Definition 4.1.1 in [26]
n | the degree. |
Presentation<word_type>
.LibsemigroupsException | if n < 2 . |
zero_rook_monoid_Gay18
, and exists as a convenience function for when a presentation for the \(0\)-rook monoid is required, but the relations of the presentation are not important.zero_rook_monoid_Gay18
.
|
nodiscard |
This function returns a presentation for the \(0\)-rook monoid of degree n
, as in Definition 4.1.1 in [26]
n | the degree. |
Presentation<word_type>
.LibsemigroupsException | if n < 2 . |