Skip to content

Repository files navigation

The GAP/MAGMA package DistinguishingNumber

This repository contains GAP, MAGMA, and PYTHON code that accompany a joint publication [TODO]. With these, you can recreate all computations that are referenced in the publication, see Section (Re-)Generating the Output.

The GAP package D# provides methods for computing the distinguishing number of a permutation group and a corresponding witnessing partition.

The MAGMA files provide the same functionality.

The PYTHON files are needed for a few numerical computations in the paper.

Installation for ALL

1. To get the newest version of this package download the archive file DistinguishingNumber-x.x.tar.gz from

https://gap-packages.github.io/DistinguishingNumber/

2. The installation for all systems require to unpack the archive file, which creates a subdirectory called DistinguishingNumber/.

The location is only important for the GAP installation process. Thus we recommend putting it in a GAP pkg/ directory, see Step 2 in Installation for GAP.

3. You can now follow the instructions of the installation for each system, skipping the parts where the archive is downloaded and unpacked.

Installation for GAP

1. To get the newest version of this GAP 4 package download the archive file DistinguishingNumber-x.x.tar.gz from

https://gap-packages.github.io/DistinguishingNumber/

2. Locate a pkg/ directory where GAP searches for packages, see

9.2 GAP Root Directories

in the GAP manual for more information.

3. Unpack the archive file in such a pkg/ directory which creates a subdirectory called DistinguishingNumber/.

4. Now you can use the package within GAP by entering LoadPackage("DistinguishingNumber"); on the GAP prompt.

Installation for MAGMA

1. To get the newest version of this MAGMA package download the archive file DistinguishingNumber-x.x.tar.gz from

https://gap-packages.github.io/DistinguishingNumber/

2. Unpack the archive file in an arbitrary location which creates a subdirectory called DistinguishingNumber/.

3. Start MAGMA from within the unpacked directory. You can use the package now by entering load "read.mag"; on the MAGMA prompt.

Installation for PYTHON

1. To get the newest version of this PYTHON package download the archive file DistinguishingNumber-x.x.tar.gz from

https://gap-packages.github.io/DistinguishingNumber/

2. Unpack the archive file in an arbitrary location which creates a subdirectory called DistinguishingNumber/.

3. Run the following to make the PYTHON package executable from within the unpacked directory.

pip install -e ./

(Re-)Generating the Output

We recommend calling the scripts not by hand, but rather by running

python runScripts.py <scripts>

For an explanation of the correct usage and all options, see the internal help via

python runScripts.py --help

We include a list of example usages:

code comment
python runScripts.py scripts/lemma_2_4 run all scripts from lemma_2_4
python runScripts.py lemma_2_4 run all scripts from lemma_2_4
python runScripts.py lemma_2_5/**/*.py run all python scripts from lemma_2_5
python runScripts.py *_2_*/**/* run all scripts from section 2
python runScripts.py run all scripts

Dependencies

  • gap
  • gap packages:
    • io
    • ProgressBar
  • magma
  • python3
  • python3 packages:
    • argparse
    • datetime
    • functools
    • glob
    • multiprocessing
    • numpy
    • os
    • pandas
    • subprocess
    • time

License

DistinguishingNumber is free software you can redistribute it and/or modify it under the terms of the GNU General Public License as published by the Free Software Foundation; either version 2 of the License, or (at your option) any later version. For details, see the file LICENSE distributed as part of this package or see the FSF's own site.

About

The GAP/MAGMA package D# provides methods for computing the distinguishing number of a permutation group and a corresponding witnessing partition

Resources

Stars

1 star

Watchers

1 watching

Forks

Releases

Packages

Contributors

Languages