passagemath-gap-pkg-semigroups 10.6.29__cp312-abi3-musllinux_1_2_aarch64.whl

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.

Potentially problematic release.


This version of passagemath-gap-pkg-semigroups might be problematic. Click here for more details.

Files changed (356) hide show
  1. gap/pkg/semigroups/CHANGELOG.md +1699 -0
  2. gap/pkg/semigroups/CONTRIBUTING.md +91 -0
  3. gap/pkg/semigroups/GNUmakefile +110 -0
  4. gap/pkg/semigroups/GNUmakefile.in +110 -0
  5. gap/pkg/semigroups/GPL +674 -0
  6. gap/pkg/semigroups/LICENSE +16 -0
  7. gap/pkg/semigroups/Makefile +26 -0
  8. gap/pkg/semigroups/Makefile.gappkg +225 -0
  9. gap/pkg/semigroups/PackageInfo.g +529 -0
  10. gap/pkg/semigroups/README.md +102 -0
  11. gap/pkg/semigroups/VERSIONS +112 -0
  12. gap/pkg/semigroups/aclocal.m4 +375 -0
  13. gap/pkg/semigroups/autogen.sh +25 -0
  14. gap/pkg/semigroups/bin/aarch64-unknown-linux-musl-default64-kv10/semigroups.so +0 -0
  15. gap/pkg/semigroups/config.guess +1807 -0
  16. gap/pkg/semigroups/config.log +1021 -0
  17. gap/pkg/semigroups/config.status +1131 -0
  18. gap/pkg/semigroups/config.sub +1960 -0
  19. gap/pkg/semigroups/configure +9742 -0
  20. gap/pkg/semigroups/configure.ac +71 -0
  21. gap/pkg/semigroups/data/doc/greens.pickle +1 -0
  22. gap/pkg/semigroups/data/gens/fullbool-8.pickle.gz +0 -0
  23. gap/pkg/semigroups/data/gens/fullbool.pickle.gz +0 -0
  24. gap/pkg/semigroups/data/gens/hall.pickle.gz +0 -0
  25. gap/pkg/semigroups/data/gens/reflex-6.pickle.gz +0 -0
  26. gap/pkg/semigroups/data/gens/reflex.pickle.gz +0 -0
  27. gap/pkg/semigroups/data/tst/bipart4 +10 -0
  28. gap/pkg/semigroups/data/tst/pperm10 +1 -0
  29. gap/pkg/semigroups/data/tst/tables.gz +0 -0
  30. gap/pkg/semigroups/data/tst/testdata +1 -0
  31. gap/pkg/semigroups/data/tst/testinstall.pickle +1 -0
  32. gap/pkg/semigroups/data/tst/trans3 +7 -0
  33. gap/pkg/semigroups/data/tst/trans3-old +7 -0
  34. gap/pkg/semigroups/environment.yml +7 -0
  35. gap/pkg/semigroups/gap/attributes/acting.gd +15 -0
  36. gap/pkg/semigroups/gap/attributes/acting.gi +297 -0
  37. gap/pkg/semigroups/gap/attributes/attr.gd +91 -0
  38. gap/pkg/semigroups/gap/attributes/attr.gi +1214 -0
  39. gap/pkg/semigroups/gap/attributes/dual.gd +25 -0
  40. gap/pkg/semigroups/gap/attributes/dual.gi +209 -0
  41. gap/pkg/semigroups/gap/attributes/factor.gd +17 -0
  42. gap/pkg/semigroups/gap/attributes/factor.gi +453 -0
  43. gap/pkg/semigroups/gap/attributes/homomorph.gd +84 -0
  44. gap/pkg/semigroups/gap/attributes/homomorph.gi +591 -0
  45. gap/pkg/semigroups/gap/attributes/inverse.gd +38 -0
  46. gap/pkg/semigroups/gap/attributes/inverse.gi +708 -0
  47. gap/pkg/semigroups/gap/attributes/isomorph.gd +16 -0
  48. gap/pkg/semigroups/gap/attributes/isomorph.gi +377 -0
  49. gap/pkg/semigroups/gap/attributes/isorms.gd +49 -0
  50. gap/pkg/semigroups/gap/attributes/isorms.gi +1383 -0
  51. gap/pkg/semigroups/gap/attributes/maximal.gd +16 -0
  52. gap/pkg/semigroups/gap/attributes/maximal.gi +1876 -0
  53. gap/pkg/semigroups/gap/attributes/properties.gd +109 -0
  54. gap/pkg/semigroups/gap/attributes/properties.gi +1658 -0
  55. gap/pkg/semigroups/gap/attributes/rms-translat.gd +39 -0
  56. gap/pkg/semigroups/gap/attributes/rms-translat.gi +1078 -0
  57. gap/pkg/semigroups/gap/attributes/semifp.gd +12 -0
  58. gap/pkg/semigroups/gap/attributes/semifp.gi +84 -0
  59. gap/pkg/semigroups/gap/attributes/translat.gd +474 -0
  60. gap/pkg/semigroups/gap/attributes/translat.gi +1779 -0
  61. gap/pkg/semigroups/gap/congruences/cong.gd +154 -0
  62. gap/pkg/semigroups/gap/congruences/cong.gi +351 -0
  63. gap/pkg/semigroups/gap/congruences/conginv.gd +38 -0
  64. gap/pkg/semigroups/gap/congruences/conginv.gi +589 -0
  65. gap/pkg/semigroups/gap/congruences/conglatt.gd +101 -0
  66. gap/pkg/semigroups/gap/congruences/conglatt.gi +886 -0
  67. gap/pkg/semigroups/gap/congruences/congpairs.gd +21 -0
  68. gap/pkg/semigroups/gap/congruences/congpairs.gi +272 -0
  69. gap/pkg/semigroups/gap/congruences/congpart.gd +90 -0
  70. gap/pkg/semigroups/gap/congruences/congpart.gi +449 -0
  71. gap/pkg/semigroups/gap/congruences/congrees.gd +20 -0
  72. gap/pkg/semigroups/gap/congruences/congrees.gi +313 -0
  73. gap/pkg/semigroups/gap/congruences/congrms.gd +54 -0
  74. gap/pkg/semigroups/gap/congruences/congrms.gi +1467 -0
  75. gap/pkg/semigroups/gap/congruences/congsemigraph.gd +28 -0
  76. gap/pkg/semigroups/gap/congruences/congsemigraph.gi +289 -0
  77. gap/pkg/semigroups/gap/congruences/congsimple.gd +27 -0
  78. gap/pkg/semigroups/gap/congruences/congsimple.gi +236 -0
  79. gap/pkg/semigroups/gap/congruences/conguniv.gd +20 -0
  80. gap/pkg/semigroups/gap/congruences/conguniv.gi +271 -0
  81. gap/pkg/semigroups/gap/congruences/congwordgraph.gd +21 -0
  82. gap/pkg/semigroups/gap/congruences/congwordgraph.gi +250 -0
  83. gap/pkg/semigroups/gap/elements/bipart.gd +71 -0
  84. gap/pkg/semigroups/gap/elements/bipart.gi +995 -0
  85. gap/pkg/semigroups/gap/elements/blocks.gd +31 -0
  86. gap/pkg/semigroups/gap/elements/blocks.gi +134 -0
  87. gap/pkg/semigroups/gap/elements/boolmat.gd +74 -0
  88. gap/pkg/semigroups/gap/elements/boolmat.gi +726 -0
  89. gap/pkg/semigroups/gap/elements/elements.gd +11 -0
  90. gap/pkg/semigroups/gap/elements/elements.gi +121 -0
  91. gap/pkg/semigroups/gap/elements/ffmat.gd +71 -0
  92. gap/pkg/semigroups/gap/elements/ffmat.gi +311 -0
  93. gap/pkg/semigroups/gap/elements/maxplusmat.gd +131 -0
  94. gap/pkg/semigroups/gap/elements/maxplusmat.gi +782 -0
  95. gap/pkg/semigroups/gap/elements/pbr.gd +51 -0
  96. gap/pkg/semigroups/gap/elements/pbr.gi +740 -0
  97. gap/pkg/semigroups/gap/elements/pperm.gd +11 -0
  98. gap/pkg/semigroups/gap/elements/pperm.gi +14 -0
  99. gap/pkg/semigroups/gap/elements/semiringmat.gd +136 -0
  100. gap/pkg/semigroups/gap/elements/semiringmat.gi +717 -0
  101. gap/pkg/semigroups/gap/elements/star.gd +21 -0
  102. gap/pkg/semigroups/gap/elements/star.gi +21 -0
  103. gap/pkg/semigroups/gap/elements/trans.gd +13 -0
  104. gap/pkg/semigroups/gap/elements/trans.gi +50 -0
  105. gap/pkg/semigroups/gap/fp/freeband.gd +22 -0
  106. gap/pkg/semigroups/gap/fp/freeband.gi +502 -0
  107. gap/pkg/semigroups/gap/fp/freeinverse.gd +30 -0
  108. gap/pkg/semigroups/gap/fp/freeinverse.gi +465 -0
  109. gap/pkg/semigroups/gap/fp/tietze.gd +89 -0
  110. gap/pkg/semigroups/gap/fp/tietze.gi +1578 -0
  111. gap/pkg/semigroups/gap/fp/word.gd +15 -0
  112. gap/pkg/semigroups/gap/fp/word.gi +67 -0
  113. gap/pkg/semigroups/gap/greens/acting-inverse.gi +774 -0
  114. gap/pkg/semigroups/gap/greens/acting-regular.gi +553 -0
  115. gap/pkg/semigroups/gap/greens/acting.gd +81 -0
  116. gap/pkg/semigroups/gap/greens/acting.gi +2433 -0
  117. gap/pkg/semigroups/gap/greens/froidure-pin.gd +25 -0
  118. gap/pkg/semigroups/gap/greens/froidure-pin.gi +741 -0
  119. gap/pkg/semigroups/gap/greens/generic.gd +117 -0
  120. gap/pkg/semigroups/gap/greens/generic.gi +630 -0
  121. gap/pkg/semigroups/gap/ideals/acting.gd +17 -0
  122. gap/pkg/semigroups/gap/ideals/acting.gi +1155 -0
  123. gap/pkg/semigroups/gap/ideals/froidure-pin.gd +11 -0
  124. gap/pkg/semigroups/gap/ideals/froidure-pin.gi +105 -0
  125. gap/pkg/semigroups/gap/ideals/ideals.gd +45 -0
  126. gap/pkg/semigroups/gap/ideals/ideals.gi +442 -0
  127. gap/pkg/semigroups/gap/ideals/lambda-rho.gd +16 -0
  128. gap/pkg/semigroups/gap/ideals/lambda-rho.gi +614 -0
  129. gap/pkg/semigroups/gap/libsemigroups/cong.gd +24 -0
  130. gap/pkg/semigroups/gap/libsemigroups/cong.gi +431 -0
  131. gap/pkg/semigroups/gap/libsemigroups/fpsemi.gd +16 -0
  132. gap/pkg/semigroups/gap/libsemigroups/fpsemi.gi +53 -0
  133. gap/pkg/semigroups/gap/libsemigroups/froidure-pin.gd +17 -0
  134. gap/pkg/semigroups/gap/libsemigroups/froidure-pin.gi +945 -0
  135. gap/pkg/semigroups/gap/libsemigroups/sims1.gd +38 -0
  136. gap/pkg/semigroups/gap/libsemigroups/sims1.gi +308 -0
  137. gap/pkg/semigroups/gap/main/acting.gd +36 -0
  138. gap/pkg/semigroups/gap/main/acting.gi +779 -0
  139. gap/pkg/semigroups/gap/main/froidure-pin.gd +72 -0
  140. gap/pkg/semigroups/gap/main/froidure-pin.gi +655 -0
  141. gap/pkg/semigroups/gap/main/graded.gd +26 -0
  142. gap/pkg/semigroups/gap/main/graded.gi +355 -0
  143. gap/pkg/semigroups/gap/main/lambda-rho.gd +29 -0
  144. gap/pkg/semigroups/gap/main/lambda-rho.gi +514 -0
  145. gap/pkg/semigroups/gap/main/orbits.gd +24 -0
  146. gap/pkg/semigroups/gap/main/orbits.gi +512 -0
  147. gap/pkg/semigroups/gap/main/semiact.gd +20 -0
  148. gap/pkg/semigroups/gap/main/semiact.gi +821 -0
  149. gap/pkg/semigroups/gap/main/setup.gd +61 -0
  150. gap/pkg/semigroups/gap/main/setup.gi +1094 -0
  151. gap/pkg/semigroups/gap/obsolete.gd +9 -0
  152. gap/pkg/semigroups/gap/obsolete.gi +14 -0
  153. gap/pkg/semigroups/gap/options.g +55 -0
  154. gap/pkg/semigroups/gap/semigroups/grpperm.gd +12 -0
  155. gap/pkg/semigroups/gap/semigroups/grpperm.gi +177 -0
  156. gap/pkg/semigroups/gap/semigroups/semibipart.gd +28 -0
  157. gap/pkg/semigroups/gap/semigroups/semibipart.gi +570 -0
  158. gap/pkg/semigroups/gap/semigroups/semiboolmat.gd +20 -0
  159. gap/pkg/semigroups/gap/semigroups/semiboolmat.gi +104 -0
  160. gap/pkg/semigroups/gap/semigroups/semicons.gd +52 -0
  161. gap/pkg/semigroups/gap/semigroups/semicons.gi +1194 -0
  162. gap/pkg/semigroups/gap/semigroups/semidp.gd +13 -0
  163. gap/pkg/semigroups/gap/semigroups/semidp.gi +509 -0
  164. gap/pkg/semigroups/gap/semigroups/semieunit.gd +126 -0
  165. gap/pkg/semigroups/gap/semigroups/semieunit.gi +889 -0
  166. gap/pkg/semigroups/gap/semigroups/semiex.gd +104 -0
  167. gap/pkg/semigroups/gap/semigroups/semiex.gi +1590 -0
  168. gap/pkg/semigroups/gap/semigroups/semiffmat.gd +37 -0
  169. gap/pkg/semigroups/gap/semigroups/semiffmat.gi +565 -0
  170. gap/pkg/semigroups/gap/semigroups/semifp.gd +28 -0
  171. gap/pkg/semigroups/gap/semigroups/semifp.gi +1364 -0
  172. gap/pkg/semigroups/gap/semigroups/semigraph.gd +40 -0
  173. gap/pkg/semigroups/gap/semigroups/semigraph.gi +292 -0
  174. gap/pkg/semigroups/gap/semigroups/semigrp.gd +165 -0
  175. gap/pkg/semigroups/gap/semigroups/semigrp.gi +1225 -0
  176. gap/pkg/semigroups/gap/semigroups/semimaxplus.gd +72 -0
  177. gap/pkg/semigroups/gap/semigroups/semimaxplus.gi +710 -0
  178. gap/pkg/semigroups/gap/semigroups/semintmat.gd +13 -0
  179. gap/pkg/semigroups/gap/semigroups/semintmat.gi +74 -0
  180. gap/pkg/semigroups/gap/semigroups/semipbr.gd +19 -0
  181. gap/pkg/semigroups/gap/semigroups/semipbr.gi +139 -0
  182. gap/pkg/semigroups/gap/semigroups/semipperm.gd +27 -0
  183. gap/pkg/semigroups/gap/semigroups/semipperm.gi +711 -0
  184. gap/pkg/semigroups/gap/semigroups/semiquo.gd +14 -0
  185. gap/pkg/semigroups/gap/semigroups/semiquo.gi +97 -0
  186. gap/pkg/semigroups/gap/semigroups/semiringmat.gd +16 -0
  187. gap/pkg/semigroups/gap/semigroups/semiringmat.gi +21 -0
  188. gap/pkg/semigroups/gap/semigroups/semirms.gd +19 -0
  189. gap/pkg/semigroups/gap/semigroups/semirms.gi +977 -0
  190. gap/pkg/semigroups/gap/semigroups/semitrans.gd +49 -0
  191. gap/pkg/semigroups/gap/semigroups/semitrans.gi +909 -0
  192. gap/pkg/semigroups/gap/tools/display.gd +24 -0
  193. gap/pkg/semigroups/gap/tools/display.gi +749 -0
  194. gap/pkg/semigroups/gap/tools/io.gd +17 -0
  195. gap/pkg/semigroups/gap/tools/io.gi +543 -0
  196. gap/pkg/semigroups/gap/tools/iterators.gd +16 -0
  197. gap/pkg/semigroups/gap/tools/iterators.gi +253 -0
  198. gap/pkg/semigroups/gap/tools/utils.gd +19 -0
  199. gap/pkg/semigroups/gap/tools/utils.gi +756 -0
  200. gap/pkg/semigroups/gapbind14/.ccls +18 -0
  201. gap/pkg/semigroups/gapbind14/.clang-format +104 -0
  202. gap/pkg/semigroups/gapbind14/CPPLINT.cfg +5 -0
  203. gap/pkg/semigroups/gapbind14/LICENSE +674 -0
  204. gap/pkg/semigroups/gapbind14/README.md +76 -0
  205. gap/pkg/semigroups/gapbind14/demo/.gitignore +4 -0
  206. gap/pkg/semigroups/gapbind14/demo/LICENSE +293 -0
  207. gap/pkg/semigroups/gapbind14/demo/Makefile.gappkg +220 -0
  208. gap/pkg/semigroups/gapbind14/demo/Makefile.in +19 -0
  209. gap/pkg/semigroups/gapbind14/demo/PackageInfo.g +87 -0
  210. gap/pkg/semigroups/gapbind14/demo/README.md +17 -0
  211. gap/pkg/semigroups/gapbind14/demo/configure +34 -0
  212. gap/pkg/semigroups/gapbind14/demo/gap/gapbind_demo.gd +19 -0
  213. gap/pkg/semigroups/gapbind14/demo/gap/gapbind_demo.gi +10 -0
  214. gap/pkg/semigroups/gapbind14/demo/init.g +16 -0
  215. gap/pkg/semigroups/gapbind14/demo/makedoc.g +10 -0
  216. gap/pkg/semigroups/gapbind14/demo/read.g +6 -0
  217. gap/pkg/semigroups/gapbind14/demo/src/gapbind_demo.cc +142 -0
  218. gap/pkg/semigroups/gapbind14/demo/tst/testall.g +12 -0
  219. gap/pkg/semigroups/gapbind14/include/gapbind14/cpp_fn.hpp +223 -0
  220. gap/pkg/semigroups/gapbind14/include/gapbind14/gap_include.hpp +26 -0
  221. gap/pkg/semigroups/gapbind14/include/gapbind14/gapbind14.hpp +445 -0
  222. gap/pkg/semigroups/gapbind14/include/gapbind14/tame_free_fn.hpp +420 -0
  223. gap/pkg/semigroups/gapbind14/include/gapbind14/tame_mem_fn.hpp +556 -0
  224. gap/pkg/semigroups/gapbind14/include/gapbind14/to_cpp.hpp +162 -0
  225. gap/pkg/semigroups/gapbind14/include/gapbind14/to_gap.hpp +158 -0
  226. gap/pkg/semigroups/gapbind14/src/.clang-format +108 -0
  227. gap/pkg/semigroups/gapbind14/src/gapbind14.cpp +334 -0
  228. gap/pkg/semigroups/init.g +150 -0
  229. gap/pkg/semigroups/m4/ax_append_flag.m4 +50 -0
  230. gap/pkg/semigroups/m4/ax_check_compile_flag.m4 +53 -0
  231. gap/pkg/semigroups/m4/ax_check_hpcombi.m4 +121 -0
  232. gap/pkg/semigroups/m4/ax_check_libsemigroup.m4 +68 -0
  233. gap/pkg/semigroups/m4/ax_compare_version.m4 +177 -0
  234. gap/pkg/semigroups/m4/ax_cxx_compile_stdcxx.m4 +1009 -0
  235. gap/pkg/semigroups/m4/ax_cxx_compile_stdcxx_14.m4 +34 -0
  236. gap/pkg/semigroups/m4/ax_prefix_config_h.m4 +203 -0
  237. gap/pkg/semigroups/m4/ax_pthread.m4 +522 -0
  238. gap/pkg/semigroups/m4/find_gap.m4 +94 -0
  239. gap/pkg/semigroups/makedoc.g +153 -0
  240. gap/pkg/semigroups/prerequisites.sh +62 -0
  241. gap/pkg/semigroups/read.g +105 -0
  242. gap/pkg/semigroups/release.toml +6 -0
  243. gap/pkg/semigroups/tst/extreme/README +2 -0
  244. gap/pkg/semigroups/tst/extreme/attrinv.tst +703 -0
  245. gap/pkg/semigroups/tst/extreme/bipart.tst +2803 -0
  246. gap/pkg/semigroups/tst/extreme/closure.tst +652 -0
  247. gap/pkg/semigroups/tst/extreme/cong.tst +286 -0
  248. gap/pkg/semigroups/tst/extreme/conginv.tst +43 -0
  249. gap/pkg/semigroups/tst/extreme/examples.tst +2449 -0
  250. gap/pkg/semigroups/tst/extreme/freeband.tst +37 -0
  251. gap/pkg/semigroups/tst/extreme/greens-acting-regular.tst +27 -0
  252. gap/pkg/semigroups/tst/extreme/greens-acting.tst +1999 -0
  253. gap/pkg/semigroups/tst/extreme/ideals.tst +858 -0
  254. gap/pkg/semigroups/tst/extreme/inverse.tst +1025 -0
  255. gap/pkg/semigroups/tst/extreme/maximal.tst +856 -0
  256. gap/pkg/semigroups/tst/extreme/misc.tst +4236 -0
  257. gap/pkg/semigroups/tst/extreme/monoid_pkg.tst +1488 -0
  258. gap/pkg/semigroups/tst/extreme/properties.tst +914 -0
  259. gap/pkg/semigroups/tst/extreme/semibipart.tst +2837 -0
  260. gap/pkg/semigroups/tst/extreme/semieunit.tst +49 -0
  261. gap/pkg/semigroups/tst/extreme/semiffmat.tst +353 -0
  262. gap/pkg/semigroups/tst/extreme/semigroups.tst +245 -0
  263. gap/pkg/semigroups/tst/extreme/semiiter.tst +58 -0
  264. gap/pkg/semigroups/tst/extreme/semirms.tst +1091 -0
  265. gap/pkg/semigroups/tst/extreme/transform.tst +305 -0
  266. gap/pkg/semigroups/tst/extreme/translat.tst +44 -0
  267. gap/pkg/semigroups/tst/standard/README +2 -0
  268. gap/pkg/semigroups/tst/standard/attributes/acting.tst +388 -0
  269. gap/pkg/semigroups/tst/standard/attributes/attr.tst +2404 -0
  270. gap/pkg/semigroups/tst/standard/attributes/dual.tst +308 -0
  271. gap/pkg/semigroups/tst/standard/attributes/factor.tst +629 -0
  272. gap/pkg/semigroups/tst/standard/attributes/homomorph.tst +1134 -0
  273. gap/pkg/semigroups/tst/standard/attributes/inverse.tst +1521 -0
  274. gap/pkg/semigroups/tst/standard/attributes/isomorph.tst +435 -0
  275. gap/pkg/semigroups/tst/standard/attributes/isorms.tst +1147 -0
  276. gap/pkg/semigroups/tst/standard/attributes/maximal.tst +853 -0
  277. gap/pkg/semigroups/tst/standard/attributes/properties.tst +2028 -0
  278. gap/pkg/semigroups/tst/standard/attributes/semifp.tst +53 -0
  279. gap/pkg/semigroups/tst/standard/attributes/translat.tst +796 -0
  280. gap/pkg/semigroups/tst/standard/congruences/cong.tst +1044 -0
  281. gap/pkg/semigroups/tst/standard/congruences/conginv.tst +292 -0
  282. gap/pkg/semigroups/tst/standard/congruences/conglatt.tst +421 -0
  283. gap/pkg/semigroups/tst/standard/congruences/congpairs.tst +1011 -0
  284. gap/pkg/semigroups/tst/standard/congruences/congrees.tst +288 -0
  285. gap/pkg/semigroups/tst/standard/congruences/congrms.tst +701 -0
  286. gap/pkg/semigroups/tst/standard/congruences/congsemigraph.tst +422 -0
  287. gap/pkg/semigroups/tst/standard/congruences/congsimple.tst +311 -0
  288. gap/pkg/semigroups/tst/standard/congruences/conguniv.tst +259 -0
  289. gap/pkg/semigroups/tst/standard/congruences/congwordgraph.tst +330 -0
  290. gap/pkg/semigroups/tst/standard/elements/bipart.tst +783 -0
  291. gap/pkg/semigroups/tst/standard/elements/blocks.tst +166 -0
  292. gap/pkg/semigroups/tst/standard/elements/boolmat.tst +608 -0
  293. gap/pkg/semigroups/tst/standard/elements/elements.tst +117 -0
  294. gap/pkg/semigroups/tst/standard/elements/ffmat.tst +349 -0
  295. gap/pkg/semigroups/tst/standard/elements/maxplusmat.tst +613 -0
  296. gap/pkg/semigroups/tst/standard/elements/pbr.tst +506 -0
  297. gap/pkg/semigroups/tst/standard/elements/pperm.tst +32 -0
  298. gap/pkg/semigroups/tst/standard/elements/semiringmat.tst +601 -0
  299. gap/pkg/semigroups/tst/standard/elements/trans.tst +58 -0
  300. gap/pkg/semigroups/tst/standard/fp/freeband.tst +311 -0
  301. gap/pkg/semigroups/tst/standard/fp/freeinverse.tst +147 -0
  302. gap/pkg/semigroups/tst/standard/fp/tietze.tst +780 -0
  303. gap/pkg/semigroups/tst/standard/fp/word.tst +106 -0
  304. gap/pkg/semigroups/tst/standard/greens/acting-inverse.tst +545 -0
  305. gap/pkg/semigroups/tst/standard/greens/acting-regular.tst +396 -0
  306. gap/pkg/semigroups/tst/standard/greens/acting.tst +2033 -0
  307. gap/pkg/semigroups/tst/standard/greens/froidure-pin.tst +1831 -0
  308. gap/pkg/semigroups/tst/standard/greens/generic.tst +1436 -0
  309. gap/pkg/semigroups/tst/standard/ideals/acting.tst +279 -0
  310. gap/pkg/semigroups/tst/standard/ideals/froidure-pin.tst +178 -0
  311. gap/pkg/semigroups/tst/standard/ideals/ideals.tst +380 -0
  312. gap/pkg/semigroups/tst/standard/libsemigroups/cong.tst +310 -0
  313. gap/pkg/semigroups/tst/standard/libsemigroups/froidure-pin.tst +778 -0
  314. gap/pkg/semigroups/tst/standard/libsemigroups/sims1.tst +379 -0
  315. gap/pkg/semigroups/tst/standard/main/acting.tst +411 -0
  316. gap/pkg/semigroups/tst/standard/main/froidure-pin.tst +392 -0
  317. gap/pkg/semigroups/tst/standard/main/semiact.tst +203 -0
  318. gap/pkg/semigroups/tst/standard/main/setup.tst +1144 -0
  319. gap/pkg/semigroups/tst/standard/obsolete.tst +19 -0
  320. gap/pkg/semigroups/tst/standard/options.tst +54 -0
  321. gap/pkg/semigroups/tst/standard/semigroups/grpperm.tst +581 -0
  322. gap/pkg/semigroups/tst/standard/semigroups/semibipart.tst +2635 -0
  323. gap/pkg/semigroups/tst/standard/semigroups/semiboolmat.tst +1871 -0
  324. gap/pkg/semigroups/tst/standard/semigroups/semicons.tst +1173 -0
  325. gap/pkg/semigroups/tst/standard/semigroups/semidp.tst +739 -0
  326. gap/pkg/semigroups/tst/standard/semigroups/semieunit.tst +339 -0
  327. gap/pkg/semigroups/tst/standard/semigroups/semiex.tst +2055 -0
  328. gap/pkg/semigroups/tst/standard/semigroups/semiffmat.tst +746 -0
  329. gap/pkg/semigroups/tst/standard/semigroups/semifp.tst +2702 -0
  330. gap/pkg/semigroups/tst/standard/semigroups/semigraph.tst +133 -0
  331. gap/pkg/semigroups/tst/standard/semigroups/semigrp.tst +1112 -0
  332. gap/pkg/semigroups/tst/standard/semigroups/semimaxplus.tst +654 -0
  333. gap/pkg/semigroups/tst/standard/semigroups/semipbr.tst +2142 -0
  334. gap/pkg/semigroups/tst/standard/semigroups/semipperm.tst +2169 -0
  335. gap/pkg/semigroups/tst/standard/semigroups/semiquo.tst +278 -0
  336. gap/pkg/semigroups/tst/standard/semigroups/semirms.tst +3010 -0
  337. gap/pkg/semigroups/tst/standard/semigroups/semitrans.tst +2758 -0
  338. gap/pkg/semigroups/tst/standard/tools/display.tst +1040 -0
  339. gap/pkg/semigroups/tst/standard/tools/io.tst +363 -0
  340. gap/pkg/semigroups/tst/testinstall.tst +1815 -0
  341. gap/pkg/semigroups/tst/teststandard.g +22 -0
  342. gap/pkg/semigroups/tst/workspaces/load-workspace.tst +142 -0
  343. gap/pkg/semigroups/tst/workspaces/load.g +11 -0
  344. gap/pkg/semigroups/tst/workspaces/save-workspace.tst +166 -0
  345. gap/pkg/semigroups/tst/workspaces/save.g +14 -0
  346. passagemath_gap_pkg_semigroups-10.6.29.dist-info/METADATA +93 -0
  347. passagemath_gap_pkg_semigroups-10.6.29.dist-info/METADATA.bak +94 -0
  348. passagemath_gap_pkg_semigroups-10.6.29.dist-info/RECORD +356 -0
  349. passagemath_gap_pkg_semigroups-10.6.29.dist-info/WHEEL +5 -0
  350. passagemath_gap_pkg_semigroups-10.6.29.dist-info/top_level.txt +1 -0
  351. passagemath_gap_pkg_semigroups.libs/libgcc_s-2d945d6c.so.1 +0 -0
  352. passagemath_gap_pkg_semigroups.libs/libsemigroups-81d76771.so.2.0.0 +0 -0
  353. passagemath_gap_pkg_semigroups.libs/libstdc++-85f2cd6d.so.6.0.33 +0 -0
  354. sage/all__sagemath_gap_pkg_semigroups.py +1 -0
  355. sage/libs/all__sagemath_gap_pkg_semigroups.py +1 -0
  356. sage/libs/gap_pkg_semigroups.abi3.so +0 -0
@@ -0,0 +1,1488 @@
1
+ #############################################################################
2
+ ##
3
+ #W extreme/monoid_pkg.tst
4
+ #Y Copyright (C) 2011-15 James D. Mitchell
5
+ ##
6
+ ## Licensing information can be found in the README file of this package.
7
+ #
8
+ #############################################################################
9
+ ##
10
+ ## a concatenation of relevant tests from the monoid/tst.
11
+
12
+ #@local BigMonoids, C, D, H, I, M, S, SmallMonoids, T, a, acting, b, c, c3, c4
13
+ #@local cs1, cs2, cs3, cs4, cs5, d, dc, dr, f, g, g1, g2, g3, g4, g5, g6, g7
14
+ #@local g8, g9, gens, gr, h, i, idem, iso, m, m1, m10, m11, m12, m13, m14, m15
15
+ #@local m16, m17, m18, m19, m2, m20, m21, m22, m23, m3, m4, m5, m6, m7, m8, m9
16
+ #@local mat, o, r, r2, rc, res, rms, s, semis, sizes, t, x
17
+ gap> START_TEST("Semigroups package: extreme/monoid_pkg.tst");
18
+ gap> LoadPackage("semigroups", false);;
19
+
20
+ #
21
+ gap> SEMIGROUPS.StartTest();
22
+ gap> SEMIGROUPS.DefaultOptionsRec.acting := true;;
23
+
24
+ # MonoidPkgTest2
25
+ gap> g := CyclicGroup(3);;
26
+ gap> r := GF(2);;
27
+ gap> gr := GroupRing(r, g);;
28
+ gap> iso := IsomorphismTransformationSemigroup(gr);;
29
+ gap> s := Range(iso);;
30
+ gap> Size(s);
31
+ 8
32
+ gap> SmallGeneratingSet(s);;
33
+ gap> s := Semigroup(IrredundantGeneratingSubset(last));;
34
+ gap> NrDClasses(s);
35
+ 4
36
+ gap> sizes := List(GreensDClasses(s), Size);;
37
+ gap> Sort(sizes);;
38
+ gap> sizes;
39
+ [ 1, 1, 3, 3 ]
40
+ gap> PartialOrderOfDClasses(s);
41
+ <immutable digraph with 4 vertices, 4 edges>
42
+ gap> IsRegularSemigroup(s);
43
+ true
44
+ gap> ForAll(s, x -> x in s);
45
+ true
46
+ gap> MultiplicativeNeutralElement(s);
47
+ IdentityTransformation
48
+ gap> h := List(s, x -> InversesOfSemigroupElement(s, x));;
49
+ gap> Sort(h);
50
+ gap> h;
51
+ [ [ Transformation( [ 1, 1, 1, 1, 1, 1, 1, 1 ] ) ],
52
+ [ IdentityTransformation ], [ Transformation( [ 1, 3, 5, 1, 7, 7, 3, 5 ] ) ]
53
+ , [ Transformation( [ 1, 4, 1, 4, 1, 4, 1, 4 ] ) ],
54
+ [ Transformation( [ 1, 5, 7, 1, 3, 3, 5, 7 ] ) ],
55
+ [ Transformation( [ 1, 6, 7, 4, 3, 8, 5, 2 ] ) ],
56
+ [ Transformation( [ 1, 7, 3, 1, 5, 5, 7, 3 ] ) ],
57
+ [ Transformation( [ 1, 8, 5, 4, 7, 2, 3, 6 ] ) ] ]
58
+ gap> IsMonoidAsSemigroup(s);
59
+ true
60
+ gap> IsGroupAsSemigroup(s);
61
+ false
62
+ gap> i := MinimalIdeal(s);
63
+ <simple transformation semigroup ideal of degree 8 with 1 generator>
64
+ gap> Size(i);
65
+ 1
66
+ gap> MultiplicativeZero(s);
67
+ Transformation( [ 1, 1, 1, 1, 1, 1, 1, 1 ] )
68
+ gap> MultiplicativeZero(s) in i;
69
+ true
70
+ gap> h := List(GreensDClasses(s), GroupHClass);;
71
+ gap> h := List(h, StructureDescription);;
72
+ gap> Sort(h);
73
+ gap> h;
74
+ [ "1", "1", "C3", "C3" ]
75
+ gap> IsCliffordSemigroup(s);
76
+ true
77
+
78
+ # MonoidPkgTest3
79
+ gap> a := Idempotent([3, 5, 6, 7, 8], [1, 2, 1, 1, 2, 3, 4, 5]) * (3, 5);;
80
+ gap> b := a * (3, 5) * (3, 6, 7, 8);;
81
+ gap> s := Semigroup(a, b);;
82
+ gap> IsGroupAsSemigroup(s);
83
+ true
84
+
85
+ # MonoidPkgTest4
86
+ gap> gens := [Transformation([3, 5, 3, 3, 5, 6]),
87
+ > Transformation([6, 2, 4, 2, 2, 6])];;
88
+ gap> S := Semigroup(gens);;
89
+ gap> H := GroupHClass(GreensDClassOfElement(S, Elements(S)[1]));
90
+ <Green's H-class: Transformation( [ 6, 2, 2, 2, 2, 6 ] )>
91
+ gap> Transformation([6, 2, 2, 2, 2, 6]) in H;
92
+ true
93
+ gap> IsomorphismPermGroup(H);
94
+ MappingByFunction( <Green's H-class: Transformation( [ 6, 2, 2, 2, 2, 6 ] )>
95
+ , Group(()), function( x ) ... end, function( x ) ... end )
96
+
97
+ # MonoidPkgTest5
98
+ gap> gens := [Transformation([4, 4, 8, 8, 8, 8, 4, 8]),
99
+ > Transformation([8, 2, 8, 2, 5, 5, 8, 8]),
100
+ > Transformation([8, 8, 3, 7, 8, 3, 7, 8]),
101
+ > Transformation([8, 6, 6, 8, 6, 8, 8, 8])];;
102
+ gap> S := Semigroup(gens);;
103
+ gap> Size(S);
104
+ 30
105
+ gap> NrDClasses(S);
106
+ 6
107
+ gap> List(GreensDClasses(S), Size);
108
+ [ 9, 1, 1, 9, 1, 9 ]
109
+ gap> IsRegularSemigroup(S);
110
+ false
111
+ gap> NrRClasses(S);
112
+ 12
113
+ gap> NrLClasses(S);
114
+ 12
115
+ gap> IsBlockGroup(S);
116
+ false
117
+ gap> NrIdempotents(S);
118
+ 15
119
+ gap> List(GreensDClasses(S), IsRegularDClass);
120
+ [ true, true, true, true, true, false ]
121
+ gap> d := GreensDClasses(S)[2];;
122
+ gap> GreensRClasses(d);;
123
+ gap> GreensLClasses(d);;
124
+ gap> SchutzenbergerGroup(d);
125
+ Group(())
126
+ gap> h := List(GreensDClasses(S), function(d) if IsRegularDClass(d)
127
+ > then return GroupHClass(d); else return fail; fi; end);;
128
+ gap> MultiplicativeNeutralElement(S);
129
+ fail
130
+ gap> IsMonoidAsSemigroup(S);
131
+ false
132
+ gap> GroupOfUnits(S);
133
+ fail
134
+ gap> MultiplicativeZero(S);
135
+ Transformation( [ 8, 8, 8, 8, 8, 8, 8, 8 ] )
136
+ gap> h := Filtered(h, x -> not x = fail);
137
+ [ <Green's H-class: Transformation( [ 2, 2, 8, 8, 8, 8, 2, 8 ] )>,
138
+ <Green's H-class: Transformation( [ 8, 2, 8, 2, 5, 5, 8, 8 ] )>,
139
+ <Green's H-class: Transformation( [ 8, 8, 3, 7, 8, 3, 7, 8 ] )>,
140
+ <Green's H-class: Transformation( [ 8, 5, 5, 8, 5, 8, 8, 8 ] )>,
141
+ <Green's H-class: Transformation( [ 8, 8, 8, 8, 8, 8, 8, 8 ] )> ]
142
+ gap> List(h, StructureDescription);
143
+ [ "1", "1", "1", "1", "1" ]
144
+ gap> IsHTrivial(S);
145
+ true
146
+ gap> IsLTrivial(S);
147
+ false
148
+ gap> IsRTrivial(S);
149
+ false
150
+ gap> NrIdempotents(S);
151
+ 15
152
+ gap> IsIdempotentGenerated(S);
153
+ true
154
+ gap> IsSemiband(S);
155
+ true
156
+ gap> IsCommutative(S);
157
+ false
158
+ gap> IsBand(S);
159
+ false
160
+
161
+ # MonoidPkgTest6: from greens.tst
162
+ gap> gens := [Transformation([4, 5, 7, 1, 8, 6, 1, 7]),
163
+ > Transformation([5, 5, 3, 8, 3, 7, 4, 6]),
164
+ > Transformation([5, 7, 4, 4, 1, 4, 4, 4]),
165
+ > Transformation([7, 1, 4, 3, 6, 1, 3, 7])];;
166
+ gap> m := Semigroup(gens);;
167
+ gap> o := LambdaOrb(m);; Enumerate(o);;
168
+ gap> AsSet(o);
169
+ [ [ 0 ], [ 1 ], [ 1, 3 ], [ 1, 3, 4 ], [ 1, 3, 4, 6, 7 ], [ 1, 3, 4, 7 ],
170
+ [ 1, 3, 6 ], [ 1, 3, 6, 7 ], [ 1, 3, 7 ], [ 1, 4 ], [ 1, 4, 5 ],
171
+ [ 1, 4, 5, 6, 7, 8 ], [ 1, 4, 5, 7 ], [ 1, 4, 6 ], [ 1, 4, 6, 7 ],
172
+ [ 1, 4, 6, 7, 8 ], [ 1, 4, 7 ], [ 1, 4, 8 ], [ 1, 6 ], [ 1, 6, 7 ],
173
+ [ 1, 6, 7, 8 ], [ 1, 6, 8 ], [ 1, 7 ], [ 1, 7, 8 ], [ 1, 8 ], [ 3 ],
174
+ [ 3, 4 ], [ 3, 4, 5 ], [ 3, 4, 5, 6, 7, 8 ], [ 3, 4, 5, 7 ],
175
+ [ 3, 4, 5, 7, 8 ], [ 3, 4, 5, 8 ], [ 3, 4, 6 ], [ 3, 4, 6, 7 ],
176
+ [ 3, 4, 6, 7, 8 ], [ 3, 4, 6, 8 ], [ 3, 4, 7 ], [ 3, 4, 7, 8 ],
177
+ [ 3, 4, 8 ], [ 3, 5 ], [ 3, 5, 7 ], [ 3, 5, 8 ], [ 3, 6 ], [ 3, 6, 7 ],
178
+ [ 3, 6, 7, 8 ], [ 3, 6, 8 ], [ 3, 7 ], [ 3, 7, 8 ], [ 3, 8 ], [ 4 ],
179
+ [ 4, 5 ], [ 4, 5, 6 ], [ 4, 5, 6, 7 ], [ 4, 5, 6, 7, 8 ], [ 4, 5, 7 ],
180
+ [ 4, 5, 7, 8 ], [ 4, 5, 8 ], [ 4, 6 ], [ 4, 6, 7 ], [ 4, 6, 8 ], [ 4, 7 ],
181
+ [ 4, 7, 8 ], [ 4, 8 ], [ 5 ], [ 5, 6 ], [ 5, 6, 7 ], [ 5, 6, 8 ], [ 5, 7 ],
182
+ [ 5, 7, 8 ], [ 5, 8 ], [ 6 ], [ 6, 7 ], [ 6, 7, 8 ], [ 6, 8 ], [ 7 ],
183
+ [ 7, 8 ], [ 8 ] ]
184
+ gap> gens := [Transformation([1, 5, 2, 2, 3, 5, 2]),
185
+ > Transformation([7, 3, 6, 5, 2, 4, 1]),
186
+ > Transformation([7, 5, 3, 2, 5, 5, 6])];;
187
+ gap> m := Monoid(gens);;
188
+ gap> o := LambdaOrb(m);; Enumerate(o);; AsSet(o);
189
+ [ [ 0 ], [ 1, 2 ], [ 1, 2, 3 ], [ 1, 2, 3, 4, 5 ], [ 1, 2, 3, 4, 5, 6, 7 ],
190
+ [ 1, 2, 3, 4, 6 ], [ 1, 2, 3, 5 ], [ 1, 2, 3, 5, 6 ], [ 1, 2, 3, 6 ],
191
+ [ 1, 2, 4 ], [ 1, 2, 4, 5 ], [ 1, 2, 4, 5, 6 ], [ 1, 2, 5 ], [ 1, 2, 6 ],
192
+ [ 1, 3 ], [ 1, 3, 4 ], [ 1, 3, 4, 5, 6 ], [ 1, 3, 4, 6 ], [ 1, 3, 5 ],
193
+ [ 1, 3, 6 ], [ 1, 4 ], [ 1, 4, 5 ], [ 1, 4, 5, 6 ], [ 1, 4, 6 ], [ 1, 5 ],
194
+ [ 1, 5, 6 ], [ 1, 6 ], [ 2 ], [ 2, 3 ], [ 2, 3, 4 ], [ 2, 3, 4, 5 ],
195
+ [ 2, 3, 4, 5, 7 ], [ 2, 3, 4, 6 ], [ 2, 3, 4, 6, 7 ], [ 2, 3, 5 ],
196
+ [ 2, 3, 5, 6 ], [ 2, 3, 5, 6, 7 ], [ 2, 3, 5, 7 ], [ 2, 3, 6 ],
197
+ [ 2, 3, 6, 7 ], [ 2, 3, 7 ], [ 2, 4 ], [ 2, 4, 5 ], [ 2, 4, 5, 6 ],
198
+ [ 2, 4, 5, 6, 7 ], [ 2, 4, 5, 7 ], [ 2, 4, 6 ], [ 2, 4, 7 ], [ 2, 5 ],
199
+ [ 2, 5, 6 ], [ 2, 5, 7 ], [ 2, 6 ], [ 2, 6, 7 ], [ 2, 7 ], [ 3 ], [ 3, 4 ],
200
+ [ 3, 4, 5 ], [ 3, 4, 5, 6 ], [ 3, 4, 5, 6, 7 ], [ 3, 4, 6 ],
201
+ [ 3, 4, 6, 7 ], [ 3, 4, 7 ], [ 3, 5 ], [ 3, 5, 6 ], [ 3, 5, 7 ], [ 3, 6 ],
202
+ [ 3, 6, 7 ], [ 3, 7 ], [ 4 ], [ 4, 5 ], [ 4, 5, 6 ], [ 4, 5, 6, 7 ],
203
+ [ 4, 5, 7 ], [ 4, 6 ], [ 4, 6, 7 ], [ 4, 7 ], [ 5 ], [ 5, 6 ], [ 5, 6, 7 ],
204
+ [ 5, 7 ], [ 6 ], [ 6, 7 ] ]
205
+ gap> Length(Enumerate(RhoOrb(m)));
206
+ 207
207
+ gap> gens := [[Transformation([3, 4, 4, 3, 1, 1, 5])],
208
+ > [Transformation([1, 1, 4, 3]), Transformation([2, 2, 2, 2]),
209
+ > Transformation([3, 3, 1, 4])], [Transformation([4, 4, 2, 3, 3]),
210
+ > Transformation([5, 2, 4, 3, 1])],
211
+ > [Transformation([1, 5, 4, 1, 5]), Transformation([2, 4, 1, 3, 1])],
212
+ > [Transformation([4, 1, 2, 3]), Transformation([4, 3, 4, 1])],
213
+ > [Transformation([2, 1, 3, 1, 4, 3]),
214
+ > Transformation([2, 2, 2, 2, 1, 2]),
215
+ > Transformation([5, 3, 4, 3, 5, 6]),
216
+ > Transformation([6, 4, 1, 4, 5, 3]),
217
+ > Transformation([6, 5, 2, 6, 3, 4])],
218
+ > [Transformation([3, 5, 5, 1, 4, 7, 5])],
219
+ > [Transformation([2, 5, 6, 1, 1, 3]),
220
+ > Transformation([3, 1, 6, 2, 5, 2]),
221
+ > Transformation([5, 4, 2, 3, 3, 5]),
222
+ > Transformation([6, 6, 5, 5, 2, 2])],
223
+ > [Transformation([1, 5, 3, 2, 3]), Transformation([4, 3, 2, 5, 2]),
224
+ > Transformation([5, 4, 1, 2, 2]), Transformation([5, 5, 5, 1, 1])],
225
+ > [Transformation([2, 4, 4, 7, 2, 1, 2])],
226
+ > [Transformation([3, 4, 2, 4, 6, 7, 4]),
227
+ > Transformation([4, 6, 3, 2, 4, 5, 4]),
228
+ > Transformation([6, 2, 3, 5, 5, 2, 2]),
229
+ > Transformation([6, 5, 4, 5, 2, 4, 4]),
230
+ > Transformation([7, 6, 7, 5, 6, 5, 7])],
231
+ > [Transformation([3, 2, 3, 3, 1]),
232
+ > Transformation([4, 5, 1, 2, 4])],
233
+ > [Transformation([1, 4, 3, 4]), Transformation([2, 2, 1, 1]),
234
+ > Transformation([3, 1, 3, 4]), Transformation([4, 4, 3, 1])],
235
+ > [Transformation([1, 2, 2, 3, 3]), Transformation([4, 3, 4, 3, 2]),
236
+ > Transformation([5, 3, 4, 5, 4])],
237
+ > [Transformation([4, 3, 6, 4, 6, 1]),
238
+ > Transformation([4, 4, 4, 6, 3, 1])],
239
+ > [Transformation([1, 4, 3, 4]), Transformation([3, 3, 3, 3]),
240
+ > Transformation([3, 4, 1, 4]), Transformation([4, 3, 1, 4])],
241
+ > [Transformation([1, 3, 3, 5, 2]), Transformation([3, 4, 5, 1, 1])],
242
+ > [Transformation([2, 6, 4, 6, 5, 2]),
243
+ > Transformation([3, 5, 6, 2, 5, 1]),
244
+ > Transformation([5, 1, 3, 3, 3, 1]),
245
+ > Transformation([6, 4, 4, 6, 6, 3])],
246
+ > [Transformation([1, 3, 3, 3])],
247
+ > [Transformation([4, 1, 2, 2, 3]), Transformation([4, 2, 3, 2, 2])],
248
+ > [Transformation([1, 4, 6, 4, 4, 7, 2]),
249
+ > Transformation([1, 6, 5, 1, 7, 2, 7]),
250
+ > Transformation([2, 2, 7, 2, 1, 4, 4]),
251
+ > Transformation([5, 6, 2, 6, 3, 3, 5])],
252
+ > [Transformation([1, 1, 3, 1]), Transformation([4, 2, 3, 4]),
253
+ > Transformation([4, 4, 2, 2])], [Transformation([3, 2, 1, 1]),
254
+ > Transformation([4, 1, 3, 2]), Transformation([4, 4, 1, 2])],
255
+ > [Transformation([1, 6, 4, 2, 5, 3, 2]),
256
+ > Transformation([4, 1, 4, 7, 4, 4, 5])],
257
+ > [Transformation([2, 4, 5, 4, 4])],
258
+ > [Transformation([1, 4, 2, 3]), Transformation([4, 3, 3, 3])],
259
+ > [Transformation([1, 1, 3, 1, 4])],
260
+ > [Transformation([4, 3, 3, 6, 7, 2, 3]),
261
+ > Transformation([6, 6, 4, 4, 2, 1, 4])],
262
+ > [Transformation([2, 2, 4, 6, 4, 3]),
263
+ > Transformation([3, 4, 1, 1, 5, 2]),
264
+ > Transformation([4, 4, 6, 4, 6, 1])],
265
+ > [Transformation([3, 5, 4, 2, 1, 2, 2]),
266
+ > Transformation([7, 7, 1, 5, 7, 1, 6])],
267
+ > [Transformation([3, 4, 1, 4]), Transformation([4, 3, 2, 2]),
268
+ > Transformation([4, 4, 1, 4])],
269
+ > [Transformation([3, 7, 4, 4, 3, 3, 5]),
270
+ > Transformation([4, 6, 1, 1, 6, 4, 1]),
271
+ > Transformation([6, 5, 7, 2, 1, 1, 3])],
272
+ > [Transformation([1, 2, 4, 1]), Transformation([4, 1, 2, 1]),
273
+ > Transformation([4, 2, 2, 4])],
274
+ > [Transformation([2, 1, 2, 2]), Transformation([2, 4, 1, 1]),
275
+ > Transformation([4, 2, 4, 3]), Transformation([4, 4, 1, 2])],
276
+ > [Transformation([1, 1, 1, 1, 1, 4]),
277
+ > Transformation([3, 3, 2, 4, 1, 3]),
278
+ > Transformation([4, 5, 2, 4, 4, 5]),
279
+ > Transformation([5, 3, 2, 6, 6, 4]),
280
+ > Transformation([6, 6, 5, 5, 1, 1])],
281
+ > [Transformation([1, 2, 4, 1]), Transformation([2, 4, 1, 2]),
282
+ > Transformation([3, 3, 1, 4]), Transformation([3, 4, 1, 2]),
283
+ > Transformation([4, 1, 4, 3])],
284
+ > [Transformation([1, 7, 6, 1, 7, 5, 5]),
285
+ > Transformation([2, 7, 1, 4, 7, 6, 2]),
286
+ > Transformation([4, 3, 7, 2, 6, 3, 4]),
287
+ > Transformation([4, 7, 2, 1, 7, 5, 4]),
288
+ > Transformation([5, 7, 5, 5, 5, 3, 5])],
289
+ > [Transformation([2, 4, 4, 3])],
290
+ > [Transformation([4, 6, 5, 1, 4, 4])],
291
+ > [Transformation([2, 3, 4, 5, 3]), Transformation([4, 1, 5, 1, 3]),
292
+ > Transformation([4, 1, 5, 5, 3])],
293
+ > [Transformation([1, 3, 1, 2, 2]), Transformation([2, 3, 5, 2, 4]),
294
+ > Transformation([2, 4, 3, 2, 5]), Transformation([4, 4, 2, 1, 2])],
295
+ > [Transformation([1, 4, 2, 4]), Transformation([2, 2, 1, 4]),
296
+ > Transformation([3, 2, 2, 2])],
297
+ > [Transformation([1, 5, 1, 1, 5]),
298
+ > Transformation([4, 3, 1, 3, 2])],
299
+ > [Transformation([1, 3, 4, 4]), Transformation([2, 1, 3, 3]),
300
+ > Transformation([4, 1, 3, 4]), Transformation([4, 2, 3, 3])],
301
+ > [Transformation([4, 3, 2, 2, 1, 4, 2]),
302
+ > Transformation([6, 5, 2, 7, 2, 2, 7])],
303
+ > [Transformation([2, 4, 4, 3]), Transformation([3, 4, 1, 3]),
304
+ > Transformation([4, 1, 3, 2]), Transformation([4, 4, 1, 1])],
305
+ > [Transformation([1, 2, 5, 2, 1]), Transformation([3, 2, 2, 4, 2]),
306
+ > Transformation([4, 5, 1, 1, 2]), Transformation([5, 5, 5, 2, 1])],
307
+ > [Transformation([1, 2, 4, 4]), Transformation([2, 1, 2, 1]),
308
+ > Transformation([2, 3, 2, 3]), Transformation([3, 2, 1, 3]),
309
+ > Transformation([3, 4, 3, 2])],
310
+ > [Transformation([1, 1, 1, 2, 2])],
311
+ > [Transformation([4, 4, 3, 3, 3, 2]),
312
+ > Transformation([4, 6, 3, 6, 4, 3]),
313
+ > Transformation([6, 4, 1, 3, 4, 5])],
314
+ > [Transformation([1, 1, 4, 3]), Transformation([3, 1, 3, 2])],
315
+ > [Transformation([1, 3, 5, 3, 3]), Transformation([1, 5, 4, 4, 3]),
316
+ > Transformation([2, 5, 3, 1, 1])],
317
+ > [Transformation([3, 2, 3, 4]), Transformation([3, 4, 3, 1]),
318
+ > Transformation([3, 4, 4, 4]), Transformation([4, 3, 1, 3])],
319
+ > [Transformation([2, 2, 5, 2, 2, 5]),
320
+ > Transformation([2, 6, 5, 2, 6, 3]),
321
+ > Transformation([4, 2, 4, 5, 5, 6]),
322
+ > Transformation([5, 4, 1, 4, 2, 2])],
323
+ > [Transformation([1, 1, 3, 4]), Transformation([3, 1, 2, 2])],
324
+ > [Transformation([1, 1, 4, 5, 5, 3]),
325
+ > Transformation([6, 4, 4, 5, 6, 5])],
326
+ > [Transformation([1, 4, 5, 3, 1, 7, 3]),
327
+ > Transformation([1, 6, 6, 5, 2, 4, 2])],
328
+ > [Transformation([3, 3, 1, 2, 3]), Transformation([5, 5, 1, 5, 3]),
329
+ > Transformation([5, 5, 5, 5, 2])],
330
+ > [Transformation([1, 2, 5, 1, 5, 6]),
331
+ > Transformation([5, 4, 5, 5, 3, 2])],
332
+ > [Transformation([1, 2, 1, 3]), Transformation([2, 3, 4, 4]),
333
+ > Transformation([4, 1, 1, 1])],
334
+ > [Transformation([1, 2, 2, 3, 2]), Transformation([4, 3, 2, 4, 1]),
335
+ > Transformation([5, 1, 2, 2, 1]), Transformation([5, 2, 4, 1, 4]),
336
+ > Transformation([5, 5, 4, 2, 2])],
337
+ > [Transformation([2, 1, 2, 3]), Transformation([2, 2, 3, 2])],
338
+ > [Transformation([4, 2, 1, 3])],
339
+ > [Transformation([1, 2, 3, 4]), Transformation([2, 2, 3, 4]),
340
+ > Transformation([2, 2, 4, 3])],
341
+ > [Transformation([2, 1, 2, 1]), Transformation([3, 4, 2, 4])],
342
+ > [Transformation([3, 4, 1, 2, 2, 2]),
343
+ > Transformation([4, 4, 4, 2, 5, 3]),
344
+ > Transformation([5, 6, 6, 5, 5, 4])],
345
+ > [Transformation([1, 4, 1, 6, 4, 6]),
346
+ > Transformation([2, 4, 2, 5, 5, 6]),
347
+ > Transformation([3, 6, 2, 1, 4, 6]),
348
+ > Transformation([4, 6, 2, 4, 1, 2])],
349
+ > [Transformation([1, 3, 3, 3]), Transformation([2, 1, 3, 1]),
350
+ > Transformation([3, 1, 2, 3])],
351
+ > [Transformation([1, 4, 1, 2]), Transformation([2, 2, 3, 2]),
352
+ > Transformation([3, 3, 4, 3]), Transformation([4, 3, 3, 4]),
353
+ > Transformation([4, 4, 4, 2])],
354
+ > [Transformation([1, 2, 1, 4]), Transformation([4, 1, 1, 2]),
355
+ > Transformation([4, 3, 3, 2])],
356
+ > [Transformation([2, 3, 6, 7, 1, 2, 6])],
357
+ > [Transformation([4, 1, 1, 3, 3, 3])],
358
+ > [Transformation([3, 3, 2, 7, 5, 5, 1]),
359
+ > Transformation([3, 5, 5, 4, 1, 3, 2]),
360
+ > Transformation([4, 1, 3, 6, 6, 6, 5]),
361
+ > Transformation([7, 2, 7, 2, 7, 7, 2])],
362
+ > [Transformation([1, 1, 7, 5, 2, 1, 2]),
363
+ > Transformation([2, 7, 2, 6, 7, 5, 7]),
364
+ > Transformation([4, 5, 7, 4, 3, 1, 4])],
365
+ > [Transformation([3, 6, 4, 4, 2, 5, 1]),
366
+ > Transformation([4, 1, 2, 5, 7, 7, 3]),
367
+ > Transformation([4, 4, 1, 1, 6, 2, 7]),
368
+ > Transformation([5, 7, 6, 6, 1, 4, 5])],
369
+ > [Transformation([1, 1, 1, 2]), Transformation([1, 3, 1, 3]),
370
+ > Transformation([1, 4, 3, 3]), Transformation([3, 1, 1, 1]),
371
+ > Transformation([4, 2, 3, 4])],
372
+ > [Transformation([1, 3, 3, 2, 1, 3]),
373
+ > Transformation([1, 5, 5, 6, 5, 2]),
374
+ > Transformation([6, 3, 1, 1, 5, 5]),
375
+ > Transformation([6, 3, 1, 5, 2, 4])],
376
+ > [Transformation([2, 6, 1, 3, 1, 5]),
377
+ > Transformation([4, 3, 3, 5, 5, 5]),
378
+ > Transformation([4, 5, 6, 4, 4, 2]),
379
+ > Transformation([6, 3, 5, 4, 1, 4])],
380
+ > [Transformation([3, 1, 2, 2, 3]), Transformation([3, 2, 1, 2, 5]),
381
+ > Transformation([3, 3, 4, 2, 4])],
382
+ > [Transformation([1, 7, 1, 6, 6, 5, 3]),
383
+ > Transformation([2, 6, 5, 6, 1, 5, 6]),
384
+ > Transformation([3, 4, 6, 1, 5, 1, 6]),
385
+ > Transformation([7, 5, 7, 2, 5, 7, 4])],
386
+ > [Transformation([2, 1, 2, 2, 4]),
387
+ > Transformation([2, 1, 4, 1, 3]),
388
+ > Transformation([3, 3, 1, 3, 2]),
389
+ > Transformation([5, 4, 5, 4, 5])],
390
+ > [Transformation([2, 1, 4, 3]), Transformation([2, 3, 4, 4]),
391
+ > Transformation([3, 3, 1, 1])],
392
+ > [Transformation([2, 1, 1, 2])],
393
+ > [Transformation([1, 3, 1, 3, 3]), Transformation([2, 1, 1, 4, 1]),
394
+ > Transformation([4, 5, 1, 5, 4]), Transformation([5, 4, 3, 4, 2]),
395
+ > Transformation([5, 5, 5, 3, 4])],
396
+ > [Transformation([5, 5, 5, 5, 5])],
397
+ > [Transformation([3, 2, 1, 2, 6, 6]),
398
+ > Transformation([6, 2, 1, 4, 3, 2])],
399
+ > [Transformation([3, 4, 4, 2, 4, 7, 2]),
400
+ > Transformation([4, 1, 7, 7, 7, 1, 3]),
401
+ > Transformation([5, 5, 5, 4, 4, 3, 4]),
402
+ > Transformation([6, 6, 6, 3, 6, 7, 2]),
403
+ > Transformation([7, 7, 5, 1, 7, 2, 3])],
404
+ > [Transformation([1, 5, 3, 3, 1, 2, 2]),
405
+ > Transformation([3, 4, 1, 6, 3, 4, 5]),
406
+ > Transformation([4, 1, 2, 1, 6, 7, 5]),
407
+ > Transformation([4, 2, 7, 2, 4, 1, 1]),
408
+ > Transformation([7, 7, 7, 1, 5, 4, 4])],
409
+ > [Transformation([1, 3, 2, 6, 5, 5]),
410
+ > Transformation([3, 1, 2, 5, 6, 2]),
411
+ > Transformation([5, 5, 1, 5, 3, 5]),
412
+ > Transformation([6, 6, 1, 5, 6, 2])],
413
+ > [Transformation([1, 4, 3, 3, 4, 3]),
414
+ > Transformation([3, 1, 2, 5, 2, 5]),
415
+ > Transformation([3, 2, 1, 6, 5, 4]),
416
+ > Transformation([5, 2, 1, 1, 3, 1]),
417
+ > Transformation([6, 4, 1, 1, 1, 1])],
418
+ > [Transformation([4, 2, 3, 3, 4])],
419
+ > [Transformation([1, 4, 4, 4, 3, 1, 5]),
420
+ > Transformation([4, 7, 3, 6, 1, 7, 6])],
421
+ > [Transformation([4, 3, 5, 7, 7, 1, 6])],
422
+ > [Transformation([2, 2, 4, 1])],
423
+ > [Transformation([1, 1, 2, 6, 4, 6]),
424
+ > Transformation([4, 2, 3, 1, 2, 2]),
425
+ > Transformation([4, 2, 4, 3, 6, 5])],
426
+ > [Transformation([2, 3, 6, 4, 7, 4, 6]),
427
+ > Transformation([4, 4, 3, 2, 6, 4, 6]),
428
+ > Transformation([4, 6, 6, 5, 4, 6, 7]),
429
+ > Transformation([5, 6, 1, 6, 3, 5, 1])],
430
+ > [Transformation([1, 1, 5, 3, 1]),
431
+ > Transformation([2, 2, 4, 2, 3]),
432
+ > Transformation([2, 3, 4, 4, 5]),
433
+ > Transformation([2, 4, 2, 4, 5])],
434
+ > [Transformation([3, 1, 1, 5, 3]),
435
+ > Transformation([3, 3, 5, 3, 1])],
436
+ > [Transformation([4, 3, 3, 5, 2, 5]),
437
+ > Transformation([6, 1, 2, 4, 1, 3])],
438
+ > [Transformation([2, 3, 4, 3, 3]), Transformation([3, 5, 2, 4, 2]),
439
+ > Transformation([3, 5, 2, 5, 2]),
440
+ > Transformation([5, 3, 3, 5, 2])]];;
441
+ gap> semis := List(gens, Semigroup);;
442
+ gap> res := List(semis, x -> [NrRClasses(x), Size(x)]);
443
+ [ [ 3, 4 ], [ 2, 10 ], [ 3, 14 ], [ 12, 211 ], [ 4, 28 ], [ 378, 4818 ],
444
+ [ 2, 5 ], [ 92, 7142 ], [ 81, 615 ], [ 2, 4 ], [ 158, 2255 ], [ 18, 99 ],
445
+ [ 9, 50 ], [ 16, 76 ], [ 17, 77 ], [ 6, 13 ], [ 19, 330 ], [ 120, 1263 ],
446
+ [ 1, 1 ], [ 14, 53 ], [ 216, 1306 ], [ 6, 12 ], [ 15, 235 ], [ 23, 235 ],
447
+ [ 2, 2 ], [ 3, 9 ], [ 2, 2 ], [ 17, 206 ], [ 22, 506 ], [ 24, 340 ],
448
+ [ 7, 39 ], [ 99, 495 ], [ 10, 18 ], [ 10, 100 ], [ 34, 843 ], [ 14, 210 ],
449
+ [ 546, 3538 ], [ 2, 3 ], [ 2, 3 ], [ 35, 448 ], [ 21, 515 ], [ 9, 14 ],
450
+ [ 5, 11 ], [ 17, 23 ], [ 28, 763 ], [ 15, 199 ], [ 21, 170 ], [ 11, 142 ],
451
+ [ 2, 2 ], [ 33, 1259 ], [ 6, 25 ], [ 64, 426 ], [ 9, 40 ], [ 46, 388 ],
452
+ [ 6, 25 ], [ 11, 49 ], [ 48, 391 ], [ 7, 40 ], [ 13, 18 ], [ 6, 48 ],
453
+ [ 30, 792 ], [ 7, 11 ], [ 1, 3 ], [ 2, 3 ], [ 8, 17 ], [ 15, 115 ],
454
+ [ 49, 1724 ], [ 8, 45 ], [ 6, 46 ], [ 8, 66 ], [ 2, 4 ], [ 1, 3 ],
455
+ [ 322, 4344 ], [ 30, 661 ], [ 1597, 63890 ], [ 10, 76 ], [ 173, 9084 ],
456
+ [ 74, 3931 ], [ 15, 117 ], [ 163, 4804 ], [ 14, 106 ], [ 10, 28 ],
457
+ [ 1, 2 ], [ 53, 328 ], [ 1, 1 ], [ 17, 26 ], [ 172, 1443 ], [ 230, 15176 ],
458
+ [ 83, 1382 ], [ 158, 1074 ], [ 2, 2 ], [ 26, 535 ], [ 3, 6 ], [ 3, 3 ],
459
+ [ 44, 1834 ], [ 158, 1776 ], [ 19, 326 ], [ 9, 45 ], [ 32, 379 ],
460
+ [ 23, 149 ] ]
461
+ gap> m := semis[32];;
462
+ gap> Size(m);
463
+ 495
464
+ gap> ForAll(GreensRClasses(m), x -> ForAll(Idempotents(x), y -> y in x));
465
+ true
466
+ gap> idem := Set(Concatenation(List(GreensRClasses(m), Idempotents)));
467
+ [ Transformation( [ 1, 1, 1, 1, 1, 1, 1 ] ),
468
+ Transformation( [ 1, 1, 1, 1, 1, 1 ] ),
469
+ Transformation( [ 1, 1, 1, 4, 1, 1, 1 ] ),
470
+ Transformation( [ 1, 1, 3, 1, 1, 1, 1 ] ),
471
+ Transformation( [ 1, 1, 3, 1, 1, 1, 3 ] ),
472
+ Transformation( [ 1, 1, 3, 1, 1, 1 ] ),
473
+ Transformation( [ 1, 1, 3, 3, 1, 1, 1 ] ),
474
+ Transformation( [ 1, 1, 3, 3, 1, 1, 3 ] ),
475
+ Transformation( [ 1, 1, 3, 3, 1, 1 ] ),
476
+ Transformation( [ 1, 1, 3, 6, 6, 6 ] ),
477
+ Transformation( [ 1, 1, 4, 4, 1, 1, 1 ] ),
478
+ Transformation( [ 1, 1, 4, 4, 1, 1, 4 ] ),
479
+ Transformation( [ 1, 1, 7, 1, 1, 1, 7 ] ),
480
+ Transformation( [ 1, 1, 7, 7, 1, 1, 7 ] ),
481
+ Transformation( [ 1, 2, 1, 1, 1, 1, 1 ] ),
482
+ Transformation( [ 1, 2, 1, 1, 1, 1, 2 ] ),
483
+ Transformation( [ 1, 2, 1, 1, 1, 1 ] ),
484
+ Transformation( [ 1, 2, 2, 2, 1, 1, 2 ] ),
485
+ Transformation( [ 1, 2, 2, 2, 2, 1, 2 ] ),
486
+ Transformation( [ 1, 2, 3, 3, 1, 1 ] ),
487
+ Transformation( [ 1, 2, 7, 7, 1, 1, 7 ] ),
488
+ Transformation( [ 1, 3, 3, 3, 1, 1, 3 ] ),
489
+ Transformation( [ 1, 3, 3, 3, 3, 1, 3 ] ),
490
+ Transformation( [ 1, 4, 4, 4, 1, 1, 4 ] ),
491
+ Transformation( [ 1, 4, 4, 4, 4, 1, 4 ] ),
492
+ Transformation( [ 1, 5, 5, 5, 5, 1, 5 ] ),
493
+ Transformation( [ 1, 7, 1, 1, 1, 1, 7 ] ),
494
+ Transformation( [ 1, 7, 3, 3, 1, 1, 7 ] ),
495
+ Transformation( [ 1, 7, 7, 7, 1, 1, 7 ] ),
496
+ Transformation( [ 1, 7, 7, 7, 7, 1, 7 ] ),
497
+ Transformation( [ 2, 2, 2, 2, 2, 2, 2 ] ),
498
+ Transformation( [ 2, 2, 2, 2, 2, 2 ] ),
499
+ Transformation( [ 2, 2, 7, 2, 2, 2, 7 ] ),
500
+ Transformation( [ 2, 2, 7, 7, 2, 2, 7 ] ),
501
+ Transformation( [ 3, 3, 3, 3, 3, 3, 3 ] ),
502
+ Transformation( [ 3, 3, 3, 3, 3, 3 ] ),
503
+ Transformation( [ 3, 3, 3, 4, 3, 3, 3 ] ),
504
+ Transformation( [ 3, 7, 3, 3, 3, 3, 7 ] ),
505
+ Transformation( [ 4, 4, 3, 4, 4, 4, 3 ] ),
506
+ Transformation( [ 4, 4, 3, 4, 4, 4, 4 ] ),
507
+ Transformation( [ 4, 4, 4, 4, 4, 4, 4 ] ),
508
+ Transformation( [ 5, 3, 3, 3, 5, 5, 3 ] ),
509
+ Transformation( [ 5, 4, 4, 4, 5, 5, 4 ] ),
510
+ Transformation( [ 5, 5, 3, 3, 5, 5, 3 ] ),
511
+ Transformation( [ 5, 5, 3, 3, 5, 5, 5 ] ),
512
+ Transformation( [ 5, 5, 3, 3, 5, 5 ] ),
513
+ Transformation( [ 5, 5, 3, 4, 5, 5, 3 ] ),
514
+ Transformation( [ 5, 5, 3, 4, 5, 5, 5 ] ),
515
+ Transformation( [ 5, 5, 3, 4, 5, 5 ] ),
516
+ Transformation( [ 5, 5, 3, 5, 5, 5, 3 ] ),
517
+ Transformation( [ 5, 5, 3, 5, 5, 5, 5 ] ),
518
+ Transformation( [ 5, 5, 3, 5, 5, 5 ] ),
519
+ Transformation( [ 5, 5, 4, 4, 5, 5, 4 ] ),
520
+ Transformation( [ 5, 5, 4, 4, 5, 5, 5 ] ),
521
+ Transformation( [ 5, 5, 5, 4, 5, 5, 5 ] ),
522
+ Transformation( [ 5, 5, 5, 5, 5, 5, 5 ] ),
523
+ Transformation( [ 5, 5, 5, 5, 5, 5 ] ),
524
+ Transformation( [ 5, 5, 7, 5, 5, 5, 7 ] ),
525
+ Transformation( [ 5, 5, 7, 7, 5, 5, 7 ] ),
526
+ Transformation( [ 5, 7, 3, 3, 5, 5, 7 ] ),
527
+ Transformation( [ 5, 7, 5, 5, 5, 5, 7 ] ),
528
+ Transformation( [ 5, 7, 7, 7, 5, 5, 7 ] ),
529
+ Transformation( [ 6, 2, 2, 2, 2, 6, 2 ] ),
530
+ Transformation( [ 6, 2, 2, 2, 6, 6, 2 ] ),
531
+ Transformation( [ 6, 2, 6, 6, 6, 6, 2 ] ),
532
+ Transformation( [ 6, 2, 6, 6, 6, 6, 6 ] ),
533
+ Transformation( [ 6, 3, 3, 3, 3, 6, 3 ] ),
534
+ Transformation( [ 6, 3, 3, 3, 6, 6, 3 ] ),
535
+ Transformation( [ 6, 4, 4, 4, 4, 6, 4 ] ),
536
+ Transformation( [ 6, 4, 4, 4, 6, 6, 4 ] ),
537
+ Transformation( [ 6, 5, 5, 5, 5, 6, 5 ] ),
538
+ Transformation( [ 6, 6, 3, 3, 6, 6, 3 ] ),
539
+ Transformation( [ 6, 6, 3, 3, 6, 6, 6 ] ),
540
+ Transformation( [ 6, 6, 3, 3, 6, 6 ] ),
541
+ Transformation( [ 6, 6, 3, 6, 6, 6, 3 ] ),
542
+ Transformation( [ 6, 6, 3, 6, 6, 6, 6 ] ),
543
+ Transformation( [ 6, 6, 3, 6, 6, 6 ] ),
544
+ Transformation( [ 6, 6, 4, 4, 6, 6, 4 ] ),
545
+ Transformation( [ 6, 6, 4, 4, 6, 6, 6 ] ),
546
+ Transformation( [ 6, 6, 6, 4, 6, 6, 6 ] ),
547
+ Transformation( [ 6, 6, 6, 6, 6, 6, 6 ] ),
548
+ Transformation( [ 6, 6, 6, 6, 6, 6 ] ),
549
+ Transformation( [ 6, 6, 7, 6, 6, 6, 7 ] ),
550
+ Transformation( [ 6, 6, 7, 7, 6, 6, 7 ] ),
551
+ Transformation( [ 6, 7, 3, 3, 6, 6, 7 ] ),
552
+ Transformation( [ 6, 7, 6, 6, 6, 6, 7 ] ),
553
+ Transformation( [ 6, 7, 7, 7, 6, 6, 7 ] ),
554
+ Transformation( [ 6, 7, 7, 7, 7, 6, 7 ] ),
555
+ Transformation( [ 7, 2, 7, 7, 7, 7, 7 ] ),
556
+ Transformation( [ 7, 7, 3, 3, 7, 7, 7 ] ),
557
+ Transformation( [ 7, 7, 3, 7, 7, 7, 7 ] ),
558
+ Transformation( [ 7, 7, 7, 7, 7, 7, 7 ] ) ]
559
+ gap> idem = Set(Idempotents(m));
560
+ true
561
+ gap> H := GreensHClasses(m);;
562
+ gap> I := Concatenation(List(GreensRClasses(m), GreensHClasses));;
563
+ gap> ForAll(H, x -> Number(I, y -> Representative(x) in y) = 1);
564
+ true
565
+ gap> m := semis[68];;
566
+ gap> H := GreensHClasses(m);;
567
+ gap> I := Concatenation(List(GreensRClasses(m), GreensHClasses));;
568
+ gap> ForAll(H, x -> Number(I, y -> Representative(x) in y) = 1);
569
+ true
570
+ gap> m := semis[74];;
571
+ gap> r := GreensRClassOfElement(m, Transformation([2, 1, 2, 2, 1, 2, 1]));;
572
+ gap> d := DClassOfRClass(r);;
573
+ gap> dr := GreensRClasses(d);;
574
+ gap> r2 := First(dr, x -> x = r);;
575
+ gap> DClassOfRClass(r2) = d;
576
+ true
577
+ gap> m := Semigroup(GeneratorsOfSemigroup(m));
578
+ <transformation semigroup of degree 7 with 3 generators>
579
+ gap> r := GreensRClassOfElement(m, Transformation([2, 1, 2, 2, 1, 2, 1]));;
580
+ gap> d := DClassOfRClass(r);;
581
+ gap> dr := GreensRClasses(d);;
582
+ gap> r2 := First(dr, x -> x = r);;
583
+ gap> DClassOfRClass(r2) = d;
584
+ true
585
+ gap> res := List(semis, x -> [Length(GreensLClasses(x)), Size(x)]);
586
+ [ [ 3, 4 ], [ 5, 10 ], [ 2, 14 ], [ 19, 211 ], [ 9, 28 ], [ 46, 4818 ],
587
+ [ 2, 5 ], [ 39, 7142 ], [ 25, 615 ], [ 2, 4 ], [ 789, 2255 ], [ 21, 99 ],
588
+ [ 11, 50 ], [ 25, 76 ], [ 42, 77 ], [ 10, 13 ], [ 23, 330 ], [ 87, 1263 ],
589
+ [ 1, 1 ], [ 24, 53 ], [ 195, 1306 ], [ 9, 12 ], [ 15, 235 ], [ 28, 235 ],
590
+ [ 2, 2 ], [ 7, 9 ], [ 2, 2 ], [ 18, 206 ], [ 26, 506 ], [ 25, 340 ],
591
+ [ 10, 39 ], [ 45, 495 ], [ 13, 18 ], [ 11, 100 ], [ 94, 843 ], [ 15, 210 ],
592
+ [ 80, 3538 ], [ 2, 3 ], [ 2, 3 ], [ 103, 448 ], [ 21, 515 ], [ 10, 14 ],
593
+ [ 7, 11 ], [ 14, 23 ], [ 27, 763 ], [ 14, 199 ], [ 20, 170 ], [ 13, 142 ],
594
+ [ 2, 2 ], [ 30, 1259 ], [ 9, 25 ], [ 23, 426 ], [ 17, 40 ], [ 34, 388 ],
595
+ [ 8, 25 ], [ 13, 49 ], [ 31, 391 ], [ 10, 40 ], [ 17, 18 ], [ 12, 48 ],
596
+ [ 68, 792 ], [ 10, 11 ], [ 1, 3 ], [ 2, 3 ], [ 8, 17 ], [ 22, 115 ],
597
+ [ 201, 1724 ], [ 7, 45 ], [ 10, 46 ], [ 11, 66 ], [ 2, 4 ], [ 1, 3 ],
598
+ [ 363, 4344 ], [ 68, 661 ], [ 2423, 63890 ], [ 11, 76 ], [ 57, 9084 ],
599
+ [ 84, 3931 ], [ 12, 117 ], [ 156, 4804 ], [ 16, 106 ], [ 10, 28 ],
600
+ [ 1, 2 ], [ 52, 328 ], [ 1, 1 ], [ 20, 26 ], [ 257, 1443 ], [ 74, 15176 ],
601
+ [ 333, 1382 ], [ 74, 1074 ], [ 2, 2 ], [ 28, 535 ], [ 3, 6 ], [ 3, 3 ],
602
+ [ 35, 1834 ], [ 93, 1776 ], [ 18, 326 ], [ 16, 45 ], [ 25, 379 ],
603
+ [ 33, 149 ] ]
604
+ gap> ForAll(GreensLClasses(m), x ->
605
+ > ForAll(Idempotents(x), y -> y in x));
606
+ true
607
+ gap> idem := Set(Concatenation(List(GreensLClasses(m), Idempotents)));
608
+ [ Transformation( [ 1, 1, 1, 1, 1, 1, 1 ] ),
609
+ Transformation( [ 1, 1, 1, 1, 5, 1, 1 ] ),
610
+ Transformation( [ 1, 1, 1, 1, 5, 1, 5 ] ),
611
+ Transformation( [ 1, 1, 1, 1, 5, 5, 1 ] ),
612
+ Transformation( [ 1, 1, 1, 4, 1, 1, 1 ] ),
613
+ Transformation( [ 1, 1, 1, 4, 1, 4, 1 ] ),
614
+ Transformation( [ 1, 1, 1, 4, 4, 1, 4 ] ),
615
+ Transformation( [ 1, 1, 1, 4, 5, 1, 5 ] ),
616
+ Transformation( [ 1, 1, 1, 5, 5, 1, 5 ] ),
617
+ Transformation( [ 1, 1, 4, 4, 1, 1, 1 ] ),
618
+ Transformation( [ 1, 1, 4, 4, 4, 1, 4 ] ),
619
+ Transformation( [ 1, 1, 5, 5, 5, 1, 5 ] ),
620
+ Transformation( [ 1, 2, 1, 1, 1, 1, 1 ] ),
621
+ Transformation( [ 1, 2, 1, 1, 2, 1, 1 ] ),
622
+ Transformation( [ 1, 2, 1, 1, 2, 1, 2 ] ),
623
+ Transformation( [ 1, 2, 1, 1, 2, 2, 2 ] ),
624
+ Transformation( [ 1, 2, 1, 1, 5, 1, 1 ] ),
625
+ Transformation( [ 1, 2, 1, 2, 2, 1, 2 ] ),
626
+ Transformation( [ 1, 2, 1, 2, 2, 2, 2 ] ),
627
+ Transformation( [ 1, 2, 2, 1, 1, 1, 1 ] ),
628
+ Transformation( [ 1, 2, 2, 1, 1, 2, 1 ] ),
629
+ Transformation( [ 1, 2, 2, 1, 2, 2, 1 ] ),
630
+ Transformation( [ 1, 2, 2, 1, 5, 5, 1 ] ),
631
+ Transformation( [ 1, 4, 1, 4, 4, 1, 4 ] ),
632
+ Transformation( [ 1, 4, 1, 4, 4, 4, 4 ] ),
633
+ Transformation( [ 1, 5, 1, 1, 5, 1, 1 ] ),
634
+ Transformation( [ 1, 5, 1, 1, 5, 1, 5 ] ),
635
+ Transformation( [ 1, 5, 1, 1, 5, 5, 5 ] ),
636
+ Transformation( [ 1, 5, 1, 4, 5, 4, 5 ] ),
637
+ Transformation( [ 1, 5, 1, 5, 5, 1, 5 ] ),
638
+ Transformation( [ 1, 5, 1, 5, 5, 5, 5 ] ),
639
+ Transformation( [ 1, 5, 5, 1, 5, 5, 1 ] ),
640
+ Transformation( [ 2, 2, 2, 2, 2, 2, 2 ] ),
641
+ Transformation( [ 2, 2, 2, 2, 2, 6, 2 ] ),
642
+ Transformation( [ 2, 2, 2, 2, 5, 2, 2 ] ),
643
+ Transformation( [ 2, 2, 2, 2, 5, 2, 5 ] ),
644
+ Transformation( [ 2, 2, 2, 2, 5, 5, 2 ] ),
645
+ Transformation( [ 2, 2, 2, 2, 6, 6, 2 ] ),
646
+ Transformation( [ 2, 2, 2, 2, 7, 2, 7 ] ),
647
+ Transformation( [ 2, 2, 2, 5, 5, 2, 5 ] ),
648
+ Transformation( [ 2, 2, 2, 6, 2, 6, 2 ] ),
649
+ Transformation( [ 2, 2, 2, 7, 7, 2, 7 ] ),
650
+ Transformation( [ 2, 2, 5, 5, 5, 2, 5 ] ),
651
+ Transformation( [ 2, 2, 7, 7, 7, 2, 7 ] ),
652
+ Transformation( [ 3, 3, 3, 3, 3, 3, 3 ] ),
653
+ Transformation( [ 3, 3, 3, 3, 5, 3, 3 ] ),
654
+ Transformation( [ 3, 3, 3, 3, 5, 3, 5 ] ),
655
+ Transformation( [ 3, 3, 3, 3, 5, 5, 3 ] ),
656
+ Transformation( [ 3, 3, 3, 3, 7, 3, 7 ] ),
657
+ Transformation( [ 3, 3, 3, 4, 3, 3, 3 ] ),
658
+ Transformation( [ 3, 3, 3, 4, 3, 4, 3 ] ),
659
+ Transformation( [ 3, 3, 3, 4, 4, 3, 4 ] ),
660
+ Transformation( [ 3, 3, 3, 4, 5, 3, 5 ] ),
661
+ Transformation( [ 3, 3, 3, 4, 7, 3, 7 ] ),
662
+ Transformation( [ 3, 3, 3, 5, 5, 3, 5 ] ),
663
+ Transformation( [ 3, 3, 3, 7, 7, 3, 7 ] ),
664
+ Transformation( [ 3, 4, 3, 4, 4, 3, 4 ] ),
665
+ Transformation( [ 3, 4, 3, 4, 4, 4, 4 ] ),
666
+ Transformation( [ 3, 5, 3, 3, 5, 3, 3 ] ),
667
+ Transformation( [ 3, 5, 3, 3, 5, 3, 5 ] ),
668
+ Transformation( [ 3, 5, 3, 3, 5, 5, 5 ] ),
669
+ Transformation( [ 3, 5, 3, 4, 5, 4, 5 ] ),
670
+ Transformation( [ 3, 5, 3, 5, 5, 3, 5 ] ),
671
+ Transformation( [ 3, 5, 3, 5, 5, 5, 5 ] ),
672
+ Transformation( [ 3, 7, 3, 3, 7, 3, 7 ] ),
673
+ Transformation( [ 3, 7, 3, 3, 7, 7, 7 ] ),
674
+ Transformation( [ 3, 7, 3, 4, 7, 4, 7 ] ),
675
+ Transformation( [ 3, 7, 3, 7, 7, 3, 7 ] ),
676
+ Transformation( [ 3, 7, 3, 7, 7, 7, 7 ] ),
677
+ Transformation( [ 4, 3, 3, 4, 3, 3, 4 ] ),
678
+ Transformation( [ 4, 3, 3, 4, 4, 3, 4 ] ),
679
+ Transformation( [ 4, 3, 3, 4, 4, 4, 4 ] ),
680
+ Transformation( [ 4, 3, 3, 4, 5, 5, 4 ] ),
681
+ Transformation( [ 4, 4, 4, 4, 4, 4, 4 ] ),
682
+ Transformation( [ 4, 4, 4, 4, 5, 4, 4 ] ),
683
+ Transformation( [ 4, 4, 4, 4, 5, 4, 5 ] ),
684
+ Transformation( [ 4, 4, 4, 4, 5, 5, 4 ] ),
685
+ Transformation( [ 4, 4, 4, 4, 7, 4, 7 ] ),
686
+ Transformation( [ 4, 5, 4, 4, 5, 4, 4 ] ),
687
+ Transformation( [ 4, 5, 4, 4, 5, 4, 5 ] ),
688
+ Transformation( [ 4, 5, 4, 4, 5, 5, 5 ] ),
689
+ Transformation( [ 4, 5, 5, 4, 5, 5, 4 ] ),
690
+ Transformation( [ 4, 7, 4, 4, 7, 4, 7 ] ),
691
+ Transformation( [ 4, 7, 4, 4, 7, 7, 7 ] ),
692
+ Transformation( [ 5, 2, 2, 5, 5, 2, 5 ] ),
693
+ Transformation( [ 5, 2, 2, 5, 5, 5, 5 ] ),
694
+ Transformation( [ 5, 2, 5, 5, 5, 5, 5 ] ),
695
+ Transformation( [ 5, 3, 3, 5, 5, 3, 5 ] ),
696
+ Transformation( [ 5, 3, 3, 5, 5, 5, 5 ] ),
697
+ Transformation( [ 5, 5, 3, 3, 5, 5, 5 ] ),
698
+ Transformation( [ 5, 5, 4, 4, 5, 5, 5 ] ),
699
+ Transformation( [ 5, 5, 5, 4, 5, 4, 5 ] ),
700
+ Transformation( [ 5, 5, 5, 4, 5, 5, 5 ] ),
701
+ Transformation( [ 5, 5, 5, 5, 5, 5, 5 ] ),
702
+ Transformation( [ 6, 2, 2, 6, 6, 6, 6 ] ),
703
+ Transformation( [ 6, 2, 6, 2, 2, 6, 2 ] ),
704
+ Transformation( [ 6, 2, 6, 6, 2, 6, 2 ] ),
705
+ Transformation( [ 6, 2, 6, 6, 2, 6, 6 ] ),
706
+ Transformation( [ 6, 2, 6, 6, 6, 6, 6 ] ),
707
+ Transformation( [ 6, 6, 6, 6, 6, 6, 6 ] ),
708
+ Transformation( [ 6, 6, 6, 6, 7, 6, 7 ] ),
709
+ Transformation( [ 6, 6, 6, 7, 7, 6, 7 ] ),
710
+ Transformation( [ 6, 6, 7, 7, 7, 6, 7 ] ),
711
+ Transformation( [ 6, 7, 6, 6, 7, 6, 7 ] ),
712
+ Transformation( [ 6, 7, 6, 7, 7, 6, 7 ] ),
713
+ Transformation( [ 7, 2, 2, 7, 2, 2, 7 ] ),
714
+ Transformation( [ 7, 2, 2, 7, 5, 5, 7 ] ),
715
+ Transformation( [ 7, 2, 2, 7, 6, 6, 7 ] ),
716
+ Transformation( [ 7, 2, 2, 7, 7, 2, 7 ] ),
717
+ Transformation( [ 7, 2, 2, 7, 7, 7, 7 ] ),
718
+ Transformation( [ 7, 2, 7, 7, 2, 7, 7 ] ),
719
+ Transformation( [ 7, 2, 7, 7, 5, 7, 7 ] ),
720
+ Transformation( [ 7, 2, 7, 7, 7, 7, 7 ] ),
721
+ Transformation( [ 7, 3, 3, 7, 3, 3, 7 ] ),
722
+ Transformation( [ 7, 3, 3, 7, 7, 3, 7 ] ),
723
+ Transformation( [ 7, 3, 3, 7, 7, 7, 7 ] ),
724
+ Transformation( [ 7, 5, 5, 7, 5, 5, 7 ] ),
725
+ Transformation( [ 7, 5, 7, 7, 5, 7, 7 ] ),
726
+ Transformation( [ 7, 6, 6, 7, 6, 6, 7 ] ),
727
+ Transformation( [ 7, 6, 6, 7, 7, 6, 7 ] ),
728
+ Transformation( [ 7, 7, 3, 3, 7, 7, 7 ] ),
729
+ Transformation( [ 7, 7, 4, 4, 7, 7, 7 ] ),
730
+ Transformation( [ 7, 7, 7, 4, 7, 4, 7 ] ),
731
+ Transformation( [ 7, 7, 7, 4, 7, 7, 7 ] ),
732
+ Transformation( [ 7, 7, 7, 6, 7, 6, 7 ] ),
733
+ Transformation( [ 7, 7, 7, 7, 5, 5, 7 ] ),
734
+ Transformation( [ 7, 7, 7, 7, 5, 7, 7 ] ),
735
+ Transformation( [ 7, 7, 7, 7, 6, 6, 7 ] ),
736
+ Transformation( [ 7, 7, 7, 7, 7, 6, 7 ] ),
737
+ Transformation( [ 7, 7, 7, 7, 7, 7, 7 ] ) ]
738
+ gap> idem = Set(Idempotents(m));
739
+ true
740
+ gap> m := semis[30];;
741
+ gap> r := GreensLClassOfElement(m, Transformation([3, 3, 3, 3, 3, 3, 5]));;
742
+ gap> d := DClassOfLClass(r);;
743
+ gap> dr := GreensLClasses(d);;
744
+ gap> r2 := First(dr, x -> x = r);;
745
+ gap> DClassOfLClass(r2) = d;
746
+ true
747
+ gap> m := Semigroup(GeneratorsOfSemigroup(m));
748
+ <transformation semigroup of degree 7 with 2 generators>
749
+ gap> r := GreensLClassOfElement(m, Transformation([3, 3, 3, 3, 3, 3, 5]));
750
+ <Green's L-class: Transformation( [ 3, 3, 3, 3, 3, 3, 5 ] )>
751
+ gap> Transformation([3, 3, 3, 3, 3, 3, 5]) in last;
752
+ true
753
+ gap> d := DClassOfLClass(r);;
754
+ gap> dr := GreensLClasses(d);;
755
+ gap> r2 := First(dr, x -> x = r);;
756
+ gap> DClassOfLClass(r2) = d;
757
+ true
758
+ gap> List(semis, s -> Length(GreensHClasses(s)));
759
+ [ 3, 5, 3, 77, 13, 1281, 2, 1032, 231, 2, 1355, 57, 28, 48, 57, 12, 139, 508,
760
+ 1, 36, 801, 10, 71, 130, 2, 7, 2, 83, 158, 172, 22, 285, 17, 40, 377, 67,
761
+ 1285, 2, 2, 212, 153, 14, 9, 22, 239, 65, 91, 55, 2, 367, 15, 168, 26, 207,
762
+ 14, 29, 274, 22, 17, 26, 253, 10, 1, 2, 13, 64, 605, 20, 25, 33, 2, 1,
763
+ 1520, 307, 9625, 41, 1885, 945, 54, 1297, 58, 18, 1, 173, 1, 25, 737, 2807,
764
+ 636, 495, 2, 201, 3, 3, 471, 715, 118, 28, 197, 88 ]
765
+ gap> ForAll(semis, s ->
766
+ > Number(GreensHClasses(s), IsGroupHClass) = Length(Idempotents(s)));
767
+ true
768
+ gap> List(semis, s -> Number(GreensDClasses(s), IsRegularDClass));
769
+ [ 1, 2, 2, 4, 3, 6, 1, 5, 4, 1, 6, 3, 3, 4, 3, 3, 4, 4, 1, 4, 6, 4, 4, 4, 1,
770
+ 2, 1, 3, 5, 5, 3, 5, 3, 3, 5, 4, 6, 1, 1, 4, 4, 3, 3, 4, 4, 4, 4, 3, 1, 4,
771
+ 3, 4, 4, 4, 4, 3, 6, 3, 3, 3, 4, 3, 1, 2, 2, 4, 4, 3, 3, 3, 1, 1, 5, 3, 7,
772
+ 3, 5, 5, 5, 5, 2, 3, 1, 4, 1, 4, 5, 6, 5, 5, 1, 3, 1, 1, 6, 4, 3, 3, 4, 3 ]
773
+ gap> List(semis, s -> Set(GreensDClasses(s), x -> Length(Idempotents(x))));
774
+ [ [ 0, 1 ], [ 1, 4 ], [ 1, 2 ], [ 1, 5, 7, 30 ], [ 1, 4 ],
775
+ [ 0, 1, 6, 11, 167, 168 ], [ 0, 1 ], [ 2, 6, 42, 169, 197 ],
776
+ [ 0, 2, 5, 18, 58 ], [ 0, 1 ], [ 0, 1, 5, 8, 46, 159 ], [ 0, 1, 5, 19 ],
777
+ [ 0, 2, 4, 11 ], [ 0, 1, 2, 4, 14 ], [ 0, 1, 3, 12 ], [ 0, 1, 2, 3 ],
778
+ [ 2, 5, 17, 39 ], [ 0, 1, 6, 24, 137 ], [ 1 ], [ 0, 1, 3, 10 ],
779
+ [ 0, 1, 4, 6, 7, 221 ], [ 0, 1, 2, 3 ], [ 1, 4, 12, 24 ], [ 0, 1, 7, 34 ],
780
+ [ 0, 1 ], [ 0, 1, 3 ], [ 0, 1 ], [ 0, 5, 9, 36 ], [ 0, 1, 5, 17, 50 ],
781
+ [ 0, 1, 7, 63 ], [ 0, 1, 4, 8 ], [ 0, 1, 2, 7, 13, 69 ], [ 0, 1, 2, 4 ],
782
+ [ 4, 17 ], [ 0, 1, 2, 6, 20, 93 ], [ 1, 4, 10, 24 ], [ 0, 1, 7, 105, 199 ],
783
+ [ 0, 1 ], [ 0, 1 ], [ 0, 1, 5, 13, 48 ], [ 1, 5, 20, 51 ], [ 0, 1, 2, 3 ],
784
+ [ 0, 1, 3 ], [ 0, 1, 2, 3 ], [ 2, 7, 27, 82 ], [ 1, 4, 9, 24 ],
785
+ [ 0, 1, 3, 5, 38 ], [ 4, 6, 24 ], [ 0, 1 ], [ 1, 6, 47, 121 ],
786
+ [ 0, 1, 4, 5 ], [ 0, 1, 5, 14, 42 ], [ 0, 1, 3, 8 ], [ 0, 1, 6, 80 ],
787
+ [ 1, 3, 6 ], [ 0, 1, 4, 11 ], [ 0, 1, 4, 6, 20, 65 ], [ 0, 1, 4, 10 ],
788
+ [ 0, 1, 2 ], [ 2, 4, 10 ], [ 0, 1, 5, 34, 62 ], [ 0, 1, 2 ], [ 1 ], [ 1 ],
789
+ [ 0, 3, 4 ], [ 0, 1, 6, 26 ], [ 0, 2, 6, 47, 121 ], [ 2, 3, 10 ],
790
+ [ 1, 4, 11 ], [ 3, 4, 15 ], [ 0, 1 ], [ 1 ], [ 0, 1, 3, 7, 122, 248 ],
791
+ [ 0, 7, 12, 111 ], [ 0, 1, 7, 9, 258, 430, 889 ], [ 0, 1, 4, 20 ],
792
+ [ 0, 1, 6, 12, 231, 324 ], [ 0, 1, 3, 6, 143, 163 ], [ 1, 3, 4, 24 ],
793
+ [ 0, 1, 5, 7, 140, 277 ], [ 0, 5, 23 ], [ 0, 1, 4 ], [ 1 ], [ 0, 1, 5, 52 ],
794
+ [ 1 ], [ 0, 1, 2 ], [ 0, 1, 7, 11, 177 ], [ 0, 1, 2, 7, 38, 390, 434 ],
795
+ [ 0, 5, 9, 40, 114 ], [ 0, 1, 2, 6, 32, 65 ], [ 0, 1 ], [ 0, 6, 16, 74 ],
796
+ [ 0, 1 ], [ 0, 1 ], [ 1, 4, 6, 65, 114 ], [ 0, 1, 7, 40, 200 ],
797
+ [ 0, 5, 8, 44 ], [ 0, 1, 3, 10 ], [ 0, 1, 6, 73 ], [ 0, 1, 4, 33 ] ]
798
+ gap> List(semis, x -> [Length(GreensDClasses(x))]);
799
+ [ [ 3 ], [ 2 ], [ 2 ], [ 4 ], [ 3 ], [ 9 ], [ 2 ], [ 5 ], [ 6 ], [ 2 ],
800
+ [ 75 ], [ 10 ], [ 4 ], [ 8 ], [ 12 ], [ 5 ], [ 4 ], [ 16 ], [ 1 ], [ 10 ],
801
+ [ 101 ], [ 5 ], [ 4 ], [ 8 ], [ 2 ], [ 3 ], [ 2 ], [ 6 ], [ 7 ], [ 6 ],
802
+ [ 4 ], [ 19 ], [ 8 ], [ 3 ], [ 13 ], [ 4 ], [ 36 ], [ 2 ], [ 2 ], [ 14 ],
803
+ [ 4 ], [ 7 ], [ 4 ], [ 11 ], [ 4 ], [ 4 ], [ 7 ], [ 3 ], [ 2 ], [ 4 ],
804
+ [ 4 ], [ 7 ], [ 6 ], [ 16 ], [ 4 ], [ 7 ], [ 8 ], [ 4 ], [ 13 ], [ 3 ],
805
+ [ 7 ], [ 7 ], [ 1 ], [ 2 ], [ 4 ], [ 9 ], [ 10 ], [ 3 ], [ 3 ], [ 3 ],
806
+ [ 2 ], [ 1 ], [ 54 ], [ 10 ], [ 32 ], [ 4 ], [ 7 ], [ 15 ], [ 5 ], [ 22 ],
807
+ [ 7 ], [ 5 ], [ 1 ], [ 17 ], [ 1 ], [ 14 ], [ 62 ], [ 11 ], [ 26 ], [ 15 ],
808
+ [ 2 ], [ 8 ], [ 3 ], [ 3 ], [ 6 ], [ 19 ], [ 4 ], [ 5 ], [ 6 ], [ 13 ] ]
809
+ gap> List(semis, s -> Length(Idempotents(s)));
810
+ [ 1, 5, 3, 43, 9, 354, 1, 416, 83, 1, 220, 25, 17, 21, 16, 6, 63, 168, 1, 15,
811
+ 240, 8, 41, 43, 1, 4, 1, 50, 74, 79, 13, 92, 7, 25, 122, 39, 314, 1, 1, 67,
812
+ 77, 6, 7, 7, 118, 38, 47, 34, 1, 175, 10, 62, 13, 93, 11, 16, 97, 15, 4,
813
+ 16, 102, 4, 1, 2, 7, 34, 176, 15, 16, 22, 1, 1, 381, 130, 1595, 25, 574,
814
+ 316, 33, 430, 28, 9, 1, 63, 1, 5, 197, 872, 173, 106, 1, 96, 1, 1, 191,
815
+ 248, 57, 14, 86, 38 ]
816
+ gap> a := Transformation([2, 1, 4, 5, 6, 3]);;
817
+ gap> b := Transformation([2, 3, 1, 5, 4, 1]);;
818
+ gap> M := Semigroup(a, b);;
819
+ gap> GreensLClassOfElement(M, a);
820
+ <Green's L-class: Transformation( [ 2, 1, 4, 5, 6, 3 ] )>
821
+ gap> Transformation([2, 1, 4, 5, 6, 3]) in last;
822
+ true
823
+ gap> f := FreeSemigroup(3);;
824
+ gap> a := f.1;; b := f.2;; c := f.3;;
825
+ gap> s := f / [[a ^ 2, a], [b ^ 2, b], [c ^ 2, c], [a * b, a],
826
+ > [b * a, b], [a * c, a], [c * a, c], [b * c, b], [c * b, c]];
827
+ <fp semigroup with 3 generators and 9 relations of length 30>
828
+ gap> Size(s);
829
+ 3
830
+ gap> GreensLClassOfElement(s, s.1);
831
+ <Green's L-class: s1>
832
+ gap> gens := [Transformation([2, 2, 5, 2, 3]),
833
+ > Transformation([2, 5, 3, 5, 3])];;
834
+ gap> S := Semigroup(gens);;
835
+ gap> f := Transformation([5, 5, 3, 5, 3]);;
836
+ gap> GreensHClassOfElement(S, f);;
837
+ gap> Representative(last);
838
+ Transformation( [ 5, 5, 3, 5, 3 ] )
839
+ gap> IsTrivial(SchutzenbergerGroup(last2));
840
+ true
841
+ gap> gens := [Transformation([4, 1, 4, 5, 3]),
842
+ > Transformation([5, 3, 5, 4, 3])];;
843
+ gap> S := Semigroup(gens);;
844
+ gap> C := GreensLClassOfElement(S, gens[1] * gens[2] * gens[1]);
845
+ <Green's L-class: Transformation( [ 5, 3, 5, 4, 3 ] )>
846
+ gap> Transformation([5, 3, 5, 4, 3]) in last;
847
+ true
848
+ gap> gens := [Transformation([5, 1, 1, 5, 1]),
849
+ > Transformation([5, 2, 4, 3, 2])];;
850
+ gap> S := Semigroup(gens);;
851
+ gap> gens := [Transformation([1, 2, 1, 2, 1]),
852
+ > Transformation([3, 4, 2, 1, 4])];;
853
+ gap> S := Semigroup(gens);;
854
+ gap> RClassReps(S);
855
+ [ Transformation( [ 1, 2, 1, 2, 1 ] ), Transformation( [ 3, 4, 2, 1, 4 ] ),
856
+ Transformation( [ 1, 2, 2, 1, 2 ] ), Transformation( [ 2, 1, 2, 1, 1 ] ) ]
857
+ gap> a := Transformation([2, 1, 4, 5, 6, 3]);;
858
+ gap> b := Transformation([2, 3, 1, 5, 4, 1]);;
859
+ gap> M := Semigroup(a, b);;
860
+ gap> rc := GreensRClassOfElement(M, a * b * a);
861
+ <Green's R-class: Transformation( [ 4, 1, 6, 5, 2, 2 ] )>
862
+ gap> Transformation([5, 2, 1, 4, 3, 3]) in last;
863
+ true
864
+ gap> gens := [Transformation([3, 5, 2, 5, 1]),
865
+ > Transformation([4, 3, 2, 1, 5])];;
866
+ gap> S := Semigroup(gens);;
867
+ gap> f := Transformation([2, 4, 2, 5, 3]);;
868
+ gap> r := RClass(S, f);
869
+ <Green's R-class: Transformation( [ 2, 4, 2, 5, 3 ] )>
870
+ gap> Transformation([3, 1, 3, 5, 2]) in last;
871
+ true
872
+ gap> LambdaOrb(r);
873
+ <closed orbit, 25 points with Schreier tree with log>
874
+ gap> AsList(last);
875
+ [ [ 0 ], [ 1, 2, 3, 5 ], [ 1, 2, 3, 4, 5 ], [ 2, 3, 4, 5 ], [ 1, 2, 5 ],
876
+ [ 1, 3, 5 ], [ 3, 4, 5 ], [ 1, 2, 3 ], [ 2, 4, 5 ], [ 2, 3, 5 ],
877
+ [ 2, 3, 4 ], [ 1, 5 ], [ 2, 5 ], [ 1, 3 ], [ 4, 5 ], [ 3, 5 ], [ 2, 3 ],
878
+ [ 2, 4 ], [ 1, 2 ], [ 5 ], [ 3, 4 ], [ 1 ], [ 3 ], [ 4 ], [ 2 ] ]
879
+ gap> LambdaOrbMults(LambdaOrb(r), LambdaOrbSCCIndex(r))[LambdaOrbSCCIndex(r)];
880
+ [ IdentityTransformation, IdentityTransformation ]
881
+ gap> SchutzenbergerGroup(r);
882
+ Group([ (1,3,2,5) ])
883
+ gap> gens := [Transformation([4, 1, 5, 2, 4]),
884
+ > Transformation([4, 4, 1, 5, 3])];;
885
+ gap> gens := [Transformation([4, 4, 3, 5, 3]),
886
+ > Transformation([5, 1, 1, 4, 1]),
887
+ > Transformation([5, 5, 4, 4, 5])];;
888
+ gap> S := Semigroup(gens);;
889
+ gap> f := Transformation([4, 5, 5, 5, 5]);;
890
+ gap> SchutzenbergerGroup(GreensDClassOfElement(S, f));
891
+ Group([ (4,5) ])
892
+ gap> SchutzenbergerGroup(GreensRClassOfElement(S, f));
893
+ Group([ (4,5) ])
894
+ gap> SchutzenbergerGroup(GreensLClassOfElement(S, f));
895
+ Group([ (4,5) ])
896
+ gap> SchutzenbergerGroup(GreensHClassOfElement(S, f));
897
+ Group([ (4,5) ])
898
+ gap> S := Semigroup([Transformation([6, 4, 4, 4, 6, 1]),
899
+ > Transformation([6, 5, 1, 6, 2, 2])]);;
900
+ gap> AsSet(Enumerate(LambdaOrb(S)));
901
+ [ [ 0 ], [ 1 ], [ 1, 2, 5, 6 ], [ 1, 4 ], [ 1, 4, 6 ], [ 2 ], [ 2, 5 ],
902
+ [ 2, 5, 6 ], [ 2, 6 ], [ 4 ], [ 4, 6 ], [ 5 ], [ 6 ] ]
903
+ gap> S := Semigroup([Transformation([2, 3, 4, 1]),
904
+ > Transformation([3, 3, 1, 1])]);;
905
+ gap> Idempotents(S, 1);
906
+ [ ]
907
+ gap> Idempotents(S, 2);
908
+ [ Transformation( [ 1, 1, 3, 3 ] ), Transformation( [ 1, 3, 3, 1 ] ),
909
+ Transformation( [ 2, 2, 4, 4 ] ), Transformation( [ 4, 2, 2, 4 ] ) ]
910
+ gap> Idempotents(S, 3);
911
+ [ ]
912
+ gap> Idempotents(S, 4);
913
+ [ IdentityTransformation ]
914
+ gap> Idempotents(S);
915
+ [ IdentityTransformation, Transformation( [ 1, 1, 3, 3 ] ),
916
+ Transformation( [ 1, 3, 3, 1 ] ), Transformation( [ 2, 2, 4, 4 ] ),
917
+ Transformation( [ 4, 2, 2, 4 ] ) ]
918
+ gap> S := Semigroup([Transformation([2, 4, 1, 2]),
919
+ > Transformation([3, 3, 4, 1])]);;
920
+ gap> AsSet(Enumerate(RhoOrb(S)));
921
+ [ [ 0 ], [ 1, 1, 1, 1 ], [ 1, 1, 1, 2 ], [ 1, 1, 2, 1 ], [ 1, 1, 2, 2 ],
922
+ [ 1, 1, 2, 3 ], [ 1, 2, 1, 1 ], [ 1, 2, 2, 1 ], [ 1, 2, 3, 1 ] ]
923
+
924
+ # MonoidPkgTest7: from install_no_grape.tst
925
+ gap> gens := [Transformation([4, 3, 3, 6, 7, 2, 3]),
926
+ > Transformation([6, 6, 4, 4, 2, 1, 4])];;
927
+ gap> s := Semigroup(gens);;
928
+ gap> Length(GreensRClasses(s));
929
+ 17
930
+ gap> s := Semigroup(gens);;
931
+ gap> NrRClasses(s);
932
+ 17
933
+ gap> f := Transformation([3, 3, 3, 3, 3, 2, 3]);;
934
+ gap> r := RClass(s, f);
935
+ <Green's R-class: Transformation( [ 3, 3, 3, 3, 3, 2, 3 ] )>
936
+ gap> Transformation([3, 3, 3, 3, 3, 2, 3]) in last;
937
+ true
938
+ gap> LambdaOrb(r);
939
+ <closed orbit, 19 points with Schreier tree with log>
940
+ gap> AsSet(LambdaOrb(r));
941
+ [ [ 0 ], [ 1 ], [ 1, 2, 4, 6 ], [ 1, 4 ], [ 1, 4, 6 ], [ 1, 6 ], [ 2 ],
942
+ [ 2, 3 ], [ 2, 3, 4, 6 ], [ 2, 3, 4, 6, 7 ], [ 2, 3, 6 ], [ 2, 4 ],
943
+ [ 2, 4, 6 ], [ 2, 6 ], [ 3 ], [ 3, 6 ], [ 4 ], [ 4, 6 ], [ 6 ] ]
944
+ gap> SchutzenbergerGroup(r);
945
+ Group([ (2,3) ])
946
+ gap> Number(GreensDClasses(s), IsRegularDClass);
947
+ 3
948
+ gap> s := Semigroup(gens);
949
+ <transformation semigroup of degree 7 with 2 generators>
950
+ gap> NrRegularDClasses(s);
951
+ 3
952
+
953
+ # MonoidPkgTest8
954
+ gap> g1 := Transformation([2, 2, 4, 4, 5, 6]);;
955
+ gap> g2 := Transformation([5, 3, 4, 4, 6, 6]);;
956
+ gap> m1 := Monoid(g1, g2);;
957
+ gap> g1 := Transformation([5, 4, 4, 2, 1]);;
958
+ gap> g2 := Transformation([2, 5, 5, 4, 1]);;
959
+ gap> m2 := Monoid(g1, g2);;
960
+ gap> g1 := Transformation([1, 2, 1, 3, 3]);;
961
+ gap> g2 := Transformation([2, 2, 3, 5, 5]);;
962
+ gap> m3 := Monoid(g1, g2);;
963
+ gap> g1 := Transformation([8, 7, 5, 3, 1, 3, 8, 8]);;
964
+ gap> g2 := Transformation([5, 1, 4, 1, 4, 4, 7, 8]);;
965
+ gap> m4 := Monoid(g1, g2);;
966
+ gap> g1 := Transformation([3, 1, 2, 3, 2, 3, 2, 3]);;
967
+ gap> g2 := Transformation([2, 5, 8, 5, 2, 5, 7, 8]);;
968
+ gap> m5 := Monoid(g1, g2);;
969
+ gap> g1 := Transformation([3, 3, 2, 6, 2, 4, 4, 6]);;
970
+ gap> g2 := Transformation([5, 1, 7, 8, 7, 5, 8, 1]);;
971
+ gap> m6 := Semigroup(g1, g2);;
972
+ gap> g1 := Transformation([3, 3, 2, 6, 2, 4, 4, 6, 3, 4, 6]);;
973
+ gap> g2 := Transformation([4, 4, 6, 1, 3, 3, 3, 3, 11, 11, 11]);;
974
+ gap> m7 := Monoid(g1, g2);; # (this is a good example!)
975
+ gap> g1 := Transformation([3, 3, 2, 6, 2, 4, 4, 6, 3, 4, 6]);;
976
+ gap> g2 := Transformation([4, 4, 6, 1, 3, 3, 3, 3, 11, 11, 11]);;
977
+ gap> g3 := Transformation([2, 2, 3, 4, 4, 6, 6, 6, 6, 6, 11]);;
978
+ gap> m8 := Monoid(g1, g2, g3);;
979
+ gap> g1 := Transformation([3, 3, 2, 6, 2, 4, 4, 6, 3, 4, 6]);;
980
+ gap> g2 := Transformation([4, 4, 6, 1, 3, 3, 3, 3, 11, 11, 11]);;
981
+ gap> g3 := Transformation([2, 2, 3, 4, 4, 6, 6, 6, 6, 6, 11]);;
982
+ gap> g4 := Transformation([2, 2, 3, 4, 4, 6, 6, 6, 6, 11, 11]);;
983
+ gap> m9 := Monoid(g1, g2, g3, g4);;
984
+ gap> g1 := Transformation([12, 3, 6, 4, 6, 11, 9, 6, 6, 7, 6, 12]);;
985
+ gap> g2 := Transformation([10, 7, 2, 11, 7, 3, 12, 4, 3, 8, 7, 5]);;
986
+ gap> m11 := Monoid(g1, g2);;
987
+ gap> g1 := Transformation([3, 2, 12, 2, 7, 9, 4, 2, 1, 12, 11, 12]);;
988
+ gap> g2 := Transformation([3, 6, 12, 7, 2, 2, 3, 6, 1, 7, 11, 1]);;
989
+ gap> m14 := Monoid(g1, g2);;
990
+ gap> g1 := Transformation([2, 2, 3, 4, 5, 6]);;
991
+ gap> g2 := Transformation([2, 3, 4, 5, 6, 1]);;
992
+ gap> m15 := Monoid(g1, g2);;
993
+ gap> g1 := Transformation([2, 1, 4, 5, 6, 7, 3, 2, 1]);;
994
+ gap> g2 := Transformation([2, 1, 4, 2, 1, 4, 2, 1, 4]);;
995
+ gap> m18 := Monoid(g1, g2);;
996
+ gap> g1 := Transformation([5, 2, 5, 5, 8, 10, 8, 5, 2, 10]);;
997
+ gap> g2 := Transformation([2, 2, 5, 5, 5, 8, 8, 8, 8, 8]);;
998
+ gap> m22 := Monoid(g1, g2);;
999
+ gap> g1 := Transformation([4, 6, 3, 8, 5, 6, 10, 4, 3, 7]);;
1000
+ gap> g2 := Transformation([5, 6, 6, 3, 8, 6, 3, 7, 8, 4]);;
1001
+ gap> g3 := Transformation([8, 6, 3, 2, 8, 10, 9, 2, 6, 2]);;
1002
+ gap> m23 := Monoid(g1, g2, g3);;
1003
+
1004
+ # MonoidPkgTest9
1005
+ gap> SmallMonoids := [m1, m2, m3, m4, m5, m6, m7, m8, m9, m11, m14, m15, m18,
1006
+ > m22, m23];;
1007
+ gap> List(SmallMonoids, IsCompletelyRegularSemigroup);
1008
+ [ false, true, false, false, true, true, true, true, true, false, false,
1009
+ false, false, true, false ]
1010
+ gap> List(SmallMonoids, IsRegularSemigroup);
1011
+ [ false, true, false, false, true, true, true, true, true, false, false,
1012
+ true, true, true, false ]
1013
+ gap> List(SmallMonoids, IsSimpleSemigroup);
1014
+ [ false, false, false, false, false, true, false, false, false, false, false,
1015
+ false, false, false, false ]
1016
+ gap> List(SmallMonoids, IsCompletelySimpleSemigroup);
1017
+ [ false, false, false, false, false, true, false, false, false, false, false,
1018
+ false, false, false, false ]
1019
+ gap> List(SmallMonoids, IsInverseSemigroup);
1020
+ [ false, true, false, false, false, false, false, false, false, false, false,
1021
+ false, false, false, false ]
1022
+ gap> List(SmallMonoids, IsCliffordSemigroup);
1023
+ [ false, true, false, false, false, false, false, false, false, false, false,
1024
+ false, false, false, false ]
1025
+ gap> List(SmallMonoids, IsGroupAsSemigroup);
1026
+ [ false, false, false, false, false, false, false, false, false, false,
1027
+ false, false, false, false, false ]
1028
+ gap> List(SmallMonoids, IsZeroSemigroup);
1029
+ [ false, false, false, false, false, false, false, false, false, false,
1030
+ false, false, false, false, false ]
1031
+ gap> List(SmallMonoids, IsLeftZeroSemigroup);
1032
+ [ false, false, false, false, false, false, false, false, false, false,
1033
+ false, false, false, false, false ]
1034
+ gap> List(SmallMonoids, IsRightZeroSemigroup);
1035
+ [ false, false, false, false, false, false, false, false, false, false,
1036
+ false, false, false, false, false ]
1037
+ gap> List(SmallMonoids, IsCommutativeSemigroup);
1038
+ [ false, false, false, false, false, false, false, false, false, false,
1039
+ false, false, false, false, false ]
1040
+ gap> List(SmallMonoids, IsZeroGroup);
1041
+ [ false, false, false, false, false, false, false, false, false, false,
1042
+ false, false, false, false, false ]
1043
+
1044
+ # MonoidPkgTest10
1045
+ gap> gens := [Transformation([2, 4, 1, 5, 4, 4, 7, 3, 8, 1]),
1046
+ > Transformation([3, 2, 8, 8, 4, 4, 8, 6, 5, 7]),
1047
+ > Transformation([4, 10, 6, 6, 1, 2, 4, 10, 9, 7]),
1048
+ > Transformation([6, 2, 2, 4, 9, 9, 5, 10, 1, 8]),
1049
+ > Transformation([6, 4, 1, 6, 6, 8, 9, 6, 2, 2]),
1050
+ > Transformation([6, 8, 1, 10, 6, 4, 9, 1, 9, 4]),
1051
+ > Transformation([8, 6, 2, 3, 3, 4, 8, 6, 2, 9]),
1052
+ > Transformation([9, 1, 2, 8, 1, 5, 9, 9, 9, 5]),
1053
+ > Transformation([9, 3, 1, 5, 10, 3, 4, 6, 10, 2]),
1054
+ > Transformation([10, 7, 3, 7, 1, 9, 8, 8, 4, 10])];;
1055
+ gap> s := Semigroup(gens);;
1056
+ gap> o := Orb(s, [1, 2, 3, 4], OnSets);
1057
+ <open orbit, 1 points>
1058
+ gap> Enumerate(o);
1059
+ <closed orbit, 351 points>
1060
+ gap> List(OrbSCC(o), x -> o{x});
1061
+ [ [ [ 1, 2, 3, 4 ], [ 1, 2, 4, 5 ], [ 2, 3, 4, 8 ], [ 1, 2, 8, 9 ],
1062
+ [ 2, 3, 5, 6 ], [ 1, 4, 6, 8 ], [ 1, 4, 6, 10 ], [ 4, 6, 8, 9 ],
1063
+ [ 3, 4, 5, 8 ], [ 1, 3, 4, 5 ], [ 2, 4, 6, 9 ], [ 2, 4, 6, 8 ],
1064
+ [ 1, 5, 8, 9 ], [ 2, 3, 6, 8 ], [ 1, 2, 5, 9 ], [ 1, 2, 6, 9 ],
1065
+ [ 2, 3, 4, 5 ], [ 1, 6, 8, 10 ], [ 3, 4, 6, 7 ], [ 3, 7, 8, 9 ],
1066
+ [ 4, 6, 9, 10 ], [ 4, 5, 7, 8 ], [ 1, 6, 9, 10 ], [ 1, 6, 8, 9 ],
1067
+ [ 3, 6, 9, 10 ], [ 2, 6, 7, 9 ], [ 2, 4, 5, 8 ], [ 3, 5, 6, 10 ],
1068
+ [ 1, 2, 3, 10 ], [ 4, 6, 7, 10 ], [ 2, 4, 6, 7 ], [ 4, 8, 9, 10 ],
1069
+ [ 2, 3, 6, 9 ], [ 1, 2, 4, 8 ], [ 2, 4, 6, 10 ], [ 2, 4, 7, 8 ],
1070
+ [ 1, 8, 9, 10 ], [ 1, 4, 6, 9 ], [ 3, 5, 9, 10 ], [ 1, 3, 4, 10 ],
1071
+ [ 2, 5, 8, 9 ], [ 2, 4, 5, 6 ], [ 1, 2, 6, 10 ], [ 2, 4, 7, 10 ],
1072
+ [ 1, 4, 5, 7 ], [ 2, 4, 5, 7 ], [ 6, 8, 9, 10 ], [ 1, 3, 4, 8 ],
1073
+ [ 1, 5, 6, 9 ], [ 1, 2, 4, 9 ], [ 1, 2, 4, 6 ], [ 3, 4, 6, 8 ],
1074
+ [ 1, 3, 5, 6 ], [ 1, 3, 9, 10 ], [ 3, 5, 7, 8 ], [ 1, 3, 4, 7 ],
1075
+ [ 3, 7, 8, 10 ], [ 2, 6, 8, 9 ], [ 4, 7, 8, 9 ], [ 4, 5, 6, 10 ],
1076
+ [ 1, 2, 6, 7 ], [ 7, 8, 9, 10 ], [ 1, 3, 7, 8 ], [ 2, 5, 6, 10 ],
1077
+ [ 3, 4, 6, 9 ], [ 1, 4, 9, 10 ], [ 2, 3, 8, 9 ], [ 3, 4, 7, 8 ],
1078
+ [ 1, 3, 5, 7 ], [ 2, 5, 6, 9 ], [ 2, 3, 4, 6 ], [ 1, 4, 8, 10 ],
1079
+ [ 3, 6, 8, 9 ], [ 3, 4, 8, 9 ], [ 1, 5, 6, 10 ], [ 2, 3, 9, 10 ],
1080
+ [ 1, 4, 8, 9 ], [ 4, 7, 8, 10 ], [ 4, 5, 8, 10 ], [ 1, 7, 8, 10 ],
1081
+ [ 3, 6, 7, 8 ], [ 2, 5, 9, 10 ], [ 1, 4, 7, 10 ], [ 2, 4, 5, 9 ],
1082
+ [ 4, 5, 6, 8 ], [ 1, 7, 8, 9 ], [ 3, 5, 6, 8 ], [ 1, 3, 6, 10 ],
1083
+ [ 1, 2, 6, 8 ], [ 2, 6, 9, 10 ], [ 2, 7, 9, 10 ], [ 4, 7, 9, 10 ],
1084
+ [ 2, 4, 5, 10 ], [ 2, 3, 5, 10 ], [ 1, 3, 7, 10 ], [ 2, 5, 6, 8 ],
1085
+ [ 1, 6, 7, 10 ], [ 2, 3, 4, 9 ], [ 1, 3, 5, 10 ], [ 1, 2, 9, 10 ],
1086
+ [ 2, 3, 5, 7 ], [ 1, 4, 6, 7 ], [ 4, 5, 6, 9 ], [ 1, 4, 7, 9 ],
1087
+ [ 1, 4, 5, 6 ], [ 1, 7, 9, 10 ], [ 2, 4, 9, 10 ], [ 6, 7, 9, 10 ],
1088
+ [ 1, 4, 7, 8 ], [ 2, 3, 4, 10 ], [ 1, 2, 5, 8 ], [ 1, 2, 3, 5 ],
1089
+ [ 2, 4, 8, 9 ], [ 1, 2, 4, 10 ], [ 2, 3, 5, 9 ], [ 4, 6, 8, 10 ],
1090
+ [ 2, 6, 7, 10 ], [ 4, 6, 7, 8 ], [ 3, 4, 5, 6 ], [ 1, 3, 7, 9 ],
1091
+ [ 1, 2, 7, 8 ], [ 2, 3, 4, 7 ], [ 1, 2, 5, 6 ], [ 3, 4, 8, 10 ],
1092
+ [ 2, 4, 8, 10 ], [ 2, 6, 7, 8 ], [ 3, 4, 5, 7 ], [ 1, 4, 5, 10 ],
1093
+ [ 4, 5, 9, 10 ], [ 1, 6, 7, 9 ], [ 3, 4, 9, 10 ], [ 1, 2, 5, 10 ],
1094
+ [ 3, 4, 7, 10 ], [ 1, 4, 5, 8 ], [ 5, 6, 9, 10 ], [ 1, 2, 7, 9 ],
1095
+ [ 2, 3, 5, 8 ], [ 2, 3, 7, 8 ], [ 1, 3, 4, 6 ], [ 1, 3, 5, 9 ],
1096
+ [ 3, 7, 9, 10 ], [ 4, 6, 7, 9 ], [ 3, 4, 5, 10 ], [ 1, 4, 5, 9 ],
1097
+ [ 2, 4, 7, 9 ], [ 2, 5, 7, 8 ], [ 3, 4, 6, 10 ], [ 1, 5, 6, 8 ],
1098
+ [ 3, 4, 5, 9 ], [ 1, 2, 4, 7 ], [ 5, 6, 8, 9 ], [ 1, 5, 7, 8 ],
1099
+ [ 1, 2, 3, 9 ], [ 1, 3, 8, 9 ], [ 1, 2, 3, 8 ], [ 1, 3, 6, 9 ],
1100
+ [ 1, 2, 5, 7 ], [ 1, 2, 3, 7 ], [ 1, 3, 4, 9 ], [ 1, 5, 9, 10 ],
1101
+ [ 5, 6, 8, 10 ], [ 2, 3, 6, 10 ], [ 1, 2, 7, 10 ], [ 1, 3, 5, 8 ],
1102
+ [ 1, 3, 8, 10 ], [ 2, 6, 8, 10 ], [ 2, 8, 9, 10 ], [ 2, 5, 6, 7 ],
1103
+ [ 1, 2, 8, 10 ], [ 2, 3, 6, 7 ], [ 3, 4, 7, 9 ], [ 5, 6, 7, 8 ],
1104
+ [ 1, 5, 8, 10 ], [ 2, 5, 8, 10 ], [ 4, 5, 6, 7 ], [ 3, 5, 6, 7 ],
1105
+ [ 3, 5, 6, 9 ], [ 4, 5, 8, 9 ] ],
1106
+ [ [ 2, 4, 5 ], [ 6, 8, 10 ], [ 1, 3, 4 ], [ 2, 3, 8 ], [ 1, 4, 6 ],
1107
+ [ 4, 6, 10 ], [ 2, 6, 8 ], [ 2, 4, 6 ], [ 2, 4, 8 ], [ 1, 8, 9 ],
1108
+ [ 4, 8, 10 ], [ 5, 8, 9 ], [ 3, 4, 8 ], [ 3, 7, 8 ], [ 1, 6, 9 ],
1109
+ [ 2, 4, 9 ], [ 8, 9, 10 ], [ 7, 9, 10 ], [ 1, 5, 8 ], [ 3, 6, 8 ],
1110
+ [ 1, 3, 6 ], [ 2, 5, 9 ], [ 1, 2, 9 ], [ 2, 3, 5 ], [ 1, 6, 10 ],
1111
+ [ 4, 8, 9 ], [ 4, 7, 8 ], [ 1, 9, 10 ], [ 4, 6, 9 ], [ 4, 9, 10 ],
1112
+ [ 1, 4, 8 ], [ 7, 8, 10 ], [ 1, 4, 9 ], [ 2, 5, 8 ], [ 2, 9, 10 ],
1113
+ [ 2, 6, 9 ], [ 4, 7, 9 ], [ 1, 4, 5 ], [ 1, 7, 10 ], [ 1, 2, 7 ],
1114
+ [ 3, 4, 9 ], [ 1, 2, 6 ], [ 4, 6, 8 ], [ 2, 6, 10 ], [ 2, 8, 9 ],
1115
+ [ 1, 2, 10 ], [ 1, 2, 4 ], [ 3, 5, 9 ], [ 4, 5, 8 ], [ 5, 6, 10 ],
1116
+ [ 2, 3, 10 ], [ 3, 7, 10 ], [ 4, 6, 7 ], [ 7, 8, 9 ], [ 5, 6, 8 ],
1117
+ [ 3, 4, 6 ], [ 1, 6, 8 ], [ 2, 4, 10 ], [ 6, 7, 10 ], [ 2, 4, 7 ],
1118
+ [ 3, 4, 5 ], [ 1, 3, 7 ], [ 3, 8, 10 ], [ 6, 7, 8 ], [ 6, 8, 9 ],
1119
+ [ 4, 5, 6 ], [ 3, 5, 10 ], [ 2, 3, 9 ], [ 6, 9, 10 ], [ 4, 5, 7 ],
1120
+ [ 4, 5, 10 ], [ 2, 5, 10 ], [ 3, 6, 9 ], [ 1, 3, 10 ], [ 1, 2, 8 ],
1121
+ [ 2, 3, 6 ], [ 1, 2, 5 ], [ 3, 9, 10 ], [ 5, 7, 8 ], [ 5, 9, 10 ],
1122
+ [ 1, 5, 9 ], [ 1, 4, 10 ], [ 3, 8, 9 ], [ 1, 3, 8 ], [ 1, 2, 3 ],
1123
+ [ 1, 3, 9 ], [ 3, 5, 8 ], [ 3, 4, 10 ], [ 1, 7, 9 ], [ 1, 5, 6 ],
1124
+ [ 2, 7, 8 ], [ 3, 4, 7 ], [ 1, 5, 7 ], [ 1, 8, 10 ], [ 4, 7, 10 ],
1125
+ [ 3, 6, 7 ], [ 1, 4, 7 ], [ 2, 5, 7 ], [ 1, 7, 8 ], [ 2, 3, 7 ],
1126
+ [ 4, 5, 9 ], [ 5, 6, 9 ], [ 2, 3, 4 ], [ 1, 3, 5 ], [ 6, 7, 9 ],
1127
+ [ 3, 7, 9 ], [ 1, 6, 7 ], [ 2, 7, 9 ], [ 3, 6, 10 ], [ 2, 6, 7 ],
1128
+ [ 2, 8, 10 ], [ 2, 5, 6 ], [ 1, 5, 10 ], [ 2, 7, 10 ], [ 3, 5, 6 ],
1129
+ [ 5, 8, 10 ], [ 3, 5, 7 ], [ 5, 6, 7 ] ],
1130
+ [ [ 4, 6 ], [ 2, 6 ], [ 2, 10 ], [ 4, 8 ], [ 6, 10 ], [ 4, 9 ], [ 5, 8 ],
1131
+ [ 1, 8 ], [ 4, 10 ], [ 7, 8 ], [ 6, 8 ], [ 5, 9 ], [ 4, 5 ], [ 1, 7 ],
1132
+ [ 8, 10 ], [ 1, 4 ], [ 8, 9 ], [ 1, 9 ], [ 3, 5 ], [ 1, 6 ], [ 3, 4 ],
1133
+ [ 2, 8 ], [ 3, 6 ], [ 2, 4 ], [ 2, 9 ], [ 4, 7 ], [ 3, 8 ], [ 1, 3 ],
1134
+ [ 1, 2 ], [ 2, 3 ], [ 3, 7 ], [ 2, 5 ], [ 1, 10 ], [ 3, 10 ], [ 6, 7 ],
1135
+ [ 7, 10 ], [ 3, 9 ], [ 6, 9 ], [ 9, 10 ], [ 7, 9 ], [ 1, 5 ], [ 5, 7 ],
1136
+ [ 5, 6 ], [ 2, 7 ], [ 5, 10 ] ],
1137
+ [ [ 9 ], [ 4 ], [ 5 ], [ 6 ], [ 3 ], [ 8 ], [ 10 ], [ 1 ], [ 2 ], [ 7 ] ] ]
1138
+ gap> g1 := Transformation([1, 4, 11, 11, 7, 2, 6, 2, 5, 5, 10]);;
1139
+ gap> g2 := Transformation([2, 4, 4, 2, 10, 5, 11, 11, 11, 6, 7]);;
1140
+ gap> m10 := Monoid(g1, g2);;
1141
+ gap> g1 := Transformation([10, 8, 7, 4, 1, 4, 10, 10, 7, 2]);;
1142
+ gap> g2 := Transformation([5, 2, 5, 5, 9, 10, 8, 3, 8, 10]);;
1143
+ gap> m12 := Monoid(g1, g2);;
1144
+ gap> g1 := Transformation([2, 1, 4, 5, 3, 7, 8, 9, 10, 6]);;
1145
+ gap> g2 := Transformation([1, 2, 4, 3, 5, 6, 7, 8, 9, 10]);;
1146
+ gap> g3 := Transformation([1, 2, 3, 4, 5, 6, 10, 9, 8, 7]);;
1147
+ gap> g4 := Transformation([9, 1, 4, 3, 6, 9, 3, 4, 3, 9]);;
1148
+ gap> m13 := Monoid(g1, g2, g3, g4);;
1149
+ gap> g1 := Transformation([13, 10, 9, 5, 1, 5, 13, 13, 8, 2, 7, 2, 6]);;
1150
+ gap> g2 := Transformation([6, 11, 12, 10, 4, 10, 13, 5, 8, 5, 11, 6, 9]);;
1151
+ gap> m16 := Semigroup(g1, g2);;
1152
+ gap> g1 := Transformation([12, 10, 8, 5, 1, 5, 12, 12, 8, 2, 6, 2]);;
1153
+ gap> g2 := Transformation([5, 6, 10, 11, 10, 4, 10, 12, 5, 7, 4, 10]);;
1154
+ gap> g3 := Transformation([6, 8, 12, 5, 4, 8, 10, 7, 4, 1, 10, 11]);;
1155
+ gap> m17 := Monoid(g1, g2, g3);;
1156
+ gap> g1 := Transformation([2, 3, 4, 5, 1, 8, 7, 6, 2, 7]);;
1157
+ gap> g2 := Transformation([5, 4, 1, 2, 3, 7, 6, 5, 4, 1]);;
1158
+ gap> g3 := Transformation([2, 1, 4, 3, 2, 1, 4, 4, 3, 3]);;
1159
+ gap> m19 := Monoid(g1, g2, g3);;
1160
+ gap> g1 := Transformation([2, 3, 4, 5, 1, 8, 7, 6, 2, 7]);;
1161
+ gap> g2 := Transformation([2, 3, 4, 5, 6, 8, 7, 1, 2, 2]);;
1162
+ gap> m20 := Monoid(g1, g2);;
1163
+ gap> g1 := Transformation([2, 3, 4, 5, 1, 8, 7, 6, 2, 7]);;
1164
+ gap> g2 := Transformation([3, 8, 7, 4, 1, 4, 3, 3, 7, 2]);;
1165
+ gap> m21 := Monoid(g1, g2);;
1166
+ gap> BigMonoids := [m10, m12, m13, m16, m17, m19, m20, m21];;
1167
+ gap> g1 := Transformation([2, 2, 4, 4, 5, 6]);;
1168
+ gap> g2 := Transformation([5, 3, 4, 4, 6, 6]);;
1169
+ gap> m1 := Monoid(g1, g2);;
1170
+ gap> g1 := Transformation([5, 4, 4, 2, 1]);;
1171
+ gap> g2 := Transformation([2, 5, 5, 4, 1]);;
1172
+ gap> m2 := Monoid(g1, g2);;
1173
+ gap> g1 := Transformation([1, 2, 1, 3, 3]);;
1174
+ gap> g2 := Transformation([2, 2, 3, 5, 5]);;
1175
+ gap> m3 := Monoid(g1, g2);;
1176
+ gap> g1 := Transformation([8, 7, 5, 3, 1, 3, 8, 8]);;
1177
+ gap> g2 := Transformation([5, 1, 4, 1, 4, 4, 7, 8]);;
1178
+ gap> m4 := Monoid(g1, g2);;
1179
+ gap> g1 := Transformation([3, 1, 2, 3, 2, 3, 2, 3]);;
1180
+ gap> g2 := Transformation([2, 5, 8, 5, 2, 5, 7, 8]);;
1181
+ gap> m5 := Monoid(g1, g2);;
1182
+ gap> g1 := Transformation([3, 3, 2, 6, 2, 4, 4, 6]);;
1183
+ gap> g2 := Transformation([5, 1, 7, 8, 7, 5, 8, 1]);;
1184
+ gap> m6 := Semigroup(g1, g2);;
1185
+ gap> g1 := Transformation([3, 3, 2, 6, 2, 4, 4, 6, 3, 4, 6]);;
1186
+ gap> g2 := Transformation([4, 4, 6, 1, 3, 3, 3, 3, 11, 11, 11]);;
1187
+ gap> m7 := Monoid(g1, g2);; # (this is a good example!)
1188
+ gap> g1 := Transformation([3, 3, 2, 6, 2, 4, 4, 6, 3, 4, 6]);;
1189
+ gap> g2 := Transformation([4, 4, 6, 1, 3, 3, 3, 3, 11, 11, 11]);;
1190
+ gap> g3 := Transformation([2, 2, 3, 4, 4, 6, 6, 6, 6, 6, 11]);;
1191
+ gap> m8 := Monoid(g1, g2, g3);;
1192
+ gap> g1 := Transformation([3, 3, 2, 6, 2, 4, 4, 6, 3, 4, 6]);;
1193
+ gap> g2 := Transformation([4, 4, 6, 1, 3, 3, 3, 3, 11, 11, 11]);;
1194
+ gap> g3 := Transformation([2, 2, 3, 4, 4, 6, 6, 6, 6, 6, 11]);;
1195
+ gap> g4 := Transformation([2, 2, 3, 4, 4, 6, 6, 6, 6, 11, 11]);;
1196
+ gap> m9 := Monoid(g1, g2, g3, g4);;
1197
+ gap> g1 := Transformation([12, 3, 6, 4, 6, 11, 9, 6, 6, 7, 6, 12]);;
1198
+ gap> g2 := Transformation([10, 7, 2, 11, 7, 3, 12, 4, 3, 8, 7, 5]);;
1199
+ gap> m11 := Monoid(g1, g2);;
1200
+ gap> g1 := Transformation([3, 2, 12, 2, 7, 9, 4, 2, 1, 12, 11, 12]);;
1201
+ gap> g2 := Transformation([3, 6, 12, 7, 2, 2, 3, 6, 1, 7, 11, 1]);;
1202
+ gap> m14 := Monoid(g1, g2);;
1203
+ gap> g1 := Transformation([2, 2, 3, 4, 5, 6]);;
1204
+ gap> g2 := Transformation([2, 3, 4, 5, 6, 1]);;
1205
+ gap> m15 := Monoid(g1, g2);;
1206
+ gap> g1 := Transformation([2, 1, 4, 5, 6, 7, 3, 2, 1]);;
1207
+ gap> g2 := Transformation([2, 1, 4, 2, 1, 4, 2, 1, 4]);;
1208
+ gap> m18 := Monoid(g1, g2);;
1209
+ gap> g1 := Transformation([5, 2, 5, 5, 8, 10, 8, 5, 2, 10]);;
1210
+ gap> g2 := Transformation([2, 2, 5, 5, 5, 8, 8, 8, 8, 8]);;
1211
+ gap> m22 := Monoid(g1, g2);;
1212
+ gap> g1 := Transformation([4, 6, 3, 8, 5, 6, 10, 4, 3, 7]);;
1213
+ gap> g2 := Transformation([5, 6, 6, 3, 8, 6, 3, 7, 8, 4]);;
1214
+ gap> g3 := Transformation([8, 6, 3, 2, 8, 10, 9, 2, 6, 2]);;
1215
+ gap> m23 := Monoid(g1, g2, g3);;
1216
+ gap> SmallMonoids :=
1217
+ > [m1, m2, m3, m4, m5, m6, m7, m8, m9, m11, m14, m15, m18, m22, m23];;
1218
+ gap> List(SmallMonoids, IsCompletelyRegularSemigroup);
1219
+ [ false, true, false, false, true, true, true, true, true, false, false,
1220
+ false, false, true, false ]
1221
+ gap> List(BigMonoids, IsCompletelyRegularSemigroup);
1222
+ [ true, false, false, false, false, false, true, false ]
1223
+ gap> g1 := Transformation([3, 3, 2, 6, 2, 4, 4, 6]);;
1224
+ gap> g2 := Transformation([5, 1, 7, 8, 7, 5, 8, 1]);;
1225
+ gap> cs1 := Semigroup(g1, g2);;
1226
+ gap> IsCompletelySimpleSemigroup(cs1);
1227
+ true
1228
+ gap> g1 := Transformation([2, 3, 4, 5, 1, 8, 7, 6, 2, 7]);;
1229
+ gap> g2 := Transformation([2, 3, 4, 5, 6, 8, 7, 1, 2, 2]);;
1230
+ gap> cs2 := Semigroup(g1, g2);;
1231
+ gap> IsCompletelySimpleSemigroup(cs2);
1232
+ true
1233
+ gap> g1 := Transformation([2, 1, 1, 2, 1]);;
1234
+ gap> g2 := Transformation([3, 4, 3, 4, 4]);;
1235
+ gap> g3 := Transformation([3, 4, 3, 4, 3]);;
1236
+ gap> g4 := Transformation([4, 3, 3, 4, 4]);;
1237
+ gap> cs3 := Semigroup(g1, g2, g3, g4);;
1238
+ gap> IsCompletelySimpleSemigroup(cs3);
1239
+ true
1240
+ gap> g1 := Transformation([4, 4, 4, 1, 1, 6, 7, 8, 9, 10, 11, 1]);;
1241
+ gap> g2 := Transformation([6, 6, 6, 7, 7, 1, 4, 8, 9, 10, 11, 7]);;
1242
+ gap> g3 := Transformation([8, 8, 8, 9, 9, 10, 11, 1, 4, 6, 7, 9]);;
1243
+ gap> g4 := Transformation([2, 2, 2, 4, 4, 6, 7, 8, 9, 10, 11, 4]);;
1244
+ gap> g5 := Transformation([1, 1, 1, 5, 5, 6, 7, 8, 9, 10, 11, 5]);;
1245
+ gap> g6 := Transformation([1, 1, 4, 4, 4, 6, 7, 8, 9, 10, 11, 1]);;
1246
+ gap> g7 := Transformation([1, 1, 7, 4, 4, 6, 7, 8, 9, 10, 11, 6]);;
1247
+ gap> cs4 := Semigroup(g1, g2, g3, g4, g5, g6, g7);;
1248
+ gap> IsCompletelySimpleSemigroup(cs4);
1249
+ true
1250
+ gap> g1 := Transformation([1, 2, 2, 1, 2]);;
1251
+ gap> g2 := Transformation([3, 4, 3, 4, 4]);;
1252
+ gap> g3 := Transformation([3, 4, 3, 4, 3]);;
1253
+ gap> g4 := Transformation([4, 3, 3, 4, 4]);;
1254
+ gap> cs5 := Semigroup(g1, g2, g3, g4);;
1255
+ gap> IsCompletelySimpleSemigroup(cs5);
1256
+ true
1257
+ gap> dc := GreensDClassOfElement(m14, Transformation(
1258
+ > [12, 2, 1, 3, 6, 6, 12, 2, 3, 3, 11, 3]));;
1259
+ gap> dc = MinimalIdeal(m14);
1260
+ false
1261
+ gap> dc := GreensDClassOfElement(m9, Transformation(
1262
+ > [3, 3, 2, 6, 2, 4, 4, 6, 3, 4, 6]));;
1263
+ gap> d := GreensDClassOfElement(m14, Transformation(
1264
+ > [12, 2, 1, 3, 6, 6, 12, 2, 3, 3, 11, 3]));;
1265
+ gap> g := GroupHClassOfGreensDClass(d);;
1266
+ gap> s := Semigroup(AsList(g));;
1267
+ gap> IsGroupAsSemigroup(s);
1268
+ true
1269
+ gap> IsGroupAsSemigroup(Range(IsomorphismTransformationSemigroup(
1270
+ > Group([(2, 4)(3, 5), (1, 2, 3, 5, 4)]))));
1271
+ true
1272
+ gap> IsGroupAsSemigroup(m14);
1273
+ false
1274
+ gap> List(SmallMonoids, IsCliffordSemigroup);
1275
+ [ false, true, false, false, false, false, false, false, false, false, false,
1276
+ false, false, false, false ]
1277
+ gap> List(BigMonoids, IsCliffordSemigroup);
1278
+ [ false, false, false, false, false, false, false, false ]
1279
+ gap> ForAll(GreensDClasses(m2), x -> Length(GreensHClasses(x)) = 1 and
1280
+ > IsRegularDClass(x));
1281
+ true
1282
+ gap> IsCliffordSemigroup(m2);
1283
+ true
1284
+ gap> ForAll(GreensDClasses(m2), x -> Length(GreensHClasses(x)) = 1 and
1285
+ > IsRegularDClass(x));
1286
+ true
1287
+ gap> g1 := Transformation([1, 2, 3, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4,
1288
+ > 4, 4, 4, 4]);;
1289
+ gap> g2 := Transformation([1, 2, 3, 4, 5, 6, 7, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4,
1290
+ > 4, 4, 4, 4]);;
1291
+ gap> g3 := Transformation([1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 4, 4, 4, 4, 4,
1292
+ > 4, 4, 4, 4, 4]);;
1293
+ gap> g4 := Transformation([1, 2, 3, 4, 4, 4, 4, 4, 4, 4, 4, 12, 13, 14, 15,
1294
+ > 16, 4, 4, 4, 4, 4]);;
1295
+ gap> g5 := Transformation([1 .. 21]);;
1296
+ gap> c3 := Semigroup(g1, g2, g3, g4, g5);;
1297
+ gap> IsCliffordSemigroup(c3);
1298
+ true
1299
+ gap> Size(c3);
1300
+ 5
1301
+ gap> ForAll(GreensDClasses(c3), x -> Length(GreensHClasses(x)) = 1 and
1302
+ > IsRegularDClass(x));
1303
+ true
1304
+ gap> g1 := g1 * (1, 2);;
1305
+ gap> g2 := Transformation([1, 2, 3, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4,
1306
+ > 4, 4, 4, 4]) * (1, 2, 3, 4);;
1307
+ gap> g3 := Transformation([1, 2, 3, 4, 5, 6, 7, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4,
1308
+ > 4, 4, 4, 4]) * (5, 6);;
1309
+ gap> g4 := Transformation([1, 2, 3, 4, 5, 6, 7, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4,
1310
+ > 4, 4, 4, 4]) * (5, 6, 7);;
1311
+ gap> g5 := Transformation([1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 4, 4, 4, 4, 4,
1312
+ > 4, 4, 4, 4, 4]) * (8, 9);;
1313
+ gap> g6 := Transformation([1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 4, 4, 4, 4, 4,
1314
+ > 4, 4, 4, 4, 4]) * (10, 11);;
1315
+ gap> g7 := Transformation([1, 2, 3, 4, 4, 4, 4, 4, 4, 4, 4, 12, 13, 14, 15,
1316
+ > 16, 17, 18, 19, 20, 21]) * (12, 13);;
1317
+ gap> g8 := Transformation(
1318
+ > [1, 2, 3, 4, 4, 4, 4, 4, 4, 4, 4, 12, 13, 14, 15, 16, 17, 18, 19, 20, 21]) *
1319
+ > (12, 13, 14, 15, 16);;
1320
+ gap> g9 := Transformation([1 .. 21]) * (17, 18, 19, 20, 21);;
1321
+ gap> c4 := Semigroup(g1, g2, g3, g4, g5, g6, g7, g8, g9);;
1322
+ gap> IsCliffordSemigroup(c4);
1323
+ true
1324
+ gap> ForAll(GreensDClasses(c3), x -> Length(GreensHClasses(x)) = 1 and
1325
+ > IsRegularDClass(x));
1326
+ true
1327
+ gap> ForAll(GreensDClasses(c4), x -> Length(GreensHClasses(x)) = 1 and
1328
+ > IsRegularDClass(x));
1329
+ true
1330
+ gap> List(SmallMonoids, IsRegularSemigroup);
1331
+ [ false, true, false, false, true, true, true, true, true, false, false,
1332
+ true, true, true, false ]
1333
+ gap> List(BigMonoids, IsRegularSemigroup);
1334
+ [ true, false, false, false, false, true, true, false ]
1335
+ gap> List([c3, c4], IsInverseSemigroup);
1336
+ [ true, true ]
1337
+ gap> IsBand(c3);
1338
+ true
1339
+ gap> IsBand(c4);
1340
+ false
1341
+ gap> List(SmallMonoids, IsBand);
1342
+ [ false, false, false, false, false, false, false, false, false, false,
1343
+ false, false, false, false, false ]
1344
+ gap> List(BigMonoids, IsBand);
1345
+ [ false, false, false, false, false, false, false, false ]
1346
+ gap> g := Group(());;
1347
+ gap> mat := [[(), (), ()], [(), (), ()], [(), (), ()], [(), (), ()]];;
1348
+ gap> rms := ReesMatrixSemigroup(g, mat);;
1349
+ gap> s := Range(IsomorphismTransformationSemigroup(rms));;
1350
+ gap> IsRectangularBand(s);
1351
+ true
1352
+ gap> IsBand(s);
1353
+ true
1354
+ gap> IsSemiband(FullTransformationSemigroup(4));
1355
+ false
1356
+ gap> Size(Semigroup(Idempotents(FullTransformationSemigroup(4))));
1357
+ 233
1358
+ gap> 4 ^ 4 - Factorial(4) + 1;
1359
+ 233
1360
+ gap> ForAll(SmallMonoids, x -> not IsSemiband(x));
1361
+ true
1362
+ gap> List(SmallMonoids, IsOrthodoxSemigroup);
1363
+ [ false, true, false, false, false, false, true, true, true, false, false,
1364
+ false, false, true, false ]
1365
+ gap> s := SmallMonoids[1];
1366
+ <non-regular transformation monoid of degree 6 with 2 generators>
1367
+ gap> IsRegularSemigroup(s);
1368
+ false
1369
+ gap> IsOrthodoxSemigroup(s);
1370
+ false
1371
+ gap> t := Semigroup(Idempotents(s));
1372
+ <transformation monoid of degree 6 with 3 generators>
1373
+ gap> Size(t);
1374
+ 4
1375
+ gap> s := SmallMonoids[7];;
1376
+ gap> Size(s);;
1377
+ gap> t := Semigroup(Idempotents(s));;
1378
+ gap> IsBand(t);
1379
+ true
1380
+ gap> IsRectangularBand(t);
1381
+ false
1382
+ gap> g := Group(());;
1383
+ gap> mat := [[(), (), (), (), (), ()]];;
1384
+ gap> rms := ReesMatrixSemigroup(g, mat);;
1385
+ gap> s := Range(IsomorphismTransformationSemigroup(rms));;
1386
+ gap> IsLeftZeroSemigroup(s);
1387
+ true
1388
+ gap> IsRightZeroSemigroup(s);
1389
+ false
1390
+ gap> mat := TransposedMat(mat);;
1391
+ gap> rms := ReesMatrixSemigroup(g, mat);;
1392
+ gap> s := Range(IsomorphismTransformationSemigroup(rms));;
1393
+ gap> IsRightZeroSemigroup(s);
1394
+ true
1395
+ gap> IsLeftZeroSemigroup(s);
1396
+ false
1397
+ gap> List(BigMonoids, IsLeftZeroSemigroup);
1398
+ [ false, false, false, false, false, false, false, false ]
1399
+ gap> List(BigMonoids, IsRightZeroSemigroup);
1400
+ [ false, false, false, false, false, false, false, false ]
1401
+ gap> gens := [Transformation([2, 2, 4, 4, 6, 6, 8, 8, 10, 10, 12, 12, 2]),
1402
+ > Transformation([1, 1, 3, 3, 5, 5, 7, 7, 9, 9, 11, 11, 3]),
1403
+ > Transformation([1, 7, 3, 9, 5, 11, 7, 1, 9, 3, 11, 5, 5]),
1404
+ > Transformation([7, 7, 9, 9, 11, 11, 1, 1, 3, 3, 5, 5, 7])];;
1405
+ gap> S := Semigroup(gens);;
1406
+ gap> IsSimpleSemigroup(S);
1407
+ true
1408
+ gap> IsCompletelySimpleSemigroup(S);
1409
+ true
1410
+ gap> gens := [Transformation([1, 2, 4, 3, 6, 5, 4]),
1411
+ > Transformation([1, 2, 5, 6, 3, 4, 5]),
1412
+ > Transformation([2, 1, 2, 2, 2, 2, 2])];;
1413
+ gap> S := Semigroup(gens);;
1414
+ gap> IsCompletelyRegularSemigroup(S);
1415
+ true
1416
+ gap> gens := [Transformation([2, 4, 5, 3, 7, 8, 6, 9, 1]),
1417
+ > Transformation([3, 5, 6, 7, 8, 1, 9, 2, 4])];;
1418
+ gap> S := Semigroup(gens);;
1419
+ gap> IsGroupAsSemigroup(S);
1420
+ true
1421
+ gap> IsCommutativeSemigroup(S);
1422
+ true
1423
+ gap> gens := [Transformation([1, 2, 4, 5, 6, 3, 7, 8]),
1424
+ > Transformation([3, 3, 4, 5, 6, 2, 7, 8]),
1425
+ > Transformation([1, 2, 5, 3, 6, 8, 4, 4])];;
1426
+ gap> S := Semigroup(gens);;
1427
+ gap> IsCliffordSemigroup(S);
1428
+ true
1429
+ gap> gens := [Transformation([1, 1, 1, 4, 4, 4, 7, 7, 7, 1]),
1430
+ > Transformation([2, 2, 2, 5, 5, 5, 8, 8, 8, 2]),
1431
+ > Transformation([3, 3, 3, 6, 6, 6, 9, 9, 9, 3]),
1432
+ > Transformation([1, 1, 1, 4, 4, 4, 7, 7, 7, 4]),
1433
+ > Transformation([1, 1, 1, 4, 4, 4, 7, 7, 7, 7])];;
1434
+ gap> S := Semigroup(gens);;
1435
+ gap> IsBand(S);
1436
+ true
1437
+ gap> IsRectangularBand(S);
1438
+ true
1439
+ gap> S := FullTransformationSemigroup(4);;
1440
+ gap> x := Transformation([1, 2, 3, 1]);;
1441
+ gap> D := GreensDClassOfElement(S, x);;
1442
+ gap> T := Semigroup(Elements(D));;
1443
+ gap> IsSemiband(T);
1444
+ true
1445
+ gap> gens := [Transformation([1, 1, 1, 4, 5, 4]),
1446
+ > Transformation([1, 2, 3, 1, 1, 2]),
1447
+ > Transformation([1, 2, 3, 1, 1, 3]),
1448
+ > Transformation([5, 5, 5, 5, 5, 5])];;
1449
+ gap> S := Semigroup(gens);;
1450
+ gap> IsOrthodoxSemigroup(S);
1451
+ true
1452
+ gap> gens := [Transformation([2, 1, 4, 3, 5]),
1453
+ > Transformation([3, 2, 3, 1, 1])];;
1454
+ gap> S := Semigroup(gens);;
1455
+ gap> IsRightZeroSemigroup(S);
1456
+ false
1457
+ gap> gens := [Transformation([1, 2, 3, 3, 1]),
1458
+ > Transformation([1, 2, 4, 4, 1])];;
1459
+ gap> S := Semigroup(gens);;
1460
+ gap> IsRightZeroSemigroup(S);
1461
+ true
1462
+ gap> gens := [Transformation([2, 1, 4, 3, 5]),
1463
+ > Transformation([3, 2, 3, 1, 1])];;
1464
+ gap> S := Semigroup(gens);;
1465
+ gap> IsRightZeroSemigroup(S);
1466
+ false
1467
+ gap> gens := [Transformation([1, 2, 3, 3, 1]),
1468
+ > Transformation([1, 2, 3, 3, 3])];;
1469
+ gap> S := Semigroup(gens);;
1470
+ gap> IsLeftZeroSemigroup(S);
1471
+ true
1472
+ gap> gens := [Transformation([4, 7, 6, 3, 1, 5, 3, 6, 5, 9]),
1473
+ > Transformation([5, 3, 5, 1, 9, 3, 8, 7, 4, 3]),
1474
+ > Transformation([5, 10, 10, 1, 7, 6, 6, 8, 7, 7]),
1475
+ > Transformation([7, 4, 3, 3, 2, 2, 3, 2, 9, 3]),
1476
+ > Transformation([8, 1, 3, 4, 9, 6, 3, 7, 1, 6])];;
1477
+ gap> S := Semigroup(gens);;
1478
+ gap> IsZeroSemigroup(S);
1479
+ false
1480
+ gap> gens := [Transformation([1, 4, 2, 6, 6, 5, 2]),
1481
+ > Transformation([1, 6, 3, 6, 2, 1, 6])];;
1482
+ gap> S := Semigroup(gens);;
1483
+ gap> MultiplicativeZero(S);
1484
+ Transformation( [ 1, 1, 1, 1, 1, 1, 1 ] )
1485
+
1486
+ #
1487
+ gap> SEMIGROUPS.StopTest();
1488
+ gap> STOP_TEST("Semigroups package: extreme/monoid_pkg.tst");