passagemath-gap-pkg-semigroups 10.6.29__cp312-abi3-musllinux_1_2_x86_64.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.
- gap/pkg/semigroups/CHANGELOG.md +1699 -0
- gap/pkg/semigroups/CONTRIBUTING.md +91 -0
- gap/pkg/semigroups/GNUmakefile +110 -0
- gap/pkg/semigroups/GNUmakefile.in +110 -0
- gap/pkg/semigroups/GPL +674 -0
- gap/pkg/semigroups/LICENSE +16 -0
- gap/pkg/semigroups/Makefile +26 -0
- gap/pkg/semigroups/Makefile.gappkg +225 -0
- gap/pkg/semigroups/PackageInfo.g +529 -0
- gap/pkg/semigroups/README.md +102 -0
- gap/pkg/semigroups/VERSIONS +112 -0
- gap/pkg/semigroups/aclocal.m4 +375 -0
- gap/pkg/semigroups/autogen.sh +25 -0
- gap/pkg/semigroups/bin/x86_64-pc-linux-musl-default64-kv10/semigroups.so +0 -0
- gap/pkg/semigroups/config.guess +1807 -0
- gap/pkg/semigroups/config.log +1068 -0
- gap/pkg/semigroups/config.status +1133 -0
- gap/pkg/semigroups/config.sub +1960 -0
- gap/pkg/semigroups/configure +9742 -0
- gap/pkg/semigroups/configure.ac +71 -0
- gap/pkg/semigroups/data/doc/greens.pickle +1 -0
- gap/pkg/semigroups/data/gens/fullbool-8.pickle.gz +0 -0
- gap/pkg/semigroups/data/gens/fullbool.pickle.gz +0 -0
- gap/pkg/semigroups/data/gens/hall.pickle.gz +0 -0
- gap/pkg/semigroups/data/gens/reflex-6.pickle.gz +0 -0
- gap/pkg/semigroups/data/gens/reflex.pickle.gz +0 -0
- gap/pkg/semigroups/data/tst/bipart4 +10 -0
- gap/pkg/semigroups/data/tst/pperm10 +1 -0
- gap/pkg/semigroups/data/tst/tables.gz +0 -0
- gap/pkg/semigroups/data/tst/testdata +1 -0
- gap/pkg/semigroups/data/tst/testinstall.pickle +1 -0
- gap/pkg/semigroups/data/tst/trans3 +7 -0
- gap/pkg/semigroups/data/tst/trans3-old +7 -0
- gap/pkg/semigroups/environment.yml +7 -0
- gap/pkg/semigroups/gap/attributes/acting.gd +15 -0
- gap/pkg/semigroups/gap/attributes/acting.gi +297 -0
- gap/pkg/semigroups/gap/attributes/attr.gd +91 -0
- gap/pkg/semigroups/gap/attributes/attr.gi +1214 -0
- gap/pkg/semigroups/gap/attributes/dual.gd +25 -0
- gap/pkg/semigroups/gap/attributes/dual.gi +209 -0
- gap/pkg/semigroups/gap/attributes/factor.gd +17 -0
- gap/pkg/semigroups/gap/attributes/factor.gi +453 -0
- gap/pkg/semigroups/gap/attributes/homomorph.gd +84 -0
- gap/pkg/semigroups/gap/attributes/homomorph.gi +591 -0
- gap/pkg/semigroups/gap/attributes/inverse.gd +38 -0
- gap/pkg/semigroups/gap/attributes/inverse.gi +708 -0
- gap/pkg/semigroups/gap/attributes/isomorph.gd +16 -0
- gap/pkg/semigroups/gap/attributes/isomorph.gi +377 -0
- gap/pkg/semigroups/gap/attributes/isorms.gd +49 -0
- gap/pkg/semigroups/gap/attributes/isorms.gi +1383 -0
- gap/pkg/semigroups/gap/attributes/maximal.gd +16 -0
- gap/pkg/semigroups/gap/attributes/maximal.gi +1876 -0
- gap/pkg/semigroups/gap/attributes/properties.gd +109 -0
- gap/pkg/semigroups/gap/attributes/properties.gi +1658 -0
- gap/pkg/semigroups/gap/attributes/rms-translat.gd +39 -0
- gap/pkg/semigroups/gap/attributes/rms-translat.gi +1078 -0
- gap/pkg/semigroups/gap/attributes/semifp.gd +12 -0
- gap/pkg/semigroups/gap/attributes/semifp.gi +84 -0
- gap/pkg/semigroups/gap/attributes/translat.gd +474 -0
- gap/pkg/semigroups/gap/attributes/translat.gi +1779 -0
- gap/pkg/semigroups/gap/congruences/cong.gd +154 -0
- gap/pkg/semigroups/gap/congruences/cong.gi +351 -0
- gap/pkg/semigroups/gap/congruences/conginv.gd +38 -0
- gap/pkg/semigroups/gap/congruences/conginv.gi +589 -0
- gap/pkg/semigroups/gap/congruences/conglatt.gd +101 -0
- gap/pkg/semigroups/gap/congruences/conglatt.gi +886 -0
- gap/pkg/semigroups/gap/congruences/congpairs.gd +21 -0
- gap/pkg/semigroups/gap/congruences/congpairs.gi +272 -0
- gap/pkg/semigroups/gap/congruences/congpart.gd +90 -0
- gap/pkg/semigroups/gap/congruences/congpart.gi +449 -0
- gap/pkg/semigroups/gap/congruences/congrees.gd +20 -0
- gap/pkg/semigroups/gap/congruences/congrees.gi +313 -0
- gap/pkg/semigroups/gap/congruences/congrms.gd +54 -0
- gap/pkg/semigroups/gap/congruences/congrms.gi +1467 -0
- gap/pkg/semigroups/gap/congruences/congsemigraph.gd +28 -0
- gap/pkg/semigroups/gap/congruences/congsemigraph.gi +289 -0
- gap/pkg/semigroups/gap/congruences/congsimple.gd +27 -0
- gap/pkg/semigroups/gap/congruences/congsimple.gi +236 -0
- gap/pkg/semigroups/gap/congruences/conguniv.gd +20 -0
- gap/pkg/semigroups/gap/congruences/conguniv.gi +271 -0
- gap/pkg/semigroups/gap/congruences/congwordgraph.gd +21 -0
- gap/pkg/semigroups/gap/congruences/congwordgraph.gi +250 -0
- gap/pkg/semigroups/gap/elements/bipart.gd +71 -0
- gap/pkg/semigroups/gap/elements/bipart.gi +995 -0
- gap/pkg/semigroups/gap/elements/blocks.gd +31 -0
- gap/pkg/semigroups/gap/elements/blocks.gi +134 -0
- gap/pkg/semigroups/gap/elements/boolmat.gd +74 -0
- gap/pkg/semigroups/gap/elements/boolmat.gi +726 -0
- gap/pkg/semigroups/gap/elements/elements.gd +11 -0
- gap/pkg/semigroups/gap/elements/elements.gi +121 -0
- gap/pkg/semigroups/gap/elements/ffmat.gd +71 -0
- gap/pkg/semigroups/gap/elements/ffmat.gi +311 -0
- gap/pkg/semigroups/gap/elements/maxplusmat.gd +131 -0
- gap/pkg/semigroups/gap/elements/maxplusmat.gi +782 -0
- gap/pkg/semigroups/gap/elements/pbr.gd +51 -0
- gap/pkg/semigroups/gap/elements/pbr.gi +740 -0
- gap/pkg/semigroups/gap/elements/pperm.gd +11 -0
- gap/pkg/semigroups/gap/elements/pperm.gi +14 -0
- gap/pkg/semigroups/gap/elements/semiringmat.gd +136 -0
- gap/pkg/semigroups/gap/elements/semiringmat.gi +717 -0
- gap/pkg/semigroups/gap/elements/star.gd +21 -0
- gap/pkg/semigroups/gap/elements/star.gi +21 -0
- gap/pkg/semigroups/gap/elements/trans.gd +13 -0
- gap/pkg/semigroups/gap/elements/trans.gi +50 -0
- gap/pkg/semigroups/gap/fp/freeband.gd +22 -0
- gap/pkg/semigroups/gap/fp/freeband.gi +502 -0
- gap/pkg/semigroups/gap/fp/freeinverse.gd +30 -0
- gap/pkg/semigroups/gap/fp/freeinverse.gi +465 -0
- gap/pkg/semigroups/gap/fp/tietze.gd +89 -0
- gap/pkg/semigroups/gap/fp/tietze.gi +1578 -0
- gap/pkg/semigroups/gap/fp/word.gd +15 -0
- gap/pkg/semigroups/gap/fp/word.gi +67 -0
- gap/pkg/semigroups/gap/greens/acting-inverse.gi +774 -0
- gap/pkg/semigroups/gap/greens/acting-regular.gi +553 -0
- gap/pkg/semigroups/gap/greens/acting.gd +81 -0
- gap/pkg/semigroups/gap/greens/acting.gi +2433 -0
- gap/pkg/semigroups/gap/greens/froidure-pin.gd +25 -0
- gap/pkg/semigroups/gap/greens/froidure-pin.gi +741 -0
- gap/pkg/semigroups/gap/greens/generic.gd +117 -0
- gap/pkg/semigroups/gap/greens/generic.gi +630 -0
- gap/pkg/semigroups/gap/ideals/acting.gd +17 -0
- gap/pkg/semigroups/gap/ideals/acting.gi +1155 -0
- gap/pkg/semigroups/gap/ideals/froidure-pin.gd +11 -0
- gap/pkg/semigroups/gap/ideals/froidure-pin.gi +105 -0
- gap/pkg/semigroups/gap/ideals/ideals.gd +45 -0
- gap/pkg/semigroups/gap/ideals/ideals.gi +442 -0
- gap/pkg/semigroups/gap/ideals/lambda-rho.gd +16 -0
- gap/pkg/semigroups/gap/ideals/lambda-rho.gi +614 -0
- gap/pkg/semigroups/gap/libsemigroups/cong.gd +24 -0
- gap/pkg/semigroups/gap/libsemigroups/cong.gi +431 -0
- gap/pkg/semigroups/gap/libsemigroups/fpsemi.gd +16 -0
- gap/pkg/semigroups/gap/libsemigroups/fpsemi.gi +53 -0
- gap/pkg/semigroups/gap/libsemigroups/froidure-pin.gd +17 -0
- gap/pkg/semigroups/gap/libsemigroups/froidure-pin.gi +945 -0
- gap/pkg/semigroups/gap/libsemigroups/sims1.gd +38 -0
- gap/pkg/semigroups/gap/libsemigroups/sims1.gi +308 -0
- gap/pkg/semigroups/gap/main/acting.gd +36 -0
- gap/pkg/semigroups/gap/main/acting.gi +779 -0
- gap/pkg/semigroups/gap/main/froidure-pin.gd +72 -0
- gap/pkg/semigroups/gap/main/froidure-pin.gi +655 -0
- gap/pkg/semigroups/gap/main/graded.gd +26 -0
- gap/pkg/semigroups/gap/main/graded.gi +355 -0
- gap/pkg/semigroups/gap/main/lambda-rho.gd +29 -0
- gap/pkg/semigroups/gap/main/lambda-rho.gi +514 -0
- gap/pkg/semigroups/gap/main/orbits.gd +24 -0
- gap/pkg/semigroups/gap/main/orbits.gi +512 -0
- gap/pkg/semigroups/gap/main/semiact.gd +20 -0
- gap/pkg/semigroups/gap/main/semiact.gi +821 -0
- gap/pkg/semigroups/gap/main/setup.gd +61 -0
- gap/pkg/semigroups/gap/main/setup.gi +1094 -0
- gap/pkg/semigroups/gap/obsolete.gd +9 -0
- gap/pkg/semigroups/gap/obsolete.gi +14 -0
- gap/pkg/semigroups/gap/options.g +55 -0
- gap/pkg/semigroups/gap/semigroups/grpperm.gd +12 -0
- gap/pkg/semigroups/gap/semigroups/grpperm.gi +177 -0
- gap/pkg/semigroups/gap/semigroups/semibipart.gd +28 -0
- gap/pkg/semigroups/gap/semigroups/semibipart.gi +570 -0
- gap/pkg/semigroups/gap/semigroups/semiboolmat.gd +20 -0
- gap/pkg/semigroups/gap/semigroups/semiboolmat.gi +104 -0
- gap/pkg/semigroups/gap/semigroups/semicons.gd +52 -0
- gap/pkg/semigroups/gap/semigroups/semicons.gi +1194 -0
- gap/pkg/semigroups/gap/semigroups/semidp.gd +13 -0
- gap/pkg/semigroups/gap/semigroups/semidp.gi +509 -0
- gap/pkg/semigroups/gap/semigroups/semieunit.gd +126 -0
- gap/pkg/semigroups/gap/semigroups/semieunit.gi +889 -0
- gap/pkg/semigroups/gap/semigroups/semiex.gd +104 -0
- gap/pkg/semigroups/gap/semigroups/semiex.gi +1590 -0
- gap/pkg/semigroups/gap/semigroups/semiffmat.gd +37 -0
- gap/pkg/semigroups/gap/semigroups/semiffmat.gi +565 -0
- gap/pkg/semigroups/gap/semigroups/semifp.gd +28 -0
- gap/pkg/semigroups/gap/semigroups/semifp.gi +1364 -0
- gap/pkg/semigroups/gap/semigroups/semigraph.gd +40 -0
- gap/pkg/semigroups/gap/semigroups/semigraph.gi +292 -0
- gap/pkg/semigroups/gap/semigroups/semigrp.gd +165 -0
- gap/pkg/semigroups/gap/semigroups/semigrp.gi +1225 -0
- gap/pkg/semigroups/gap/semigroups/semimaxplus.gd +72 -0
- gap/pkg/semigroups/gap/semigroups/semimaxplus.gi +710 -0
- gap/pkg/semigroups/gap/semigroups/semintmat.gd +13 -0
- gap/pkg/semigroups/gap/semigroups/semintmat.gi +74 -0
- gap/pkg/semigroups/gap/semigroups/semipbr.gd +19 -0
- gap/pkg/semigroups/gap/semigroups/semipbr.gi +139 -0
- gap/pkg/semigroups/gap/semigroups/semipperm.gd +27 -0
- gap/pkg/semigroups/gap/semigroups/semipperm.gi +711 -0
- gap/pkg/semigroups/gap/semigroups/semiquo.gd +14 -0
- gap/pkg/semigroups/gap/semigroups/semiquo.gi +97 -0
- gap/pkg/semigroups/gap/semigroups/semiringmat.gd +16 -0
- gap/pkg/semigroups/gap/semigroups/semiringmat.gi +21 -0
- gap/pkg/semigroups/gap/semigroups/semirms.gd +19 -0
- gap/pkg/semigroups/gap/semigroups/semirms.gi +977 -0
- gap/pkg/semigroups/gap/semigroups/semitrans.gd +49 -0
- gap/pkg/semigroups/gap/semigroups/semitrans.gi +909 -0
- gap/pkg/semigroups/gap/tools/display.gd +24 -0
- gap/pkg/semigroups/gap/tools/display.gi +749 -0
- gap/pkg/semigroups/gap/tools/io.gd +17 -0
- gap/pkg/semigroups/gap/tools/io.gi +543 -0
- gap/pkg/semigroups/gap/tools/iterators.gd +16 -0
- gap/pkg/semigroups/gap/tools/iterators.gi +253 -0
- gap/pkg/semigroups/gap/tools/utils.gd +19 -0
- gap/pkg/semigroups/gap/tools/utils.gi +756 -0
- gap/pkg/semigroups/gapbind14/.ccls +18 -0
- gap/pkg/semigroups/gapbind14/.clang-format +104 -0
- gap/pkg/semigroups/gapbind14/CPPLINT.cfg +5 -0
- gap/pkg/semigroups/gapbind14/LICENSE +674 -0
- gap/pkg/semigroups/gapbind14/README.md +76 -0
- gap/pkg/semigroups/gapbind14/demo/.gitignore +4 -0
- gap/pkg/semigroups/gapbind14/demo/LICENSE +293 -0
- gap/pkg/semigroups/gapbind14/demo/Makefile.gappkg +220 -0
- gap/pkg/semigroups/gapbind14/demo/Makefile.in +19 -0
- gap/pkg/semigroups/gapbind14/demo/PackageInfo.g +87 -0
- gap/pkg/semigroups/gapbind14/demo/README.md +17 -0
- gap/pkg/semigroups/gapbind14/demo/configure +34 -0
- gap/pkg/semigroups/gapbind14/demo/gap/gapbind_demo.gd +19 -0
- gap/pkg/semigroups/gapbind14/demo/gap/gapbind_demo.gi +10 -0
- gap/pkg/semigroups/gapbind14/demo/init.g +16 -0
- gap/pkg/semigroups/gapbind14/demo/makedoc.g +10 -0
- gap/pkg/semigroups/gapbind14/demo/read.g +6 -0
- gap/pkg/semigroups/gapbind14/demo/src/gapbind_demo.cc +142 -0
- gap/pkg/semigroups/gapbind14/demo/tst/testall.g +12 -0
- gap/pkg/semigroups/gapbind14/include/gapbind14/cpp_fn.hpp +223 -0
- gap/pkg/semigroups/gapbind14/include/gapbind14/gap_include.hpp +26 -0
- gap/pkg/semigroups/gapbind14/include/gapbind14/gapbind14.hpp +445 -0
- gap/pkg/semigroups/gapbind14/include/gapbind14/tame_free_fn.hpp +420 -0
- gap/pkg/semigroups/gapbind14/include/gapbind14/tame_mem_fn.hpp +556 -0
- gap/pkg/semigroups/gapbind14/include/gapbind14/to_cpp.hpp +162 -0
- gap/pkg/semigroups/gapbind14/include/gapbind14/to_gap.hpp +158 -0
- gap/pkg/semigroups/gapbind14/src/.clang-format +108 -0
- gap/pkg/semigroups/gapbind14/src/gapbind14.cpp +334 -0
- gap/pkg/semigroups/init.g +150 -0
- gap/pkg/semigroups/m4/ax_append_flag.m4 +50 -0
- gap/pkg/semigroups/m4/ax_check_compile_flag.m4 +53 -0
- gap/pkg/semigroups/m4/ax_check_hpcombi.m4 +121 -0
- gap/pkg/semigroups/m4/ax_check_libsemigroup.m4 +68 -0
- gap/pkg/semigroups/m4/ax_compare_version.m4 +177 -0
- gap/pkg/semigroups/m4/ax_cxx_compile_stdcxx.m4 +1009 -0
- gap/pkg/semigroups/m4/ax_cxx_compile_stdcxx_14.m4 +34 -0
- gap/pkg/semigroups/m4/ax_prefix_config_h.m4 +203 -0
- gap/pkg/semigroups/m4/ax_pthread.m4 +522 -0
- gap/pkg/semigroups/m4/find_gap.m4 +94 -0
- gap/pkg/semigroups/makedoc.g +153 -0
- gap/pkg/semigroups/prerequisites.sh +62 -0
- gap/pkg/semigroups/read.g +105 -0
- gap/pkg/semigroups/release.toml +6 -0
- gap/pkg/semigroups/tst/extreme/README +2 -0
- gap/pkg/semigroups/tst/extreme/attrinv.tst +703 -0
- gap/pkg/semigroups/tst/extreme/bipart.tst +2803 -0
- gap/pkg/semigroups/tst/extreme/closure.tst +652 -0
- gap/pkg/semigroups/tst/extreme/cong.tst +286 -0
- gap/pkg/semigroups/tst/extreme/conginv.tst +43 -0
- gap/pkg/semigroups/tst/extreme/examples.tst +2449 -0
- gap/pkg/semigroups/tst/extreme/freeband.tst +37 -0
- gap/pkg/semigroups/tst/extreme/greens-acting-regular.tst +27 -0
- gap/pkg/semigroups/tst/extreme/greens-acting.tst +1999 -0
- gap/pkg/semigroups/tst/extreme/ideals.tst +858 -0
- gap/pkg/semigroups/tst/extreme/inverse.tst +1025 -0
- gap/pkg/semigroups/tst/extreme/maximal.tst +856 -0
- gap/pkg/semigroups/tst/extreme/misc.tst +4236 -0
- gap/pkg/semigroups/tst/extreme/monoid_pkg.tst +1488 -0
- gap/pkg/semigroups/tst/extreme/properties.tst +914 -0
- gap/pkg/semigroups/tst/extreme/semibipart.tst +2837 -0
- gap/pkg/semigroups/tst/extreme/semieunit.tst +49 -0
- gap/pkg/semigroups/tst/extreme/semiffmat.tst +353 -0
- gap/pkg/semigroups/tst/extreme/semigroups.tst +245 -0
- gap/pkg/semigroups/tst/extreme/semiiter.tst +58 -0
- gap/pkg/semigroups/tst/extreme/semirms.tst +1091 -0
- gap/pkg/semigroups/tst/extreme/transform.tst +305 -0
- gap/pkg/semigroups/tst/extreme/translat.tst +44 -0
- gap/pkg/semigroups/tst/standard/README +2 -0
- gap/pkg/semigroups/tst/standard/attributes/acting.tst +388 -0
- gap/pkg/semigroups/tst/standard/attributes/attr.tst +2404 -0
- gap/pkg/semigroups/tst/standard/attributes/dual.tst +308 -0
- gap/pkg/semigroups/tst/standard/attributes/factor.tst +629 -0
- gap/pkg/semigroups/tst/standard/attributes/homomorph.tst +1134 -0
- gap/pkg/semigroups/tst/standard/attributes/inverse.tst +1521 -0
- gap/pkg/semigroups/tst/standard/attributes/isomorph.tst +435 -0
- gap/pkg/semigroups/tst/standard/attributes/isorms.tst +1147 -0
- gap/pkg/semigroups/tst/standard/attributes/maximal.tst +853 -0
- gap/pkg/semigroups/tst/standard/attributes/properties.tst +2028 -0
- gap/pkg/semigroups/tst/standard/attributes/semifp.tst +53 -0
- gap/pkg/semigroups/tst/standard/attributes/translat.tst +796 -0
- gap/pkg/semigroups/tst/standard/congruences/cong.tst +1044 -0
- gap/pkg/semigroups/tst/standard/congruences/conginv.tst +292 -0
- gap/pkg/semigroups/tst/standard/congruences/conglatt.tst +421 -0
- gap/pkg/semigroups/tst/standard/congruences/congpairs.tst +1011 -0
- gap/pkg/semigroups/tst/standard/congruences/congrees.tst +288 -0
- gap/pkg/semigroups/tst/standard/congruences/congrms.tst +701 -0
- gap/pkg/semigroups/tst/standard/congruences/congsemigraph.tst +422 -0
- gap/pkg/semigroups/tst/standard/congruences/congsimple.tst +311 -0
- gap/pkg/semigroups/tst/standard/congruences/conguniv.tst +259 -0
- gap/pkg/semigroups/tst/standard/congruences/congwordgraph.tst +330 -0
- gap/pkg/semigroups/tst/standard/elements/bipart.tst +783 -0
- gap/pkg/semigroups/tst/standard/elements/blocks.tst +166 -0
- gap/pkg/semigroups/tst/standard/elements/boolmat.tst +608 -0
- gap/pkg/semigroups/tst/standard/elements/elements.tst +117 -0
- gap/pkg/semigroups/tst/standard/elements/ffmat.tst +349 -0
- gap/pkg/semigroups/tst/standard/elements/maxplusmat.tst +613 -0
- gap/pkg/semigroups/tst/standard/elements/pbr.tst +506 -0
- gap/pkg/semigroups/tst/standard/elements/pperm.tst +32 -0
- gap/pkg/semigroups/tst/standard/elements/semiringmat.tst +601 -0
- gap/pkg/semigroups/tst/standard/elements/trans.tst +58 -0
- gap/pkg/semigroups/tst/standard/fp/freeband.tst +311 -0
- gap/pkg/semigroups/tst/standard/fp/freeinverse.tst +147 -0
- gap/pkg/semigroups/tst/standard/fp/tietze.tst +780 -0
- gap/pkg/semigroups/tst/standard/fp/word.tst +106 -0
- gap/pkg/semigroups/tst/standard/greens/acting-inverse.tst +545 -0
- gap/pkg/semigroups/tst/standard/greens/acting-regular.tst +396 -0
- gap/pkg/semigroups/tst/standard/greens/acting.tst +2033 -0
- gap/pkg/semigroups/tst/standard/greens/froidure-pin.tst +1831 -0
- gap/pkg/semigroups/tst/standard/greens/generic.tst +1436 -0
- gap/pkg/semigroups/tst/standard/ideals/acting.tst +279 -0
- gap/pkg/semigroups/tst/standard/ideals/froidure-pin.tst +178 -0
- gap/pkg/semigroups/tst/standard/ideals/ideals.tst +380 -0
- gap/pkg/semigroups/tst/standard/libsemigroups/cong.tst +310 -0
- gap/pkg/semigroups/tst/standard/libsemigroups/froidure-pin.tst +778 -0
- gap/pkg/semigroups/tst/standard/libsemigroups/sims1.tst +379 -0
- gap/pkg/semigroups/tst/standard/main/acting.tst +411 -0
- gap/pkg/semigroups/tst/standard/main/froidure-pin.tst +392 -0
- gap/pkg/semigroups/tst/standard/main/semiact.tst +203 -0
- gap/pkg/semigroups/tst/standard/main/setup.tst +1144 -0
- gap/pkg/semigroups/tst/standard/obsolete.tst +19 -0
- gap/pkg/semigroups/tst/standard/options.tst +54 -0
- gap/pkg/semigroups/tst/standard/semigroups/grpperm.tst +581 -0
- gap/pkg/semigroups/tst/standard/semigroups/semibipart.tst +2635 -0
- gap/pkg/semigroups/tst/standard/semigroups/semiboolmat.tst +1871 -0
- gap/pkg/semigroups/tst/standard/semigroups/semicons.tst +1173 -0
- gap/pkg/semigroups/tst/standard/semigroups/semidp.tst +739 -0
- gap/pkg/semigroups/tst/standard/semigroups/semieunit.tst +339 -0
- gap/pkg/semigroups/tst/standard/semigroups/semiex.tst +2055 -0
- gap/pkg/semigroups/tst/standard/semigroups/semiffmat.tst +746 -0
- gap/pkg/semigroups/tst/standard/semigroups/semifp.tst +2702 -0
- gap/pkg/semigroups/tst/standard/semigroups/semigraph.tst +133 -0
- gap/pkg/semigroups/tst/standard/semigroups/semigrp.tst +1112 -0
- gap/pkg/semigroups/tst/standard/semigroups/semimaxplus.tst +654 -0
- gap/pkg/semigroups/tst/standard/semigroups/semipbr.tst +2142 -0
- gap/pkg/semigroups/tst/standard/semigroups/semipperm.tst +2169 -0
- gap/pkg/semigroups/tst/standard/semigroups/semiquo.tst +278 -0
- gap/pkg/semigroups/tst/standard/semigroups/semirms.tst +3010 -0
- gap/pkg/semigroups/tst/standard/semigroups/semitrans.tst +2758 -0
- gap/pkg/semigroups/tst/standard/tools/display.tst +1040 -0
- gap/pkg/semigroups/tst/standard/tools/io.tst +363 -0
- gap/pkg/semigroups/tst/testinstall.tst +1815 -0
- gap/pkg/semigroups/tst/teststandard.g +22 -0
- gap/pkg/semigroups/tst/workspaces/load-workspace.tst +142 -0
- gap/pkg/semigroups/tst/workspaces/load.g +11 -0
- gap/pkg/semigroups/tst/workspaces/save-workspace.tst +166 -0
- gap/pkg/semigroups/tst/workspaces/save.g +14 -0
- passagemath_gap_pkg_semigroups-10.6.29.dist-info/METADATA +93 -0
- passagemath_gap_pkg_semigroups-10.6.29.dist-info/METADATA.bak +94 -0
- passagemath_gap_pkg_semigroups-10.6.29.dist-info/RECORD +356 -0
- passagemath_gap_pkg_semigroups-10.6.29.dist-info/WHEEL +5 -0
- passagemath_gap_pkg_semigroups-10.6.29.dist-info/top_level.txt +1 -0
- passagemath_gap_pkg_semigroups.libs/libgcc_s-0cd532bd.so.1 +0 -0
- passagemath_gap_pkg_semigroups.libs/libsemigroups-f0b7066b.so.2.0.0 +0 -0
- passagemath_gap_pkg_semigroups.libs/libstdc++-5d72f927.so.6.0.33 +0 -0
- sage/all__sagemath_gap_pkg_semigroups.py +1 -0
- sage/libs/all__sagemath_gap_pkg_semigroups.py +1 -0
- sage/libs/gap_pkg_semigroups.abi3.so +0 -0
|
@@ -0,0 +1,796 @@
|
|
|
1
|
+
#############################################################################
|
|
2
|
+
##
|
|
3
|
+
#W standard/translat.tst
|
|
4
|
+
#Y Copyright (C) 2016-17 Finn Smith
|
|
5
|
+
##
|
|
6
|
+
## Licensing information can be found in the README file of this package.
|
|
7
|
+
##
|
|
8
|
+
#############################################################################
|
|
9
|
+
##
|
|
10
|
+
|
|
11
|
+
#@local C, D, G, H, HS, I, L, LS, Lht, Ll, Lr, M, R, RS, RT, Rht, Rl, Rr, S, T
|
|
12
|
+
#@local a, b, bruteforcetranshull, d, dclasses, f, flag, g, h, ht, i, iso, j, l
|
|
13
|
+
#@local l2, lclasses, lgpfunc, linkedpairs, lt, mat, r, r2, rclasses, reps
|
|
14
|
+
#@local rgpfunc, rt, s, t, x
|
|
15
|
+
gap> START_TEST("Semigroups package: standard/translat.tst");
|
|
16
|
+
gap> LoadPackage("semigroups", false);;
|
|
17
|
+
gap> SEMIGROUPS.StartTest();
|
|
18
|
+
|
|
19
|
+
# Creation of translations semigroups
|
|
20
|
+
gap> S := RectangularBand(3, 4);;
|
|
21
|
+
gap> L := LeftTranslations(S);
|
|
22
|
+
<the semigroup of left translations of <regular transformation semigroup
|
|
23
|
+
of size 12, degree 8 with 4 generators>>
|
|
24
|
+
gap> R := RightTranslations(S);
|
|
25
|
+
<the semigroup of right translations of <regular transformation semigroup
|
|
26
|
+
of size 12, degree 8 with 4 generators>>
|
|
27
|
+
gap> TranslationalHull(S);
|
|
28
|
+
<translational hull over <regular transformation semigroup of size 12,
|
|
29
|
+
degree 8 with 4 generators>>
|
|
30
|
+
gap> Size(L);
|
|
31
|
+
27
|
|
32
|
+
gap> Size(R);
|
|
33
|
+
256
|
|
34
|
+
|
|
35
|
+
# Creation of translations semigroups we can't calculate
|
|
36
|
+
gap> S := InverseSemigroup([
|
|
37
|
+
> PartialPerm([1, 2, 3, 4, 5, 6, 7, 10, 11, 13], [4, 6, 7, 3, 8, 2, 9, 5, 1, 12]),
|
|
38
|
+
> PartialPerm([1, 2, 4, 8, 11, 12], [3, 5, 1, 10, 11, 7]),
|
|
39
|
+
> PartialPerm([1, 2, 7, 9, 12], [5, 6, 4, 3, 10])]);;
|
|
40
|
+
gap> T := IdempotentGeneratedSubsemigroup(S);;
|
|
41
|
+
gap> M := MunnSemigroup(T);;
|
|
42
|
+
gap> LeftTranslations(M);;
|
|
43
|
+
gap> RightTranslations(M);;
|
|
44
|
+
gap> TranslationalHull(M);;
|
|
45
|
+
|
|
46
|
+
# With calculation - rectangular bands
|
|
47
|
+
gap> S := RectangularBand(3, 3);
|
|
48
|
+
<regular transformation semigroup of size 9, degree 7 with 3 generators>
|
|
49
|
+
gap> L := LeftTranslations(S);
|
|
50
|
+
<the semigroup of left translations of <regular transformation semigroup
|
|
51
|
+
of size 9, degree 7 with 3 generators>>
|
|
52
|
+
gap> R := RightTranslations(S);
|
|
53
|
+
<the semigroup of right translations of <regular transformation semigroup
|
|
54
|
+
of size 9, degree 7 with 3 generators>>
|
|
55
|
+
gap> H := TranslationalHull(S);
|
|
56
|
+
<translational hull over <regular transformation semigroup of size 9,
|
|
57
|
+
degree 7 with 3 generators>>
|
|
58
|
+
gap> Size(L);
|
|
59
|
+
27
|
|
60
|
+
gap> Size(R);
|
|
61
|
+
27
|
|
62
|
+
gap> Size(H);
|
|
63
|
+
729
|
|
64
|
+
gap> Size(GeneratorsOfSemigroup(L));
|
|
65
|
+
3
|
|
66
|
+
gap> Size(GeneratorsOfSemigroup(R));
|
|
67
|
+
3
|
|
68
|
+
gap> Size(GeneratorsOfSemigroup(H));
|
|
69
|
+
9
|
|
70
|
+
|
|
71
|
+
# Monogenic semigroups
|
|
72
|
+
gap> S := MonogenicSemigroup(6, 3);
|
|
73
|
+
<commutative non-regular transformation semigroup of size 8, degree 9 with 1
|
|
74
|
+
generator>
|
|
75
|
+
gap> L := LeftTranslations(S);
|
|
76
|
+
<the semigroup of left translations of <commutative non-regular
|
|
77
|
+
transformation semigroup of size 8, degree 9 with 1 generator>>
|
|
78
|
+
gap> Size(L);
|
|
79
|
+
8
|
|
80
|
+
gap> GeneratorsOfSemigroup(L);
|
|
81
|
+
[ <left translation on <commutative non-regular transformation semigroup
|
|
82
|
+
of size 8, degree 9 with 1 generator>>,
|
|
83
|
+
<left translation on <commutative non-regular transformation semigroup
|
|
84
|
+
of size 8, degree 9 with 1 generator>> ]
|
|
85
|
+
gap> R := RightTranslations(S);;
|
|
86
|
+
gap> GeneratorsOfSemigroup(R);
|
|
87
|
+
[ <right translation on <commutative non-regular transformation semigroup
|
|
88
|
+
of size 8, degree 9 with 1 generator>>,
|
|
89
|
+
<right translation on <commutative non-regular transformation semigroup
|
|
90
|
+
of size 8, degree 9 with 1 generator>> ]
|
|
91
|
+
gap> Size(R);
|
|
92
|
+
8
|
|
93
|
+
gap> H := TranslationalHull(S);;
|
|
94
|
+
gap> Size(H);
|
|
95
|
+
8
|
|
96
|
+
gap> GeneratorsOfSemigroup(H);
|
|
97
|
+
[ <bitranslation on <commutative non-regular transformation semigroup
|
|
98
|
+
of size 8, degree 9 with 1 generator>>,
|
|
99
|
+
<bitranslation on <commutative non-regular transformation semigroup
|
|
100
|
+
of size 8, degree 9 with 1 generator>> ]
|
|
101
|
+
gap> AsList(TranslationalHull(S));
|
|
102
|
+
[ <bitranslation on <commutative non-regular transformation semigroup
|
|
103
|
+
of size 8, degree 9 with 1 generator>>,
|
|
104
|
+
<bitranslation on <commutative non-regular transformation semigroup
|
|
105
|
+
of size 8, degree 9 with 1 generator>>,
|
|
106
|
+
<bitranslation on <commutative non-regular transformation semigroup
|
|
107
|
+
of size 8, degree 9 with 1 generator>>,
|
|
108
|
+
<bitranslation on <commutative non-regular transformation semigroup
|
|
109
|
+
of size 8, degree 9 with 1 generator>>,
|
|
110
|
+
<bitranslation on <commutative non-regular transformation semigroup
|
|
111
|
+
of size 8, degree 9 with 1 generator>>,
|
|
112
|
+
<bitranslation on <commutative non-regular transformation semigroup
|
|
113
|
+
of size 8, degree 9 with 1 generator>>,
|
|
114
|
+
<bitranslation on <commutative non-regular transformation semigroup
|
|
115
|
+
of size 8, degree 9 with 1 generator>>,
|
|
116
|
+
<bitranslation on <commutative non-regular transformation semigroup
|
|
117
|
+
of size 8, degree 9 with 1 generator>> ]
|
|
118
|
+
|
|
119
|
+
# small RZMS
|
|
120
|
+
gap> G := Range(IsomorphismPermGroup(SmallGroup(4, 2)));;
|
|
121
|
+
gap> H := AsList(G);;
|
|
122
|
+
gap> mat := [[H[1], 0],
|
|
123
|
+
> [H[2], H[2]]];;
|
|
124
|
+
gap> S := ReesZeroMatrixSemigroup(G, mat);;
|
|
125
|
+
gap> L := LeftTranslations(S);
|
|
126
|
+
<the semigroup of left translations of <regular semigroup with 4 generators>>
|
|
127
|
+
gap> Size(L);
|
|
128
|
+
81
|
|
129
|
+
gap> R := RightTranslations(S);
|
|
130
|
+
<the semigroup of right translations of <0-simple regular semigroup with 4
|
|
131
|
+
generators>>
|
|
132
|
+
gap> Size(R);
|
|
133
|
+
81
|
|
134
|
+
gap> S := ReesZeroMatrixSemigroup(G, mat);;
|
|
135
|
+
gap> L := LeftTranslations(S);
|
|
136
|
+
<the semigroup of left translations of <regular semigroup with 4 generators>>
|
|
137
|
+
gap> R := RightTranslations(S);
|
|
138
|
+
<the semigroup of right translations of <regular semigroup with 4 generators>>
|
|
139
|
+
gap> H := TranslationalHull(S);
|
|
140
|
+
<translational hull over <regular semigroup with 4 generators>>
|
|
141
|
+
gap> Size(H);
|
|
142
|
+
21
|
|
143
|
+
gap> Size(L);
|
|
144
|
+
81
|
|
145
|
+
gap> Size(R);
|
|
146
|
+
81
|
|
147
|
+
gap> GeneratorsOfSemigroup(L);
|
|
148
|
+
[ <left translation on <0-simple regular semigroup with 4 generators>>,
|
|
149
|
+
<left translation on <0-simple regular semigroup with 4 generators>>,
|
|
150
|
+
<left translation on <0-simple regular semigroup with 4 generators>>,
|
|
151
|
+
<left translation on <0-simple regular semigroup with 4 generators>>,
|
|
152
|
+
<left translation on <0-simple regular semigroup with 4 generators>>,
|
|
153
|
+
<left translation on <0-simple regular semigroup with 4 generators>> ]
|
|
154
|
+
gap> GeneratorsOfSemigroup(R);
|
|
155
|
+
[ <right translation on <0-simple regular semigroup with 4 generators>>,
|
|
156
|
+
<right translation on <0-simple regular semigroup with 4 generators>>,
|
|
157
|
+
<right translation on <0-simple regular semigroup with 4 generators>>,
|
|
158
|
+
<right translation on <0-simple regular semigroup with 4 generators>>,
|
|
159
|
+
<right translation on <0-simple regular semigroup with 4 generators>>,
|
|
160
|
+
<right translation on <0-simple regular semigroup with 4 generators>> ]
|
|
161
|
+
|
|
162
|
+
# Further test translations generation
|
|
163
|
+
gap> S := Semigroup([Transformation([2, 4, 4, 1]), Transformation([2, 3, 2, 1]),
|
|
164
|
+
> Transformation([3, 3, 3])]);;
|
|
165
|
+
gap> L := LeftTranslations(S);
|
|
166
|
+
<the semigroup of left translations of <transformation semigroup of degree 4
|
|
167
|
+
with 3 generators>>
|
|
168
|
+
gap> Size(L);
|
|
169
|
+
123
|
|
170
|
+
gap> R := RightTranslations(S);
|
|
171
|
+
<the semigroup of right translations of <transformation semigroup of size 49,
|
|
172
|
+
degree 4 with 3 generators>>
|
|
173
|
+
gap> Size(R);
|
|
174
|
+
55
|
|
175
|
+
|
|
176
|
+
# Zero semigroups
|
|
177
|
+
gap> for i in [1 .. 4] do
|
|
178
|
+
> L := LeftZeroSemigroup(i);
|
|
179
|
+
> R := RightZeroSemigroup(i);
|
|
180
|
+
> Ll := LeftTranslations(L);;
|
|
181
|
+
> Lr := LeftTranslations(R);;
|
|
182
|
+
> Rl := RightTranslations(L);;
|
|
183
|
+
> Rr := RightTranslations(R);;
|
|
184
|
+
> if Size(Ll) <> i ^ i or Size(Rr) <> i ^ i
|
|
185
|
+
> or Size(Lr) <> 1 or Size(Rl) <> 1 then
|
|
186
|
+
> Error();
|
|
187
|
+
> fi;
|
|
188
|
+
> od;
|
|
189
|
+
|
|
190
|
+
# Small monoid
|
|
191
|
+
gap> S := FullTransformationMonoid(3);;
|
|
192
|
+
gap> L := LeftTranslations(S);;
|
|
193
|
+
gap> R := RightTranslations(S);;
|
|
194
|
+
gap> H := TranslationalHull(S);;
|
|
195
|
+
gap> Size(L) = Size(R) and Size(R) = Size(H) and Size(H) = Size(S);
|
|
196
|
+
true
|
|
197
|
+
gap> Size(Semigroup(GeneratorsOfSemigroup(L))) = Size(L);
|
|
198
|
+
true
|
|
199
|
+
gap> Size(Semigroup(GeneratorsOfSemigroup(R))) = Size(R);
|
|
200
|
+
true
|
|
201
|
+
gap> Size(Semigroup(GeneratorsOfSemigroup(H))) = Size(H);
|
|
202
|
+
true
|
|
203
|
+
|
|
204
|
+
# Translations and translational hulls of monoids that couldn't be calculated
|
|
205
|
+
gap> S := BrauerMonoid(5);;
|
|
206
|
+
gap> L := LeftTranslations(S);
|
|
207
|
+
<the semigroup of left translations of <regular bipartition *-monoid of
|
|
208
|
+
degree 5 with 3 generators>>
|
|
209
|
+
gap> Size(L);
|
|
210
|
+
945
|
|
211
|
+
gap> R := RightTranslations(S);
|
|
212
|
+
<the semigroup of right translations of <regular bipartition *-monoid
|
|
213
|
+
of size 945, degree 5 with 3 generators>>
|
|
214
|
+
gap> Size(R);
|
|
215
|
+
945
|
|
216
|
+
gap> H := TranslationalHull(S);
|
|
217
|
+
<translational hull over <regular bipartition *-monoid of size 945, degree 5
|
|
218
|
+
with 3 generators>>
|
|
219
|
+
gap> Size(H);
|
|
220
|
+
945
|
|
221
|
+
gap> S := FullTransformationMonoid(5);;
|
|
222
|
+
gap> L := LeftTranslations(S);
|
|
223
|
+
<the semigroup of left translations of <full transformation monoid of degree 5\
|
|
224
|
+
>>
|
|
225
|
+
gap> Size(L);
|
|
226
|
+
3125
|
|
227
|
+
gap> R := RightTranslations(S);
|
|
228
|
+
<the semigroup of right translations of <full transformation monoid of degree \
|
|
229
|
+
5>>
|
|
230
|
+
gap> Size(R);
|
|
231
|
+
3125
|
|
232
|
+
gap> H := TranslationalHull(S);
|
|
233
|
+
<translational hull over <full transformation monoid of degree 5>>
|
|
234
|
+
gap> Size(H);
|
|
235
|
+
3125
|
|
236
|
+
gap> GeneratorsOfSemigroup(H);
|
|
237
|
+
[ <bitranslation on <full transformation monoid of degree 5>>,
|
|
238
|
+
<bitranslation on <full transformation monoid of degree 5>>,
|
|
239
|
+
<bitranslation on <full transformation monoid of degree 5>>,
|
|
240
|
+
<bitranslation on <full transformation monoid of degree 5>> ]
|
|
241
|
+
gap> GeneratorsOfSemigroup(L);
|
|
242
|
+
[ <left translation on <full transformation monoid of degree 5>>,
|
|
243
|
+
<left translation on <full transformation monoid of degree 5>>,
|
|
244
|
+
<left translation on <full transformation monoid of degree 5>>,
|
|
245
|
+
<left translation on <full transformation monoid of degree 5>> ]
|
|
246
|
+
gap> GeneratorsOfSemigroup(R);
|
|
247
|
+
[ <right translation on <full transformation monoid of degree 5>>,
|
|
248
|
+
<right translation on <full transformation monoid of degree 5>>,
|
|
249
|
+
<right translation on <full transformation monoid of degree 5>>,
|
|
250
|
+
<right translation on <full transformation monoid of degree 5>> ]
|
|
251
|
+
|
|
252
|
+
# A tiny bit of brute force checking
|
|
253
|
+
gap> SEMIGROUPS.bruteforcetranshull := function(S)
|
|
254
|
+
> local a, d, L, R, H, linkedpairs, dclasses, rclasses, lclasses, reps, i, j,
|
|
255
|
+
> l, r, flag;
|
|
256
|
+
> L := LeftTranslations(S);
|
|
257
|
+
> R := RightTranslations(S);
|
|
258
|
+
> H := TranslationalHull(S);
|
|
259
|
+
> linkedpairs := [];
|
|
260
|
+
> dclasses := DClasses(S);
|
|
261
|
+
> reps := [];
|
|
262
|
+
> for d in dclasses do
|
|
263
|
+
> lclasses := ShallowCopy(LClasses(d));
|
|
264
|
+
> rclasses := ShallowCopy(RClasses(d));
|
|
265
|
+
> for i in [1 .. Minimum(Size(lclasses), Size(rclasses)) - 1] do
|
|
266
|
+
> r := Representative(Intersection(lclasses[1], rclasses[1]));
|
|
267
|
+
> Add(reps, r);
|
|
268
|
+
> Remove(lclasses, 1);
|
|
269
|
+
> Remove(rclasses, 1);
|
|
270
|
+
> od;
|
|
271
|
+
> if Size(lclasses) > Size(rclasses) then
|
|
272
|
+
> # Size(rclasses) = 1
|
|
273
|
+
> for j in [1 .. Size(lclasses)] do
|
|
274
|
+
> r := Representative(Intersection(lclasses[1], rclasses[1]));
|
|
275
|
+
> Add(reps, r);
|
|
276
|
+
> Remove(lclasses, 1);
|
|
277
|
+
> od;
|
|
278
|
+
> else
|
|
279
|
+
> # Size(lclasses) = 1
|
|
280
|
+
> for j in [1 .. Size(rclasses)] do
|
|
281
|
+
> r := Representative(Intersection(lclasses[1], rclasses[1]));
|
|
282
|
+
> Add(reps, r);
|
|
283
|
+
> Remove(rclasses, 1);
|
|
284
|
+
> od;
|
|
285
|
+
> fi;
|
|
286
|
+
> od;
|
|
287
|
+
> for l in L do
|
|
288
|
+
> for r in R do
|
|
289
|
+
> flag := true;
|
|
290
|
+
> for a in Cartesian(reps, reps) do
|
|
291
|
+
> if not a[1] * (a[2] ^ l) = (a[1] ^ r) * a[2] then
|
|
292
|
+
> flag := false;
|
|
293
|
+
> break;
|
|
294
|
+
> fi;
|
|
295
|
+
> od;
|
|
296
|
+
> if flag then
|
|
297
|
+
> Add(linkedpairs, Bitranslation(H, l, r));
|
|
298
|
+
> fi;
|
|
299
|
+
> od;
|
|
300
|
+
> od;
|
|
301
|
+
> return linkedpairs;
|
|
302
|
+
> end;;
|
|
303
|
+
gap> G := Range(IsomorphismPermGroup(SmallGroup(4, 1)));;
|
|
304
|
+
gap> H := ShallowCopy(AsList(G));;
|
|
305
|
+
gap> mat := [[0, H[4]], [H[4], 0]];;
|
|
306
|
+
gap> S := ReesZeroMatrixSemigroup(G, mat);;
|
|
307
|
+
gap> H := TranslationalHull(S);;
|
|
308
|
+
gap> Size(H) = Size(SEMIGROUPS.bruteforcetranshull(S));
|
|
309
|
+
true
|
|
310
|
+
gap> Size(Semigroup(GeneratorsOfSemigroup(H))) = Size(TranslationalHull(S));
|
|
311
|
+
true
|
|
312
|
+
gap> S := RectangularBand(2, 3);;
|
|
313
|
+
gap> Size(Semigroup(GeneratorsOfSemigroup(TranslationalHull(S))))
|
|
314
|
+
> = Size(SEMIGROUPS.bruteforcetranshull(S));
|
|
315
|
+
true
|
|
316
|
+
|
|
317
|
+
# Test translational hull method for arbitrary semigroups
|
|
318
|
+
gap> S := ZeroSemigroup(4);;
|
|
319
|
+
gap> Size(TranslationalHull(S));
|
|
320
|
+
4096
|
|
321
|
+
gap> S := Semigroup([Transformation([1, 1, 2]), Transformation([3, 1, 3])]);;
|
|
322
|
+
gap> H := TranslationalHull(S);;
|
|
323
|
+
gap> H = Semigroup(H);
|
|
324
|
+
true
|
|
325
|
+
gap> Size(H);
|
|
326
|
+
13
|
|
327
|
+
gap> I := InnerTranslationalHull(S);;
|
|
328
|
+
gap> IsWholeFamily(I);
|
|
329
|
+
false
|
|
330
|
+
gap> for h in H do
|
|
331
|
+
> if h <> Bitranslation(H,
|
|
332
|
+
> LeftPartOfBitranslation(h),
|
|
333
|
+
> RightPartOfBitranslation(h)) then
|
|
334
|
+
> Print("failure!");
|
|
335
|
+
> fi;
|
|
336
|
+
> od;
|
|
337
|
+
|
|
338
|
+
# Test inner translations
|
|
339
|
+
gap> G := Range(IsomorphismPermGroup(SmallGroup(6, 1)));;
|
|
340
|
+
gap> a := G.1;; b := G.2;;
|
|
341
|
+
gap> mat := [[a, 0],
|
|
342
|
+
> [b, a]];;
|
|
343
|
+
gap> S := ReesZeroMatrixSemigroup(G, mat);;
|
|
344
|
+
gap> Size(InnerLeftTranslations(S)) = Size(S);
|
|
345
|
+
true
|
|
346
|
+
gap> Size(InnerRightTranslations(S)) = Size(S);
|
|
347
|
+
true
|
|
348
|
+
gap> Size(InnerTranslationalHull(S)) = Size(S);
|
|
349
|
+
true
|
|
350
|
+
gap> C := List(InnerLeftTranslations(S), l -> List(S, x -> x ^ l));;
|
|
351
|
+
gap> D := List(S, s -> List(S, x -> s * x));;
|
|
352
|
+
gap> SortedList(C) = SortedList(D);
|
|
353
|
+
true
|
|
354
|
+
gap> C := List(InnerRightTranslations(S), r -> List(S, x -> x ^ r));;
|
|
355
|
+
gap> D := List(S, s -> List(S, x -> x * s));;
|
|
356
|
+
gap> SortedList(C) = SortedList(D);
|
|
357
|
+
true
|
|
358
|
+
|
|
359
|
+
# One for translations semigroups elements and translational hull elements
|
|
360
|
+
gap> G := Range(IsomorphismPermGroup(SmallGroup(6, 1)));;
|
|
361
|
+
gap> a := G.1;; b := G.2;;
|
|
362
|
+
gap> mat := [[a, 0],
|
|
363
|
+
> [b, a]];;
|
|
364
|
+
gap> S := ReesZeroMatrixSemigroup(G, mat);;
|
|
365
|
+
gap> IsSemigroup(S) and IsFinite(S) and IsZeroSimpleSemigroup(S);
|
|
366
|
+
true
|
|
367
|
+
gap> L := LeftTranslations(S);;
|
|
368
|
+
gap> R := RightTranslations(S);;
|
|
369
|
+
gap> H := TranslationalHull(S);;
|
|
370
|
+
gap> One(L) = LeftTranslation(L, MappingByFunction(S, S, x -> x));
|
|
371
|
+
true
|
|
372
|
+
gap> One(R) = RightTranslation(R, MappingByFunction(S, S, x -> x));
|
|
373
|
+
true
|
|
374
|
+
gap> OneOp(Representative(H)) = Bitranslation(H, One(L), One(R));
|
|
375
|
+
true
|
|
376
|
+
gap> Semigroup(AsList(H)) = H;
|
|
377
|
+
true
|
|
378
|
+
|
|
379
|
+
# Methods for non-normalised RMS
|
|
380
|
+
gap> G := Range(IsomorphismPermGroup(SmallGroup(8, 2)));;
|
|
381
|
+
gap> mat := [[G.1, G.2], [G.2, G.2 * G.2]];;
|
|
382
|
+
gap> S := ReesMatrixSemigroup(G, mat);;
|
|
383
|
+
gap> L := LeftTranslations(S);;
|
|
384
|
+
gap> R := RightTranslations(S);;
|
|
385
|
+
gap> Size(L) = Size(Semigroup(GeneratorsOfSemigroup(L)));
|
|
386
|
+
true
|
|
387
|
+
gap> Size(R) = Size(Semigroup(GeneratorsOfSemigroup(R)));
|
|
388
|
+
true
|
|
389
|
+
|
|
390
|
+
# Special methods for normalised RMS
|
|
391
|
+
gap> G := Range(RegularActionHomomorphism(SmallGroup(12, 1)));;
|
|
392
|
+
gap> mat := [[G.1, G.2], [G.1, G.1], [G.2, G.3], [G.1 * G.2, G.1 * G.3]];;
|
|
393
|
+
gap> S := ReesMatrixSemigroup(G, mat);;
|
|
394
|
+
gap> T := Range(RMSNormalization(S));;
|
|
395
|
+
gap> LS := LeftTranslations(S);;
|
|
396
|
+
gap> RS := RightTranslations(S);;
|
|
397
|
+
gap> HS := TranslationalHull(S);;
|
|
398
|
+
gap> L := LeftTranslations(T);;
|
|
399
|
+
gap> R := RightTranslations(T);;
|
|
400
|
+
gap> H := TranslationalHull(T);;
|
|
401
|
+
gap> Size(LS) = Size(L);
|
|
402
|
+
true
|
|
403
|
+
gap> Size(RS) = Size(R);
|
|
404
|
+
true
|
|
405
|
+
gap> Size(HS) = Size(H);
|
|
406
|
+
true
|
|
407
|
+
gap> Size(H);
|
|
408
|
+
444
|
|
409
|
+
gap> AsSSortedList(SEMIGROUPS.BitranslationsBacktrack(H)) = AsSSortedList(H);
|
|
410
|
+
true
|
|
411
|
+
gap> GeneratorsOfSemigroup(L);
|
|
412
|
+
[ <left translation on <simple semigroup of size 96, with 6 generators>>,
|
|
413
|
+
<left translation on <simple semigroup of size 96, with 6 generators>>,
|
|
414
|
+
<left translation on <simple semigroup of size 96, with 6 generators>>,
|
|
415
|
+
<left translation on <simple semigroup of size 96, with 6 generators>>,
|
|
416
|
+
<left translation on <simple semigroup of size 96, with 6 generators>> ]
|
|
417
|
+
gap> GeneratorsOfSemigroup(R);
|
|
418
|
+
[ <right translation on <simple semigroup of size 96, with 6 generators>>,
|
|
419
|
+
<right translation on <simple semigroup of size 96, with 6 generators>>,
|
|
420
|
+
<right translation on <simple semigroup of size 96, with 6 generators>>,
|
|
421
|
+
<right translation on <simple semigroup of size 96, with 6 generators>>,
|
|
422
|
+
<right translation on <simple semigroup of size 96, with 6 generators>>,
|
|
423
|
+
<right translation on <simple semigroup of size 96, with 6 generators>> ]
|
|
424
|
+
gap> Size(L) = Size(Semigroup(GeneratorsOfSemigroup(L)));
|
|
425
|
+
true
|
|
426
|
+
gap> x := Representative(H);
|
|
427
|
+
<bitranslation on <simple semigroup of size 96, with 6 generators>>
|
|
428
|
+
gap> l := LeftTranslation(L, MappingByFunction(T, T, x -> x));;
|
|
429
|
+
gap> r := RightTranslation(R, MappingByFunction(T, T, x -> x));;
|
|
430
|
+
gap> Bitranslation(H, l, r) = One(x);
|
|
431
|
+
true
|
|
432
|
+
gap> for x in GeneratorsOfSemigroup(T) do
|
|
433
|
+
> l := LeftTranslation(L, MappingByFunction(T, T, y -> x * y));;
|
|
434
|
+
> r := RightTranslation(R, MappingByFunction(T, T, y -> y * x));;
|
|
435
|
+
> if not Bitranslation(H, l, r) in H then
|
|
436
|
+
> Print("failure!");
|
|
437
|
+
> fi;
|
|
438
|
+
> od;
|
|
439
|
+
gap> l := LeftTranslation(L,
|
|
440
|
+
> [(1, 6, 3, 9)(2, 7, 5, 4)(8, 10, 11, 12),
|
|
441
|
+
> (1, 6, 3, 9)(2, 7, 5, 4)(8, 10, 11, 12)],
|
|
442
|
+
> Transformation([2, 2]));
|
|
443
|
+
<left translation on <simple semigroup of size 96, with 6 generators>>
|
|
444
|
+
gap> r := RightTranslation(R,
|
|
445
|
+
> [(1, 2, 3, 5)(4, 10, 7, 12)(6, 11, 9, 8), (), (), ()],
|
|
446
|
+
> Transformation([2, 3, 4, 1]));
|
|
447
|
+
<right translation on <simple semigroup of size 96, with 6 generators>>
|
|
448
|
+
gap> AsListCanonical(T);;
|
|
449
|
+
gap> l2 := LeftTranslation(L, [50, 50]);;
|
|
450
|
+
gap> r2 := RightTranslation(R, [9, 5, 6, 12]);;
|
|
451
|
+
gap> l = l2 and r = r2;
|
|
452
|
+
true
|
|
453
|
+
|
|
454
|
+
# More normal RMS testing
|
|
455
|
+
gap> G := Range(IsomorphismPermGroup(SmallGroup(12, 1)));;
|
|
456
|
+
gap> mat := TransposedMat([[G.1, G.2], [G.1, G.1], [G.2, G.3],
|
|
457
|
+
> [G.1 * G.2, G.1 * G.3]]);;
|
|
458
|
+
gap> T := Range(RMSNormalization(ReesMatrixSemigroup(G, mat)));;
|
|
459
|
+
gap> R := RightTranslations(T);;
|
|
460
|
+
gap> Size(R) = Size(Semigroup(GeneratorsOfSemigroup(R)));
|
|
461
|
+
true
|
|
462
|
+
gap> Size(TranslationalHull(T));
|
|
463
|
+
100
|
|
464
|
+
gap> G := SmallGroup(16, 2);;
|
|
465
|
+
gap> iso := IsomorphismPermGroup(G);;
|
|
466
|
+
gap> mat := [[G.1 ^ iso, G.2 ^ iso, (G.2 * G.1) ^ iso],
|
|
467
|
+
> [(G.2 * G.2) ^ iso, G.2 ^ iso, (G.2 * G.2) ^ iso],
|
|
468
|
+
> [(G.2 * G.1 * G.2) ^ iso, G.3 ^ iso, (G.1 * G.3) ^ iso]];;
|
|
469
|
+
gap> S := ReesMatrixSemigroup(Range(iso), mat);;
|
|
470
|
+
gap> T := Range(RMSNormalization(S));;
|
|
471
|
+
gap> Size(TranslationalHull(T));
|
|
472
|
+
160
|
|
473
|
+
gap> for h in TranslationalHull(T) do
|
|
474
|
+
> l := h![1];
|
|
475
|
+
> r := h![2];
|
|
476
|
+
> for s in GeneratorsOfSemigroup(T) do
|
|
477
|
+
> for t in GeneratorsOfSemigroup(T) do
|
|
478
|
+
> if not s * (t ^ l) = (s ^ r) * t then
|
|
479
|
+
> Print(s, t, h);
|
|
480
|
+
> fi;
|
|
481
|
+
> od;
|
|
482
|
+
> od;
|
|
483
|
+
> od;
|
|
484
|
+
gap> Bitranslation(TranslationalHull(T), (1, 4, 3, 2)(5, 7)(6, 8),
|
|
485
|
+
> Transformation([1, 1, 1]), Transformation([1, 1, 1]));
|
|
486
|
+
<bitranslation on <simple semigroup of size 144, with 4 generators>>
|
|
487
|
+
gap> G := Range(IsomorphismPermGroup(SmallGroup(6, 1)));;
|
|
488
|
+
gap> mat := [[G.1, G.2], [G.1 * G.2, G.1], [G.2, G.2]];;
|
|
489
|
+
gap> S := ReesMatrixSemigroup(G, mat);;
|
|
490
|
+
gap> T := Range(RMSNormalization(S));;
|
|
491
|
+
gap> Size(TranslationalHull(T));
|
|
492
|
+
40
|
|
493
|
+
gap> Size(Semigroup(TranslationalHull(T)));
|
|
494
|
+
40
|
|
495
|
+
gap> G := Range(IsomorphismPermGroup(SmallGroup(24, 3)));;
|
|
496
|
+
gap> mat := [[G.1, G.2, G.2 * G.3]];;
|
|
497
|
+
gap> S := ReesMatrixSemigroup(G, mat);;
|
|
498
|
+
gap> T := Range(RMSNormalization(S));;
|
|
499
|
+
gap> LS := LeftTranslations(S);;
|
|
500
|
+
gap> RS := RightTranslations(S);;
|
|
501
|
+
gap> HS := TranslationalHull(S);;
|
|
502
|
+
gap> L := LeftTranslations(T);;
|
|
503
|
+
gap> R := RightTranslations(T);;
|
|
504
|
+
gap> H := TranslationalHull(T);;
|
|
505
|
+
gap> Size(LS) = Size(L);
|
|
506
|
+
true
|
|
507
|
+
gap> Size(RS) = Size(R);
|
|
508
|
+
true
|
|
509
|
+
gap> Size(HS) = Size(H);
|
|
510
|
+
true
|
|
511
|
+
|
|
512
|
+
# IsWholeFamily for translations semigroups
|
|
513
|
+
gap> S := Semigroup([Transformation([1, 1, 2, 4]), Transformation([3, 1, 3])]);;
|
|
514
|
+
gap> L := LeftTranslations(S);;
|
|
515
|
+
gap> R := RightTranslations(S);;
|
|
516
|
+
gap> Ll := ShallowCopy(AsList(L));;
|
|
517
|
+
gap> Rl := ShallowCopy(AsList(R));;
|
|
518
|
+
gap> Sort(Ll);
|
|
519
|
+
gap> Sort(Rl);
|
|
520
|
+
gap> l := Ll[1];;
|
|
521
|
+
gap> r := Rl[1];;
|
|
522
|
+
gap> IsWholeFamily(Semigroup(l));
|
|
523
|
+
false
|
|
524
|
+
gap> IsWholeFamily(Semigroup(r));
|
|
525
|
+
false
|
|
526
|
+
|
|
527
|
+
# Subsemigroups of translations
|
|
528
|
+
gap> S := Semigroup([Transformation([2, 4, 4, 1]), Transformation([2, 3, 2, 1]),
|
|
529
|
+
> Transformation([3, 3, 3])]);;
|
|
530
|
+
gap> L := LeftTranslations(S);;
|
|
531
|
+
gap> R := RightTranslations(S);;
|
|
532
|
+
gap> T := Semigroup(Generators(L){[1 .. 20]});
|
|
533
|
+
<left translations semigroup over <transformation semigroup of size 49,
|
|
534
|
+
degree 4 with 3 generators>>
|
|
535
|
+
gap> Size(T);
|
|
536
|
+
89
|
|
537
|
+
gap> ImageSetOfTranslation(AsList(T)[4]);
|
|
538
|
+
[ Transformation( [ 1, 1, 1, 1 ] ), Transformation( [ 1, 1, 1, 2 ] ),
|
|
539
|
+
Transformation( [ 1, 1, 1, 3 ] ), Transformation( [ 1, 1, 1 ] ),
|
|
540
|
+
Transformation( [ 1, 2, 2, 1 ] ), Transformation( [ 1, 2, 2, 2 ] ),
|
|
541
|
+
Transformation( [ 1, 2, 2, 3 ] ), Transformation( [ 1, 2, 2 ] ),
|
|
542
|
+
Transformation( [ 1, 3, 3, 1 ] ), Transformation( [ 1, 3, 3, 3 ] ),
|
|
543
|
+
Transformation( [ 1, 4, 4, 1 ] ), Transformation( [ 1, 4, 4, 4 ] ),
|
|
544
|
+
Transformation( [ 2, 1, 1, 1 ] ), Transformation( [ 2, 1, 1, 2 ] ),
|
|
545
|
+
Transformation( [ 2, 2, 2, 1 ] ), Transformation( [ 2, 2, 2, 2 ] ),
|
|
546
|
+
Transformation( [ 2, 2, 2, 3 ] ), Transformation( [ 2, 2, 2 ] ),
|
|
547
|
+
Transformation( [ 2, 3, 3, 1 ] ), Transformation( [ 2, 3, 3, 2 ] ),
|
|
548
|
+
Transformation( [ 2, 3, 3, 3 ] ), Transformation( [ 2, 4, 4, 1 ] ),
|
|
549
|
+
Transformation( [ 2, 4, 4, 2 ] ), Transformation( [ 2, 4, 4, 4 ] ),
|
|
550
|
+
Transformation( [ 3, 1, 1, 1 ] ), Transformation( [ 3, 1, 1, 2 ] ),
|
|
551
|
+
Transformation( [ 3, 1, 1, 3 ] ), Transformation( [ 3, 2, 2, 2 ] ),
|
|
552
|
+
Transformation( [ 3, 2, 2, 3 ] ), Transformation( [ 3, 3, 3, 1 ] ),
|
|
553
|
+
Transformation( [ 3, 3, 3, 2 ] ), Transformation( [ 3, 3, 3, 3 ] ),
|
|
554
|
+
Transformation( [ 3, 3, 3 ] ), Transformation( [ 3, 4, 4, 3 ] ),
|
|
555
|
+
Transformation( [ 3, 4, 4, 4 ] ), Transformation( [ 4, 1, 1, 1 ] ),
|
|
556
|
+
Transformation( [ 4, 1, 1, 2 ] ), Transformation( [ 4, 1, 1, 4 ] ),
|
|
557
|
+
Transformation( [ 4, 2, 2, 2 ] ), Transformation( [ 4, 2, 2, 4 ] ),
|
|
558
|
+
Transformation( [ 4, 3, 3, 3 ] ), Transformation( [ 4, 3, 3, 4 ] ),
|
|
559
|
+
Transformation( [ 4, 4, 4, 1 ] ), Transformation( [ 4, 4, 4, 2 ] ),
|
|
560
|
+
Transformation( [ 4, 4, 4, 3 ] ), Transformation( [ 4, 4, 4, 4 ] ) ]
|
|
561
|
+
gap> T := Semigroup(Generators(R){[1 .. 20]});
|
|
562
|
+
<right translations semigroup over <transformation semigroup of size 49,
|
|
563
|
+
degree 4 with 3 generators>>
|
|
564
|
+
gap> Size(T);
|
|
565
|
+
51
|
|
566
|
+
gap> ImageSetOfTranslation(AsList(T)[4]);
|
|
567
|
+
[ Transformation( [ 1, 1, 1, 1 ] ), Transformation( [ 1, 1, 1, 2 ] ),
|
|
568
|
+
Transformation( [ 1, 1, 1 ] ), Transformation( [ 1, 2, 2, 1 ] ),
|
|
569
|
+
Transformation( [ 1, 2, 2, 2 ] ), Transformation( [ 1, 2, 2 ] ),
|
|
570
|
+
Transformation( [ 1, 4, 4, 1 ] ), Transformation( [ 1, 4, 4, 4 ] ),
|
|
571
|
+
Transformation( [ 2, 1, 1, 1 ] ), Transformation( [ 2, 1, 1, 2 ] ),
|
|
572
|
+
Transformation( [ 2, 2, 2, 1 ] ), Transformation( [ 2, 2, 2, 2 ] ),
|
|
573
|
+
Transformation( [ 2, 2, 2 ] ), Transformation( [ 2, 4, 4, 1 ] ),
|
|
574
|
+
Transformation( [ 2, 4, 4, 2 ] ), Transformation( [ 2, 4, 4, 4 ] ),
|
|
575
|
+
Transformation( [ 4, 1, 1, 1 ] ), Transformation( [ 4, 1, 1, 2 ] ),
|
|
576
|
+
Transformation( [ 4, 1, 1, 4 ] ), Transformation( [ 4, 2, 2, 2 ] ),
|
|
577
|
+
Transformation( [ 4, 2, 2, 4 ] ), Transformation( [ 4, 4, 4, 1 ] ),
|
|
578
|
+
Transformation( [ 4, 4, 4, 2 ] ), Transformation( [ 4, 4, 4, 4 ] ) ]
|
|
579
|
+
|
|
580
|
+
# Subsemigroups of bitranslations
|
|
581
|
+
gap> S := Semigroup([Transformation([2, 4, 4, 1]), Transformation([2, 3, 2, 1]),
|
|
582
|
+
> Transformation([3, 3, 3])]);;
|
|
583
|
+
gap> H := TranslationalHull(S);;
|
|
584
|
+
gap> T := Semigroup(Generators(H){[1 .. 5]});
|
|
585
|
+
<semigroup of bitranslations over <transformation semigroup of size 49,
|
|
586
|
+
degree 4 with 3 generators>>
|
|
587
|
+
gap> Size(T);
|
|
588
|
+
44
|
|
589
|
+
|
|
590
|
+
# NrTranslations
|
|
591
|
+
gap> S := Semigroup([Transformation([1, 4, 3, 3, 5, 2]),
|
|
592
|
+
> Transformation([3, 4, 1, 1, 4, 2])]);;
|
|
593
|
+
gap> NrLeftTranslations(S);
|
|
594
|
+
208
|
|
595
|
+
gap> NrRightTranslations(S);
|
|
596
|
+
128
|
|
597
|
+
gap> NrBitranslations(S);
|
|
598
|
+
78
|
|
599
|
+
gap> L := LeftTranslations(S);;
|
|
600
|
+
gap> R := RightTranslations(S);;
|
|
601
|
+
gap> H := TranslationalHull(S);;
|
|
602
|
+
gap> HasSize(L) and HasSize(R) and HasSize(H);
|
|
603
|
+
true
|
|
604
|
+
gap> not (HasAsList(L) or HasAsList(R) or HasAsList(H));
|
|
605
|
+
true
|
|
606
|
+
gap> G := Range(IsomorphismPermGroup(SmallGroup(12, 1)));;
|
|
607
|
+
gap> mat := [[G.1, G.2], [G.1, G.1], [G.2, G.3]];;
|
|
608
|
+
gap> S := ReesMatrixSemigroup(G, mat);;
|
|
609
|
+
gap> T := Range(RMSNormalization(S));;
|
|
610
|
+
gap> NrLeftTranslations(S) = NrLeftTranslations(T);
|
|
611
|
+
true
|
|
612
|
+
gap> NrRightTranslations(S) = NrRightTranslations(T);
|
|
613
|
+
true
|
|
614
|
+
gap> NrBitranslations(S) = NrBitranslations(T);
|
|
615
|
+
true
|
|
616
|
+
|
|
617
|
+
# Error Testing - Left Translations
|
|
618
|
+
gap> S := Semigroup([Transformation([1, 4, 3, 3, 6, 5]),
|
|
619
|
+
> Transformation([3, 4, 1, 1, 4, 2])]);;
|
|
620
|
+
gap> T := Semigroup([Transformation([5, 2, 3, 2, 1]),
|
|
621
|
+
> Transformation([2, 3, 1, 1, 2])]);;
|
|
622
|
+
gap> L := LeftTranslations(S);;
|
|
623
|
+
gap> R := RightTranslations(S);;
|
|
624
|
+
gap> f := MappingByFunction(S, S, x -> S.1);;
|
|
625
|
+
gap> g := MappingByFunction(S, T, x -> T.1);;
|
|
626
|
+
gap> LeftTranslation(L, f);
|
|
627
|
+
Error, the mapping given must define a left translation
|
|
628
|
+
gap> LeftTranslation(L, g);
|
|
629
|
+
Error, the domain and range of the second argument must be the underlying semi\
|
|
630
|
+
group of the first
|
|
631
|
+
gap> x := [1, Size(S) + 1];;
|
|
632
|
+
gap> LeftTranslation(L, x);
|
|
633
|
+
Error, the second argument must map indices of representatives to indices of e\
|
|
634
|
+
lements of the semigroup of the first argument
|
|
635
|
+
gap> l := LeftTranslation(L, [4, 6]);
|
|
636
|
+
Error, the transformation given must define a left translation
|
|
637
|
+
gap> l := LeftTranslation(L, [4]);
|
|
638
|
+
Error, the second argument must map indices of representatives to indices of e\
|
|
639
|
+
lements of the semigroup of the first argument
|
|
640
|
+
gap> l := LeftTranslation(L, MappingByFunction(S, S, x -> S.1 * x));;
|
|
641
|
+
gap> T.1 ^ l;
|
|
642
|
+
Error, the first argument must be an element of the domain of the second
|
|
643
|
+
|
|
644
|
+
# Error Testing - Right Translations
|
|
645
|
+
gap> S := Semigroup([Transformation([1, 4, 3, 3, 6, 5]),
|
|
646
|
+
> Transformation([3, 4, 1, 1, 4, 2])]);;
|
|
647
|
+
gap> T := Semigroup([Transformation([5, 2, 3, 2, 1]),
|
|
648
|
+
> Transformation([2, 3, 1, 1, 2])]);;
|
|
649
|
+
gap> L := LeftTranslations(S);;
|
|
650
|
+
gap> R := RightTranslations(S);;
|
|
651
|
+
gap> f := MappingByFunction(S, S, x -> S.1);;
|
|
652
|
+
gap> g := MappingByFunction(S, T, x -> T.1);;
|
|
653
|
+
gap> RightTranslation(R, f);
|
|
654
|
+
Error, the mapping given must define a right translation
|
|
655
|
+
gap> RightTranslation(R, g);
|
|
656
|
+
Error, the domain and range of the second argument must be the underlying semi\
|
|
657
|
+
group of the first
|
|
658
|
+
gap> x := [1, Size(S) + 1];;
|
|
659
|
+
gap> RightTranslation(R, x);
|
|
660
|
+
Error, the second argument must map indices of representatives to indices of e\
|
|
661
|
+
lements of the semigroup of the first argument
|
|
662
|
+
gap> r := RightTranslation(R, [6, 3, 2]);
|
|
663
|
+
Error, the second argument must map indices of representatives to indices of e\
|
|
664
|
+
lements of the semigroup of the first argument
|
|
665
|
+
gap> r := RightTranslation(R, [6, 3]);
|
|
666
|
+
Error, the transformation given must define a right translation
|
|
667
|
+
gap> r := RightTranslation(R, MappingByFunction(S, S, x -> x * S.1));;
|
|
668
|
+
gap> T.1 ^ r;
|
|
669
|
+
Error, the first argument must be an element of the domain of the second
|
|
670
|
+
|
|
671
|
+
# Error Testing - Translational Hull Elements
|
|
672
|
+
gap> S := Semigroup([Transformation([1, 4, 3, 3]), Transformation([3, 4, 1, 1])]);;
|
|
673
|
+
gap> T := RectangularBand(3, 4);;
|
|
674
|
+
gap> L := LeftTranslations(S);;
|
|
675
|
+
gap> R := RightTranslations(S);;
|
|
676
|
+
gap> RT := RightTranslations(T);;
|
|
677
|
+
gap> H := TranslationalHull(S);;
|
|
678
|
+
gap> l := Representative(L);;
|
|
679
|
+
gap> r := Representative(R);;
|
|
680
|
+
gap> l := LeftTranslation(L, MappingByFunction(S, S, x -> S.1 * x));;
|
|
681
|
+
gap> r := RightTranslation(R, MappingByFunction(S, S, x -> x * S.2));;
|
|
682
|
+
gap> Bitranslation(H, l, r);
|
|
683
|
+
Error, the translations given must satisfy the linking condition
|
|
684
|
+
gap> r := Representative(RT);;
|
|
685
|
+
gap> Bitranslation(H, l, r);
|
|
686
|
+
Error, each argument must have the same underlying semigroup
|
|
687
|
+
|
|
688
|
+
# Error Testing - left translations over normalised RMS
|
|
689
|
+
gap> G := Range(IsomorphismPermGroup(SmallGroup(12, 1)));;
|
|
690
|
+
gap> mat := [[G.1, G.2], [G.1, G.1], [G.2, G.3], [G.1 * G.2, G.1 * G.3]];;
|
|
691
|
+
gap> S := ReesMatrixSemigroup(G, mat);;
|
|
692
|
+
gap> T := Range(RMSNormalization(S));;
|
|
693
|
+
gap> L := LeftTranslations(T);;
|
|
694
|
+
gap> LS := LeftTranslations(S);;
|
|
695
|
+
gap> lgpfunc := [G.1 * G.3 * G.3, G.2];;
|
|
696
|
+
gap> LeftTranslation(L, [G.1, G.1, G.2], IdentityTransformation);
|
|
697
|
+
Error, the second argument must be a list of group elements of length equal to\
|
|
698
|
+
the number of rows of the underlying semigroup of the first argument
|
|
699
|
+
gap> LeftTranslation(L, lgpfunc, Transformation([1, 3, 2]));
|
|
700
|
+
Error, the third argument must be a transformation on the number of rows of th\
|
|
701
|
+
e underlying semigroup of the first argument
|
|
702
|
+
gap> LeftTranslation(L, [G.1, G.1, G.2], IdentityTransformation);
|
|
703
|
+
Error, the second argument must be a list of group elements of length equal to\
|
|
704
|
+
the number of rows of the underlying semigroup of the first argument
|
|
705
|
+
gap> LeftTranslation(L, lgpfunc, Transformation([1, 3, 2]));
|
|
706
|
+
Error, the third argument must be a transformation on the number of rows of th\
|
|
707
|
+
e underlying semigroup of the first argument
|
|
708
|
+
|
|
709
|
+
# Error Testing - right translations over normalised RMS
|
|
710
|
+
gap> G := Range(IsomorphismPermGroup(SmallGroup(12, 1)));;
|
|
711
|
+
gap> mat := [[G.1, G.2], [G.1, G.1], [G.2, G.3], [G.1 * G.2, G.1 * G.3]];;
|
|
712
|
+
gap> S := ReesMatrixSemigroup(G, mat);;
|
|
713
|
+
gap> T := Range(RMSNormalization(S));;
|
|
714
|
+
gap> R := RightTranslations(T);;
|
|
715
|
+
gap> RS := RightTranslations(S);;
|
|
716
|
+
gap> rgpfunc := [G.1 * G.3 * G.3, G.3 * G.3, G.2, G.1];;
|
|
717
|
+
gap> RightTranslation(R, [G.1, G.2], IdentityTransformation);
|
|
718
|
+
Error, the second argument must be a list of group elements of length equal to\
|
|
719
|
+
the number of rows of the underlying semigroup of the first argument
|
|
720
|
+
gap> RightTranslation(R, rgpfunc, Transformation([1, 3, 2, 5, 4]));
|
|
721
|
+
Error, the third argument must be a transformation on the number of columns of\
|
|
722
|
+
the underlying semigroup of the first argument
|
|
723
|
+
gap> RightTranslation(R, [G.1, G.2], IdentityTransformation);
|
|
724
|
+
Error, the second argument must be a list of group elements of length equal to\
|
|
725
|
+
the number of rows of the underlying semigroup of the first argument
|
|
726
|
+
gap> RightTranslation(R, rgpfunc, Transformation([1, 3, 2, 5, 4]));
|
|
727
|
+
Error, the third argument must be a transformation on the number of columns of\
|
|
728
|
+
the underlying semigroup of the first argument
|
|
729
|
+
|
|
730
|
+
# Error testing - bitranslations over normalised RMS
|
|
731
|
+
gap> G := Range(RegularActionHomomorphism(SmallGroup(12, 1)));;
|
|
732
|
+
gap> mat := [[G.1, G.2], [G.1, G.1], [G.2, G.3]];;
|
|
733
|
+
gap> S := ReesMatrixSemigroup(G, mat);;
|
|
734
|
+
gap> T := Range(RMSNormalization(S));;
|
|
735
|
+
gap> G := UnderlyingSemigroup(T);;
|
|
736
|
+
gap> L := LeftTranslations(T);;
|
|
737
|
+
gap> R := RightTranslations(T);;
|
|
738
|
+
gap> H := TranslationalHull(T);;
|
|
739
|
+
gap> HS := TranslationalHull(S);;
|
|
740
|
+
gap> lgpfunc := [G.1 * G.3 * G.3, G.2];;
|
|
741
|
+
gap> rgpfunc := [G.1 * G.3 * G.3, G.3 * G.3, G.2];;
|
|
742
|
+
gap> lt := Transformation([2, 2]);;
|
|
743
|
+
gap> rt := Transformation([3, 3, 3]);;
|
|
744
|
+
gap> l := LeftTranslation(L, lgpfunc, lt);;
|
|
745
|
+
gap> r := RightTranslation(R, rgpfunc, rt);;
|
|
746
|
+
gap> h := Bitranslation(H, l, r);
|
|
747
|
+
<bitranslation on <semigroup>>
|
|
748
|
+
gap> h := Bitranslation(HS, l, r);
|
|
749
|
+
Error, each argument must have the same underlying semigroup
|
|
750
|
+
gap> l := LeftTranslation(L, lgpfunc, IdentityTransformation);;
|
|
751
|
+
gap> h := Bitranslation(H, l, r);
|
|
752
|
+
Error, the translations given must satisfy the linking condition
|
|
753
|
+
gap> Bitranslation(H, (1, 2, 3, 5)(4, 10, 7, 12)(6, 11, 9, 8),
|
|
754
|
+
> Transformation([2, 2]), Transformation([2, 3, 2]));
|
|
755
|
+
Error, the arguments given do not define a bitranslation
|
|
756
|
+
|
|
757
|
+
# Hashing translations
|
|
758
|
+
gap> S := Semigroup([Transformation([1, 4, 3, 3]), Transformation([3, 4, 1, 1])]);;
|
|
759
|
+
gap> L := LeftTranslations(S);;
|
|
760
|
+
gap> R := RightTranslations(S);;
|
|
761
|
+
gap> l := Representative(L);;
|
|
762
|
+
gap> r := Representative(R);;
|
|
763
|
+
gap> Lht := HTCreate(l);;
|
|
764
|
+
gap> Rht := HTCreate(r);;
|
|
765
|
+
gap> for l in L do
|
|
766
|
+
> HTAdd(Lht, l, true);
|
|
767
|
+
> od;
|
|
768
|
+
gap> for r in R do
|
|
769
|
+
> HTAdd(Rht, r, true);
|
|
770
|
+
> od;
|
|
771
|
+
|
|
772
|
+
# Hashing translational hull elements
|
|
773
|
+
gap> S := Semigroup([Transformation([1, 4, 3, 3]), Transformation([3, 4, 1, 1])]);;
|
|
774
|
+
gap> H := TranslationalHull(S);;
|
|
775
|
+
gap> ht := HTCreate(Representative(H));;
|
|
776
|
+
gap> for h in H do
|
|
777
|
+
> HTAdd(ht, h, true);
|
|
778
|
+
> od;
|
|
779
|
+
|
|
780
|
+
# Translational Hull of RZMS which is not completely 0-simple
|
|
781
|
+
gap> G := Range(IsomorphismPermGroup(SmallGroup(16, 2)));;
|
|
782
|
+
gap> mat := [[G.1, 0, 0], [G.1 * G.2, 0, G.2]];;
|
|
783
|
+
gap> S := ReesZeroMatrixSemigroup(G, mat);;
|
|
784
|
+
gap> Size(TranslationalHull(S));
|
|
785
|
+
14977
|
|
786
|
+
|
|
787
|
+
# Translational Hull of RZMS which is not completely 0-simple
|
|
788
|
+
gap> G := Range(IsomorphismPermGroup(SmallGroup(16, 2)));;
|
|
789
|
+
gap> mat := [[G.1, 0, 0], [G.1 * G.2, 0, G.2]];;
|
|
790
|
+
gap> S := ReesZeroMatrixSemigroup(G, mat);;
|
|
791
|
+
gap> NrBitranslations(S);
|
|
792
|
+
14977
|
|
793
|
+
|
|
794
|
+
#
|
|
795
|
+
gap> SEMIGROUPS.StopTest();
|
|
796
|
+
gap> STOP_TEST("Semigroups package: standard/translat.tst");
|