passagemath-gap-pkg-semigroups 10.6.29__cp312-abi3-macosx_14_0_arm64.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 (354) 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-apple-darwin23-default64-kv10/semigroups.so +0 -0
  15. gap/pkg/semigroups/config.guess +1807 -0
  16. gap/pkg/semigroups/config.log +1157 -0
  17. gap/pkg/semigroups/config.status +1132 -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 +354 -0
  349. passagemath_gap_pkg_semigroups-10.6.29.dist-info/WHEEL +6 -0
  350. passagemath_gap_pkg_semigroups-10.6.29.dist-info/top_level.txt +1 -0
  351. passagemath_gap_pkg_semigroups.dylibs/libsemigroups.2.dylib +0 -0
  352. sage/all__sagemath_gap_pkg_semigroups.py +1 -0
  353. sage/libs/all__sagemath_gap_pkg_semigroups.py +1 -0
  354. sage/libs/gap_pkg_semigroups.abi3.so +0 -0
@@ -0,0 +1,1831 @@
1
+ #############################################################################
2
+ ##
3
+ #W standard/greens/froidure-pin.tst
4
+ #Y Copyright (C) 2011-2022 James D. Mitchell
5
+ ##
6
+ ## Licensing information can be found in the README file of this package.
7
+ ##
8
+ #############################################################################
9
+ ##
10
+
11
+ #@local CheckLeftGreensMultiplier1, CheckLeftGreensMultiplier2
12
+ #@local CheckRightGreensMultiplier1, CheckRightGreensMultiplier2, D, DD, DDD, H
13
+ #@local J, L, L3, LL, R, RR, RRR, S, a, acting, an, b, gens, map, x, y
14
+ #@local c, d, e, F
15
+ gap> START_TEST("Semigroups package: standard/greens/froidure-pin.tst");
16
+ gap> LoadPackage("semigroups", false);;
17
+
18
+ #
19
+ gap> SEMIGROUPS.StartTest();
20
+
21
+ # AsSSortedList, 1/1
22
+ gap> S := Semigroup([PartialPerm([1, 3, 4, 5, 6], [3, 1, 5, 7, 6]),
23
+ > PartialPerm([1, 2, 3, 4, 6, 7], [2, 5, 3, 7, 4, 1]),
24
+ > PartialPerm([1, 2, 4, 5, 6, 7], [3, 5, 7, 1, 6, 2]),
25
+ > PartialPerm([1, 2, 4, 7], [3, 7, 6, 5])]);;
26
+ gap> L := LClass(S, PartialPerm([1, 7], [3, 5]));;
27
+ gap> AsSet(L);
28
+ [ [1,3][2,5], [1,5][2,3], [2,3,5], [2,5](3), [1,3,5], [1,5](3),
29
+ <identity partial perm on [ 3, 5 ]>, (3,5), [2,3](5), [2,5,3], [1,3](5),
30
+ [1,5,3], [7,5](3), [7,3,5], [1,3][7,5], [1,5][7,3] ]
31
+
32
+ # \< and \=, 1/1
33
+ gap> S := Semigroup([PartialPerm([1, 3, 4, 5, 6], [3, 1, 5, 7, 6]),
34
+ > PartialPerm([1, 2, 3, 4, 6, 7], [2, 5, 3, 7, 4, 1]),
35
+ > PartialPerm([1, 2, 4, 5, 6, 7], [3, 5, 7, 1, 6, 2]),
36
+ > PartialPerm([1, 2, 4, 7], [3, 7, 6, 5])]);;
37
+ gap> L := LClass(S, PartialPerm([1, 7], [3, 5]));;
38
+ gap> LL := LClass(S, S.1);;
39
+ gap> LL = L;
40
+ false
41
+ gap> L < L;
42
+ false
43
+ gap> L < LL;
44
+ true
45
+ gap> LL < L;
46
+ false
47
+ gap> D := DClass(L);;
48
+ gap> L = D;
49
+ false
50
+ gap> L < D;
51
+ false
52
+
53
+ # Test \< for H-classes Issue #198
54
+ gap> S := FullTropicalMinPlusMonoid(2, 2);
55
+ <monoid of 2x2 tropical min-plus matrices with 6 generators>
56
+ gap> H := Set(GeneratorsOfSemigroup(S), x -> HClass(S, x));
57
+ [ <Green's H-class: Matrix(IsTropicalMinPlusMatrix, [[0, infinity],
58
+ [infinity, 0]], 2)>,
59
+ <Green's H-class: Matrix(IsTropicalMinPlusMatrix, [[infinity, 0], [0, 0]], 2
60
+ )>,
61
+ <Green's H-class: Matrix(IsTropicalMinPlusMatrix, [[infinity, 0], [0, 1]], 2
62
+ )>,
63
+ <Green's H-class: Matrix(IsTropicalMinPlusMatrix, [[infinity, 0], [0, 2]], 2
64
+ )>,
65
+ <Green's H-class: Matrix(IsTropicalMinPlusMatrix, [[infinity, 0],
66
+ [1, infinity]], 2)>,
67
+ <Green's H-class: Matrix(IsTropicalMinPlusMatrix, [[infinity, 0],
68
+ [infinity, infinity]], 2)> ]
69
+
70
+ # Test \< for H-classes Issue #198
71
+ gap> gens := [
72
+ > Transformation([1, 3, 4, 1, 5, 5, 5]),
73
+ > Transformation([1, 4, 1, 3, 5, 5, 5]),
74
+ > Transformation([3, 3, 1, 2, 5, 5, 5]),
75
+ > Transformation([4, 4, 2, 3, 5, 5, 5]),
76
+ > Transformation([1, 1, 3, 4, 5, 5, 6]),
77
+ > Transformation([1, 2, 2]),
78
+ > Transformation([1, 4, 3, 4]),
79
+ > Transformation([1, 2, 4, 4])];;
80
+ gap> S := Semigroup(gens);
81
+ <transformation semigroup of degree 7 with 8 generators>
82
+ gap> D := DClass(S, gens[1]);;
83
+ gap> ForAll(gens{[1 .. 4]}, x -> x in D);
84
+ true
85
+ gap> NrRClasses(D);
86
+ 6
87
+ gap> R := List(gens{[1 .. 3]}, x -> RClass(S, x));;
88
+ gap> IsDuplicateFreeList(R);
89
+ true
90
+ gap> x := Difference(RClasses(D), R);;
91
+ gap> Length(x);
92
+ 3
93
+
94
+ # MultiplicativeNeutralElement, One, for an H-class, 1
95
+ gap> S := Semigroup([PartialPerm([1, 3, 4, 5, 6], [3, 1, 5, 7, 6]),
96
+ > PartialPerm([1, 2, 3, 4, 6, 7], [2, 5, 3, 7, 4, 1]),
97
+ > PartialPerm([1, 2, 4, 5, 6, 7], [3, 5, 7, 1, 6, 2]),
98
+ > PartialPerm([1, 2, 4, 7], [3, 7, 6, 5])]);;
99
+ gap> H := HClass(S, S.4);;
100
+ gap> MultiplicativeNeutralElement(H);
101
+ fail
102
+ gap> OneImmutable(H);
103
+ <identity partial perm on [ 1, 2, 3, 4, 5, 6, 7 ]>
104
+ gap> H := HClass(S, PartialPerm([3, 5], [3, 5]));;
105
+ gap> MultiplicativeNeutralElement(H);
106
+ <identity partial perm on [ 3, 5 ]>
107
+ gap> OneImmutable(H);
108
+ <identity partial perm on [ 3, 5 ]>
109
+
110
+ # MultiplicativeNeutralElement, One, for an H-class, 2
111
+ gap> S := Semigroup([
112
+ > Transformation([1, 1, 3, 2, 4]),
113
+ > Transformation([1, 5, 5, 2, 5]),
114
+ > Transformation([4, 1, 3, 5, 5])]);;
115
+ gap> H := HClass(S, S.1);;
116
+ gap> MultiplicativeNeutralElement(H);
117
+ fail
118
+ gap> OneImmutable(H);
119
+ IdentityTransformation
120
+ gap> H := HClass(S, Transformation([1, 1]));;
121
+ gap> MultiplicativeNeutralElement(H);
122
+ Transformation( [ 1, 1 ] )
123
+ gap> OneImmutable(H);
124
+ Transformation( [ 1, 1 ] )
125
+
126
+ # StructureDescription, for an H-class, 1/1
127
+ gap> S := Semigroup([PartialPerm([1, 3, 4, 5, 6], [3, 1, 5, 7, 6]),
128
+ > PartialPerm([1, 2, 3, 4, 6, 7], [2, 5, 3, 7, 4, 1]),
129
+ > PartialPerm([1, 2, 4, 5, 6, 7], [3, 5, 7, 1, 6, 2]),
130
+ > PartialPerm([1, 2, 4, 7], [3, 7, 6, 5])]);;
131
+ gap> H := HClass(S, PartialPerm([3, 5], [3, 5]));;
132
+ gap> StructureDescription(H);
133
+ "C2"
134
+ gap> H := HClass(S, S.4);;
135
+ gap> StructureDescription(H);
136
+ fail
137
+
138
+ # DClassOfLClass, 1/1
139
+ gap> S := Semigroup([PartialPerm([1, 3, 4, 5, 6], [3, 1, 5, 7, 6]),
140
+ > PartialPerm([1, 2, 3, 4, 6, 7], [2, 5, 3, 7, 4, 1]),
141
+ > PartialPerm([1, 2, 4, 5, 6, 7], [3, 5, 7, 1, 6, 2]),
142
+ > PartialPerm([1, 2, 4, 7], [3, 7, 6, 5])]);;
143
+ gap> L := LClass(S, PartialPerm([1, 7], [3, 5]));;
144
+ gap> Size(L);
145
+ 16
146
+ gap> D := DClass(L);;
147
+ gap> Size(D);
148
+ 128
149
+ gap> DD := DClassOfLClass(L);;
150
+ gap> DD = D;
151
+ true
152
+ gap> DDD := DClass(S, Representative(L));;
153
+ gap> DDD = DD;
154
+ true
155
+
156
+ # DClassOfRClass, 1/1
157
+ gap> S := Semigroup([Transformation([2, 2, 1, 2, 4, 4]),
158
+ > Transformation([2, 6, 6, 5, 1, 4]), Transformation([3, 2, 5, 5, 6, 4]),
159
+ > Transformation([3, 5, 3, 4, 1]), Transformation([4, 2, 3, 1, 4, 2]),
160
+ > Transformation([4, 4, 2, 6, 6, 3]), Transformation([5, 5, 5, 6, 5, 4]),
161
+ > Transformation([6, 3, 1, 3, 1, 6])]);;
162
+ gap> R := RClass(S, Transformation([4, 4, 5, 4, 4, 4]));;
163
+ gap> Size(R);
164
+ 30
165
+ gap> D := DClass(R);;
166
+ gap> Size(D);
167
+ 930
168
+ gap> DD := DClassOfRClass(R);;
169
+ gap> DD = D;
170
+ true
171
+ gap> DDD := DClass(S, Representative(R));;
172
+ gap> DDD = DD;
173
+ true
174
+
175
+ # DClassOfHClass, 1/1
176
+ gap> S := Semigroup([PartialPerm([1, 3, 4, 5, 6], [3, 1, 5, 7, 6]),
177
+ > PartialPerm([1, 2, 3, 4, 6, 7], [2, 5, 3, 7, 4, 1]),
178
+ > PartialPerm([1, 2, 4, 5, 6, 7], [3, 5, 7, 1, 6, 2]),
179
+ > PartialPerm([1, 2, 4, 7], [3, 7, 6, 5])]);;
180
+ gap> H := HClass(S, S.4);;
181
+ gap> Size(H);
182
+ 1
183
+ gap> D := DClass(H);;
184
+ gap> Size(D);
185
+ 1
186
+ gap> DD := DClassOfHClass(H);;
187
+ gap> DD = D;
188
+ true
189
+ gap> DDD := DClass(S, Representative(H));;
190
+ gap> DDD = DD;
191
+ true
192
+
193
+ # LClassOfHClass, 1/1
194
+ gap> S := Monoid(
195
+ > [Bipartition([[1, 2, 3, 4, 5, -1], [6, -5], [-2, -3, -4], [-6]]),
196
+ > Bipartition([[1, 2, 3, 5, -3, -4, -5], [4, 6, -2], [-1, -6]]),
197
+ > Bipartition([[1, 2, -5, -6], [3, 5, 6, -1, -4], [4, -2, -3]]),
198
+ > Bipartition([[1, 3, -3], [2, 5, 6, -2], [4, -1, -4, -5], [-6]]),
199
+ > Bipartition([[1, 3, -1, -6], [2, 6, -2], [4, -3, -5], [5], [-4]]),
200
+ > Bipartition([[1, -3], [2, 3, 4, 5, -1, -4], [6, -2, -6], [-5]]),
201
+ > Bipartition([[1, 5, -5, -6], [2, 3, -1, -2, -4], [4, 6, -3]]),
202
+ > Bipartition([[1, 4, 6, -1, -2, -4], [2, 5, -5, -6], [3], [-3]]),
203
+ > Bipartition([[1, 5, -1, -3], [2, 4, 6], [3, -2, -6], [-4, -5]]),
204
+ > Bipartition([[1, 5, -2], [2, -1, -5], [3, 4, -6], [6, -3], [-4]])]);;
205
+ gap> H := HClass(S, S.1 * S.5 * S.8);;
206
+ gap> Size(H);
207
+ 1
208
+ gap> L := LClass(H);;
209
+ gap> Size(L);
210
+ 26
211
+ gap> LL := LClassOfHClass(H);;
212
+ gap> LL = L;
213
+ true
214
+ gap> L3 := LClass(S, Representative(H));;
215
+ gap> L3 = LL;
216
+ true
217
+
218
+ # RClassOfHClass, 1/1
219
+ gap> S := ReesZeroMatrixSemigroup(SymmetricGroup(3), [
220
+ > [(), 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0],
221
+ > [0, (), 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0],
222
+ > [0, 0, (), 0, (1, 3), 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0],
223
+ > [0, 0, 0, (), (1, 3), 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0],
224
+ > [0, 0, (1, 3), (2, 3), (), 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
225
+ > 0],
226
+ > [0, 0, 0, 0, 0, (), 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0],
227
+ > [0, 0, 0, 0, 0, 0, (), (2, 3), 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0],
228
+ > [0, 0, 0, 0, 0, 0, (1, 3, 2), (), 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
229
+ > 0],
230
+ > [0, 0, 0, 0, 0, 0, 0, 0, (), 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0],
231
+ > [0, 0, 0, 0, 0, 0, 0, 0, 0, (), (1, 3), 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0],
232
+ > [0, 0, 0, 0, 0, 0, 0, 0, 0, 0, (), 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0],
233
+ > [0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, (), 0, (1, 2), 0, 0, 0, 0, 0, 0, 0, 0, 0],
234
+ > [0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, (), 0, 0, 0, 0, 0, 0, 0, 0, 0, 0],
235
+ > [0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, (1, 3), (), (), 0, 0, 0, 0, 0, 0, 0, 0, 0],
236
+ > [0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, (), (1, 2), 0, 0, 0, 0, 0, 0, 0],
237
+ > [0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, (), 0, 0, 0, 0, 0, 0, 0],
238
+ > [0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, (), 0, 0, 0, 0, 0, 0],
239
+ > [0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, (), (1, 2, 3), (1, 3, 2),
240
+ > 0, 0, 0],
241
+ > [0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, (), 0, 0, 0, 0],
242
+ > [0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, (), 0, 0, 0],
243
+ > [0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, (), (1, 3), 0],
244
+ > [0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, (), 0],
245
+ > [0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, ()]]);;
246
+ gap> S := Semigroup(S);
247
+ <subsemigroup of 23x23 Rees 0-matrix semigroup with 46 generators>
248
+ gap> Size(S);
249
+ 3175
250
+ gap> H := HClass(S, S.1);;
251
+ gap> Size(H);
252
+ 6
253
+ gap> R := RClass(H);;
254
+ gap> Size(R);
255
+ 138
256
+ gap> RR := RClassOfHClass(H);;
257
+ gap> RR = R;
258
+ true
259
+ gap> RRR := RClass(S, Representative(H));;
260
+ gap> RRR = RR;
261
+ true
262
+
263
+ # GreensDClassOfElement, fail, 1/1
264
+ gap> S := Semigroup([PartialPerm([1, 3, 4, 5, 6], [3, 1, 5, 7, 6]),
265
+ > PartialPerm([1, 2, 3, 4, 6, 7], [2, 5, 3, 7, 4, 1]),
266
+ > PartialPerm([1, 2, 4, 5, 6, 7], [3, 5, 7, 1, 6, 2]),
267
+ > PartialPerm([1, 2, 4, 7], [3, 7, 6, 5])], rec(acting := false));;
268
+ gap> GreensDClassOfElement(S, PartialPerm([19]));
269
+ Error, the 2nd argument (a mult. elt.) does not belong to the source of the 1s\
270
+ t argument (a Green's relation)
271
+
272
+ # GreensDClassOfElementNC, 1/1
273
+ gap> S := Semigroup([PartialPerm([1, 3, 4, 5, 6], [3, 1, 5, 7, 6]),
274
+ > PartialPerm([1, 2, 3, 4, 6, 7], [2, 5, 3, 7, 4, 1]),
275
+ > PartialPerm([1, 2, 4, 5, 6, 7], [3, 5, 7, 1, 6, 2]),
276
+ > PartialPerm([1, 2, 4, 7], [3, 7, 6, 5])], rec(acting := false));;
277
+ gap> D := GreensDClassOfElementNC(S, PartialPerm([19]));;
278
+ Error, the 2nd argument (a mult. elt.) does not belong to the source of the 1s\
279
+ t argument (a Green's relation)
280
+
281
+ # GreensJClassOfElement, 1/1
282
+ gap> S := Semigroup([PartialPerm([1, 3, 4, 5, 6], [3, 1, 5, 7, 6]),
283
+ > PartialPerm([1, 2, 3, 4, 6, 7], [2, 5, 3, 7, 4, 1]),
284
+ > PartialPerm([1, 2, 4, 5, 6, 7], [3, 5, 7, 1, 6, 2]),
285
+ > PartialPerm([1, 2, 4, 7], [3, 7, 6, 5])], rec(acting := false));;
286
+ gap> J := GreensJClassOfElement(S, S.2);
287
+ <Green's D-class: [6,4,7,1,2,5](3)>
288
+
289
+ # GreensL/RClassOfElement, fail, 1/1
290
+ gap> S := Semigroup([Transformation([2, 2, 1, 2, 4, 4]),
291
+ > Transformation([2, 6, 6, 5, 1, 4]), Transformation([3, 2, 5, 5, 6, 4]),
292
+ > Transformation([3, 5, 3, 4, 1]), Transformation([4, 2, 3, 1, 4, 2]),
293
+ > Transformation([4, 4, 2, 6, 6, 3]), Transformation([5, 5, 5, 6, 5, 4]),
294
+ > Transformation([6, 3, 1, 3, 1, 6])], rec(acting := false));;
295
+ gap> RClass(S, ConstantTransformation(7, 7));
296
+ Error, the 2nd argument (a mult. elt.) does not belong to the source of the 1s\
297
+ t argument (a Green's relation)
298
+ gap> LClass(S, ConstantTransformation(7, 7));
299
+ Error, the 2nd argument (a mult. elt.) does not belong to the source of the 1s\
300
+ t argument (a Green's relation)
301
+ gap> HClass(S, ConstantTransformation(7, 7));
302
+ Error, the 2nd argument (a mult. elt.) does not belong to the source of the 1s\
303
+ t argument (a Green's relation)
304
+
305
+ # GreensL/RClassOfElementNC, 1/1
306
+ gap> S := Semigroup([Transformation([2, 2, 1, 2, 4, 4]),
307
+ > Transformation([2, 6, 6, 5, 1, 4]), Transformation([3, 2, 5, 5, 6, 4]),
308
+ > Transformation([3, 5, 3, 4, 1]), Transformation([4, 2, 3, 1, 4, 2]),
309
+ > Transformation([4, 4, 2, 6, 6, 3]), Transformation([5, 5, 5, 6, 5, 4]),
310
+ > Transformation([6, 3, 1, 3, 1, 6])], rec(acting := false));;
311
+ gap> R := RClassNC(S, S.1);
312
+ <Green's R-class: Transformation( [ 2, 2, 1, 2, 4, 4 ] )>
313
+ gap> Size(R);
314
+ 120
315
+ gap> L := LClassNC(S, S.1);
316
+ <Green's L-class: Transformation( [ 2, 2, 1, 2, 4, 4 ] )>
317
+ gap> Size(L);
318
+ 396
319
+ gap> H := HClassNC(S, S.1);
320
+ <Green's H-class: Transformation( [ 2, 2, 1, 2, 4, 4 ] )>
321
+ gap> Size(H);
322
+ 6
323
+
324
+ # GreensL/RClassOfElement, for a D-class, 1/1
325
+ gap> S := Monoid(
326
+ > [Bipartition([[1, 2, 3, 4, 5, -1], [6, -5], [-2, -3, -4], [-6]]),
327
+ > Bipartition([[1, 2, 3, 5, -3, -4, -5], [4, 6, -2], [-1, -6]]),
328
+ > Bipartition([[1, 2, -5, -6], [3, 5, 6, -1, -4], [4, -2, -3]]),
329
+ > Bipartition([[1, 3, -3], [2, 5, 6, -2], [4, -1, -4, -5], [-6]]),
330
+ > Bipartition([[1, 3, -1, -6], [2, 6, -2], [4, -3, -5], [5], [-4]]),
331
+ > Bipartition([[1, -3], [2, 3, 4, 5, -1, -4], [6, -2, -6], [-5]]),
332
+ > Bipartition([[1, 5, -5, -6], [2, 3, -1, -2, -4], [4, 6, -3]]),
333
+ > Bipartition([[1, 4, 6, -1, -2, -4], [2, 5, -5, -6], [3], [-3]]),
334
+ > Bipartition([[1, 5, -1, -3], [2, 4, 6], [3, -2, -6], [-4, -5]]),
335
+ > Bipartition([[1, 5, -2], [2, -1, -5], [3, 4, -6], [6, -3], [-4]])],
336
+ > rec(acting := false));;
337
+ gap> D := DClass(S, S.4 * S.5);;
338
+ gap> Size(D);
339
+ 12
340
+ gap> x := Bipartition([[1, 3, 4, -2], [2, 5, 6, -1, -6],
341
+ > [-3, -5], [-4]]);;
342
+ gap> R := RClass(D, x);;
343
+ gap> Size(R);
344
+ 12
345
+ gap> L := LClass(D, x);;
346
+ gap> Size(L);
347
+ 1
348
+ gap> LClass(D, IdentityBipartition(8));
349
+ Error, the 2nd argument (a mult. elt.) does not belong to the source of the 1s\
350
+ t argument (a Green's relation)
351
+ gap> RClass(D, IdentityBipartition(8));
352
+ Error, the 2nd argument (a mult. elt.) does not belong to the source of the 1s\
353
+ t argument (a Green's relation)
354
+ gap> x := Bipartition([[1, 4, -1, -2, -6], [2, 3, 5, -4],
355
+ > [6, -3], [-5]]);;
356
+ gap> LClassNC(D, x);
357
+ Error, the 2nd argument (a mult. elt.) does not belong to the source of the 1s\
358
+ t argument (a Green's relation)
359
+ gap> RClassNC(D, x);
360
+ Error, the 2nd argument (a mult. elt.) does not belong to the source of the 1s\
361
+ t argument (a Green's relation)
362
+
363
+ # GreensHClassOfElement, 1/1
364
+ gap> S := ReesZeroMatrixSemigroup(SymmetricGroup(3), [
365
+ > [(), 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0],
366
+ > [0, (), 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0],
367
+ > [0, 0, (), 0, (1, 3), 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0],
368
+ > [0, 0, 0, (), (1, 3), 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0],
369
+ > [0, 0, (1, 3), (2, 3), (), 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
370
+ > 0],
371
+ > [0, 0, 0, 0, 0, (), 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0],
372
+ > [0, 0, 0, 0, 0, 0, (), (2, 3), 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0],
373
+ > [0, 0, 0, 0, 0, 0, (1, 3, 2), (), 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
374
+ > 0],
375
+ > [0, 0, 0, 0, 0, 0, 0, 0, (), 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0],
376
+ > [0, 0, 0, 0, 0, 0, 0, 0, 0, (), (1, 3), 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0],
377
+ > [0, 0, 0, 0, 0, 0, 0, 0, 0, 0, (), 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0],
378
+ > [0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, (), 0, (1, 2), 0, 0, 0, 0, 0, 0, 0, 0, 0],
379
+ > [0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, (), 0, 0, 0, 0, 0, 0, 0, 0, 0, 0],
380
+ > [0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, (1, 3), (), (), 0, 0, 0, 0, 0, 0, 0, 0, 0],
381
+ > [0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, (), (1, 2), 0, 0, 0, 0, 0, 0, 0],
382
+ > [0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, (), 0, 0, 0, 0, 0, 0, 0],
383
+ > [0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, (), 0, 0, 0, 0, 0, 0],
384
+ > [0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, (), (1, 2, 3), (1, 3, 2),
385
+ > 0, 0, 0],
386
+ > [0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, (), 0, 0, 0, 0],
387
+ > [0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, (), 0, 0, 0],
388
+ > [0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, (), (1, 3), 0],
389
+ > [0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, (), 0],
390
+ > [0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, ()]]);;
391
+ gap> S := Semigroup(S, rec(acting := false));;
392
+ gap> D := DClass(S, S.4 * S.5);;
393
+ gap> H := HClass(D, MultiplicativeZero(S));
394
+ <Green's H-class: 0>
395
+ gap> H := HClassNC(D, MultiplicativeZero(S));
396
+ <Green's H-class: 0>
397
+ gap> H := HClass(D, IdentityTransformation);
398
+ Error, the 2nd argument (a mult. elt.) does not belong to the source of the 1s\
399
+ t argument (a Green's relation)
400
+
401
+ # GreensHClassOfElement(L/R-class, x), 1/1
402
+ gap> S := Semigroup([Transformation([2, 2, 1, 2, 4, 4]),
403
+ > Transformation([2, 6, 6, 5, 1, 4]), Transformation([3, 2, 5, 5, 6, 4]),
404
+ > Transformation([3, 5, 3, 4, 1]), Transformation([4, 2, 3, 1, 4, 2]),
405
+ > Transformation([4, 4, 2, 6, 6, 3]), Transformation([5, 5, 5, 6, 5, 4]),
406
+ > Transformation([6, 3, 1, 3, 1, 6])], rec(acting := false));;
407
+ gap> R := RClass(S, S.3 * S.1 * S.8);;
408
+ gap> Size(R);
409
+ 30
410
+ gap> Size(HClass(R, S.3 * S.1 * S.8));
411
+ 2
412
+ gap> L := LClass(S, S.3 * S.1 * S.8);;
413
+ gap> Size(L);
414
+ 62
415
+ gap> Size(HClass(L, S.3 * S.1 * S.8));
416
+ 2
417
+
418
+ # \in, for D-class, 1/4
419
+ gap> S := Semigroup([PartialPerm([1, 3, 4, 5, 6], [3, 1, 5, 7, 6]),
420
+ > PartialPerm([1, 2, 3, 4, 6, 7], [2, 5, 3, 7, 4, 1]),
421
+ > PartialPerm([1, 2, 4, 5, 6, 7], [3, 5, 7, 1, 6, 2]),
422
+ > PartialPerm([1, 2, 4, 7], [3, 7, 6, 5])]);;
423
+ gap> D := DClass(S, S.1);;
424
+ gap> ForAll(D, x -> x in D);
425
+ true
426
+ gap> Size(D);
427
+ 1
428
+ gap> Number(S, x -> x in D);
429
+ 1
430
+
431
+ # \in, for D-class, 2/4
432
+ gap> S := OrderEndomorphisms(5);;
433
+ gap> x := Transformation([1, 2, 2, 4, 5]);;
434
+ gap> D := DClass(S, x);;
435
+ gap> x in D;
436
+ true
437
+ gap> Transformation([1, 2, 1, 4, 5]) in D;
438
+ false
439
+
440
+ # \in, for D-class, 3/4
441
+ gap> S := ReesZeroMatrixSemigroup(Group([(1, 2)]), [[0, 0, 0, ()], [
442
+ > (), 0, 0, 0], [(), (), 0, 0], [0, (), (), 0], [0, 0, (), ()]]);;
443
+ gap> S := Semigroup(S);;
444
+ gap> D := DClass(S, S.1);;
445
+ gap> Size(S);
446
+ 41
447
+ gap> Size(D) = Size(S) - 1;
448
+ true
449
+ gap> ForAll(D, x -> x in D);
450
+ true
451
+
452
+ # \in, for D-class, 4/4
453
+ gap> x := Transformation([2, 3, 4, 1, 5, 5]);;
454
+ gap> S := Semigroup(x);
455
+ <commutative transformation semigroup of degree 6 with 1 generator>
456
+ gap> y := Transformation([2, 1, 3, 4, 5, 5]);;
457
+ gap> D := DClass(S, x);;
458
+ gap> y in D;
459
+ false
460
+
461
+ # \in, for L-class, 1/5
462
+ gap> S := Semigroup([PartialPerm([1, 3, 4, 5, 6], [3, 1, 5, 7, 6]),
463
+ > PartialPerm([1, 2, 3, 4, 6, 7], [2, 5, 3, 7, 4, 1]),
464
+ > PartialPerm([1, 2, 4, 5, 6, 7], [3, 5, 7, 1, 6, 2]),
465
+ > PartialPerm([1, 2, 4, 7], [3, 7, 6, 5])]);;
466
+ gap> L := LClass(S, S.1);;
467
+ gap> ForAll(L, x -> x in L);
468
+ true
469
+ gap> Size(L);
470
+ 1
471
+ gap> Number(S, x -> x in L);
472
+ 1
473
+
474
+ # \in, for L-class, 2/5
475
+ gap> S := OrderEndomorphisms(5);;
476
+ gap> x := Transformation([1, 2, 2, 4, 5]);;
477
+ gap> L := LClass(S, x);;
478
+ gap> x in L;
479
+ true
480
+ gap> Transformation([1, 2, 1, 4, 5]) in L;
481
+ false
482
+
483
+ # \in, for L-class, 3/5
484
+ gap> S := ReesZeroMatrixSemigroup(Group([(1, 2)]),
485
+ > [[0, 0, 0, ()],
486
+ > [(), 0, 0, 0],
487
+ > [(), (), 0, 0],
488
+ > [0, (), (), 0],
489
+ > [0, 0, (), ()]]);;
490
+ gap> S := Semigroup(S);;
491
+ gap> L := LClass(S, S.1);;
492
+ gap> Size(S);
493
+ 41
494
+ gap> ForAll(L, x -> x in L);
495
+ true
496
+
497
+ # \in, for L-class, 4/5
498
+ gap> x := Transformation([2, 3, 4, 1, 5, 5]);;
499
+ gap> S := Semigroup(x);
500
+ <commutative transformation semigroup of degree 6 with 1 generator>
501
+ gap> y := Transformation([2, 1, 3, 4, 5, 5]);;
502
+ gap> L := LClass(S, x);;
503
+ gap> y in L;
504
+ false
505
+
506
+ # \in, for L-class, 5/5
507
+ gap> x := Transformation([1, 1, 3, 4, 5, 5]);;
508
+ gap> S := Semigroup(x);;
509
+ gap> y := Transformation([1, 1, 4, 3, 5, 5]);;
510
+ gap> L := LClass(S, x);;
511
+ gap> y in L;
512
+ false
513
+
514
+ # \in, for R-class, 1/6
515
+ gap> S := Semigroup([PartialPerm([1, 3, 4, 5, 6], [3, 1, 5, 7, 6]),
516
+ > PartialPerm([1, 2, 3, 4, 6, 7], [2, 5, 3, 7, 4, 1]),
517
+ > PartialPerm([1, 2, 4, 5, 6, 7], [3, 5, 7, 1, 6, 2]),
518
+ > PartialPerm([1, 2, 4, 7], [3, 7, 6, 5])]);;
519
+ gap> R := LClass(S, S.1);;
520
+ gap> ForAll(R, x -> x in R);
521
+ true
522
+ gap> Size(R);
523
+ 1
524
+ gap> Number(S, x -> x in R);
525
+ 1
526
+
527
+ # \in, for R-class, 2/6
528
+ gap> x := Transformation([1, 1, 3, 4, 5, 5]);;
529
+ gap> S := Semigroup(x);;
530
+ gap> y := Transformation([1, 1, 4, 3, 5, 5]);;
531
+ gap> R := RClass(S, x);;
532
+ gap> y in R;
533
+ false
534
+
535
+ # \in, for R-class, 3/6
536
+ gap> x := Transformation([1, 1, 3, 4, 5, 5]);;
537
+ gap> S := Semigroup(x);;
538
+ gap> y := Transformation([1, 1, 3, 3, 5, 5]);;
539
+ gap> R := RClass(S, x);;
540
+ gap> y in R;
541
+ false
542
+
543
+ # \in, for R-class, 4/6
544
+ gap> x := Transformation([1, 1, 3, 4, 5, 5]);;
545
+ gap> S := Semigroup(x);;
546
+ gap> y := Transformation([1, 1, 2, 3, 5, 5]);;
547
+ gap> R := RClass(S, x);;
548
+ gap> y in R;
549
+ false
550
+
551
+ # \in, for R-class, 5/6
552
+ gap> S := OrderEndomorphisms(5);;
553
+ gap> x := Transformation([1, 2, 2, 4, 5]);;
554
+ gap> R := RClass(S, x);;
555
+ gap> x in R;
556
+ true
557
+ gap> Transformation([1, 2, 1, 4, 5]) in R;
558
+ false
559
+
560
+ # \in, for R-class, 6/6
561
+ gap> x := Transformation([2, 3, 4, 1, 5, 5]);;
562
+ gap> S := Semigroup(x);
563
+ <commutative transformation semigroup of degree 6 with 1 generator>
564
+ gap> y := Transformation([2, 1, 3, 4, 5, 5]);;
565
+ gap> R := RClass(S, x);;
566
+ gap> y in R;
567
+ false
568
+
569
+ # \in, for H-class, 1/3
570
+ gap> x := Transformation([2, 3, 4, 1, 5, 5]);;
571
+ gap> S := Semigroup(x);
572
+ <commutative transformation semigroup of degree 6 with 1 generator>
573
+ gap> y := Transformation([2, 1, 3, 4, 5, 5]);;
574
+ gap> H := HClass(S, x);;
575
+ gap> y in H;
576
+ false
577
+
578
+ # \in, for H-class, 2/3
579
+ gap> x := Transformation([1, 1, 3, 4, 5, 5]);;
580
+ gap> S := Semigroup(x);;
581
+ gap> y := Transformation([1, 1, 2, 3, 5, 5]);;
582
+ gap> H := HClass(S, x);;
583
+ gap> y in H;
584
+ false
585
+
586
+ # \in, for H-class, 3/3
587
+ gap> x := Transformation([1, 1, 3, 4, 5, 5]);;
588
+ gap> S := Semigroup(x);;
589
+ gap> H := HClass(S, x);;
590
+ gap> ForAll(H, x -> x in H);
591
+ true
592
+
593
+ # \in, for D-class reps/D-classes, 1/1
594
+ gap> S := Semigroup([PartialPerm([1, 3, 4, 5, 6], [3, 1, 5, 7, 6]),
595
+ > PartialPerm([1, 2, 3, 4, 6, 7], [2, 5, 3, 7, 4, 1]),
596
+ > PartialPerm([1, 2, 4, 5, 6, 7], [3, 5, 7, 1, 6, 2]),
597
+ > PartialPerm([1, 2, 4, 7], [3, 7, 6, 5])], rec(acting := false));;
598
+ gap> DClassReps(S);
599
+ [ <empty partial perm>, [3,1], [6,1], [6,5](1), [3,7](1), [1,3,5][6,7],
600
+ [6,7](5), <identity partial perm on [ 6 ]>, [2,7][6,5], [6,7](2),
601
+ [1,3][6,4], [2,5][6,4], [2,7](6), [1,3,2][6,4], (1,3)(6), [4,3,1],
602
+ [4,1][6,5], [4,5][6,2](3), [4,2][6,1](3), [4,1][6,7](3), [4,3,1][6,5],
603
+ [4,2][6,3,5], [4,1][6,3,2], [4,7][6,3,1], [4,5][6,1](3), [1,5][4,3][6,2],
604
+ [4,3][6,1,2], [4,3][6,7](1), [4,1,3][6,5], [4,5][6,2](1), [4,7][6,5],
605
+ [1,5][4,2][6,7](3), [1,5][4,3][6,7], [6,4,3], [4,5][6,7], [4,2][6,7],
606
+ [6,4,5], [4,1](6), [1,2][4,5][6,3], [4,2][6,3](1), [4,1,7][6,3],
607
+ [4,3][6,1,5], [1,2][4,3][6,7], [6,4,3](1), [1,7][4,3](6), [6,4,1,2](3),
608
+ [1,3][4,5][6,2], [4,2][6,1,3], [4,7][6,5](1), [1,3][6,4,5], [1,3][4,2](6),
609
+ [4,7](1)(3)(6), [1,3][6,2](5), [5,2][6,1,3], [5,1,3][6,7], [6,5,3](1),
610
+ [1,5,2][6,3], [5,1,2][6,3], [5,7][6,3](1), [6,1,3](5), [6,2](3,5),
611
+ [5,3,2][6,1], [5,3,1][6,7], [6,5,1](3), [3,1][6,2](5), [1,3,5,2][6,7],
612
+ [6,7](3,5), [6,3,2](5), [5,2][6,3,1], [5,1][6,3,7], [6,1](3,5),
613
+ [5,3,2][6,7], [5,3,1][6,4], [5,3,7](6), [5,1,3,2][6,4], [4,5][6,7](3),
614
+ [6,4,2](3), [4,3,5][6,7], [6,4,3,2], [4,3,1](6), [6,2](3)(5),
615
+ [5,2][6,1](3), [3,1][6,5,7], [4,7][5,3], [4,2][6,5,3], [4,1][5,3][6,2],
616
+ [4,5,1][6,7], [6,4,2](3)(5), [4,5,3][6,2], [4,2][5,3][6,1], [4,1][5,3][6,7],
617
+ [4,3][6,5,1], [4,1][6,2](5), [4,5,2][6,7], [4,5,3][6,7], [4,2][6,3](5),
618
+ [4,1][5,2][6,3], [4,7][5,1][6,3], [4,5,3][6,1], [4,2][5,3][6,7],
619
+ [5,3][6,4,1], [4,7][5,3](6), [5,1][6,4,2], [4,3][6,2](5), [4,3][5,2][6,1],
620
+ [4,1][6,5,7], [6,4,3](5), [4,3][5,2](6), [4,1][5,7](6), [4,3](5)(6),
621
+ [4,1][5,2](3)(6), [4,5,7](1,3)(6), [6,2][7,5](3), [6,1][7,2](3),
622
+ [6,7,1](3), [2,3][7,1], [7,3,5](2), [7,3,2,1], [6,2,5](3), [6,1](2)(3),
623
+ [2,7,3,1][6,5], [1,2][4,3,5], [4,3,2](1), [4,3,1,7], [6,3,5][7,2],
624
+ [6,3,2][7,1], [6,3,1](7), [4,3][7,1], [4,2][6,5][7,3], [4,1][6,2][7,3],
625
+ [4,7,3][6,1], [4,5][6,3][7,1], [4,2][6,1][7,5](3), [1,3][4,5][7,2],
626
+ [4,2][7,1,3], [4,1,3](7), [1,2][4,3][6,5], [1,5][6,2][7,3], [6,1,2][7,3],
627
+ [6,7,3](1), [6,5][7,1,3], [4,3][6,2][7,5](1), [4,3][6,5](7),
628
+ [4,1,5][6,7,2](3), [1,2,3][7,5], [7,2,3](1), [2,3](1,7), [4,2][6,3][7,5],
629
+ [4,1][6,3][7,2], [4,7,1][6,3], [6,2,5][7,3], [4,3][6,5](2), [4,3][6,2,1],
630
+ [2,7][4,3][6,1], [2,5][4,1][6,3], [4,5][6,1][7,3](2), [1,3][4,2,5],
631
+ [4,1,3](2), [2,1,3][4,7], [1,2,3][6,5], [4,5][6,2,3](1), [2,3][4,7][6,5],
632
+ [4,2,1,5][6,7,3], [4,3][6,2][7,5], [4,3][6,1][7,2], [4,3][6,7,1],
633
+ [4,1][6,5][7,3], [4,5][6,2][7,1], [4,2][6,7,5], [4,3][6,7,5],
634
+ [4,5][6,3][7,2], [4,2][6,3][7,1], [4,1][6,3](7), [4,3][6,1][7,5],
635
+ [4,3][6,7,2], [6,4,3][7,1], [4,3](6)(7), [6,4,1][7,2], [4,5][6,2][7,3],
636
+ [4,2][6,1][7,3], [4,7,1][6,5], [6,4,5][7,3], [4,2][7,3](6), [4,7,1](6),
637
+ [1,2][6,3][7,5], [6,3][7,2](1), [6,3](1,7), [6,1,5][7,3], [1,2][6,7,3],
638
+ [6,4][7,3](1), [1,3][4,2][6,5], [4,1,3][6,2], [4,5][6,7](1), [1,5][6,4,2],
639
+ [4,1,3][6,7], [4,3][6,5](1), [4,1,5][6,2], [1,2][4,5][6,7], [1,3][4,5][6,7],
640
+ [1,5][4,2][6,3], [4,1,2][6,3], [4,7][6,3](1), [4,5][6,1,3], [1,3][4,2][6,7],
641
+ [6,4,1,3], [1,3][4,7](6), [6,4,2](1), [4,1,7][6,5], [1,5][6,4,3],
642
+ [1,2][4,3](6), [4,1,7](6), [1,5][4,3](6), [4,1,2](6), [1,7,3][4,5](6),
643
+ [6,4,7,1,2,5](3), [1,5,3][6,7], [1,2][5,3][6,4], [1,3][6,7](5),
644
+ [1,3][5,2][6,4], [5,1,3](6), [6,2,5,3], [5,3][6,1](2), [2,1][5,3][6,7],
645
+ [2,3][6,5,1], [6,3](2)(5), [5,2,1][6,3], [2,7][5,1][6,3], [2,5,3][6,1],
646
+ [1,5][6,2,3], [6,1,2,3], [2,3][6,7](1), [2,1,3][6,5], [6,2,5](1),
647
+ [1,5,3][6,7](2), [1,5][2,3][6,7], [1,2,5][6,3], [6,3](1)(2), [2,1,7][6,3],
648
+ [2,3][6,1,5], [1,2,3][6,7], [2,3][6,4](1), [1,7][2,3](6), [5,3][6,4](1,2),
649
+ [1,3][6,2,5], [6,1,3](2), [2,7][6,5](1), [1,3][2,5][6,4], [1,3](2)(6),
650
+ [2,7][5,3](1)(6), [1,5][4,3][7,2], [4,3][7,1,2], [1,3][6,2][7,5],
651
+ [6,1,3][7,2], [4,3][6,5](1)(7), [4,3][5,1][6,7], [4,1][6,5,3],
652
+ [4,5,1][6,2], [1,3][4,2][6,7](5), [5,3][7,1], [4,5,2][7,3], [4,2][5,1][7,3],
653
+ [4,1][5,7,3], [6,5,2][7,3], [5,1][6,2][7,3], [4,3][6,7,1](5), [4,5,2][6,3],
654
+ [4,2][5,1][6,3], [4,1][5,7][6,3], [4,3][6,1](5), [4,3][5,2][6,7],
655
+ [5,1][6,4,3], [4,3][5,7](6), [6,4,1,3][7,5,2], [2,3][6,7](5), [5,2,3][6,4],
656
+ [2,5,3][6,7], [5,3][6,4](2), [2,1][5,3](6), [6,2,3][7,5], [6,1][7,2,3],
657
+ [2,3][6,7,1], [2,1][6,5][7,3], [6,3][7,2,5], [6,3][7,1](2), [2,1][6,3](7),
658
+ [2,3][6,1][7,5], [6,2][7,3](5), [5,2][6,1][7,3], [5,1][6,7,3],
659
+ [6,5,3][7,1], [6,2][7,5,1], [6,7,2,3](5), [6,7,3](5), [6,3][7,5,2],
660
+ [5,1][6,3][7,2], [5,7,1][6,3], [6,1][7,3](5), [5,2][6,7,3], [5,1][6,4][7,3],
661
+ [5,7,3](6), [5,2,3][6,4][7,1], [6,2][7,5,3], [5,3][6,1][7,2], [6,5,1](7),
662
+ [6,4][7,5,3], [5,3][7,2](6), [2,3][5,1](6)(7), [4,7][6,5,1],
663
+ [2,5][4,1][6,7], [6,4,5,3](2), [2,5][6,7,3], [6,4][7,3](2), [2,3][6,7,5],
664
+ [6,4][7,2,3], [2,3][7,1](6), [4,1][6,7,3], [4,3][6,5][7,1], [4,5][6,1][7,3],
665
+ [4,3][6,2,5], [4,3][6,1](2), [2,1][4,3][6,7], [2,3][4,1][6,5],
666
+ [4,5][6,2,1], [4,2,5][6,7,3], [2,5][4,3][6,7], [4,5][6,3](2), [4,2,1][6,3],
667
+ [2,7][4,1][6,3], [2,5][4,3][6,1], [4,3][6,7](2), [2,1][6,4,3],
668
+ [2,7][4,3](6), [6,4,1][7,3](2), [4,5][6,2,3], [4,2,3][6,1], [2,1][4,7][6,5],
669
+ [2,3][6,4,5], [4,2,3](6), [2,1][4,7,3](6), [6,4,3][7,2], [4,5][6,7,3],
670
+ [6,4,2][7,3], [4,1][7,3](6), [2,3][4,5][7,1](6), [4,2,1][7,5,3](6),
671
+ [4,5,3](7), [4,7,2,5,1,3](6), [1,5][4,2][7,3], [4,1,2][7,3], [4,7,3](1),
672
+ [4,5][7,1,3], [4,2][7,5](1), [4,5](7), [1,5][4,7,2], [1,5][4,7,3],
673
+ [7,3](4), [4,7,5], [4,7,2], [7,5](4), [4,6][7,1], [1,2][4,3][7,5],
674
+ [4,3][7,2](1), [4,3](1,7), [4,1,5][7,3], [1,2][4,7,3], [7,3](1)(4),
675
+ [1,7,3][4,6], [7,1,2](4), [1,3][4,2][7,5], [4,1,3][7,2], [4,5](1)(7),
676
+ [1,3][7,5](4), [1,3][4,6][7,2], [4,6](1)(7), [2,3][4,5](1), [1,5][4,3](2),
677
+ [4,3](1,2), [2,7][4,3](1), [2,5][4,1,3], [1,3][4,7](2), [2,1,3](4),
678
+ [4,5][7,2,3], [4,2,3][7,1], [2,1][4,7,5], [7,2,5](4), [4,2,3][7,5],
679
+ [4,1][7,2,3], [2,3][4,7,1], [2,1][4,5][7,3], [4,2,5][7,1], [4,7,5](2),
680
+ [2,3][4,7,5], [4,3][7,2,5], [4,3][7,1](2), [2,1][4,3](7), [2,3][4,1][7,5],
681
+ [4,7,2,3], [2,3][7,1](4), [2,3][4,6](7), [7,2,1](4), [4,2,5][7,3],
682
+ [4,1][7,3](2), [2,7,1][4,5], [2,5][7,3](4), [4,6][7,3](2), [2,7,1][4,6],
683
+ [2,5][4,6][7,3], [4,6][7,1](2), [1,3][2,7,5][4,6] ]
684
+ gap> DClasses(S);
685
+ [ <Green's D-class: <empty partial perm>>, <Green's D-class: [3,1]>,
686
+ <Green's D-class: [6,1]>, <Green's D-class: [6,5](1)>,
687
+ <Green's D-class: [3,7](1)>, <Green's D-class: [1,3,5][6,7]>,
688
+ <Green's D-class: [6,7](5)>,
689
+ <Green's D-class: <identity partial perm on [ 6 ]>>,
690
+ <Green's D-class: [2,7][6,5]>, <Green's D-class: [6,7](2)>,
691
+ <Green's D-class: [1,3][6,4]>, <Green's D-class: [2,5][6,4]>,
692
+ <Green's D-class: [2,7](6)>, <Green's D-class: [1,3,2][6,4]>,
693
+ <Green's D-class: (1,3)(6)>, <Green's D-class: [4,3,1]>,
694
+ <Green's D-class: [4,1][6,5]>, <Green's D-class: [4,5][6,2](3)>,
695
+ <Green's D-class: [4,2][6,1](3)>, <Green's D-class: [4,1][6,7](3)>,
696
+ <Green's D-class: [4,3,1][6,5]>, <Green's D-class: [4,2][6,3,5]>,
697
+ <Green's D-class: [4,1][6,3,2]>, <Green's D-class: [4,7][6,3,1]>,
698
+ <Green's D-class: [4,5][6,1](3)>, <Green's D-class: [1,5][4,3][6,2]>,
699
+ <Green's D-class: [4,3][6,1,2]>, <Green's D-class: [4,3][6,7](1)>,
700
+ <Green's D-class: [4,1,3][6,5]>, <Green's D-class: [4,5][6,2](1)>,
701
+ <Green's D-class: [4,7][6,5]>, <Green's D-class: [1,5][4,2][6,7](3)>,
702
+ <Green's D-class: [1,5][4,3][6,7]>, <Green's D-class: [6,4,3]>,
703
+ <Green's D-class: [4,5][6,7]>, <Green's D-class: [4,2][6,7]>,
704
+ <Green's D-class: [6,4,5]>, <Green's D-class: [4,1](6)>,
705
+ <Green's D-class: [1,2][4,5][6,3]>, <Green's D-class: [4,2][6,3](1)>,
706
+ <Green's D-class: [4,1,7][6,3]>, <Green's D-class: [4,3][6,1,5]>,
707
+ <Green's D-class: [1,2][4,3][6,7]>, <Green's D-class: [6,4,3](1)>,
708
+ <Green's D-class: [1,7][4,3](6)>, <Green's D-class: [6,4,1,2](3)>,
709
+ <Green's D-class: [1,3][4,5][6,2]>, <Green's D-class: [4,2][6,1,3]>,
710
+ <Green's D-class: [4,7][6,5](1)>, <Green's D-class: [1,3][6,4,5]>,
711
+ <Green's D-class: [1,3][4,2](6)>, <Green's D-class: [4,7](1)(3)(6)>,
712
+ <Green's D-class: [1,3][6,2](5)>, <Green's D-class: [5,2][6,1,3]>,
713
+ <Green's D-class: [5,1,3][6,7]>, <Green's D-class: [6,5,3](1)>,
714
+ <Green's D-class: [1,5,2][6,3]>, <Green's D-class: [5,1,2][6,3]>,
715
+ <Green's D-class: [5,7][6,3](1)>, <Green's D-class: [6,1,3](5)>,
716
+ <Green's D-class: [6,2](3,5)>, <Green's D-class: [5,3,2][6,1]>,
717
+ <Green's D-class: [5,3,1][6,7]>, <Green's D-class: [6,5,1](3)>,
718
+ <Green's D-class: [3,1][6,2](5)>, <Green's D-class: [1,3,5,2][6,7]>,
719
+ <Green's D-class: [6,7](3,5)>, <Green's D-class: [6,3,2](5)>,
720
+ <Green's D-class: [5,2][6,3,1]>, <Green's D-class: [5,1][6,3,7]>,
721
+ <Green's D-class: [6,1](3,5)>, <Green's D-class: [5,3,2][6,7]>,
722
+ <Green's D-class: [5,3,1][6,4]>, <Green's D-class: [5,3,7](6)>,
723
+ <Green's D-class: [5,1,3,2][6,4]>, <Green's D-class: [4,5][6,7](3)>,
724
+ <Green's D-class: [6,4,2](3)>, <Green's D-class: [4,3,5][6,7]>,
725
+ <Green's D-class: [6,4,3,2]>, <Green's D-class: [4,3,1](6)>,
726
+ <Green's D-class: [6,2](3)(5)>, <Green's D-class: [5,2][6,1](3)>,
727
+ <Green's D-class: [3,1][6,5,7]>, <Green's D-class: [4,7][5,3]>,
728
+ <Green's D-class: [4,2][6,5,3]>, <Green's D-class: [4,1][5,3][6,2]>,
729
+ <Green's D-class: [4,5,1][6,7]>, <Green's D-class: [6,4,2](3)(5)>,
730
+ <Green's D-class: [4,5,3][6,2]>, <Green's D-class: [4,2][5,3][6,1]>,
731
+ <Green's D-class: [4,1][5,3][6,7]>, <Green's D-class: [4,3][6,5,1]>,
732
+ <Green's D-class: [4,1][6,2](5)>, <Green's D-class: [4,5,2][6,7]>,
733
+ <Green's D-class: [4,5,3][6,7]>, <Green's D-class: [4,2][6,3](5)>,
734
+ <Green's D-class: [4,1][5,2][6,3]>, <Green's D-class: [4,7][5,1][6,3]>,
735
+ <Green's D-class: [4,5,3][6,1]>, <Green's D-class: [4,2][5,3][6,7]>,
736
+ <Green's D-class: [5,3][6,4,1]>, <Green's D-class: [4,7][5,3](6)>,
737
+ <Green's D-class: [5,1][6,4,2]>, <Green's D-class: [4,3][6,2](5)>,
738
+ <Green's D-class: [4,3][5,2][6,1]>, <Green's D-class: [4,1][6,5,7]>,
739
+ <Green's D-class: [6,4,3](5)>, <Green's D-class: [4,3][5,2](6)>,
740
+ <Green's D-class: [4,1][5,7](6)>, <Green's D-class: [4,3](5)(6)>,
741
+ <Green's D-class: [4,1][5,2](3)(6)>, <Green's D-class: [4,5,7](1,3)(6)>,
742
+ <Green's D-class: [6,2][7,5](3)>, <Green's D-class: [6,1][7,2](3)>,
743
+ <Green's D-class: [6,7,1](3)>, <Green's D-class: [2,3][7,1]>,
744
+ <Green's D-class: [7,3,5](2)>, <Green's D-class: [7,3,2,1]>,
745
+ <Green's D-class: [6,2,5](3)>, <Green's D-class: [6,1](2)(3)>,
746
+ <Green's D-class: [2,7,3,1][6,5]>, <Green's D-class: [1,2][4,3,5]>,
747
+ <Green's D-class: [4,3,2](1)>, <Green's D-class: [4,3,1,7]>,
748
+ <Green's D-class: [6,3,5][7,2]>, <Green's D-class: [6,3,2][7,1]>,
749
+ <Green's D-class: [6,3,1](7)>, <Green's D-class: [4,3][7,1]>,
750
+ <Green's D-class: [4,2][6,5][7,3]>, <Green's D-class: [4,1][6,2][7,3]>,
751
+ <Green's D-class: [4,7,3][6,1]>, <Green's D-class: [4,5][6,3][7,1]>,
752
+ <Green's D-class: [4,2][6,1][7,5](3)>, <Green's D-class: [1,3][4,5][7,2]>,
753
+ <Green's D-class: [4,2][7,1,3]>, <Green's D-class: [4,1,3](7)>,
754
+ <Green's D-class: [1,2][4,3][6,5]>, <Green's D-class: [1,5][6,2][7,3]>,
755
+ <Green's D-class: [6,1,2][7,3]>, <Green's D-class: [6,7,3](1)>,
756
+ <Green's D-class: [6,5][7,1,3]>, <Green's D-class: [4,3][6,2][7,5](1)>,
757
+ <Green's D-class: [4,3][6,5](7)>, <Green's D-class: [4,1,5][6,7,2](3)>,
758
+ <Green's D-class: [1,2,3][7,5]>, <Green's D-class: [7,2,3](1)>,
759
+ <Green's D-class: [2,3](1,7)>, <Green's D-class: [4,2][6,3][7,5]>,
760
+ <Green's D-class: [4,1][6,3][7,2]>, <Green's D-class: [4,7,1][6,3]>,
761
+ <Green's D-class: [6,2,5][7,3]>, <Green's D-class: [4,3][6,5](2)>,
762
+ <Green's D-class: [4,3][6,2,1]>, <Green's D-class: [2,7][4,3][6,1]>,
763
+ <Green's D-class: [2,5][4,1][6,3]>, <Green's D-class: [4,5][6,1][7,3](2)>,
764
+ <Green's D-class: [1,3][4,2,5]>, <Green's D-class: [4,1,3](2)>,
765
+ <Green's D-class: [2,1,3][4,7]>, <Green's D-class: [1,2,3][6,5]>,
766
+ <Green's D-class: [4,5][6,2,3](1)>, <Green's D-class: [2,3][4,7][6,5]>,
767
+ <Green's D-class: [4,2,1,5][6,7,3]>, <Green's D-class: [4,3][6,2][7,5]>,
768
+ <Green's D-class: [4,3][6,1][7,2]>, <Green's D-class: [4,3][6,7,1]>,
769
+ <Green's D-class: [4,1][6,5][7,3]>, <Green's D-class: [4,5][6,2][7,1]>,
770
+ <Green's D-class: [4,2][6,7,5]>, <Green's D-class: [4,3][6,7,5]>,
771
+ <Green's D-class: [4,5][6,3][7,2]>, <Green's D-class: [4,2][6,3][7,1]>,
772
+ <Green's D-class: [4,1][6,3](7)>, <Green's D-class: [4,3][6,1][7,5]>,
773
+ <Green's D-class: [4,3][6,7,2]>, <Green's D-class: [6,4,3][7,1]>,
774
+ <Green's D-class: [4,3](6)(7)>, <Green's D-class: [6,4,1][7,2]>,
775
+ <Green's D-class: [4,5][6,2][7,3]>, <Green's D-class: [4,2][6,1][7,3]>,
776
+ <Green's D-class: [4,7,1][6,5]>, <Green's D-class: [6,4,5][7,3]>,
777
+ <Green's D-class: [4,2][7,3](6)>, <Green's D-class: [4,7,1](6)>,
778
+ <Green's D-class: [1,2][6,3][7,5]>, <Green's D-class: [6,3][7,2](1)>,
779
+ <Green's D-class: [6,3](1,7)>, <Green's D-class: [6,1,5][7,3]>,
780
+ <Green's D-class: [1,2][6,7,3]>, <Green's D-class: [6,4][7,3](1)>,
781
+ <Green's D-class: [1,3][4,2][6,5]>, <Green's D-class: [4,1,3][6,2]>,
782
+ <Green's D-class: [4,5][6,7](1)>, <Green's D-class: [1,5][6,4,2]>,
783
+ <Green's D-class: [4,1,3][6,7]>, <Green's D-class: [4,3][6,5](1)>,
784
+ <Green's D-class: [4,1,5][6,2]>, <Green's D-class: [1,2][4,5][6,7]>,
785
+ <Green's D-class: [1,3][4,5][6,7]>, <Green's D-class: [1,5][4,2][6,3]>,
786
+ <Green's D-class: [4,1,2][6,3]>, <Green's D-class: [4,7][6,3](1)>,
787
+ <Green's D-class: [4,5][6,1,3]>, <Green's D-class: [1,3][4,2][6,7]>,
788
+ <Green's D-class: [6,4,1,3]>, <Green's D-class: [1,3][4,7](6)>,
789
+ <Green's D-class: [6,4,2](1)>, <Green's D-class: [4,1,7][6,5]>,
790
+ <Green's D-class: [1,5][6,4,3]>, <Green's D-class: [1,2][4,3](6)>,
791
+ <Green's D-class: [4,1,7](6)>, <Green's D-class: [1,5][4,3](6)>,
792
+ <Green's D-class: [4,1,2](6)>, <Green's D-class: [1,7,3][4,5](6)>,
793
+ <Green's D-class: [6,4,7,1,2,5](3)>, <Green's D-class: [1,5,3][6,7]>,
794
+ <Green's D-class: [1,2][5,3][6,4]>, <Green's D-class: [1,3][6,7](5)>,
795
+ <Green's D-class: [1,3][5,2][6,4]>, <Green's D-class: [5,1,3](6)>,
796
+ <Green's D-class: [6,2,5,3]>, <Green's D-class: [5,3][6,1](2)>,
797
+ <Green's D-class: [2,1][5,3][6,7]>, <Green's D-class: [2,3][6,5,1]>,
798
+ <Green's D-class: [6,3](2)(5)>, <Green's D-class: [5,2,1][6,3]>,
799
+ <Green's D-class: [2,7][5,1][6,3]>, <Green's D-class: [2,5,3][6,1]>,
800
+ <Green's D-class: [1,5][6,2,3]>, <Green's D-class: [6,1,2,3]>,
801
+ <Green's D-class: [2,3][6,7](1)>, <Green's D-class: [2,1,3][6,5]>,
802
+ <Green's D-class: [6,2,5](1)>, <Green's D-class: [1,5,3][6,7](2)>,
803
+ <Green's D-class: [1,5][2,3][6,7]>, <Green's D-class: [1,2,5][6,3]>,
804
+ <Green's D-class: [6,3](1)(2)>, <Green's D-class: [2,1,7][6,3]>,
805
+ <Green's D-class: [2,3][6,1,5]>, <Green's D-class: [1,2,3][6,7]>,
806
+ <Green's D-class: [2,3][6,4](1)>, <Green's D-class: [1,7][2,3](6)>,
807
+ <Green's D-class: [5,3][6,4](1,2)>, <Green's D-class: [1,3][6,2,5]>,
808
+ <Green's D-class: [6,1,3](2)>, <Green's D-class: [2,7][6,5](1)>,
809
+ <Green's D-class: [1,3][2,5][6,4]>, <Green's D-class: [1,3](2)(6)>,
810
+ <Green's D-class: [2,7][5,3](1)(6)>, <Green's D-class: [1,5][4,3][7,2]>,
811
+ <Green's D-class: [4,3][7,1,2]>, <Green's D-class: [1,3][6,2][7,5]>,
812
+ <Green's D-class: [6,1,3][7,2]>, <Green's D-class: [4,3][6,5](1)(7)>,
813
+ <Green's D-class: [4,3][5,1][6,7]>, <Green's D-class: [4,1][6,5,3]>,
814
+ <Green's D-class: [4,5,1][6,2]>, <Green's D-class: [1,3][4,2][6,7](5)>,
815
+ <Green's D-class: [5,3][7,1]>, <Green's D-class: [4,5,2][7,3]>,
816
+ <Green's D-class: [4,2][5,1][7,3]>, <Green's D-class: [4,1][5,7,3]>,
817
+ <Green's D-class: [6,5,2][7,3]>, <Green's D-class: [5,1][6,2][7,3]>,
818
+ <Green's D-class: [4,3][6,7,1](5)>, <Green's D-class: [4,5,2][6,3]>,
819
+ <Green's D-class: [4,2][5,1][6,3]>, <Green's D-class: [4,1][5,7][6,3]>,
820
+ <Green's D-class: [4,3][6,1](5)>, <Green's D-class: [4,3][5,2][6,7]>,
821
+ <Green's D-class: [5,1][6,4,3]>, <Green's D-class: [4,3][5,7](6)>,
822
+ <Green's D-class: [6,4,1,3][7,5,2]>, <Green's D-class: [2,3][6,7](5)>,
823
+ <Green's D-class: [5,2,3][6,4]>, <Green's D-class: [2,5,3][6,7]>,
824
+ <Green's D-class: [5,3][6,4](2)>, <Green's D-class: [2,1][5,3](6)>,
825
+ <Green's D-class: [6,2,3][7,5]>, <Green's D-class: [6,1][7,2,3]>,
826
+ <Green's D-class: [2,3][6,7,1]>, <Green's D-class: [2,1][6,5][7,3]>,
827
+ <Green's D-class: [6,3][7,2,5]>, <Green's D-class: [6,3][7,1](2)>,
828
+ <Green's D-class: [2,1][6,3](7)>, <Green's D-class: [2,3][6,1][7,5]>,
829
+ <Green's D-class: [6,2][7,3](5)>, <Green's D-class: [5,2][6,1][7,3]>,
830
+ <Green's D-class: [5,1][6,7,3]>, <Green's D-class: [6,5,3][7,1]>,
831
+ <Green's D-class: [6,2][7,5,1]>, <Green's D-class: [6,7,2,3](5)>,
832
+ <Green's D-class: [6,7,3](5)>, <Green's D-class: [6,3][7,5,2]>,
833
+ <Green's D-class: [5,1][6,3][7,2]>, <Green's D-class: [5,7,1][6,3]>,
834
+ <Green's D-class: [6,1][7,3](5)>, <Green's D-class: [5,2][6,7,3]>,
835
+ <Green's D-class: [5,1][6,4][7,3]>, <Green's D-class: [5,7,3](6)>,
836
+ <Green's D-class: [5,2,3][6,4][7,1]>, <Green's D-class: [6,2][7,5,3]>,
837
+ <Green's D-class: [5,3][6,1][7,2]>, <Green's D-class: [6,5,1](7)>,
838
+ <Green's D-class: [6,4][7,5,3]>, <Green's D-class: [5,3][7,2](6)>,
839
+ <Green's D-class: [2,3][5,1](6)(7)>, <Green's D-class: [4,7][6,5,1]>,
840
+ <Green's D-class: [2,5][4,1][6,7]>, <Green's D-class: [6,4,5,3](2)>,
841
+ <Green's D-class: [2,5][6,7,3]>, <Green's D-class: [6,4][7,3](2)>,
842
+ <Green's D-class: [2,3][6,7,5]>, <Green's D-class: [6,4][7,2,3]>,
843
+ <Green's D-class: [2,3][7,1](6)>, <Green's D-class: [4,1][6,7,3]>,
844
+ <Green's D-class: [4,3][6,5][7,1]>, <Green's D-class: [4,5][6,1][7,3]>,
845
+ <Green's D-class: [4,3][6,2,5]>, <Green's D-class: [4,3][6,1](2)>,
846
+ <Green's D-class: [2,1][4,3][6,7]>, <Green's D-class: [2,3][4,1][6,5]>,
847
+ <Green's D-class: [4,5][6,2,1]>, <Green's D-class: [4,2,5][6,7,3]>,
848
+ <Green's D-class: [2,5][4,3][6,7]>, <Green's D-class: [4,5][6,3](2)>,
849
+ <Green's D-class: [4,2,1][6,3]>, <Green's D-class: [2,7][4,1][6,3]>,
850
+ <Green's D-class: [2,5][4,3][6,1]>, <Green's D-class: [4,3][6,7](2)>,
851
+ <Green's D-class: [2,1][6,4,3]>, <Green's D-class: [2,7][4,3](6)>,
852
+ <Green's D-class: [6,4,1][7,3](2)>, <Green's D-class: [4,5][6,2,3]>,
853
+ <Green's D-class: [4,2,3][6,1]>, <Green's D-class: [2,1][4,7][6,5]>,
854
+ <Green's D-class: [2,3][6,4,5]>, <Green's D-class: [4,2,3](6)>,
855
+ <Green's D-class: [2,1][4,7,3](6)>, <Green's D-class: [6,4,3][7,2]>,
856
+ <Green's D-class: [4,5][6,7,3]>, <Green's D-class: [6,4,2][7,3]>,
857
+ <Green's D-class: [4,1][7,3](6)>, <Green's D-class: [2,3][4,5][7,1](6)>,
858
+ <Green's D-class: [4,2,1][7,5,3](6)>, <Green's D-class: [4,5,3](7)>,
859
+ <Green's D-class: [4,7,2,5,1,3](6)>, <Green's D-class: [1,5][4,2][7,3]>,
860
+ <Green's D-class: [4,1,2][7,3]>, <Green's D-class: [4,7,3](1)>,
861
+ <Green's D-class: [4,5][7,1,3]>, <Green's D-class: [4,2][7,5](1)>,
862
+ <Green's D-class: [4,5](7)>, <Green's D-class: [1,5][4,7,2]>,
863
+ <Green's D-class: [1,5][4,7,3]>, <Green's D-class: [7,3](4)>,
864
+ <Green's D-class: [4,7,5]>, <Green's D-class: [4,7,2]>,
865
+ <Green's D-class: [7,5](4)>, <Green's D-class: [4,6][7,1]>,
866
+ <Green's D-class: [1,2][4,3][7,5]>, <Green's D-class: [4,3][7,2](1)>,
867
+ <Green's D-class: [4,3](1,7)>, <Green's D-class: [4,1,5][7,3]>,
868
+ <Green's D-class: [1,2][4,7,3]>, <Green's D-class: [7,3](1)(4)>,
869
+ <Green's D-class: [1,7,3][4,6]>, <Green's D-class: [7,1,2](4)>,
870
+ <Green's D-class: [1,3][4,2][7,5]>, <Green's D-class: [4,1,3][7,2]>,
871
+ <Green's D-class: [4,5](1)(7)>, <Green's D-class: [1,3][7,5](4)>,
872
+ <Green's D-class: [1,3][4,6][7,2]>, <Green's D-class: [4,6](1)(7)>,
873
+ <Green's D-class: [2,3][4,5](1)>, <Green's D-class: [1,5][4,3](2)>,
874
+ <Green's D-class: [4,3](1,2)>, <Green's D-class: [2,7][4,3](1)>,
875
+ <Green's D-class: [2,5][4,1,3]>, <Green's D-class: [1,3][4,7](2)>,
876
+ <Green's D-class: [2,1,3](4)>, <Green's D-class: [4,5][7,2,3]>,
877
+ <Green's D-class: [4,2,3][7,1]>, <Green's D-class: [2,1][4,7,5]>,
878
+ <Green's D-class: [7,2,5](4)>, <Green's D-class: [4,2,3][7,5]>,
879
+ <Green's D-class: [4,1][7,2,3]>, <Green's D-class: [2,3][4,7,1]>,
880
+ <Green's D-class: [2,1][4,5][7,3]>, <Green's D-class: [4,2,5][7,1]>,
881
+ <Green's D-class: [4,7,5](2)>, <Green's D-class: [2,3][4,7,5]>,
882
+ <Green's D-class: [4,3][7,2,5]>, <Green's D-class: [4,3][7,1](2)>,
883
+ <Green's D-class: [2,1][4,3](7)>, <Green's D-class: [2,3][4,1][7,5]>,
884
+ <Green's D-class: [4,7,2,3]>, <Green's D-class: [2,3][7,1](4)>,
885
+ <Green's D-class: [2,3][4,6](7)>, <Green's D-class: [7,2,1](4)>,
886
+ <Green's D-class: [4,2,5][7,3]>, <Green's D-class: [4,1][7,3](2)>,
887
+ <Green's D-class: [2,7,1][4,5]>, <Green's D-class: [2,5][7,3](4)>,
888
+ <Green's D-class: [4,6][7,3](2)>, <Green's D-class: [2,7,1][4,6]>,
889
+ <Green's D-class: [2,5][4,6][7,3]>, <Green's D-class: [4,6][7,1](2)>,
890
+ <Green's D-class: [1,3][2,7,5][4,6]> ]
891
+
892
+ # L-classes/reps, 1/1
893
+ gap> S := Semigroup([Transformation([2, 2, 1, 2, 4, 4]),
894
+ > Transformation([2, 6, 6, 5, 1, 4]), Transformation([3, 2, 5, 5, 6, 4]),
895
+ > Transformation([3, 5, 3, 4, 1]), Transformation([4, 2, 3, 1, 4, 2]),
896
+ > Transformation([4, 4, 2, 6, 6, 3]), Transformation([5, 5, 5, 6, 5, 4]),
897
+ > Transformation([6, 3, 1, 3, 1, 6])], rec(acting := false));;
898
+ gap> GreensLClasses(S);
899
+ [ <Green's L-class: Transformation( [ 2, 2, 2, 2, 2, 2 ] )>,
900
+ <Green's L-class: Transformation( [ 4, 4, 4, 4, 4, 4 ] )>,
901
+ <Green's L-class: Transformation( [ 2, 4, 4, 4, 2, 2 ] )>,
902
+ <Green's L-class: Transformation( [ 1, 1, 1, 1, 1, 1 ] )>,
903
+ <Green's L-class: Transformation( [ 4, 1, 1, 1, 4, 4 ] )>,
904
+ <Green's L-class: Transformation( [ 1, 2, 2, 2, 1, 1 ] )>,
905
+ <Green's L-class: Transformation( [ 2, 2, 1, 2, 4, 4 ] )>,
906
+ <Green's L-class: Transformation( [ 6, 6, 6, 6, 6, 6 ] )>,
907
+ <Green's L-class: Transformation( [ 5, 5, 5, 5, 5, 5 ] )>,
908
+ <Green's L-class: Transformation( [ 6, 5, 5, 5, 6, 6 ] )>,
909
+ <Green's L-class: Transformation( [ 5, 2, 2, 2, 5, 5 ] )>,
910
+ <Green's L-class: Transformation( [ 2, 6, 6, 6, 2, 2 ] )>,
911
+ <Green's L-class: Transformation( [ 6, 6, 2, 6, 5, 5 ] )>,
912
+ <Green's L-class: Transformation( [ 1, 6, 6, 6, 1, 1 ] )>,
913
+ <Green's L-class: Transformation( [ 6, 4, 4, 4, 6, 6 ] )>,
914
+ <Green's L-class: Transformation( [ 4, 4, 6, 4, 1, 1 ] )>,
915
+ <Green's L-class: Transformation( [ 4, 5, 5, 5, 4, 4 ] )>,
916
+ <Green's L-class: Transformation( [ 5, 5, 4, 5, 2, 2 ] )>,
917
+ <Green's L-class: Transformation( [ 5, 1, 1, 1, 5, 5 ] )>,
918
+ <Green's L-class: Transformation( [ 1, 1, 5, 1, 6, 6 ] )>,
919
+ <Green's L-class: Transformation( [ 4, 4, 2, 4, 6, 6 ] )>,
920
+ <Green's L-class: Transformation( [ 4, 4, 5, 4, 6, 6 ] )>,
921
+ <Green's L-class: Transformation( [ 2, 2, 5, 5, 6, 4 ] )>,
922
+ <Green's L-class: Transformation( [ 1, 1, 4, 1, 5, 5 ] )>,
923
+ <Green's L-class: Transformation( [ 2, 2, 1, 2, 6, 6 ] )>,
924
+ <Green's L-class: Transformation( [ 5, 5, 1, 1, 6, 4 ] )>,
925
+ <Green's L-class: Transformation( [ 1, 1, 2, 2, 6, 4 ] )>,
926
+ <Green's L-class: Transformation( [ 2, 2, 1, 2, 5, 5 ] )>,
927
+ <Green's L-class: Transformation( [ 2, 4, 5, 5, 1, 2 ] )>,
928
+ <Green's L-class: Transformation( [ 2, 5, 2, 2, 6, 1 ] )>,
929
+ <Green's L-class: Transformation( [ 2, 6, 6, 5, 1, 4 ] )>,
930
+ <Green's L-class: Transformation( [ 3, 3, 3, 3, 3, 3 ] )>,
931
+ <Green's L-class: Transformation( [ 5, 3, 3, 3, 5, 5 ] )>,
932
+ <Green's L-class: Transformation( [ 3, 2, 2, 2, 3, 3 ] )>,
933
+ <Green's L-class: Transformation( [ 2, 2, 3, 2, 5, 5 ] )>,
934
+ <Green's L-class: Transformation( [ 3, 4, 4, 4, 3, 3 ] )>,
935
+ <Green's L-class: Transformation( [ 5, 5, 4, 5, 3, 3 ] )>,
936
+ <Green's L-class: Transformation( [ 6, 3, 3, 3, 6, 6 ] )>,
937
+ <Green's L-class: Transformation( [ 3, 3, 6, 3, 4, 4 ] )>,
938
+ <Green's L-class: Transformation( [ 3, 3, 5, 3, 6, 6 ] )>,
939
+ <Green's L-class: Transformation( [ 2, 2, 3, 2, 4, 4 ] )>,
940
+ <Green's L-class: Transformation( [ 6, 6, 3, 3, 4, 5 ] )>,
941
+ <Green's L-class: Transformation( [ 3, 3, 2, 2, 4, 5 ] )>,
942
+ <Green's L-class: Transformation( [ 2, 2, 3, 2, 6, 6 ] )>,
943
+ <Green's L-class: Transformation( [ 2, 5, 6, 6, 3, 2 ] )>,
944
+ <Green's L-class: Transformation( [ 2, 6, 2, 2, 4, 3 ] )>,
945
+ <Green's L-class: Transformation( [ 3, 2, 5, 5, 6, 4 ] )>,
946
+ <Green's L-class: Transformation( [ 1, 3, 3, 3, 1, 1 ] )>,
947
+ <Green's L-class: Transformation( [ 3, 3, 1, 3, 6, 6 ] )>,
948
+ <Green's L-class: Transformation( [ 3, 3, 4, 3, 1, 1 ] )>,
949
+ <Green's L-class: Transformation( [ 1, 1, 3, 3, 6, 4 ] )>,
950
+ <Green's L-class: Transformation( [ 1, 1, 5, 1, 3, 3 ] )>,
951
+ <Green's L-class: Transformation( [ 5, 5, 1, 1, 3 ] )>,
952
+ <Green's L-class: Transformation( [ 1, 1, 4, 4, 5, 3 ] )>,
953
+ <Green's L-class: Transformation( [ 3, 5, 3, 4, 1 ] )>,
954
+ <Green's L-class: Transformation( [ 3, 3, 2, 3, 1, 1 ] )>,
955
+ <Green's L-class: Transformation( [ 3, 2, 4, 4, 2, 1 ] )>,
956
+ <Green's L-class: Transformation( [ 4, 2, 3, 1, 4, 2 ] )> ]
957
+ gap> LClassReps(S);
958
+ [ Transformation( [ 2, 2, 2, 2, 2, 2 ] ),
959
+ Transformation( [ 4, 4, 4, 4, 4, 4 ] ),
960
+ Transformation( [ 2, 4, 4, 4, 2, 2 ] ),
961
+ Transformation( [ 1, 1, 1, 1, 1, 1 ] ),
962
+ Transformation( [ 4, 1, 1, 1, 4, 4 ] ),
963
+ Transformation( [ 1, 2, 2, 2, 1, 1 ] ),
964
+ Transformation( [ 2, 2, 1, 2, 4, 4 ] ),
965
+ Transformation( [ 6, 6, 6, 6, 6, 6 ] ),
966
+ Transformation( [ 5, 5, 5, 5, 5, 5 ] ),
967
+ Transformation( [ 6, 5, 5, 5, 6, 6 ] ),
968
+ Transformation( [ 5, 2, 2, 2, 5, 5 ] ),
969
+ Transformation( [ 2, 6, 6, 6, 2, 2 ] ),
970
+ Transformation( [ 6, 6, 2, 6, 5, 5 ] ),
971
+ Transformation( [ 1, 6, 6, 6, 1, 1 ] ),
972
+ Transformation( [ 6, 4, 4, 4, 6, 6 ] ),
973
+ Transformation( [ 4, 4, 6, 4, 1, 1 ] ),
974
+ Transformation( [ 4, 5, 5, 5, 4, 4 ] ),
975
+ Transformation( [ 5, 5, 4, 5, 2, 2 ] ),
976
+ Transformation( [ 5, 1, 1, 1, 5, 5 ] ),
977
+ Transformation( [ 1, 1, 5, 1, 6, 6 ] ),
978
+ Transformation( [ 4, 4, 2, 4, 6, 6 ] ),
979
+ Transformation( [ 4, 4, 5, 4, 6, 6 ] ),
980
+ Transformation( [ 2, 2, 5, 5, 6, 4 ] ),
981
+ Transformation( [ 1, 1, 4, 1, 5, 5 ] ),
982
+ Transformation( [ 2, 2, 1, 2, 6, 6 ] ),
983
+ Transformation( [ 5, 5, 1, 1, 6, 4 ] ),
984
+ Transformation( [ 1, 1, 2, 2, 6, 4 ] ),
985
+ Transformation( [ 2, 2, 1, 2, 5, 5 ] ),
986
+ Transformation( [ 2, 4, 5, 5, 1, 2 ] ),
987
+ Transformation( [ 2, 5, 2, 2, 6, 1 ] ),
988
+ Transformation( [ 2, 6, 6, 5, 1, 4 ] ),
989
+ Transformation( [ 3, 3, 3, 3, 3, 3 ] ),
990
+ Transformation( [ 5, 3, 3, 3, 5, 5 ] ),
991
+ Transformation( [ 3, 2, 2, 2, 3, 3 ] ),
992
+ Transformation( [ 2, 2, 3, 2, 5, 5 ] ),
993
+ Transformation( [ 3, 4, 4, 4, 3, 3 ] ),
994
+ Transformation( [ 5, 5, 4, 5, 3, 3 ] ),
995
+ Transformation( [ 6, 3, 3, 3, 6, 6 ] ),
996
+ Transformation( [ 3, 3, 6, 3, 4, 4 ] ),
997
+ Transformation( [ 3, 3, 5, 3, 6, 6 ] ),
998
+ Transformation( [ 2, 2, 3, 2, 4, 4 ] ),
999
+ Transformation( [ 6, 6, 3, 3, 4, 5 ] ),
1000
+ Transformation( [ 3, 3, 2, 2, 4, 5 ] ),
1001
+ Transformation( [ 2, 2, 3, 2, 6, 6 ] ),
1002
+ Transformation( [ 2, 5, 6, 6, 3, 2 ] ),
1003
+ Transformation( [ 2, 6, 2, 2, 4, 3 ] ),
1004
+ Transformation( [ 3, 2, 5, 5, 6, 4 ] ),
1005
+ Transformation( [ 1, 3, 3, 3, 1, 1 ] ),
1006
+ Transformation( [ 3, 3, 1, 3, 6, 6 ] ),
1007
+ Transformation( [ 3, 3, 4, 3, 1, 1 ] ),
1008
+ Transformation( [ 1, 1, 3, 3, 6, 4 ] ),
1009
+ Transformation( [ 1, 1, 5, 1, 3, 3 ] ), Transformation( [ 5, 5, 1, 1, 3 ] ),
1010
+ Transformation( [ 1, 1, 4, 4, 5, 3 ] ), Transformation( [ 3, 5, 3, 4, 1 ] ),
1011
+ Transformation( [ 3, 3, 2, 3, 1, 1 ] ),
1012
+ Transformation( [ 3, 2, 4, 4, 2, 1 ] ),
1013
+ Transformation( [ 4, 2, 3, 1, 4, 2 ] ) ]
1014
+
1015
+ # R-classes/reps, 1/1
1016
+ gap> S := OrderEndomorphisms(5);;
1017
+ gap> S := Semigroup(S, rec(acting := false));
1018
+ <transformation monoid of degree 5 with 5 generators>
1019
+ gap> RClasses(S);
1020
+ [ <Green's R-class: Transformation( [ 1, 1, 1, 1, 1 ] )>,
1021
+ <Green's R-class: Transformation( [ 1, 1, 1, 1, 2 ] )>,
1022
+ <Green's R-class: Transformation( [ 1, 1, 1, 3, 3 ] )>,
1023
+ <Green's R-class: Transformation( [ 1, 1, 1, 2, 3 ] )>,
1024
+ <Green's R-class: Transformation( [ 1, 1, 3, 3, 3 ] )>,
1025
+ <Green's R-class: Transformation( [ 1, 1, 3, 3, 4 ] )>,
1026
+ <Green's R-class: Transformation( [ 1, 1, 2, 4, 4 ] )>,
1027
+ <Green's R-class: Transformation( [ 1, 1, 2, 3, 4 ] )>,
1028
+ <Green's R-class: Transformation( [ 1, 3, 3, 3, 3 ] )>,
1029
+ <Green's R-class: Transformation( [ 1, 3, 3, 3, 4 ] )>,
1030
+ <Green's R-class: Transformation( [ 1, 2, 2, 4, 4 ] )>,
1031
+ <Green's R-class: Transformation( [ 1, 3, 3 ] )>,
1032
+ <Green's R-class: Transformation( [ 1, 2, 4, 4, 4 ] )>,
1033
+ <Green's R-class: Transformation( [ 1, 2, 4, 4 ] )>,
1034
+ <Green's R-class: Transformation( [ 1, 2, 3, 5, 5 ] )>,
1035
+ <Green's R-class: IdentityTransformation> ]
1036
+ gap> RClassReps(S);
1037
+ [ Transformation( [ 1, 1, 1, 1, 1 ] ), Transformation( [ 1, 1, 1, 1, 2 ] ),
1038
+ Transformation( [ 1, 1, 1, 3, 3 ] ), Transformation( [ 1, 1, 1, 2, 3 ] ),
1039
+ Transformation( [ 1, 1, 3, 3, 3 ] ), Transformation( [ 1, 1, 3, 3, 4 ] ),
1040
+ Transformation( [ 1, 1, 2, 4, 4 ] ), Transformation( [ 1, 1, 2, 3, 4 ] ),
1041
+ Transformation( [ 1, 3, 3, 3, 3 ] ), Transformation( [ 1, 3, 3, 3, 4 ] ),
1042
+ Transformation( [ 1, 2, 2, 4, 4 ] ), Transformation( [ 1, 3, 3 ] ),
1043
+ Transformation( [ 1, 2, 4, 4, 4 ] ), Transformation( [ 1, 2, 4, 4 ] ),
1044
+ Transformation( [ 1, 2, 3, 5, 5 ] ), IdentityTransformation ]
1045
+
1046
+ # R-reps, 1/1
1047
+ gap> S := OrderEndomorphisms(5);;
1048
+ gap> S := Semigroup(S, rec(acting := false));;
1049
+ gap> D := DClass(S, S.2 * S.1);
1050
+ <Green's D-class: Transformation( [ 1, 1, 2, 3, 4 ] )>
1051
+ gap> RClassReps(D);
1052
+ [ Transformation( [ 1, 1, 2, 3, 4 ] ), Transformation( [ 1, 2, 2, 3, 4 ] ),
1053
+ Transformation( [ 1, 2, 3, 3, 4 ] ), Transformation( [ 1, 2, 3, 4, 4 ] ) ]
1054
+ gap> LClassReps(D);
1055
+ [ Transformation( [ 1, 1, 2, 3, 4 ] ), Transformation( [ 1, 2, 3, 5, 5 ] ),
1056
+ Transformation( [ 1, 2, 4, 4 ] ), Transformation( [ 1, 3, 3 ] ),
1057
+ Transformation( [ 2, 2 ] ) ]
1058
+
1059
+ # H-classes/reps, 1/3
1060
+ gap> S := Monoid(
1061
+ > [Transformation([2, 2, 2, 2, 2, 2, 2, 2, 2, 4]),
1062
+ > Transformation([2, 2, 2, 2, 2, 2, 2, 4, 2, 4]),
1063
+ > Transformation([2, 2, 2, 2, 2, 2, 2, 4, 4, 2]),
1064
+ > Transformation([2, 2, 2, 2, 2, 2, 2, 4, 4, 4]),
1065
+ > Transformation([2, 2, 2, 2, 2, 2, 4, 4, 2, 2]),
1066
+ > Transformation([2, 2, 2, 2, 2, 2, 4, 4, 4, 2]),
1067
+ > Transformation([2, 2, 2, 2, 2, 4, 2, 2, 2, 4]),
1068
+ > Transformation([2, 2, 2, 2, 2, 4, 2, 2, 4, 4]),
1069
+ > Transformation([2, 2, 2, 2, 2, 4, 4, 2, 4, 2]),
1070
+ > Transformation([2, 2, 2, 4, 2, 2, 2, 4, 2, 2]),
1071
+ > Transformation([2, 2, 2, 4, 2, 2, 7, 4, 2, 4]),
1072
+ > Transformation([2, 2, 3, 4, 2, 4, 7, 2, 9, 4]),
1073
+ > Transformation([2, 2, 3, 4, 2, 6, 2, 2, 9, 2]),
1074
+ > Transformation([2, 2, 3, 4, 2, 6, 7, 2, 2, 4]),
1075
+ > Transformation([2, 2, 3, 4, 2, 6, 7, 2, 9, 4]),
1076
+ > Transformation([2, 2, 4, 2, 2, 2, 2, 2, 2, 4]),
1077
+ > Transformation([2, 2, 4, 2, 2, 2, 2, 4, 2, 2]),
1078
+ > Transformation([2, 2, 4, 2, 2, 2, 2, 4, 2, 4]),
1079
+ > Transformation([2, 2, 4, 2, 2, 2, 4, 4, 2, 2]),
1080
+ > Transformation([2, 2, 9, 4, 2, 4, 7, 2, 2, 4]),
1081
+ > Transformation([3, 2, 2, 2, 2, 2, 2, 9, 4, 2]),
1082
+ > Transformation([3, 2, 2, 2, 2, 2, 2, 9, 4, 4]),
1083
+ > Transformation([3, 2, 2, 2, 2, 2, 4, 9, 4, 2]),
1084
+ > Transformation([4, 2, 2, 2, 2, 2, 2, 3, 2, 2]),
1085
+ > Transformation([4, 2, 2, 2, 2, 2, 2, 3, 2, 4]),
1086
+ > Transformation([4, 2, 2, 2, 2, 2, 4, 3, 2, 2]),
1087
+ > Transformation([4, 2, 4, 2, 2, 2, 2, 3, 2, 2]),
1088
+ > Transformation([4, 2, 4, 2, 2, 2, 2, 3, 2, 4]),
1089
+ > Transformation([4, 2, 4, 2, 2, 2, 4, 3, 2, 2]),
1090
+ > Transformation([5, 5, 5, 5, 5, 5, 5, 5, 5, 5])],
1091
+ > rec(acting := false));;
1092
+ gap> HClassReps(S);
1093
+ [ Transformation( [ 5, 5, 5, 5, 5, 5, 5, 5, 5, 5 ] ),
1094
+ Transformation( [ 2, 2, 2, 2, 2, 2, 2, 2, 2, 2 ] ),
1095
+ Transformation( [ 2, 2, 2, 2, 2, 2, 2, 2, 2, 4 ] ),
1096
+ Transformation( [ 2, 2, 2, 2, 2, 2, 2, 4, 2, 4 ] ),
1097
+ Transformation( [ 2, 2, 2, 2, 2, 2, 2, 4, 4, 2 ] ),
1098
+ Transformation( [ 2, 2, 2, 2, 2, 2, 2, 4, 4, 4 ] ),
1099
+ Transformation( [ 2, 2, 2, 2, 2, 2, 4, 4, 2, 2 ] ),
1100
+ Transformation( [ 2, 2, 2, 2, 2, 2, 4, 4, 4, 2 ] ),
1101
+ Transformation( [ 2, 2, 2, 2, 2, 4, 2, 2, 2, 4 ] ),
1102
+ Transformation( [ 2, 2, 2, 2, 2, 4, 2, 2, 4, 4 ] ),
1103
+ Transformation( [ 2, 2, 2, 2, 2, 4, 4, 2, 4, 2 ] ),
1104
+ Transformation( [ 2, 2, 2, 4, 2, 2, 2, 4, 2, 2 ] ),
1105
+ Transformation( [ 2, 2, 2, 2, 2, 2, 4, 2, 2, 2 ] ),
1106
+ Transformation( [ 2, 2, 2, 4, 2, 2, 2, 4, 2, 4 ] ),
1107
+ Transformation( [ 2, 2, 2, 4, 2, 2, 7, 4, 2, 4 ] ),
1108
+ Transformation( [ 2, 2, 2, 2, 2, 2, 2, 2, 4, 2 ] ),
1109
+ Transformation( [ 2, 2, 2, 2, 2, 2, 4, 2, 4, 2 ] ),
1110
+ Transformation( [ 2, 2, 2, 4, 2, 4, 2, 2, 2, 4 ] ),
1111
+ Transformation( [ 2, 2, 2, 4, 2, 4, 7, 2, 2, 4 ] ),
1112
+ Transformation( [ 2, 2, 4, 2, 2, 2, 2, 2, 2, 2 ] ),
1113
+ Transformation( [ 2, 2, 9, 4, 2, 4, 2, 2, 2, 4 ] ),
1114
+ Transformation( [ 2, 2, 3, 4, 2, 4, 2, 2, 2, 4 ] ),
1115
+ Transformation( [ 2, 2, 3, 4, 2, 4, 2, 2, 9, 4 ] ),
1116
+ Transformation( [ 2, 2, 4, 2, 2, 2, 4, 2, 2, 2 ] ),
1117
+ Transformation( [ 2, 2, 9, 4, 2, 4, 7, 2, 2, 4 ] ),
1118
+ Transformation( [ 2, 2, 3, 4, 2, 4, 7, 2, 2, 4 ] ),
1119
+ Transformation( [ 2, 2, 3, 4, 2, 4, 7, 2, 9, 4 ] ),
1120
+ Transformation( [ 2, 2, 2, 2, 2, 4, 2, 2, 2, 2 ] ),
1121
+ Transformation( [ 2, 2, 2, 2, 2, 4, 2, 2, 4, 2 ] ),
1122
+ Transformation( [ 2, 2, 2, 4, 2, 2, 2, 2, 2, 2 ] ),
1123
+ Transformation( [ 2, 2, 2, 4, 2, 4, 2, 2, 2, 2 ] ),
1124
+ Transformation( [ 2, 2, 9, 4, 2, 4, 2, 2, 2, 2 ] ),
1125
+ Transformation( [ 2, 2, 3, 4, 2, 4, 2, 2, 2, 2 ] ),
1126
+ Transformation( [ 2, 2, 3, 4, 2, 4, 2, 2, 9, 2 ] ),
1127
+ Transformation( [ 2, 2, 3, 4, 2, 6, 2, 2, 2, 2 ] ),
1128
+ Transformation( [ 2, 2, 3, 4, 2, 6, 2, 2, 9, 2 ] ),
1129
+ Transformation( [ 2, 2, 2, 2, 2, 4, 4, 2, 2, 2 ] ),
1130
+ Transformation( [ 2, 2, 2, 4, 2, 2, 2, 2, 2, 4 ] ),
1131
+ Transformation( [ 2, 2, 2, 4, 2, 2, 7, 2, 2, 4 ] ),
1132
+ Transformation( [ 2, 2, 3, 4, 2, 6, 2, 2, 2, 4 ] ),
1133
+ Transformation( [ 2, 2, 3, 4, 2, 6, 7, 2, 2, 4 ] ),
1134
+ Transformation( [ 2, 2, 3, 4, 2, 6, 2, 2, 9, 4 ] ),
1135
+ Transformation( [ 2, 2, 3, 4, 2, 6, 7, 2, 9, 4 ] ),
1136
+ Transformation( [ 2, 2, 4, 2, 2, 2, 2, 2, 2, 4 ] ),
1137
+ Transformation( [ 2, 2, 4, 2, 2, 2, 2, 4, 2, 2 ] ),
1138
+ Transformation( [ 2, 2, 4, 2, 2, 2, 2, 4, 2, 4 ] ),
1139
+ Transformation( [ 2, 2, 4, 2, 2, 2, 4, 4, 2, 2 ] ),
1140
+ Transformation( [ 2, 2, 2, 2, 2, 2, 2, 4, 2, 2 ] ),
1141
+ Transformation( [ 4, 2, 2, 2, 2, 2, 2, 2, 2, 2 ] ),
1142
+ Transformation( [ 9, 2, 2, 2, 2, 2, 2, 2, 4, 2 ] ),
1143
+ Transformation( [ 3, 2, 2, 2, 2, 2, 2, 2, 4, 2 ] ),
1144
+ Transformation( [ 3, 2, 2, 2, 2, 2, 2, 9, 4, 2 ] ),
1145
+ Transformation( [ 2, 2, 2, 2, 2, 2, 2, 2, 4, 4 ] ),
1146
+ Transformation( [ 9, 2, 2, 2, 2, 2, 2, 2, 4, 4 ] ),
1147
+ Transformation( [ 3, 2, 2, 2, 2, 2, 2, 2, 4, 4 ] ),
1148
+ Transformation( [ 3, 2, 2, 2, 2, 2, 2, 9, 4, 4 ] ),
1149
+ Transformation( [ 9, 2, 2, 2, 2, 2, 4, 2, 4, 2 ] ),
1150
+ Transformation( [ 3, 2, 2, 2, 2, 2, 4, 2, 4, 2 ] ),
1151
+ Transformation( [ 3, 2, 2, 2, 2, 2, 4, 9, 4, 2 ] ),
1152
+ Transformation( [ 4, 2, 2, 2, 2, 2, 2, 9, 2, 2 ] ),
1153
+ Transformation( [ 4, 2, 2, 2, 2, 2, 2, 3, 2, 2 ] ),
1154
+ Transformation( [ 4, 2, 2, 2, 2, 2, 2, 2, 2, 4 ] ),
1155
+ Transformation( [ 4, 2, 2, 2, 2, 2, 2, 9, 2, 4 ] ),
1156
+ Transformation( [ 4, 2, 2, 2, 2, 2, 2, 3, 2, 4 ] ),
1157
+ Transformation( [ 4, 2, 2, 2, 2, 2, 4, 2, 2, 2 ] ),
1158
+ Transformation( [ 4, 2, 2, 2, 2, 2, 4, 9, 2, 2 ] ),
1159
+ Transformation( [ 4, 2, 2, 2, 2, 2, 4, 3, 2, 2 ] ),
1160
+ Transformation( [ 4, 2, 4, 2, 2, 2, 2, 2, 2, 2 ] ),
1161
+ Transformation( [ 4, 2, 4, 2, 2, 2, 2, 9, 2, 2 ] ),
1162
+ Transformation( [ 4, 2, 4, 2, 2, 2, 2, 3, 2, 2 ] ),
1163
+ Transformation( [ 4, 2, 4, 2, 2, 2, 2, 2, 2, 4 ] ),
1164
+ Transformation( [ 4, 2, 4, 2, 2, 2, 2, 9, 2, 4 ] ),
1165
+ Transformation( [ 4, 2, 4, 2, 2, 2, 2, 3, 2, 4 ] ),
1166
+ Transformation( [ 4, 2, 4, 2, 2, 2, 4, 2, 2, 2 ] ),
1167
+ Transformation( [ 4, 2, 4, 2, 2, 2, 4, 9, 2, 2 ] ),
1168
+ Transformation( [ 4, 2, 4, 2, 2, 2, 4, 3, 2, 2 ] ), IdentityTransformation ]
1169
+ gap> HClasses(S);
1170
+ [ <Green's H-class: Transformation( [ 5, 5, 5, 5, 5, 5, 5, 5, 5, 5 ] )>,
1171
+ <Green's H-class: Transformation( [ 2, 2, 2, 2, 2, 2, 2, 2, 2, 2 ] )>,
1172
+ <Green's H-class: Transformation( [ 2, 2, 2, 2, 2, 2, 2, 2, 2, 4 ] )>,
1173
+ <Green's H-class: Transformation( [ 2, 2, 2, 2, 2, 2, 2, 4, 2, 4 ] )>,
1174
+ <Green's H-class: Transformation( [ 2, 2, 2, 2, 2, 2, 2, 4, 4, 2 ] )>,
1175
+ <Green's H-class: Transformation( [ 2, 2, 2, 2, 2, 2, 2, 4, 4, 4 ] )>,
1176
+ <Green's H-class: Transformation( [ 2, 2, 2, 2, 2, 2, 4, 4, 2, 2 ] )>,
1177
+ <Green's H-class: Transformation( [ 2, 2, 2, 2, 2, 2, 4, 4, 4, 2 ] )>,
1178
+ <Green's H-class: Transformation( [ 2, 2, 2, 2, 2, 4, 2, 2, 2, 4 ] )>,
1179
+ <Green's H-class: Transformation( [ 2, 2, 2, 2, 2, 4, 2, 2, 4, 4 ] )>,
1180
+ <Green's H-class: Transformation( [ 2, 2, 2, 2, 2, 4, 4, 2, 4, 2 ] )>,
1181
+ <Green's H-class: Transformation( [ 2, 2, 2, 4, 2, 2, 2, 4, 2, 2 ] )>,
1182
+ <Green's H-class: Transformation( [ 2, 2, 2, 2, 2, 2, 4, 2, 2, 2 ] )>,
1183
+ <Green's H-class: Transformation( [ 2, 2, 2, 4, 2, 2, 2, 4, 2, 4 ] )>,
1184
+ <Green's H-class: Transformation( [ 2, 2, 2, 4, 2, 2, 7, 4, 2, 4 ] )>,
1185
+ <Green's H-class: Transformation( [ 2, 2, 2, 2, 2, 2, 2, 2, 4, 2 ] )>,
1186
+ <Green's H-class: Transformation( [ 2, 2, 2, 2, 2, 2, 4, 2, 4, 2 ] )>,
1187
+ <Green's H-class: Transformation( [ 2, 2, 2, 4, 2, 4, 2, 2, 2, 4 ] )>,
1188
+ <Green's H-class: Transformation( [ 2, 2, 2, 4, 2, 4, 7, 2, 2, 4 ] )>,
1189
+ <Green's H-class: Transformation( [ 2, 2, 4, 2, 2, 2, 2, 2, 2, 2 ] )>,
1190
+ <Green's H-class: Transformation( [ 2, 2, 9, 4, 2, 4, 2, 2, 2, 4 ] )>,
1191
+ <Green's H-class: Transformation( [ 2, 2, 3, 4, 2, 4, 2, 2, 2, 4 ] )>,
1192
+ <Green's H-class: Transformation( [ 2, 2, 3, 4, 2, 4, 2, 2, 9, 4 ] )>,
1193
+ <Green's H-class: Transformation( [ 2, 2, 4, 2, 2, 2, 4, 2, 2, 2 ] )>,
1194
+ <Green's H-class: Transformation( [ 2, 2, 9, 4, 2, 4, 7, 2, 2, 4 ] )>,
1195
+ <Green's H-class: Transformation( [ 2, 2, 3, 4, 2, 4, 7, 2, 2, 4 ] )>,
1196
+ <Green's H-class: Transformation( [ 2, 2, 3, 4, 2, 4, 7, 2, 9, 4 ] )>,
1197
+ <Green's H-class: Transformation( [ 2, 2, 2, 2, 2, 4, 2, 2, 2, 2 ] )>,
1198
+ <Green's H-class: Transformation( [ 2, 2, 2, 2, 2, 4, 2, 2, 4, 2 ] )>,
1199
+ <Green's H-class: Transformation( [ 2, 2, 2, 4, 2, 2, 2, 2, 2, 2 ] )>,
1200
+ <Green's H-class: Transformation( [ 2, 2, 2, 4, 2, 4, 2, 2, 2, 2 ] )>,
1201
+ <Green's H-class: Transformation( [ 2, 2, 9, 4, 2, 4, 2, 2, 2, 2 ] )>,
1202
+ <Green's H-class: Transformation( [ 2, 2, 3, 4, 2, 4, 2, 2, 2, 2 ] )>,
1203
+ <Green's H-class: Transformation( [ 2, 2, 3, 4, 2, 4, 2, 2, 9, 2 ] )>,
1204
+ <Green's H-class: Transformation( [ 2, 2, 3, 4, 2, 6, 2, 2, 2, 2 ] )>,
1205
+ <Green's H-class: Transformation( [ 2, 2, 3, 4, 2, 6, 2, 2, 9, 2 ] )>,
1206
+ <Green's H-class: Transformation( [ 2, 2, 2, 2, 2, 4, 4, 2, 2, 2 ] )>,
1207
+ <Green's H-class: Transformation( [ 2, 2, 2, 4, 2, 2, 2, 2, 2, 4 ] )>,
1208
+ <Green's H-class: Transformation( [ 2, 2, 2, 4, 2, 2, 7, 2, 2, 4 ] )>,
1209
+ <Green's H-class: Transformation( [ 2, 2, 3, 4, 2, 6, 2, 2, 2, 4 ] )>,
1210
+ <Green's H-class: Transformation( [ 2, 2, 3, 4, 2, 6, 7, 2, 2, 4 ] )>,
1211
+ <Green's H-class: Transformation( [ 2, 2, 3, 4, 2, 6, 2, 2, 9, 4 ] )>,
1212
+ <Green's H-class: Transformation( [ 2, 2, 3, 4, 2, 6, 7, 2, 9, 4 ] )>,
1213
+ <Green's H-class: Transformation( [ 2, 2, 4, 2, 2, 2, 2, 2, 2, 4 ] )>,
1214
+ <Green's H-class: Transformation( [ 2, 2, 4, 2, 2, 2, 2, 4, 2, 2 ] )>,
1215
+ <Green's H-class: Transformation( [ 2, 2, 4, 2, 2, 2, 2, 4, 2, 4 ] )>,
1216
+ <Green's H-class: Transformation( [ 2, 2, 4, 2, 2, 2, 4, 4, 2, 2 ] )>,
1217
+ <Green's H-class: Transformation( [ 2, 2, 2, 2, 2, 2, 2, 4, 2, 2 ] )>,
1218
+ <Green's H-class: Transformation( [ 4, 2, 2, 2, 2, 2, 2, 2, 2, 2 ] )>,
1219
+ <Green's H-class: Transformation( [ 9, 2, 2, 2, 2, 2, 2, 2, 4, 2 ] )>,
1220
+ <Green's H-class: Transformation( [ 3, 2, 2, 2, 2, 2, 2, 2, 4, 2 ] )>,
1221
+ <Green's H-class: Transformation( [ 3, 2, 2, 2, 2, 2, 2, 9, 4, 2 ] )>,
1222
+ <Green's H-class: Transformation( [ 2, 2, 2, 2, 2, 2, 2, 2, 4, 4 ] )>,
1223
+ <Green's H-class: Transformation( [ 9, 2, 2, 2, 2, 2, 2, 2, 4, 4 ] )>,
1224
+ <Green's H-class: Transformation( [ 3, 2, 2, 2, 2, 2, 2, 2, 4, 4 ] )>,
1225
+ <Green's H-class: Transformation( [ 3, 2, 2, 2, 2, 2, 2, 9, 4, 4 ] )>,
1226
+ <Green's H-class: Transformation( [ 9, 2, 2, 2, 2, 2, 4, 2, 4, 2 ] )>,
1227
+ <Green's H-class: Transformation( [ 3, 2, 2, 2, 2, 2, 4, 2, 4, 2 ] )>,
1228
+ <Green's H-class: Transformation( [ 3, 2, 2, 2, 2, 2, 4, 9, 4, 2 ] )>,
1229
+ <Green's H-class: Transformation( [ 4, 2, 2, 2, 2, 2, 2, 9, 2, 2 ] )>,
1230
+ <Green's H-class: Transformation( [ 4, 2, 2, 2, 2, 2, 2, 3, 2, 2 ] )>,
1231
+ <Green's H-class: Transformation( [ 4, 2, 2, 2, 2, 2, 2, 2, 2, 4 ] )>,
1232
+ <Green's H-class: Transformation( [ 4, 2, 2, 2, 2, 2, 2, 9, 2, 4 ] )>,
1233
+ <Green's H-class: Transformation( [ 4, 2, 2, 2, 2, 2, 2, 3, 2, 4 ] )>,
1234
+ <Green's H-class: Transformation( [ 4, 2, 2, 2, 2, 2, 4, 2, 2, 2 ] )>,
1235
+ <Green's H-class: Transformation( [ 4, 2, 2, 2, 2, 2, 4, 9, 2, 2 ] )>,
1236
+ <Green's H-class: Transformation( [ 4, 2, 2, 2, 2, 2, 4, 3, 2, 2 ] )>,
1237
+ <Green's H-class: Transformation( [ 4, 2, 4, 2, 2, 2, 2, 2, 2, 2 ] )>,
1238
+ <Green's H-class: Transformation( [ 4, 2, 4, 2, 2, 2, 2, 9, 2, 2 ] )>,
1239
+ <Green's H-class: Transformation( [ 4, 2, 4, 2, 2, 2, 2, 3, 2, 2 ] )>,
1240
+ <Green's H-class: Transformation( [ 4, 2, 4, 2, 2, 2, 2, 2, 2, 4 ] )>,
1241
+ <Green's H-class: Transformation( [ 4, 2, 4, 2, 2, 2, 2, 9, 2, 4 ] )>,
1242
+ <Green's H-class: Transformation( [ 4, 2, 4, 2, 2, 2, 2, 3, 2, 4 ] )>,
1243
+ <Green's H-class: Transformation( [ 4, 2, 4, 2, 2, 2, 4, 2, 2, 2 ] )>,
1244
+ <Green's H-class: Transformation( [ 4, 2, 4, 2, 2, 2, 4, 9, 2, 2 ] )>,
1245
+ <Green's H-class: Transformation( [ 4, 2, 4, 2, 2, 2, 4, 3, 2, 2 ] )>,
1246
+ <Green's H-class: IdentityTransformation> ]
1247
+ gap> D := DClass(S, S.1);;
1248
+ gap> HClassReps(D);
1249
+ [ Transformation( [ 2, 2, 2, 2, 2, 2, 2, 2, 2, 4 ] ) ]
1250
+ gap> HClasses(D);
1251
+ [ <Green's H-class: Transformation( [ 2, 2, 2, 2, 2, 2, 2, 2, 2, 4 ] )> ]
1252
+ gap> L := LClass(S, S.1);;
1253
+ gap> HClassReps(L);
1254
+ [ Transformation( [ 2, 2, 2, 2, 2, 2, 2, 2, 2, 4 ] ) ]
1255
+ gap> HClasses(L);
1256
+ [ <Green's H-class: Transformation( [ 2, 2, 2, 2, 2, 2, 2, 2, 2, 4 ] )> ]
1257
+
1258
+ # H-classes/reps, 2/3
1259
+ gap> S := Semigroup(FullTransformationMonoid(5), rec(acting := false));;
1260
+ gap> x := Transformation([1, 1, 2, 3, 4]);;
1261
+ gap> L := LClass(S, x);;
1262
+ gap> GreensHClasses(L);
1263
+ [ <Green's H-class: Transformation( [ 2, 1, 3, 4, 2 ] )>,
1264
+ <Green's H-class: Transformation( [ 1, 3, 4, 2, 2 ] )>,
1265
+ <Green's H-class: Transformation( [ 3, 4, 2, 2, 1 ] )>,
1266
+ <Green's H-class: Transformation( [ 4, 2, 2, 1, 3 ] )>,
1267
+ <Green's H-class: Transformation( [ 2, 2, 1, 3, 4 ] )>,
1268
+ <Green's H-class: Transformation( [ 2, 4, 2, 1, 3 ] )>,
1269
+ <Green's H-class: Transformation( [ 4, 2, 1, 3, 2 ] )>,
1270
+ <Green's H-class: Transformation( [ 2, 1, 3, 2, 4 ] )>,
1271
+ <Green's H-class: Transformation( [ 1, 3, 2, 4, 2 ] )>,
1272
+ <Green's H-class: Transformation( [ 3, 2, 4, 2, 1 ] )> ]
1273
+
1274
+ # NrXClasses, 1/1
1275
+ gap> S := Semigroup(SymmetricInverseMonoid(5));;
1276
+ gap> NrRClasses(S);
1277
+ 32
1278
+ gap> NrDClasses(S);
1279
+ 6
1280
+ gap> NrLClasses(S);
1281
+ 32
1282
+ gap> NrHClasses(S);
1283
+ 252
1284
+
1285
+ # NrXClasses for a D-class, 1/1
1286
+ gap> S := Semigroup(SymmetricInverseMonoid(5));;
1287
+ gap> D := DClass(S, S.2);;
1288
+ gap> NrRClasses(D);
1289
+ 1
1290
+ gap> NrLClasses(D);
1291
+ 1
1292
+ gap> R := RClass(S, S.2);;
1293
+ gap> NrHClasses(R);
1294
+ 1
1295
+ gap> L := LClass(S, S.2);;
1296
+ gap> NrHClasses(L);
1297
+ 1
1298
+
1299
+ # GreensXClasses, for an infinite semigroup, 1/1
1300
+ gap> S := FreeSemigroup(2);;
1301
+ gap> GreensLClasses(S);
1302
+ Error, no method found! For debugging hints type ?Recovery from NoMethodFound
1303
+ Error, no 2nd choice method found for `CayleyGraphDualSemigroup' on 1 argument\
1304
+ s
1305
+ gap> GreensRClasses(S);
1306
+ Error, no method found! For debugging hints type ?Recovery from NoMethodFound
1307
+ Error, no 2nd choice method found for `CayleyGraphSemigroup' on 1 arguments
1308
+ gap> GreensHClasses(S);
1309
+ Error, no method found! For debugging hints type ?Recovery from NoMethodFound
1310
+ Error, no 2nd choice method found for `CayleyGraphDualSemigroup' on 1 argument\
1311
+ s
1312
+ gap> GreensDClasses(S);
1313
+ Error, no method found! For debugging hints type ?Recovery from NoMethodFound
1314
+ Error, no 2nd choice method found for `CayleyGraphDualSemigroup' on 1 argument\
1315
+ s
1316
+
1317
+ # GreensHClasses, fail, 1/1
1318
+ gap> S := Semigroup(SymmetricInverseMonoid(3));;
1319
+ gap> H := HClass(S, S.2);;
1320
+ gap> GreensHClasses(H);
1321
+ Error, the argument is not a Green's R-, L-, or D-class
1322
+
1323
+ # GroupHClass, IsGroupHClass, IsomorphismPermGroup, 1/1
1324
+ gap> S := AsSemigroup(IsTransformationSemigroup, FullBooleanMatMonoid(4));;
1325
+ gap> S := Semigroup(S, rec(acting := false));;
1326
+ gap> D := DClass(S, S.2);
1327
+ <Green's D-class: Transformation( [ 1, 2, 1, 2, 1, 2, 3, 4, 1, 2, 5, 6, 9,
1328
+ 10 ] )>
1329
+ gap> IsRegularDClass(D);
1330
+ false
1331
+ gap> GroupHClass(D);
1332
+ fail
1333
+ gap> D := DClass(S, S.3);
1334
+ <Green's D-class: Transformation( [ 1, 1, 1, 2, 1, 3, 1, 4, 1, 1, 5, 6, 9, 11,
1335
+ 13 ] )>
1336
+ gap> GroupHClass(D);
1337
+ fail
1338
+ gap> D := DClass(S, S.1);
1339
+ <Green's D-class: Transformation( [ 1, 1, 1, 1, 1, 1, 1, 2, 1, 3, 5, 7, 9, 11,
1340
+ 13 ] )>
1341
+ gap> GroupHClass(D);
1342
+ fail
1343
+ gap> D := DClass(S, One(S));
1344
+ <Green's D-class: IdentityTransformation>
1345
+ gap> H := GroupHClass(D);
1346
+ <Green's H-class: IdentityTransformation>
1347
+ gap> IsGroupHClass(H);
1348
+ true
1349
+ gap> x := IsomorphismPermGroup(H);;
1350
+ gap> Source(x) = H;
1351
+ true
1352
+ gap> Length(GeneratorsOfGroup(Range(x)));
1353
+ 2
1354
+ gap> GeneratorsOfGroup(Range(x))[1];
1355
+ (1,2)(3,5)(4,7)(6,10)(8,13)(9,14)(11,12)(15,19)(16,20)(17,22)(18,23)(21,24)
1356
+ gap> GeneratorsOfGroup(Range(x))[2];
1357
+ (1,3,6,11)(2,4,8,14)(5,9,15,20)(7,12,17,23)(10,16,21,22)(13,18,24,19)
1358
+ gap> IsomorphismPermGroup(HClass(S, S.1));
1359
+ Error, the argument (a Green's H-class) is not a group
1360
+
1361
+ # PartialOrderOfDClasses, 1/2
1362
+ gap> S := AsSemigroup(IsTransformationSemigroup, FullBooleanMatMonoid(3));;
1363
+ gap> S := Semigroup(S, rec(acting := false));;
1364
+ gap> PartialOrderOfDClasses(S);
1365
+ <immutable digraph with 11 vertices, 25 edges>
1366
+
1367
+ # Idempotents, 1/?
1368
+ gap> S := AsSemigroup(IsTransformationSemigroup, FullPBRMonoid(1));;
1369
+ gap> S := Semigroup(S, rec(acting := false));;
1370
+ gap> Idempotents(S);
1371
+ [ Transformation( [ 1, 8, 6, 1, 1, 6, 1, 8, 13, 8, 6, 6, 13, 8, 13, 13 ] ),
1372
+ Transformation( [ 1, 2, 3, 2, 10, 6, 7, 8, 9, 10 ] ),
1373
+ Transformation( [ 6, 9, 3, 3, 3, 6, 6, 13, 9, 9, 3, 6, 13, 13, 9, 13 ] ),
1374
+ IdentityTransformation, Transformation( [ 7, 10, 11, 5, 5, 12, 7, 14, 15,
1375
+ 10, 11, 12, 16, 14, 15, 16 ] ),
1376
+ Transformation( [ 6, 13, 6, 6, 6, 6, 6, 13, 13, 13, 6, 6, 13, 13, 13, 13 ] )
1377
+ , Transformation( [ 7, 14, 12, 7, 7, 12, 7, 14, 16, 14, 12, 12, 16, 14,
1378
+ 16, 16 ] ), Transformation( [ 1, 8, 6, 8, 8, 6, 1, 8, 13, 8, 6, 6, 13,
1379
+ 8, 13, 13 ] ), Transformation( [ 6, 9, 3, 9, 9, 6, 6, 13, 9, 9, 3, 6,
1380
+ 13, 13, 9, 13 ] ), Transformation( [ 7, 10, 11, 10, 10, 12, 7, 14, 15,
1381
+ 10, 11, 12, 16, 14, 15, 16 ] ),
1382
+ Transformation( [ 12, 15, 11, 11, 11, 12, 12, 16, 15, 15, 11, 12, 16, 16,
1383
+ 15, 16 ] ), Transformation( [ 12, 16, 12, 12, 12, 12, 12, 16, 16, 16,
1384
+ 12, 12, 16, 16, 16, 16 ] ),
1385
+ Transformation( [ 6, 13, 6, 13, 13, 6, 6, 13, 13, 13, 6, 6, 13, 13, 13,
1386
+ 13 ] ), Transformation( [ 7, 14, 12, 14, 14, 12, 7, 14, 16, 14, 12, 12,
1387
+ 16, 14, 16, 16 ] ), Transformation( [ 12, 15, 11, 15, 15, 12, 12, 16,
1388
+ 15, 15, 11, 12, 16, 16, 15, 16 ] ),
1389
+ Transformation( [ 12, 16, 12, 16, 16, 12, 12, 16, 16, 16, 12, 12, 16, 16,
1390
+ 16, 16 ] ) ]
1391
+
1392
+ # Idempotents, 2/2
1393
+ gap> S := Semigroup(FullTransformationMonoid(3),
1394
+ > rec(acting := false));;
1395
+ gap> RClasses(S);;
1396
+ gap> Idempotents(S);
1397
+ [ IdentityTransformation, Transformation( [ 1, 2, 1 ] ),
1398
+ Transformation( [ 1, 2, 2 ] ), Transformation( [ 3, 2, 3 ] ),
1399
+ Transformation( [ 2, 2 ] ), Transformation( [ 1, 3, 3 ] ),
1400
+ Transformation( [ 1, 1, 1 ] ), Transformation( [ 1, 1 ] ),
1401
+ Transformation( [ 2, 2, 2 ] ), Transformation( [ 3, 3, 3 ] ) ]
1402
+
1403
+ # Idempotents, for a D-class, 1/2
1404
+ gap> S := Semigroup([Transformation([2, 3, 4, 5, 1, 5, 6, 7, 8])]);;
1405
+ gap> D := DClass(S, S.1);
1406
+ <Green's D-class: Transformation( [ 2, 3, 4, 5, 1, 5, 6, 7, 8 ] )>
1407
+ gap> IsRegularDClass(D);
1408
+ false
1409
+ gap> Idempotents(D);
1410
+ [ ]
1411
+ gap> S := Semigroup([Transformation([2, 3, 4, 5, 1, 5, 6, 7, 8])]);;
1412
+ gap> D := DClass(S, S.1);
1413
+ <Green's D-class: Transformation( [ 2, 3, 4, 5, 1, 5, 6, 7, 8 ] )>
1414
+ gap> Idempotents(S);;
1415
+ gap> Idempotents(D);
1416
+ [ ]
1417
+
1418
+ # Idempotents, for a D-class, 2/2
1419
+ gap> S := Semigroup([Transformation([2, 3, 4, 5, 1, 5, 6, 7, 8])]);;
1420
+ gap> D := DClass(S, S.1);
1421
+ <Green's D-class: Transformation( [ 2, 3, 4, 5, 1, 5, 6, 7, 8 ] )>
1422
+ gap> Idempotents(D);
1423
+ [ ]
1424
+
1425
+ # Idempotents, for a L-class, 1/3
1426
+ gap> S := Semigroup(FullTransformationMonoid(5), rec(acting := false));;
1427
+ gap> x := Transformation([1, 1, 2, 3, 4]);;
1428
+ gap> L := LClass(S, x);;
1429
+ gap> Idempotents(L);
1430
+ [ Transformation( [ 1, 2, 3, 4, 2 ] ), Transformation( [ 1, 2, 3, 4, 1 ] ),
1431
+ Transformation( [ 1, 2, 3, 4, 4 ] ), Transformation( [ 1, 2, 3, 4, 3 ] ) ]
1432
+
1433
+ # Idempotents, for a L-class, 2/3
1434
+ gap> S := AsSemigroup(IsTransformationSemigroup, FullBooleanMatMonoid(3));
1435
+ <transformation monoid of degree 8 with 5 generators>
1436
+ gap> L := LClass(S, Transformation([1, 1, 1, 2, 1, 3, 5]));;
1437
+ gap> IsRegularGreensClass(L);
1438
+ false
1439
+ gap> Idempotents(L);
1440
+ [ ]
1441
+
1442
+ # Idempotents, for a L-class, 3/3
1443
+ gap> S := PartitionMonoid(3);;
1444
+ gap> L := LClass(S, One(S));;
1445
+ gap> Idempotents(L);
1446
+ [ <block bijection: [ 1, -1 ], [ 2, -2 ], [ 3, -3 ]> ]
1447
+
1448
+ # Idempotents, for a H-class, 1/2
1449
+ gap> S := SingularTransformationSemigroup(4);;
1450
+ gap> H := HClass(S, S.1);
1451
+ <Green's H-class: Transformation( [ 1, 2, 3, 3 ] )>
1452
+ gap> Idempotents(H);
1453
+ [ Transformation( [ 1, 2, 3, 3 ] ) ]
1454
+
1455
+ # Idempotents, for a H-class, 1/2
1456
+ gap> S := AsSemigroup(IsTransformationSemigroup, FullBooleanMatMonoid(3));
1457
+ <transformation monoid of degree 8 with 5 generators>
1458
+ gap> H := HClass(S, Transformation([1, 1, 1, 2, 1, 3, 5]));;
1459
+ gap> IsGroupHClass(H);
1460
+ false
1461
+ gap> Idempotents(H);
1462
+ [ ]
1463
+
1464
+ # NrIdempotents, for a semigroup, 1/2
1465
+ gap> S := Semigroup([PartialPerm([1, 3, 4, 5, 6], [3, 1, 5, 7, 6]),
1466
+ > PartialPerm([1, 2, 3, 4, 6, 7], [2, 5, 3, 7, 4, 1]),
1467
+ > PartialPerm([1, 2, 4, 5, 6, 7], [3, 5, 7, 1, 6, 2]),
1468
+ > PartialPerm([1, 2, 4, 7], [3, 7, 6, 5])]);;
1469
+ gap> NrIdempotents(S);
1470
+ 24
1471
+
1472
+ # NrIdempotents, for a semigroup, 2/2
1473
+ gap> S := Semigroup([PartialPerm([1, 3, 4, 5, 6], [3, 1, 5, 7, 6]),
1474
+ > PartialPerm([1, 2, 3, 4, 6, 7], [2, 5, 3, 7, 4, 1]),
1475
+ > PartialPerm([1, 2, 4, 5, 6, 7], [3, 5, 7, 1, 6, 2]),
1476
+ > PartialPerm([1, 2, 4, 7], [3, 7, 6, 5])]);;
1477
+ gap> Idempotents(S);;
1478
+ gap> NrIdempotents(S);
1479
+ 24
1480
+
1481
+ # NrIdempotents, for a D-class, 1/2
1482
+ gap> S := Semigroup([Transformation([2, 3, 4, 5, 1, 5, 6, 7, 8])]);;
1483
+ gap> D := DClass(S, S.1);
1484
+ <Green's D-class: Transformation( [ 2, 3, 4, 5, 1, 5, 6, 7, 8 ] )>
1485
+ gap> IsRegularDClass(D);
1486
+ false
1487
+ gap> NrIdempotents(D);
1488
+ 0
1489
+
1490
+ # NrIdempotents, for a D-class, 2/2
1491
+ gap> S := Semigroup([Transformation([2, 3, 4, 5, 1, 5, 6, 7, 8])]);;
1492
+ gap> D := DClass(S, S.1);
1493
+ <Green's D-class: Transformation( [ 2, 3, 4, 5, 1, 5, 6, 7, 8 ] )>
1494
+ gap> NrIdempotents(D);
1495
+ 0
1496
+
1497
+ # NrIdempotents, for a L-class, 1/3
1498
+ gap> S := Semigroup(FullTransformationMonoid(5), rec(acting := false));;
1499
+ gap> x := Transformation([1, 1, 2, 3, 4]);;
1500
+ gap> L := LClass(S, x);;
1501
+ gap> NrIdempotents(L);
1502
+ 4
1503
+
1504
+ # NrIdempotents, for a L-class, 2/3
1505
+ gap> S := AsSemigroup(IsTransformationSemigroup, FullBooleanMatMonoid(3));
1506
+ <transformation monoid of degree 8 with 5 generators>
1507
+ gap> L := LClass(S, Transformation([1, 1, 1, 2, 1, 3, 5]));;
1508
+ gap> IsRegularGreensClass(L);
1509
+ false
1510
+ gap> NrIdempotents(L);
1511
+ 0
1512
+
1513
+ # NrIdempotents, for a L-class, 3/3
1514
+ gap> S := PartitionMonoid(3);;
1515
+ gap> L := LClass(S, One(S));;
1516
+ gap> NrIdempotents(L);
1517
+ 1
1518
+
1519
+ # NrIdempotents, for a H-class, 1/2
1520
+ gap> S := SingularTransformationSemigroup(4);;
1521
+ gap> H := HClass(S, S.1);
1522
+ <Green's H-class: Transformation( [ 1, 2, 3, 3 ] )>
1523
+ gap> NrIdempotents(H);
1524
+ 1
1525
+
1526
+ # NrIdempotents, for a H-class, 1/2
1527
+ gap> S := AsSemigroup(IsTransformationSemigroup, FullBooleanMatMonoid(3));
1528
+ <transformation monoid of degree 8 with 5 generators>
1529
+ gap> H := HClass(S, Transformation([1, 1, 1, 2, 1, 3, 5]));;
1530
+ gap> IsGroupHClass(H);
1531
+ false
1532
+ gap> NrIdempotents(H);
1533
+ 0
1534
+
1535
+ # NrIdempotents, for an R-class, 1/2
1536
+ gap> S := Semigroup(Transformation([2, 6, 7, 2, 6, 9, 9, 1, 1, 5]),
1537
+ > Transformation([3, 8, 1, 9, 9, 4, 10, 5, 10, 6]));;
1538
+ gap> R := First(RClasses(S),
1539
+ > x -> Transformation([9, 10, 4, 9, 10, 4, 4, 3, 3, 6]) in x);;
1540
+ gap> NrIdempotents(R);
1541
+ 0
1542
+ gap> IsRegularGreensClass(R);
1543
+ false
1544
+
1545
+ # NrIdempotents, for an R-class, 3/3
1546
+ gap> S := Semigroup(Transformation([2, 6, 7, 2, 6, 9, 9, 1, 1, 5]),
1547
+ > Transformation([3, 8, 1, 9, 9, 4, 10, 5, 10, 6]));;
1548
+ gap> R := RClass(S, Transformation([6, 9, 9, 6, 9, 1, 1, 2, 2, 6]));;
1549
+ gap> IsRegularGreensClass(R);
1550
+ true
1551
+ gap> NrIdempotents(R);
1552
+ 7
1553
+
1554
+ # IsRegularGreensClass, for an R-class, 1/1
1555
+ gap> S := Semigroup(Transformation([2, 6, 7, 2, 6, 9, 9, 1, 1, 5]),
1556
+ > Transformation([3, 8, 1, 9, 9, 4, 10, 5, 10, 6]));;
1557
+ gap> R := First(RClasses(S),
1558
+ > x -> Transformation([9, 10, 4, 9, 10, 4, 4, 3, 3, 6]) in x);;
1559
+ gap> IsRegularGreensClass(R);
1560
+ false
1561
+
1562
+ # IsRegularGreensClass, for an R-class in group of units, 1/1
1563
+ gap> S := Monoid(Transformation([2, 6, 7, 2, 6, 9, 9, 1, 1, 5]),
1564
+ > Transformation([3, 8, 1, 9, 9, 4, 10, 5, 10, 6]));;
1565
+ gap> S := AsSemigroup(IsBipartitionSemigroup, S);;
1566
+ gap> R := RClass(S, IdentityBipartition(10));;
1567
+ gap> IsRegularGreensClass(R);
1568
+ true
1569
+
1570
+ # NrRegularDClasses, 1/1
1571
+ gap> S := Semigroup([Transformation([2, 2, 1, 2, 4, 4]),
1572
+ > Transformation([2, 6, 6, 5, 1, 4]), Transformation([3, 2, 5, 5, 6, 4]),
1573
+ > Transformation([3, 5, 3, 4, 1]), Transformation([4, 2, 3, 1, 4, 2]),
1574
+ > Transformation([4, 4, 2, 6, 6, 3]), Transformation([5, 5, 5, 6, 5, 4]),
1575
+ > Transformation([6, 3, 1, 3, 1, 6])], rec(acting := false));;
1576
+ gap> NrRegularDClasses(S);
1577
+ 6
1578
+
1579
+ # ViewString, PrintString, for Green's relations, 1/1
1580
+ gap> S := FullTransformationMonoid(3);
1581
+ <full transformation monoid of degree 3>
1582
+ gap> GreensRRelation(S);
1583
+ <Green's R-relation of <full transformation monoid of degree 3>>
1584
+ gap> GreensLRelation(S);
1585
+ <Green's L-relation of <full transformation monoid of degree 3>>
1586
+ gap> GreensHRelation(S);
1587
+ <Green's H-relation of <full transformation monoid of degree 3>>
1588
+ gap> GreensDRelation(S);
1589
+ <Green's D-relation of <full transformation monoid of degree 3>>
1590
+ gap> GreensJRelation(S);
1591
+ <Green's D-relation of <full transformation monoid of degree 3>>
1592
+ gap> PrintString((GreensRRelation(S)));
1593
+ "\>\>\>GreensRRelation\<(\>\nMonoid( \>[ Transformation( [ 2, 3, 1 ] ), Transf\
1594
+ ormation( [ 2, 1 ] ), Transformation( [ 1, 2, 1 ] ) ]\<\> )\<\<)\<\<"
1595
+ gap> PrintString((GreensLRelation(S)));
1596
+ "\>\>\>GreensLRelation\<(\>\nMonoid( \>[ Transformation( [ 2, 3, 1 ] ), Transf\
1597
+ ormation( [ 2, 1 ] ), Transformation( [ 1, 2, 1 ] ) ]\<\> )\<\<)\<\<"
1598
+ gap> PrintString((GreensHRelation(S)));
1599
+ "\>\>\>GreensHRelation\<(\>\nMonoid( \>[ Transformation( [ 2, 3, 1 ] ), Transf\
1600
+ ormation( [ 2, 1 ] ), Transformation( [ 1, 2, 1 ] ) ]\<\> )\<\<)\<\<"
1601
+ gap> PrintString((GreensDRelation(S)));
1602
+ "\>\>\>GreensDRelation\<(\>\nMonoid( \>[ Transformation( [ 2, 3, 1 ] ), Transf\
1603
+ ormation( [ 2, 1 ] ), Transformation( [ 1, 2, 1 ] ) ]\<\> )\<\<)\<\<"
1604
+
1605
+ # ViewString, PrintString, for Green's classes, 1/1
1606
+ gap> S := FullBooleanMatMonoid(3);;
1607
+ gap> PrintString(RClass(S, S.2));
1608
+ "\>\>\>GreensRClassOfElement\<(\>Monoid( \>\>\>Matrix(\<\>IsBooleanMat\<, \>[\
1609
+ \>\>[0, 1, 0]\<, \<\>\>[1, 0, 0]\<, \<\>\>[0, 0, 1]\<\<]\<)\<\>\>\>Matrix(\<\>\
1610
+ IsBooleanMat\<, \>[\>\>[0, 1, 0]\<, \<\>\>[0, 0, 1]\<, \<\>\>[1, 0, 0]\<\<]\<)\
1611
+ \<\<, \>\>\>Matrix(\<\>IsBooleanMat\<, \>[\>\>[1, 0, 0]\<, \<\>\>[0, 1, 0]\<, \
1612
+ \<\>\>[1, 0, 1]\<\<]\<)\<\<, \>\>\>Matrix(\<\>IsBooleanMat\<, \>[\>\>[1, 0, 0]\
1613
+ \<, \<\>\>[0, 1, 0]\<, \<\>\>[0, 0, 0]\<\<]\<)\<\<, \>\>\>Matrix(\<\>IsBoolean\
1614
+ Mat\<, \>[\>\>[1, 1, 0]\<, \<\>\>[1, 0, 1]\<, \<\>\>[0, 1, 1]\<\<]\<)\<\<\<\> \
1615
+ )\<,\< \>\>\>Matrix(\<\>IsBooleanMat\<, \>[\>\>[0, 1, 0]\<, \<\>\>[0, 0, 1]\<,\
1616
+ \<\>\>[1, 0, 0]\<\<]\<)\<\<)\<\<"
1617
+ gap> PrintString(LClass(S, S.2));
1618
+ "\>\>\>GreensLClassOfElement\<(\>Monoid( \>\>\>Matrix(\<\>IsBooleanMat\<, \>[\
1619
+ \>\>[0, 1, 0]\<, \<\>\>[1, 0, 0]\<, \<\>\>[0, 0, 1]\<\<]\<)\<\>\>\>Matrix(\<\>\
1620
+ IsBooleanMat\<, \>[\>\>[0, 1, 0]\<, \<\>\>[0, 0, 1]\<, \<\>\>[1, 0, 0]\<\<]\<)\
1621
+ \<\<, \>\>\>Matrix(\<\>IsBooleanMat\<, \>[\>\>[1, 0, 0]\<, \<\>\>[0, 1, 0]\<, \
1622
+ \<\>\>[1, 0, 1]\<\<]\<)\<\<, \>\>\>Matrix(\<\>IsBooleanMat\<, \>[\>\>[1, 0, 0]\
1623
+ \<, \<\>\>[0, 1, 0]\<, \<\>\>[0, 0, 0]\<\<]\<)\<\<, \>\>\>Matrix(\<\>IsBoolean\
1624
+ Mat\<, \>[\>\>[1, 1, 0]\<, \<\>\>[1, 0, 1]\<, \<\>\>[0, 1, 1]\<\<]\<)\<\<\<\> \
1625
+ )\<,\< \>\>\>Matrix(\<\>IsBooleanMat\<, \>[\>\>[0, 1, 0]\<, \<\>\>[0, 0, 1]\<,\
1626
+ \<\>\>[1, 0, 0]\<\<]\<)\<\<)\<\<"
1627
+ gap> PrintString(HClass(S, S.2));
1628
+ "\>\>\>GreensHClassOfElement\<(\>Monoid( \>\>\>Matrix(\<\>IsBooleanMat\<, \>[\
1629
+ \>\>[0, 1, 0]\<, \<\>\>[1, 0, 0]\<, \<\>\>[0, 0, 1]\<\<]\<)\<\>\>\>Matrix(\<\>\
1630
+ IsBooleanMat\<, \>[\>\>[0, 1, 0]\<, \<\>\>[0, 0, 1]\<, \<\>\>[1, 0, 0]\<\<]\<)\
1631
+ \<\<, \>\>\>Matrix(\<\>IsBooleanMat\<, \>[\>\>[1, 0, 0]\<, \<\>\>[0, 1, 0]\<, \
1632
+ \<\>\>[1, 0, 1]\<\<]\<)\<\<, \>\>\>Matrix(\<\>IsBooleanMat\<, \>[\>\>[1, 0, 0]\
1633
+ \<, \<\>\>[0, 1, 0]\<, \<\>\>[0, 0, 0]\<\<]\<)\<\<, \>\>\>Matrix(\<\>IsBoolean\
1634
+ Mat\<, \>[\>\>[1, 1, 0]\<, \<\>\>[1, 0, 1]\<, \<\>\>[0, 1, 1]\<\<]\<)\<\<\<\> \
1635
+ )\<,\< \>\>\>Matrix(\<\>IsBooleanMat\<, \>[\>\>[0, 1, 0]\<, \<\>\>[0, 0, 1]\<,\
1636
+ \<\>\>[1, 0, 0]\<\<]\<)\<\<)\<\<"
1637
+ gap> PrintString(DClass(S, S.2));
1638
+ "\>\>\>GreensDClassOfElement\<(\>Monoid( \>\>\>Matrix(\<\>IsBooleanMat\<, \>[\
1639
+ \>\>[0, 1, 0]\<, \<\>\>[1, 0, 0]\<, \<\>\>[0, 0, 1]\<\<]\<)\<\>\>\>Matrix(\<\>\
1640
+ IsBooleanMat\<, \>[\>\>[0, 1, 0]\<, \<\>\>[0, 0, 1]\<, \<\>\>[1, 0, 0]\<\<]\<)\
1641
+ \<\<, \>\>\>Matrix(\<\>IsBooleanMat\<, \>[\>\>[1, 0, 0]\<, \<\>\>[0, 1, 0]\<, \
1642
+ \<\>\>[1, 0, 1]\<\<]\<)\<\<, \>\>\>Matrix(\<\>IsBooleanMat\<, \>[\>\>[1, 0, 0]\
1643
+ \<, \<\>\>[0, 1, 0]\<, \<\>\>[0, 0, 0]\<\<]\<)\<\<, \>\>\>Matrix(\<\>IsBoolean\
1644
+ Mat\<, \>[\>\>[1, 1, 0]\<, \<\>\>[1, 0, 1]\<, \<\>\>[0, 1, 1]\<\<]\<)\<\<\<\> \
1645
+ )\<,\< \>\>\>Matrix(\<\>IsBooleanMat\<, \>[\>\>[0, 1, 0]\<, \<\>\>[0, 0, 1]\<,\
1646
+ \<\>\>[1, 0, 0]\<\<]\<)\<\<)\<\<"
1647
+
1648
+ # Test NrXClasses for an CanUseFroidurePin semigroup
1649
+ gap> S := RegularBooleanMatMonoid(3);;
1650
+ gap> NrLClasses(S);
1651
+ 54
1652
+ gap> NrRClasses(S);
1653
+ 54
1654
+ gap> NrHClasses(S);
1655
+ 402
1656
+ gap> NrDClasses(S);
1657
+ 10
1658
+
1659
+ # Test GreensLClasses for a D-class of an CanUseFroidurePin semigroup
1660
+ gap> S := RegularBooleanMatMonoid(3);;
1661
+ gap> D := DClass(S, S.3 * S.4);
1662
+ <Green's D-class: Matrix(IsBooleanMat, [[1, 0, 0], [0, 1, 0], [1, 0, 0]])>
1663
+ gap> GreensLClasses(D);
1664
+ [ <Green's L-class: Matrix(IsBooleanMat, [[0, 1, 0], [1, 0, 0], [0, 0, 0]])>,
1665
+ <Green's L-class: Matrix(IsBooleanMat, [[0, 1, 0], [0, 0, 1], [0, 0, 0]])>,
1666
+ <Green's L-class: Matrix(IsBooleanMat, [[0, 0, 1], [1, 0, 0], [0, 0, 0]])>,
1667
+ <Green's L-class: Matrix(IsBooleanMat, [[1, 0, 1], [0, 1, 0], [1, 1, 1]])>,
1668
+ <Green's L-class: Matrix(IsBooleanMat, [[0, 1, 1], [1, 0, 0], [1, 1, 1]])>,
1669
+ <Green's L-class: Matrix(IsBooleanMat, [[1, 1, 0], [0, 0, 1], [1, 1, 1]])>,
1670
+ <Green's L-class: Matrix(IsBooleanMat, [[1, 1, 0], [1, 0, 1], [1, 1, 1]])>,
1671
+ <Green's L-class: Matrix(IsBooleanMat, [[1, 1, 0], [0, 1, 1], [1, 1, 1]])>,
1672
+ <Green's L-class: Matrix(IsBooleanMat, [[0, 1, 1], [1, 0, 1], [1, 1, 1]])> ]
1673
+
1674
+ # Test GreensXClasses for an infinite CanUseFroidurePin semigroup
1675
+ gap> S := Semigroup(Matrix(IsMaxPlusMatrix, [[0, 2], [-1, 0]]));;
1676
+ gap> GreensLClasses(S);
1677
+ Error, the argument (a semigroup) is not finite
1678
+ gap> GreensRClasses(S);
1679
+ Error, the argument (a semigroup) is not finite
1680
+ gap> GreensHClasses(S);
1681
+ Error, the argument (a semigroup) is not finite
1682
+ gap> GreensDClasses(S);
1683
+ Error, the argument (a semigroup) is not finite
1684
+ gap> GreensJClasses(S);
1685
+ Error, no method found! For debugging hints type ?Recovery from NoMethodFound
1686
+ Error, no 2nd choice method found for `GreensJClasses' on 1 arguments
1687
+
1688
+ # IsomorphismPermGroup for a group H-class of a matrix semigroup
1689
+ gap> S := Semigroup([Matrix(GF(3), [[Z(3) ^ 0, Z(3) ^ 0], [Z(3), Z(3) ^ 0]]),
1690
+ > Matrix(GF(3), [[Z(3) ^ 0, Z(3) ^ 0], [0 * Z(3), 0 * Z(3)]])], rec(acting :=
1691
+ > false));
1692
+ <semigroup of 2x2 matrices over GF(3) with 2 generators>
1693
+ gap> x := Matrix(GF(3), [[Z(3) ^ 0, Z(3) ^ 0], [Z(3), Z(3) ^ 0]]);
1694
+ [ [ Z(3)^0, Z(3)^0 ], [ Z(3), Z(3)^0 ] ]
1695
+ gap> D := DClass(S, x);
1696
+ <Green's D-class: <matrix object of dimensions 2x2 over GF(3)>>
1697
+ gap> map := IsomorphismPermGroup(GroupHClass(D));;
1698
+ gap> Range(map);
1699
+ Group([ (1,2,3,4,5,6,7,8) ])
1700
+ gap> Matrix(GF(3), [[Z(3) ^ 0, Z(3) ^ 0], [0 * Z(3), 0 * Z(3)]]) ^ map;
1701
+ Error, the argument does not belong to the domain of the function
1702
+ gap> (1, 3, 2) ^ InverseGeneralMapping(map);
1703
+ Error, the argument does not belong to the domain of the function
1704
+ gap> () ^ InverseGeneralMapping(map);
1705
+ [ [ Z(3)^0, 0*Z(3) ], [ 0*Z(3), Z(3)^0 ] ]
1706
+
1707
+ # PartialOrderOfL/RClasses: 1
1708
+ gap> S := Semigroup([
1709
+ > PBR([[-1], []], [[], [-2, -1, 1, 2]]),
1710
+ > PBR([[-2, -1, 1, 2], [-2, -1, 2]], [[-2, -1], [-2, 1, 2]]),
1711
+ > PBR([[-1], [1]], [[-1], [-2]])]);
1712
+ <pbr semigroup of degree 2 with 3 generators>
1713
+ gap> PartialOrderOfLClasses(S);
1714
+ <immutable digraph with 8 vertices, 8 edges>
1715
+ gap> PartialOrderOfRClasses(S);
1716
+ <immutable digraph with 10 vertices, 9 edges>
1717
+
1718
+ # PartialOrderOfL/RClasses: 1
1719
+ gap> S := FullTransformationMonoid(3);
1720
+ <full transformation monoid of degree 3>
1721
+ gap> D := PartialOrderOfLClasses(S);
1722
+ <immutable digraph with 7 vertices, 9 edges>
1723
+ gap> IsIsomorphicDigraph(D, DigraphFromDigraph6String("+F?OGC@OoK?"));
1724
+ true
1725
+ gap> D := PartialOrderOfRClasses(S);
1726
+ <immutable digraph with 5 vertices, 6 edges>
1727
+ gap> IsIsomorphicDigraph(D, DigraphFromDigraph6String("+D[CGO?"));
1728
+ true
1729
+
1730
+ # GreensMultipliers for non-acting semigroup
1731
+ gap> CheckLeftGreensMultiplier1 := function(S)
1732
+ > local L, a, b;
1733
+ > for L in LClasses(S) do
1734
+ > for a in L do
1735
+ > for b in L do
1736
+ > if LeftGreensMultiplierNC(S, a, b) * a <> b then
1737
+ > return [a, b];
1738
+ > fi;
1739
+ > od;
1740
+ > od;
1741
+ > od;
1742
+ > return true;
1743
+ > end;;
1744
+ gap> CheckLeftGreensMultiplier2 := function(S)
1745
+ > local L, a, b;
1746
+ > for L in LClasses(S) do
1747
+ > for a in L do
1748
+ > for b in L do
1749
+ > if Set(RClass(S, a), x -> LeftGreensMultiplierNC(S, a, b) * x) <> Set(RClass(S, b)) then
1750
+ > return [a, b];
1751
+ > fi;
1752
+ > od;
1753
+ > od;
1754
+ > od;
1755
+ > return true;
1756
+ > end;;
1757
+ gap> CheckRightGreensMultiplier1 := function(S)
1758
+ > local R, a, b;
1759
+ > for R in RClasses(S) do
1760
+ > for a in R do
1761
+ > for b in R do
1762
+ > if a * RightGreensMultiplierNC(S, a, b) <> b then
1763
+ > return [a, b];
1764
+ > fi;
1765
+ > od;
1766
+ > od;
1767
+ > od;
1768
+ > return true;
1769
+ > end;;
1770
+ gap> CheckRightGreensMultiplier2 := function(S)
1771
+ > local R, a, b;
1772
+ > for R in RClasses(S) do
1773
+ > for a in R do
1774
+ > for b in R do
1775
+ > if Set(LClass(S, a), x -> x * RightGreensMultiplierNC(S, a, b))
1776
+ > <> Set(LClass(S, b)) then
1777
+ > return [a, b];
1778
+ > fi;
1779
+ > od;
1780
+ > od;
1781
+ > od;
1782
+ > return true;
1783
+ > end;;
1784
+ gap> F := FreeMonoid("a", "b", "c", "d");;
1785
+ gap> a := F.1;; b := F.2;; c := F.3;; d := F.4;;
1786
+ gap> S := F /
1787
+ > [[a ^ 2, a], [a * b, b], [a * c, c], [a * d, d], [b * a, b], [c * a, c],
1788
+ > [d * a, d], [b ^ 3, b], [b * c ^ 2, b * c * b], [b * c * d, b ^ 2 * d],
1789
+ > [b * d ^ 2, b ^ 2 * c], [c * b * c, b ^ 2 * c], [c ^ 2 * b, c * b ^ 2],
1790
+ > [c ^ 3, c], [c * d ^ 2, c], [d * b * c, b * c], [d * c * b, d * b ^ 2],
1791
+ > [d * c ^ 2, d], [d ^ 3, d], [b * c * b ^ 2, b * c], [c * b ^ 2 * d, b * d],
1792
+ > [c * d * b * d, d * b * d], [(c * d) ^ 2, c ^ 2 * d * c],
1793
+ > [d * b ^ 2 * d, b ^ 2 * d], [d ^ 2 * c * d, (d * c) ^ 2],
1794
+ > [b * (b * d) ^ 2, (b * d) ^ 2], [b * c * b * d * c, b ^ 2 * d * c * d],
1795
+ > [(b * d) ^ 2 * c, (b * d) ^ 2], [b * (d * c) ^ 2, b ^ 2 * c * b * d],
1796
+ > [c * (b * d) ^ 2, (b * d) ^ 2], [c * d * b ^ 2 * c, d * b ^ 2 * c],
1797
+ > [(d * b) ^ 2 * d, (b * d) ^ 2], [b ^ 2 * d * b ^ 2 * c, b * d * b ^ 2 * c],
1798
+ > [b * c * b * d * b ^ 2, b ^ 2 * d * c * d * b],
1799
+ > [(b * d) ^ 2 * b ^ 2, (b * d) ^ 2 * b],
1800
+ > [b * d * c * d * b ^ 2, b ^ 2 * c * b * d * b],
1801
+ > [c * b * d * b ^ 2 * c, b * d * b ^ 2 * c],
1802
+ > [(d * b) ^ 2 * b * c, b * d * b ^ 2 * c],
1803
+ > [b * d * b ^ 2 * c * b * d, b * d * b ^ 2 * c * b], [a, b]];
1804
+ <fp monoid with 4 generators and 40 relations of length 276>
1805
+ gap> CheckLeftGreensMultiplier1(S);
1806
+ true
1807
+ gap> CheckLeftGreensMultiplier2(S);
1808
+ true
1809
+ gap> CheckRightGreensMultiplier1(S);
1810
+ true
1811
+ gap> CheckRightGreensMultiplier2(S);
1812
+ true
1813
+ gap> S := Semigroup(Bipartition([[1, 2, 3, 4, 5, -1], [-2, -5], [-3, -4]]),
1814
+ > Bipartition([[1, 2, 5, -5], [3, -1], [4, -2, -3, -4]]),
1815
+ > Bipartition([[1, -4, -5], [2, 3, 4, 5], [-1, -2, -3]]),
1816
+ > Bipartition([[1, 2, 3, -2], [4, -1], [5, -5], [-3, -4]]),
1817
+ > Bipartition([[1, 2, 4, 5, -1, -2, -3, -5], [3], [-4]]));
1818
+ <bipartition semigroup of degree 5 with 5 generators>
1819
+ gap> S := Image(EmbeddingFpMonoid(AsSemigroup(IsFpSemigroup, S)));;
1820
+ gap> CheckLeftGreensMultiplier1(S);
1821
+ true
1822
+ gap> CheckLeftGreensMultiplier2(S);
1823
+ true
1824
+ gap> CheckRightGreensMultiplier1(S);
1825
+ true
1826
+ gap> CheckRightGreensMultiplier2(S);
1827
+ true
1828
+
1829
+ #
1830
+ gap> SEMIGROUPS.StopTest();
1831
+ gap> STOP_TEST("Semigroups package: standard/greens/froidure-pin.tst");