Examples¶
This page contains the documentation for examples of finitely presented semigroups.
- class author¶
The values in this enum class are used to specify the authors of a presentation. Where there are different presentations by different authors, values of this type can be passed as an argument to the functions described on this page to disambiguate which presentation is wanted.
The author values can be combined via the operator
+.
A presentation for the symmetric group. |
|
A presentation for the alternating group. |
|
A presentation for the full transformation monoid. |
|
A presentation for the partial transformation monoid. |
|
A presentation for the symmetric inverse monoid. |
|
A presentation for the dual symmetric inverse monoid. |
|
A presentation for the uniform block bijection monoid. |
|
A presentation for the partition monoid. |
|
A presentation for the Brauer monoid. |
|
A presentation for a rectangular band. |
|
A presentation for the stellar monoid. |
|
A presentation for the Chinese monoid. |
|
A presentation for a monogenic semigroup. |
|
A presentation for the plactic monoid. |
|
A presentation for the stylic monoid. |
|
A presentation for a Fibonacci semigroup. |
|
A presentation for the Temperley-Lieb monoid. |
|
A presentation for the singular part of the Brauer monoid. |
|
A presentation for the monoid of orientation preserving mappings. |
|
A presentation for the monoid of orientation reversing mappings. |
Full API¶
- symmetric_group(n: int, val: author = author.Carmichael) -> List[Tuple[List[int], List[int]]])¶
A presentation for the symmetric group.
Returns a list giving a monoid presentation for the symmetric group. The argument
valdetermines the specific presentation which is returned. The options are:author.Burnside + author.Miller(given on p.464 of 10.1017/CBO9781139237253)author.Carmichael(given in comment 9.5.2 of 10.1007/978-1-84800-281-4)author.Coxeter + author.Moser(see Ch. 3, Prop 1.2 of hdl.handle.net/10023/2821)author.Moore(given in comment 9.5.3 of 10.1007/978-1-84800-281-4)
The default for
valisauthor.Carmichael.- Parameters
- Returns
List[Tuple[List[int], List[int]]]
- Raises
RuntimeError -- if
n < 4RuntimeError -- if
valis not one of the combinations of authors listed above (modulo order of author)
- alternating_group(n: int, val: author) -> List[Tuple[List[int], List[int]]])¶
A presentation for the alternating group.
Returns a list giving a monoid presentation defining the alternating group of degree
n. The argumentvaldetermines the specific presentation which is returned. The options are:author.Moore(see Ch. 3, Prop 1.3 of hdl.handle.net/10023/2821)
The default for
valisauthor.Moore.- Parameters
- Returns
List[Tuple[List[int], List[int]]]
- Raises
RuntimeError -- if
n < 4RuntimeError -- if
valis not one of the combinations of authors listed above (modulo order of author)
- full_transformation_monoid(n: int, val: author) -> List[Tuple[List[int], List[int]]])¶
A presentation for the full transformation monoid.
Returns a list giving a monoid presentation defining the full transformation monoid. The argument
valdetermines the specific presentation which is returned. The options are:author.Aizenstat(see Ch. 3, Prop 1.7 of hdl.handle.net/10023/2821)author.Iwahori(see Theorem 9.3.1 of 10.1007/978-1-84800-281-4)
The default for
valisauthor.Iwahori.- Parameters
- Returns
List[Tuple[List[int], List[int]]]
- Raises
RuntimeError -- if
n < 4RuntimeError -- if
valis not one of the combinations of authors listed above (modulo order of author)
- partial_transformation_monoid(n: int, val: author) -> List[Tuple[List[int], List[int]]])¶
A presentation for the partial transformation monoid.
Returns a list giving a monoid presentation defining the partial transformation monoid. The argument
valdetermines the specific presentation which is returned. The options are:author.Machineauthor.Sutov(see Theorem 9.4.1 of 10.1007/978-1-84800-281-4)
The default for
valisauthor.Sutov.- Parameters
- Returns
List[Tuple[List[int], List[int]]]
- Raises
RuntimeError -- if
n < 4RuntimeError -- if
valis not one of the combinations of authors listed above (modulo order of author)
- symmetric_inverse_monoid(n: int, val: author) -> List[Tuple[List[int], List[int]]])¶
A presentation for the symmetric inverse monoid.
Returns a list giving a monoid presentation defining the symmetric inverse monoid. The argument
valdetermines the specific presentation which is returned. The options are:author.Sutov(see Theorem 9.2.2 of 10.1007/978-1-84800-281-4)
The default for
valis the only option above.- Parameters
- Returns
List[Tuple[List[int], List[int]]]
- Raises
RuntimeError -- if
n < 4RuntimeError -- if
valis not one of the combinations of authors listed above (modulo order of author)
- dual_symmetric_inverse_monoid(n: int, val: author) -> List[Tuple[List[int], List[int]]])¶
A presentation for the dual symmetric inverse monoid.
Returns a list giving a semigroup presentation defining the dual symmetric inverse monoid of degree
n. The argumentvaldetermines the specific presentation which is returned. The options are:author.Easdown + author.East + author.FitzGerald(from Section 3 of 10.48550/arxiv.0707.2439)
The default for
valis the only option above.- Parameters
- Returns
List[Tuple[List[int], List[int]]]
- Raises
RuntimeError -- if
n < 3RuntimeError -- if
valis not one of the combinations of authors listed above (modulo order of author)
- uniform_block_bijection_monoid(n: int, val: author) -> List[Tuple[List[int], List[int]]])¶
A presentation for the uniform block bijection monoid.
Returns a list giving a semigroup presentation defining the uniform block bijection monoid of degree
n. The argumentvaldetermines the specific presentation which is returned. The only option is:author.FitzGerald(see 10.1017/s0004972700037692)
The default for
valis the only option above.- Parameters
- Returns
List[Tuple[List[int], List[int]]]
- Raises
RuntimeError -- if
n < 3RuntimeError -- if
valis not one of the combinations of authors listed above (modulo order of author)
- partition_monoid(n: int, val: author) -> List[Tuple[List[int], List[int]]])¶
A presentation for the partition monoid.
Returns a list giving a semigroup presentation defining the partition monoid of degree
n. The argumentvaldetermines the specific presentation which is returned. The options are:author.Machineauthor.East(see Theorem 41 of 10.1016/j.jalgebra.2011.04.008)
The default for
valisauthor.East.- Parameters
- Returns
List[Tuple[List[int], List[int]]]
- Raises
RuntimeError -- if
n < 4andval = author.EastRuntimeError -- if
n != 3andval = author.MachineRuntimeError -- if
valis not one of the combinations of authors listed above (modulo order of author)
- brauer_monoid(n: int) -> List[Tuple[List[int], List[int]]])¶
A presentation for the Brauer monoid.
Returns a list giving a semigroup presentation defining the Brauer monoid of degree
n, as described in Theorem 3.1 of the paper 10.2478/s11533-006-0017-6.- Parameters
n (int) -- the degree
- Returns
List[Tuple[List[int], List[int]]]
- rectangular_band(m: int, n: int) -> List[Tuple[List[int], List[int]]])¶
A presentation for a rectangular band.
Returns a list giving a semigroup presentation defining the
mbynrectangular band, as given in Proposition 4.2 of 10.1007/s002339910016.- Parameters
- Returns
List[Tuple[List[int], List[int]]]
- Raises
RuntimeError -- if
m = 0RuntimeError -- if
n = 0
- stellar_monoid(l: int) -> List[Tuple[List[int], List[int]]])¶
A presentation for the stellar monoid.
Returns a list giving a semigroup presentation defining the stellar monoid with
lgenerators, as in Theorem 4.39 of 10.48550/arXiv.1910.11740.- Parameters
l (int) -- the number of generators
- Returns
List[Tuple[List[int], List[int]]
- Raises
RuntimeError -- if
l < 2
- chinese_monoid(l: int) -> List[Tuple[List[int], List[int]]])¶
A presentation for the Chinese monoid.
Returns a list giving a semigroup presentation defining the Chinese monoid with
ngenerators, as described in 10.1142/S0218196701000425.- Parameters
n (int) -- the number of generators
- Returns
List[Tuple[List[int], List[int]]
- Raises
RuntimeError -- if
n < 2
- monogenic_semigroup(m: int, r: int) -> List[Tuple[List[int], List[int]]])¶
A presentation for a monogenic semigroup.
Returns a list giving a semigroup presentation defining the monogenic semigroup defined by the presentation \(\langle a \mid a^{m + r} = a^m \rangle\).
- Parameters
- Returns
List[Tuple[List[int], List[int]]]
- Raises
RuntimeError -- if
r = 0
- plactic_monoid(n: int) -> List[Tuple[List[int], List[int]]])¶
A presentation for the plactic monoid.
Returns a list giving a semigroup presentation defining the plactic monoid with
ngenerators (see Section 3 of 10.1007/s00233-022-10285-3).- Parameters
n (int) -- the number of generators
- Returns
List[Tuple[List[int], List[int]]]
- Raises
RuntimeError -- if
n < 2
- stylic_monoid(n: int) -> List[Tuple[List[int], List[int]]])¶
A presentation for the stylic monoid.
Returns a list giving a semigroup presentation defining the stylic monoid with
ngenerators (see Theorem 8.1 of 10.1007/s00233-022-10285-3).- Parameters
n (int) -- the number of generators
- Returns
List[Tuple[List[int], List[int]]]
- Raises
RuntimeError -- if
n < 2
- fibonacci_semigroup(r: int, n: int) -> List[Tuple[List[int], List[int]]])¶
A presentation for a Fibonacci semigroup.
Returns a list giving a semigroup presentation defining the Fibonacci semigroup \(F(r, n)\), as described in the paper 10.1016/0022-4049(94)90005-1.
- Parameters
- Returns
List[Tuple[List[int], List[int]]]
- Raises
RuntimeError -- if
n = 0RuntimeError -- if
r = 0
- temperley_lieb_monoid(n: int) -> List[Tuple[List[int], List[int]]])¶
A presentation for the Temperley-Lieb monoid.
Returns a list giving a semigroup presentation defining the Temperley-Lieb monoid with
ngenerators, as described in Theorem 2.2 of the paper 10.1093/qmath/haab001.- Parameters
n (int) -- the number of generators
- Returns
List[Tuple[List[int], List[int]]]
- Raises
RuntimeError -- if
n < 3
- singular_brauer_monoid(n: int) -> List[Tuple[List[int], List[int]]])¶
A presentation for the singular part of the Brauer monoid.
Returns a list giving a semigroup presentation for the singular part of the Brauer monoid of degree
n, as in Theorem 5 of the paper 10.21136/MB.2007.134125).- Parameters
n (int) -- the degree
- Returns
List[Tuple[List[int], List[int]]]
- Raises
RuntimeError -- if
n < 3
- orientation_preserving_monoid(n: int) -> List[Tuple[List[int], List[int]]])¶
A presentation for the monoid of orientation preserving mappings.
Returns a list giving a semigroup presentation defining the monoid of orientation preserving mappings on a finite chain of order
n, as described in the paper 10.1007/s10012-000-0001-1.- Parameters
n (int) -- the order of the chain
- Returns
List[Tuple[List[int], List[int]]]
- Raises
RuntimeError -- if
n < 3
- orientation_reversing_monoid(n: int) -> List[Tuple[List[int], List[int]]])¶
A presentation for the monoid of orientation preserving mappings.
Returns a list giving a semigroup presentation defining the monoid of orientation reversing mappings on a finite chain of order
n, as described in the paper 10.1007/s10012-000-0001-1.- Parameters
n (int) -- the order of the chain
- Returns
List[Tuple[List[int], List[int]]]
- Raises
RuntimeError -- if
n < 3