passagemath-gap-pkg-semigroups 10.6.30__cp312-abi3-macosx_13_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.
- 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/aarch64-apple-darwin23-default64-kv10/semigroups.so +0 -0
- gap/pkg/semigroups/config.guess +1807 -0
- gap/pkg/semigroups/config.log +1158 -0
- gap/pkg/semigroups/config.status +1131 -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.30.dist-info/METADATA +93 -0
- passagemath_gap_pkg_semigroups-10.6.30.dist-info/METADATA.bak +94 -0
- passagemath_gap_pkg_semigroups-10.6.30.dist-info/RECORD +354 -0
- passagemath_gap_pkg_semigroups-10.6.30.dist-info/WHEEL +6 -0
- passagemath_gap_pkg_semigroups-10.6.30.dist-info/top_level.txt +1 -0
- passagemath_gap_pkg_semigroups.dylibs/libsemigroups.2.dylib +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,334 @@
|
|
|
1
|
+
//
|
|
2
|
+
// gapbind14
|
|
3
|
+
// Copyright (C) 2020-2022 James D. Mitchell
|
|
4
|
+
//
|
|
5
|
+
// This program is free software: you can redistribute it and/or modify
|
|
6
|
+
// it under the terms of the GNU General Public License as published by
|
|
7
|
+
// the Free Software Foundation, either version 3 of the License, or
|
|
8
|
+
// (at your option) any later version.
|
|
9
|
+
//
|
|
10
|
+
// This program is distributed in the hope that it will be useful,
|
|
11
|
+
// but WITHOUT ANY WARRANTY; without even the implied warranty of
|
|
12
|
+
// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
|
13
|
+
// GNU General Public License for more details.
|
|
14
|
+
//
|
|
15
|
+
// You should have received a copy of the GNU General Public License
|
|
16
|
+
// along with this program. If not, see <https://www.gnu.org/licenses/>.
|
|
17
|
+
//
|
|
18
|
+
|
|
19
|
+
#include "gapbind14/gapbind14.hpp"
|
|
20
|
+
|
|
21
|
+
#include <stdio.h> // for fprintf, stderr
|
|
22
|
+
#include <string.h> // for memcpy, strchr, strrchr
|
|
23
|
+
|
|
24
|
+
#include <unordered_set> // for unordered_set, unordered_set<>::iterator
|
|
25
|
+
|
|
26
|
+
#include "gapbind14/gap_include.hpp" // for Obj etc
|
|
27
|
+
|
|
28
|
+
#define GVAR_ENTRY(srcfile, name, nparam, params) \
|
|
29
|
+
{ \
|
|
30
|
+
#name, nparam, params, (ObjFunc) name, srcfile ":Func" #name \
|
|
31
|
+
}
|
|
32
|
+
|
|
33
|
+
namespace gapbind14 {
|
|
34
|
+
UInt T_GAPBIND14_OBJ = 0;
|
|
35
|
+
|
|
36
|
+
namespace detail {
|
|
37
|
+
std::unordered_map<std::string, void (*)()> &init_funcs() {
|
|
38
|
+
static std::unordered_map<std::string, void (*)()> inits;
|
|
39
|
+
return inits;
|
|
40
|
+
}
|
|
41
|
+
|
|
42
|
+
int emplace_init_func(char const *module_name, void (*func)()) {
|
|
43
|
+
bool inserted = init_funcs().emplace(module_name, func).second;
|
|
44
|
+
if (!inserted) {
|
|
45
|
+
throw std::runtime_error(std::string("init function for module ")
|
|
46
|
+
+ module_name + " already inserted!");
|
|
47
|
+
}
|
|
48
|
+
return 0;
|
|
49
|
+
}
|
|
50
|
+
|
|
51
|
+
void require_gapbind14_obj(Obj o) {
|
|
52
|
+
if (TNUM_OBJ(o) != T_GAPBIND14_OBJ) {
|
|
53
|
+
ErrorQuit(
|
|
54
|
+
"expected gapbind14 object but got %s!", (Int) TNAM_OBJ(o), 0L);
|
|
55
|
+
}
|
|
56
|
+
GAPBIND14_ASSERT(SIZE_OBJ(o) == 2);
|
|
57
|
+
}
|
|
58
|
+
|
|
59
|
+
gapbind14_subtype obj_subtype(Obj o) {
|
|
60
|
+
require_gapbind14_obj(o);
|
|
61
|
+
return reinterpret_cast<gapbind14_subtype>(ADDR_OBJ(o)[0]);
|
|
62
|
+
}
|
|
63
|
+
|
|
64
|
+
char const *copy_c_str(std::string const &str) {
|
|
65
|
+
char *out = new char[str.size() + 1]; // we need extra char for NUL
|
|
66
|
+
memcpy(out, str.c_str(), str.size() + 1);
|
|
67
|
+
return out;
|
|
68
|
+
}
|
|
69
|
+
|
|
70
|
+
char const *params_c_str(size_t nr) {
|
|
71
|
+
GAPBIND14_ASSERT(nr <= 6);
|
|
72
|
+
if (nr == 0) {
|
|
73
|
+
return "";
|
|
74
|
+
}
|
|
75
|
+
static std::string params = "arg1, arg2, arg3, arg4, arg5, arg6";
|
|
76
|
+
std::string source(params.cbegin(), params.cbegin() + (nr - 1) * 6);
|
|
77
|
+
source += std::string(params.cbegin() + (nr - 1) * 6,
|
|
78
|
+
params.cbegin() + (nr - 1) * 6 + 4);
|
|
79
|
+
return copy_c_str(source);
|
|
80
|
+
}
|
|
81
|
+
|
|
82
|
+
// SubtypeBase implementations
|
|
83
|
+
|
|
84
|
+
SubtypeBase::SubtypeBase(std::string nm, gapbind14_subtype sbtyp)
|
|
85
|
+
: _name(nm), _subtype(sbtyp) {
|
|
86
|
+
static std::unordered_set<gapbind14_subtype> defined;
|
|
87
|
+
if (defined.find(sbtyp) != defined.end()) {
|
|
88
|
+
throw std::runtime_error("SubtypeBase " + to_string(sbtyp)
|
|
89
|
+
+ " already registered!");
|
|
90
|
+
} else {
|
|
91
|
+
defined.insert(sbtyp);
|
|
92
|
+
}
|
|
93
|
+
}
|
|
94
|
+
} // namespace detail
|
|
95
|
+
|
|
96
|
+
// Module implementations
|
|
97
|
+
|
|
98
|
+
Module::~Module() {
|
|
99
|
+
clear();
|
|
100
|
+
for (auto *subtype : _subtypes) {
|
|
101
|
+
delete subtype;
|
|
102
|
+
}
|
|
103
|
+
}
|
|
104
|
+
|
|
105
|
+
void Module::clear() {
|
|
106
|
+
for (auto &func : _funcs) {
|
|
107
|
+
delete func.name;
|
|
108
|
+
if (func.nargs != 0) {
|
|
109
|
+
delete func.args;
|
|
110
|
+
}
|
|
111
|
+
delete func.cookie;
|
|
112
|
+
}
|
|
113
|
+
_funcs.clear();
|
|
114
|
+
|
|
115
|
+
for (auto &vec : _mem_funcs) {
|
|
116
|
+
for (auto &func : vec) {
|
|
117
|
+
delete func.name;
|
|
118
|
+
if (func.nargs != 0) {
|
|
119
|
+
delete func.args;
|
|
120
|
+
}
|
|
121
|
+
delete func.cookie;
|
|
122
|
+
}
|
|
123
|
+
vec.clear();
|
|
124
|
+
}
|
|
125
|
+
}
|
|
126
|
+
|
|
127
|
+
gapbind14_subtype Module::subtype(std::string const &subtype_name) const {
|
|
128
|
+
auto it = _subtype_names.find(subtype_name);
|
|
129
|
+
if (it == _subtype_names.end()) {
|
|
130
|
+
throw std::runtime_error("No subtype named " + subtype_name);
|
|
131
|
+
}
|
|
132
|
+
return it->second;
|
|
133
|
+
}
|
|
134
|
+
#ifdef GAP_ENABLE_SAVELOAD
|
|
135
|
+
void Module::load(Obj o) const {
|
|
136
|
+
gapbind14_subtype sbtyp = LoadUInt();
|
|
137
|
+
ADDR_OBJ(o)[0] = reinterpret_cast<Obj>(sbtyp);
|
|
138
|
+
ADDR_OBJ(o)[1] = static_cast<Obj>(nullptr);
|
|
139
|
+
}
|
|
140
|
+
#endif
|
|
141
|
+
|
|
142
|
+
void Module::finalize() {
|
|
143
|
+
for (auto &x : _mem_funcs) {
|
|
144
|
+
x.push_back(StructGVarFunc({0, 0, 0, 0, 0}));
|
|
145
|
+
}
|
|
146
|
+
_funcs.push_back(StructGVarFunc({0, 0, 0, 0, 0}));
|
|
147
|
+
}
|
|
148
|
+
|
|
149
|
+
namespace {
|
|
150
|
+
|
|
151
|
+
Obj TheTypeTGapBind14Obj;
|
|
152
|
+
|
|
153
|
+
////////////////////////////////////////////////////////////////////////
|
|
154
|
+
// Required kernel functions
|
|
155
|
+
////////////////////////////////////////////////////////////////////////
|
|
156
|
+
|
|
157
|
+
Obj TGapBind14ObjTypeFunc(Obj o) {
|
|
158
|
+
return TheTypeTGapBind14Obj;
|
|
159
|
+
}
|
|
160
|
+
|
|
161
|
+
void TGapBind14ObjPrintFunc(Obj o) {
|
|
162
|
+
module().print(o);
|
|
163
|
+
}
|
|
164
|
+
|
|
165
|
+
#ifdef GAP_ENABLE_SAVELOAD
|
|
166
|
+
void TGapBind14ObjSaveFunc(Obj o) {
|
|
167
|
+
module().save(o);
|
|
168
|
+
}
|
|
169
|
+
|
|
170
|
+
void TGapBind14ObjLoadFunc(Obj o) {
|
|
171
|
+
module().load(o);
|
|
172
|
+
}
|
|
173
|
+
#endif
|
|
174
|
+
|
|
175
|
+
Obj TGapBind14ObjCopyFunc(Obj o, Int mut) {
|
|
176
|
+
return o;
|
|
177
|
+
}
|
|
178
|
+
|
|
179
|
+
void TGapBind14ObjCleanFunc(Obj o) {}
|
|
180
|
+
|
|
181
|
+
void TGapBind14ObjFreeFunc(Obj o) {
|
|
182
|
+
module().free(o);
|
|
183
|
+
}
|
|
184
|
+
|
|
185
|
+
////////////////////////////////////////////////////////////////////////
|
|
186
|
+
// Copied from gap/src/modules.c, should be exposed in header TODO(later)
|
|
187
|
+
////////////////////////////////////////////////////////////////////////
|
|
188
|
+
|
|
189
|
+
static Obj ValidatedArgList(const char *name,
|
|
190
|
+
int nargs,
|
|
191
|
+
const char *argStr) {
|
|
192
|
+
Obj args = ArgStringToList(argStr);
|
|
193
|
+
int len = LEN_PLIST(args);
|
|
194
|
+
if (nargs >= 0 && len != nargs)
|
|
195
|
+
fprintf(stderr,
|
|
196
|
+
"#W %s takes %d arguments, but argument string is '%s'"
|
|
197
|
+
" which implies %d arguments\n",
|
|
198
|
+
name,
|
|
199
|
+
nargs,
|
|
200
|
+
argStr,
|
|
201
|
+
len);
|
|
202
|
+
return args;
|
|
203
|
+
}
|
|
204
|
+
|
|
205
|
+
static void SetupFuncInfo(Obj func, const Char *cookie) {
|
|
206
|
+
// The string <cookie> usually has the form "PATH/TO/FILE.c:FUNCNAME".
|
|
207
|
+
// We check if that is the case, and if so, split it into the parts before
|
|
208
|
+
// and after the colon. In addition, the file path is cut to only contain
|
|
209
|
+
// the last two '/'-separated components.
|
|
210
|
+
const Char *pos = strchr(cookie, ':');
|
|
211
|
+
if (pos) {
|
|
212
|
+
Obj location = MakeImmString(pos + 1);
|
|
213
|
+
|
|
214
|
+
Obj filename;
|
|
215
|
+
char buffer[512];
|
|
216
|
+
Int len = 511 < (pos - cookie) ? 511 : pos - cookie;
|
|
217
|
+
memcpy(buffer, cookie, len);
|
|
218
|
+
buffer[len] = 0;
|
|
219
|
+
|
|
220
|
+
Char *start = strrchr(buffer, '/');
|
|
221
|
+
if (start) {
|
|
222
|
+
while (start > buffer && *(start - 1) != '/')
|
|
223
|
+
start--;
|
|
224
|
+
} else {
|
|
225
|
+
start = buffer;
|
|
226
|
+
}
|
|
227
|
+
filename = MakeImmString(start);
|
|
228
|
+
|
|
229
|
+
Obj body_bag = NewBag(T_BODY, sizeof(BodyHeader));
|
|
230
|
+
SET_FILENAME_BODY(body_bag, filename);
|
|
231
|
+
SET_LOCATION_BODY(body_bag, location);
|
|
232
|
+
SET_BODY_FUNC(func, body_bag);
|
|
233
|
+
CHANGED_BAG(body_bag);
|
|
234
|
+
CHANGED_BAG(func);
|
|
235
|
+
}
|
|
236
|
+
}
|
|
237
|
+
|
|
238
|
+
Obj IsValidGapbind14Object(Obj self, Obj arg1) {
|
|
239
|
+
detail::require_gapbind14_obj(arg1);
|
|
240
|
+
return (ADDR_OBJ(arg1)[1] != nullptr ? True : False);
|
|
241
|
+
}
|
|
242
|
+
|
|
243
|
+
// TODO(later) remove, use InstallGlobalFunction instead
|
|
244
|
+
StructGVarFunc GVarFuncs[]
|
|
245
|
+
= {GVAR_ENTRY("gapbind14.cpp", IsValidGapbind14Object, 1, "arg1"),
|
|
246
|
+
{0, 0, 0, 0, 0}};
|
|
247
|
+
} // namespace
|
|
248
|
+
|
|
249
|
+
Module &module() {
|
|
250
|
+
static Module MODULE;
|
|
251
|
+
return MODULE;
|
|
252
|
+
}
|
|
253
|
+
|
|
254
|
+
void init_kernel(char const *name) {
|
|
255
|
+
static bool first_call = true;
|
|
256
|
+
if (first_call) {
|
|
257
|
+
first_call = false;
|
|
258
|
+
InitHdlrFuncsFromTable(GVarFuncs);
|
|
259
|
+
UInt &PKG_TNUM = T_GAPBIND14_OBJ;
|
|
260
|
+
PKG_TNUM = RegisterPackageTNUM("TGapBind14", TGapBind14ObjTypeFunc);
|
|
261
|
+
|
|
262
|
+
PrintObjFuncs[PKG_TNUM] = TGapBind14ObjPrintFunc;
|
|
263
|
+
#ifdef GAP_ENABLE_SAVELOAD
|
|
264
|
+
SaveObjFuncs[PKG_TNUM] = TGapBind14ObjSaveFunc;
|
|
265
|
+
LoadObjFuncs[PKG_TNUM] = TGapBind14ObjLoadFunc;
|
|
266
|
+
#endif
|
|
267
|
+
|
|
268
|
+
CopyObjFuncs[PKG_TNUM] = &TGapBind14ObjCopyFunc;
|
|
269
|
+
CleanObjFuncs[PKG_TNUM] = &TGapBind14ObjCleanFunc;
|
|
270
|
+
IsMutableObjFuncs[PKG_TNUM] = &AlwaysNo;
|
|
271
|
+
|
|
272
|
+
InitMarkFuncBags(PKG_TNUM, MarkNoSubBags);
|
|
273
|
+
InitFreeFuncBag(PKG_TNUM, TGapBind14ObjFreeFunc);
|
|
274
|
+
|
|
275
|
+
InitCopyGVar("TheTypeTGapBind14Obj", &TheTypeTGapBind14Obj);
|
|
276
|
+
}
|
|
277
|
+
|
|
278
|
+
auto it = detail::init_funcs().find(std::string(name));
|
|
279
|
+
if (it == detail::init_funcs().end()) {
|
|
280
|
+
throw std::runtime_error(std::string("No init function for module ")
|
|
281
|
+
+ name + " found");
|
|
282
|
+
}
|
|
283
|
+
it->second(); // installs all functions in the current module.
|
|
284
|
+
module().finalize();
|
|
285
|
+
|
|
286
|
+
InitHdlrFuncsFromTable(module().funcs());
|
|
287
|
+
|
|
288
|
+
for (auto ptr : module()) {
|
|
289
|
+
InitHdlrFuncsFromTable(module().mem_funcs(ptr->name()));
|
|
290
|
+
}
|
|
291
|
+
}
|
|
292
|
+
|
|
293
|
+
void init_library(char const *name) {
|
|
294
|
+
static bool first_call = true;
|
|
295
|
+
if (first_call) {
|
|
296
|
+
first_call = false;
|
|
297
|
+
InitGVarFuncsFromTable(GVarFuncs);
|
|
298
|
+
}
|
|
299
|
+
auto &m = module();
|
|
300
|
+
StructGVarFunc const *tab = m.funcs();
|
|
301
|
+
|
|
302
|
+
// init functions from m in the record named name
|
|
303
|
+
// This is done to avoid polluting the global namespace
|
|
304
|
+
Obj global_rec = NEW_PREC(0);
|
|
305
|
+
SET_LEN_PREC(global_rec, 0);
|
|
306
|
+
|
|
307
|
+
for (Int i = 0; tab[i].name != 0; i++) {
|
|
308
|
+
UInt gvar = GVarName(tab[i].name);
|
|
309
|
+
Obj name = NameGVar(gvar);
|
|
310
|
+
Obj args = ValidatedArgList(tab[i].name, tab[i].nargs, tab[i].args);
|
|
311
|
+
Obj func = NewFunction(name, tab[i].nargs, args, tab[i].handler);
|
|
312
|
+
SetupFuncInfo(func, tab[i].cookie);
|
|
313
|
+
AssPRec(global_rec, RNamName(tab[i].name), func);
|
|
314
|
+
}
|
|
315
|
+
for (auto ptr : m) {
|
|
316
|
+
tab = m.mem_funcs(ptr->name());
|
|
317
|
+
Obj class_rec = NEW_PREC(0);
|
|
318
|
+
SET_LEN_PREC(class_rec, 0);
|
|
319
|
+
|
|
320
|
+
for (Int i = 0; tab[i].name != 0; i++) {
|
|
321
|
+
UInt gvar = GVarName(tab[i].name);
|
|
322
|
+
Obj name = NameGVar(gvar);
|
|
323
|
+
Obj args = ValidatedArgList(tab[i].name, tab[i].nargs, tab[i].args);
|
|
324
|
+
Obj func = NewFunction(name, tab[i].nargs, args, tab[i].handler);
|
|
325
|
+
SetupFuncInfo(func, tab[i].cookie);
|
|
326
|
+
AssPRec(class_rec, RNamName(tab[i].name), func);
|
|
327
|
+
}
|
|
328
|
+
AssPRec(global_rec, RNamName(ptr->name().c_str()), class_rec);
|
|
329
|
+
}
|
|
330
|
+
|
|
331
|
+
MakeImmutable(global_rec);
|
|
332
|
+
AssReadOnlyGVar(GVarName(name), global_rec);
|
|
333
|
+
}
|
|
334
|
+
} // namespace gapbind14
|
|
@@ -0,0 +1,150 @@
|
|
|
1
|
+
#############################################################################
|
|
2
|
+
##
|
|
3
|
+
## init.g
|
|
4
|
+
## Copyright (C) 2013-2022 James D. Mitchell
|
|
5
|
+
##
|
|
6
|
+
## Licensing information can be found in the README file of this package.
|
|
7
|
+
##
|
|
8
|
+
#############################################################################
|
|
9
|
+
##
|
|
10
|
+
|
|
11
|
+
if not IsBound(ORBC) then
|
|
12
|
+
BindGlobal("HTAdd_TreeHash_C", fail);
|
|
13
|
+
BindGlobal("HTValue_TreeHash_C", fail);
|
|
14
|
+
fi;
|
|
15
|
+
|
|
16
|
+
if LoadKernelExtension("semigroups") = false then
|
|
17
|
+
Error("failed to load Semigroups kernel extension");
|
|
18
|
+
fi;
|
|
19
|
+
|
|
20
|
+
if not IsBound(UserHomeExpand) then
|
|
21
|
+
BindGlobal("UserHomeExpand", USER_HOME_EXPAND);
|
|
22
|
+
fi;
|
|
23
|
+
|
|
24
|
+
if not IsBoundGlobal("IsTGapBind14Obj") then
|
|
25
|
+
DeclareCategory("IsTGapBind14Obj", IsObject);
|
|
26
|
+
BindGlobal("TheTypeTGapBind14Obj",
|
|
27
|
+
NewType(NewFamily("TGapBind14ObjFamily"), IsTGapBind14Obj));
|
|
28
|
+
fi;
|
|
29
|
+
|
|
30
|
+
BindGlobal("SEMIGROUPS", rec());
|
|
31
|
+
MakeReadWriteGlobal("SEMIGROUPS");
|
|
32
|
+
SEMIGROUPS.GENERATORS := rec();
|
|
33
|
+
SEMIGROUPS.PackageDir := GAPInfo.PackagesLoaded.semigroups[1];
|
|
34
|
+
|
|
35
|
+
BindGlobal("LIBSEMIGROUPS_VERSION",
|
|
36
|
+
Chomp(StringFile(Concatenation(SEMIGROUPS.PackageDir,
|
|
37
|
+
"/.LIBSEMIGROUPS_VERSION"))));
|
|
38
|
+
|
|
39
|
+
# added when addressing issue #949
|
|
40
|
+
if not IsBound(PreImagesNC) then
|
|
41
|
+
BindGlobal("PreImagesNC", PreImages);
|
|
42
|
+
fi;
|
|
43
|
+
if not IsBound(PreImagesElmNC) then
|
|
44
|
+
BindGlobal("PreImagesElmNC", PreImagesElm);
|
|
45
|
+
fi;
|
|
46
|
+
if not IsBound(PreImagesSetNC) then
|
|
47
|
+
BindGlobal("PreImagesSetNC", PreImagesSet);
|
|
48
|
+
fi;
|
|
49
|
+
if not IsBound(PreImagesRepresentativeNC) then
|
|
50
|
+
BindGlobal("PreImagesRepresentativeNC", PreImagesRepresentative);
|
|
51
|
+
fi;
|
|
52
|
+
|
|
53
|
+
ReadPackage("semigroups", "gap/options.g");
|
|
54
|
+
|
|
55
|
+
ReadPackage("semigroups", "gap/elements/semiringmat.gd");
|
|
56
|
+
ReadPackage("semigroups", "gap/elements/star.gd");
|
|
57
|
+
|
|
58
|
+
ReadPackage("semigroups", "gap/elements/bipart.gd");
|
|
59
|
+
ReadPackage("semigroups", "gap/elements/blocks.gd");
|
|
60
|
+
ReadPackage("semigroups", "gap/elements/boolmat.gd");
|
|
61
|
+
ReadPackage("semigroups", "gap/elements/elements.gd");
|
|
62
|
+
ReadPackage("semigroups", "gap/elements/ffmat.gd");
|
|
63
|
+
ReadPackage("semigroups", "gap/elements/maxplusmat.gd");
|
|
64
|
+
ReadPackage("semigroups", "gap/elements/pbr.gd");
|
|
65
|
+
ReadPackage("semigroups", "gap/elements/pperm.gd");
|
|
66
|
+
ReadPackage("semigroups", "gap/elements/trans.gd");
|
|
67
|
+
|
|
68
|
+
ReadPackage("semigroups", "gap/libsemigroups/fpsemi.gd");
|
|
69
|
+
ReadPackage("semigroups", "gap/libsemigroups/froidure-pin.gd");
|
|
70
|
+
ReadPackage("semigroups", "gap/libsemigroups/sims1.gd");
|
|
71
|
+
|
|
72
|
+
ReadPackage("semigroups", "gap/main/froidure-pin.gd");
|
|
73
|
+
ReadPackage("semigroups", "gap/main/semiact.gd");
|
|
74
|
+
ReadPackage("semigroups", "gap/main/setup.gd");
|
|
75
|
+
ReadPackage("semigroups", "gap/main/lambda-rho.gd");
|
|
76
|
+
ReadPackage("semigroups", "gap/main/acting.gd");
|
|
77
|
+
ReadPackage("semigroups", "gap/main/graded.gd");
|
|
78
|
+
ReadPackage("semigroups", "gap/main/orbits.gd");
|
|
79
|
+
|
|
80
|
+
ReadPackage("semigroups", "gap/semigroups/semibipart.gd");
|
|
81
|
+
ReadPackage("semigroups", "gap/semigroups/semiboolmat.gd");
|
|
82
|
+
ReadPackage("semigroups", "gap/semigroups/semicons.gd");
|
|
83
|
+
ReadPackage("semigroups", "gap/semigroups/semidp.gd");
|
|
84
|
+
ReadPackage("semigroups", "gap/semigroups/semieunit.gd");
|
|
85
|
+
ReadPackage("semigroups", "gap/semigroups/semiex.gd");
|
|
86
|
+
ReadPackage("semigroups", "gap/semigroups/semiffmat.gd");
|
|
87
|
+
ReadPackage("semigroups", "gap/semigroups/semifp.gd");
|
|
88
|
+
ReadPackage("semigroups", "gap/semigroups/semigraph.gd");
|
|
89
|
+
ReadPackage("semigroups", "gap/semigroups/semigrp.gd");
|
|
90
|
+
ReadPackage("semigroups", "gap/semigroups/semintmat.gd");
|
|
91
|
+
ReadPackage("semigroups", "gap/semigroups/semimaxplus.gd");
|
|
92
|
+
ReadPackage("semigroups", "gap/semigroups/semipbr.gd");
|
|
93
|
+
ReadPackage("semigroups", "gap/semigroups/semipperm.gd");
|
|
94
|
+
ReadPackage("semigroups", "gap/semigroups/semiquo.gd");
|
|
95
|
+
ReadPackage("semigroups", "gap/semigroups/semiringmat.gd");
|
|
96
|
+
ReadPackage("semigroups", "gap/semigroups/semirms.gd");
|
|
97
|
+
ReadPackage("semigroups", "gap/semigroups/semitrans.gd");
|
|
98
|
+
|
|
99
|
+
ReadPackage("semigroups", "gap/semigroups/grpperm.gd");
|
|
100
|
+
|
|
101
|
+
ReadPackage("semigroups", "gap/ideals/acting.gd");
|
|
102
|
+
ReadPackage("semigroups", "gap/ideals/froidure-pin.gd");
|
|
103
|
+
ReadPackage("semigroups", "gap/ideals/ideals.gd");
|
|
104
|
+
ReadPackage("semigroups", "gap/ideals/lambda-rho.gd");
|
|
105
|
+
|
|
106
|
+
ReadPackage("semigroups", "gap/greens/froidure-pin.gd");
|
|
107
|
+
ReadPackage("semigroups", "gap/greens/generic.gd");
|
|
108
|
+
ReadPackage("semigroups", "gap/greens/acting.gd");
|
|
109
|
+
|
|
110
|
+
ReadPackage("semigroups", "gap/tools/display.gd");
|
|
111
|
+
ReadPackage("semigroups", "gap/tools/io.gd");
|
|
112
|
+
ReadPackage("semigroups", "gap/tools/iterators.gd");
|
|
113
|
+
ReadPackage("semigroups", "gap/tools/utils.gd");
|
|
114
|
+
|
|
115
|
+
ReadPackage("semigroups", "gap/attributes/acting.gd");
|
|
116
|
+
ReadPackage("semigroups", "gap/attributes/attr.gd");
|
|
117
|
+
ReadPackage("semigroups", "gap/attributes/dual.gd");
|
|
118
|
+
ReadPackage("semigroups", "gap/attributes/factor.gd");
|
|
119
|
+
ReadPackage("semigroups", "gap/attributes/inverse.gd");
|
|
120
|
+
ReadPackage("semigroups", "gap/attributes/isomorph.gd");
|
|
121
|
+
ReadPackage("semigroups", "gap/attributes/isorms.gd");
|
|
122
|
+
ReadPackage("semigroups", "gap/attributes/maximal.gd");
|
|
123
|
+
ReadPackage("semigroups", "gap/attributes/properties.gd");
|
|
124
|
+
ReadPackage("semigroups", "gap/attributes/homomorph.gd");
|
|
125
|
+
ReadPackage("semigroups", "gap/attributes/semifp.gd");
|
|
126
|
+
ReadPackage("semigroups", "gap/attributes/translat.gd");
|
|
127
|
+
ReadPackage("semigroups", "gap/attributes/rms-translat.gd");
|
|
128
|
+
|
|
129
|
+
ReadPackage("semigroups", "gap/congruences/cong.gd");
|
|
130
|
+
ReadPackage("semigroups", "gap/congruences/congpart.gd");
|
|
131
|
+
ReadPackage("semigroups", "gap/congruences/conginv.gd");
|
|
132
|
+
ReadPackage("semigroups", "gap/congruences/conglatt.gd");
|
|
133
|
+
ReadPackage("semigroups", "gap/congruences/congpairs.gd");
|
|
134
|
+
ReadPackage("semigroups", "gap/congruences/congrees.gd");
|
|
135
|
+
ReadPackage("semigroups", "gap/congruences/congrms.gd");
|
|
136
|
+
ReadPackage("semigroups", "gap/congruences/congsemigraph.gd");
|
|
137
|
+
ReadPackage("semigroups", "gap/congruences/congsimple.gd");
|
|
138
|
+
ReadPackage("semigroups", "gap/congruences/conguniv.gd");
|
|
139
|
+
ReadPackage("semigroups", "gap/congruences/congwordgraph.gd");
|
|
140
|
+
|
|
141
|
+
ReadPackage("semigroups", "gap/libsemigroups/cong.gd");
|
|
142
|
+
|
|
143
|
+
ReadPackage("semigroups", "gap/fp/freeband.gd");
|
|
144
|
+
ReadPackage("semigroups", "gap/fp/freeinverse.gd");
|
|
145
|
+
ReadPackage("semigroups", "gap/fp/tietze.gd");
|
|
146
|
+
ReadPackage("semigroups", "gap/fp/word.gd");
|
|
147
|
+
|
|
148
|
+
ReadPackage("semigroups", "gap/obsolete.gd");
|
|
149
|
+
|
|
150
|
+
DeclareInfoClass("InfoSemigroups");
|
|
@@ -0,0 +1,50 @@
|
|
|
1
|
+
# ===========================================================================
|
|
2
|
+
# https://www.gnu.org/software/autoconf-archive/ax_append_flag.html
|
|
3
|
+
# ===========================================================================
|
|
4
|
+
#
|
|
5
|
+
# SYNOPSIS
|
|
6
|
+
#
|
|
7
|
+
# AX_APPEND_FLAG(FLAG, [FLAGS-VARIABLE])
|
|
8
|
+
#
|
|
9
|
+
# DESCRIPTION
|
|
10
|
+
#
|
|
11
|
+
# FLAG is appended to the FLAGS-VARIABLE shell variable, with a space
|
|
12
|
+
# added in between.
|
|
13
|
+
#
|
|
14
|
+
# If FLAGS-VARIABLE is not specified, the current language's flags (e.g.
|
|
15
|
+
# CFLAGS) is used. FLAGS-VARIABLE is not changed if it already contains
|
|
16
|
+
# FLAG. If FLAGS-VARIABLE is unset in the shell, it is set to exactly
|
|
17
|
+
# FLAG.
|
|
18
|
+
#
|
|
19
|
+
# NOTE: Implementation based on AX_CFLAGS_GCC_OPTION.
|
|
20
|
+
#
|
|
21
|
+
# LICENSE
|
|
22
|
+
#
|
|
23
|
+
# Copyright (c) 2008 Guido U. Draheim <guidod@gmx.de>
|
|
24
|
+
# Copyright (c) 2011 Maarten Bosmans <mkbosmans@gmail.com>
|
|
25
|
+
#
|
|
26
|
+
# Copying and distribution of this file, with or without modification, are
|
|
27
|
+
# permitted in any medium without royalty provided the copyright notice
|
|
28
|
+
# and this notice are preserved. This file is offered as-is, without any
|
|
29
|
+
# warranty.
|
|
30
|
+
|
|
31
|
+
#serial 8
|
|
32
|
+
|
|
33
|
+
AC_DEFUN([AX_APPEND_FLAG],
|
|
34
|
+
[dnl
|
|
35
|
+
AC_PREREQ(2.64)dnl for _AC_LANG_PREFIX and AS_VAR_SET_IF
|
|
36
|
+
AS_VAR_PUSHDEF([FLAGS], [m4_default($2,_AC_LANG_PREFIX[FLAGS])])
|
|
37
|
+
AS_VAR_SET_IF(FLAGS,[
|
|
38
|
+
AS_CASE([" AS_VAR_GET(FLAGS) "],
|
|
39
|
+
[*" $1 "*], [AC_RUN_LOG([: FLAGS already contains $1])],
|
|
40
|
+
[
|
|
41
|
+
AS_VAR_APPEND(FLAGS,[" $1"])
|
|
42
|
+
AC_RUN_LOG([: FLAGS="$FLAGS"])
|
|
43
|
+
])
|
|
44
|
+
],
|
|
45
|
+
[
|
|
46
|
+
AS_VAR_SET(FLAGS,[$1])
|
|
47
|
+
AC_RUN_LOG([: FLAGS="$FLAGS"])
|
|
48
|
+
])
|
|
49
|
+
AS_VAR_POPDEF([FLAGS])dnl
|
|
50
|
+
])dnl AX_APPEND_FLAG
|
|
@@ -0,0 +1,53 @@
|
|
|
1
|
+
# ===========================================================================
|
|
2
|
+
# https://www.gnu.org/software/autoconf-archive/ax_check_compile_flag.html
|
|
3
|
+
# ===========================================================================
|
|
4
|
+
#
|
|
5
|
+
# SYNOPSIS
|
|
6
|
+
#
|
|
7
|
+
# AX_CHECK_COMPILE_FLAG(FLAG, [ACTION-SUCCESS], [ACTION-FAILURE], [EXTRA-FLAGS], [INPUT])
|
|
8
|
+
#
|
|
9
|
+
# DESCRIPTION
|
|
10
|
+
#
|
|
11
|
+
# Check whether the given FLAG works with the current language's compiler
|
|
12
|
+
# or gives an error. (Warnings, however, are ignored)
|
|
13
|
+
#
|
|
14
|
+
# ACTION-SUCCESS/ACTION-FAILURE are shell commands to execute on
|
|
15
|
+
# success/failure.
|
|
16
|
+
#
|
|
17
|
+
# If EXTRA-FLAGS is defined, it is added to the current language's default
|
|
18
|
+
# flags (e.g. CFLAGS) when the check is done. The check is thus made with
|
|
19
|
+
# the flags: "CFLAGS EXTRA-FLAGS FLAG". This can for example be used to
|
|
20
|
+
# force the compiler to issue an error when a bad flag is given.
|
|
21
|
+
#
|
|
22
|
+
# INPUT gives an alternative input source to AC_COMPILE_IFELSE.
|
|
23
|
+
#
|
|
24
|
+
# NOTE: Implementation based on AX_CFLAGS_GCC_OPTION. Please keep this
|
|
25
|
+
# macro in sync with AX_CHECK_{PREPROC,LINK}_FLAG.
|
|
26
|
+
#
|
|
27
|
+
# LICENSE
|
|
28
|
+
#
|
|
29
|
+
# Copyright (c) 2008 Guido U. Draheim <guidod@gmx.de>
|
|
30
|
+
# Copyright (c) 2011 Maarten Bosmans <mkbosmans@gmail.com>
|
|
31
|
+
#
|
|
32
|
+
# Copying and distribution of this file, with or without modification, are
|
|
33
|
+
# permitted in any medium without royalty provided the copyright notice
|
|
34
|
+
# and this notice are preserved. This file is offered as-is, without any
|
|
35
|
+
# warranty.
|
|
36
|
+
|
|
37
|
+
#serial 6
|
|
38
|
+
|
|
39
|
+
AC_DEFUN([AX_CHECK_COMPILE_FLAG],
|
|
40
|
+
[AC_PREREQ(2.64)dnl for _AC_LANG_PREFIX and AS_VAR_IF
|
|
41
|
+
AS_VAR_PUSHDEF([CACHEVAR],[ax_cv_check_[]_AC_LANG_ABBREV[]flags_$4_$1])dnl
|
|
42
|
+
AC_CACHE_CHECK([whether _AC_LANG compiler accepts $1], CACHEVAR, [
|
|
43
|
+
ax_check_save_flags=$[]_AC_LANG_PREFIX[]FLAGS
|
|
44
|
+
_AC_LANG_PREFIX[]FLAGS="$[]_AC_LANG_PREFIX[]FLAGS $4 $1"
|
|
45
|
+
AC_COMPILE_IFELSE([m4_default([$5],[AC_LANG_PROGRAM()])],
|
|
46
|
+
[AS_VAR_SET(CACHEVAR,[yes])],
|
|
47
|
+
[AS_VAR_SET(CACHEVAR,[no])])
|
|
48
|
+
_AC_LANG_PREFIX[]FLAGS=$ax_check_save_flags])
|
|
49
|
+
AS_VAR_IF(CACHEVAR,yes,
|
|
50
|
+
[m4_default([$2], :)],
|
|
51
|
+
[m4_default([$3], :)])
|
|
52
|
+
AS_VAR_POPDEF([CACHEVAR])dnl
|
|
53
|
+
])dnl AX_CHECK_COMPILE_FLAGS
|