LOOPS: Computing with quasigroups and loops in GAP
Gábor P. Nagy (University of Szeged, Hungary)
Petr Vojtěchovský (University of Denver, USA)
This is the official distribution webpage of the LOOPS package for GAP 4. You will find here:
Note: The package has been submitted to GAP on October 15, 2004 and is now available
with the standard distribution of GAP. It continues to evolve according to the comments
of the referees and users.
Brief description
LOOPS is a package for GAP 4 whose purpose is to provide researchers in
nonassociative algebra with a powerful computational tool concerning finite loops
and quasigroups; and to extend GAP toward the realm of nonassociative structures.
The package consists of three complementary parts: core methods for quasigroups
and loops, specific methods for loops (mainly Moufang loops), libraries of small
loops.
Installation instructions
To install LOOPS, you must have GAP version 4.4 installed on your computer. Then
- download any of the available versions (Windows, Unix) of LOOPS
- unpack the file into the pkg directory of GAP
After this step, you will see the subfolder loops in the pkg folder.
To load LOOPS into GAP, start GAP and use LoadPackage( "loops" );.
If you prefer LOOPS to load automatically anytime you start GAP,
edit the value of Autoload in the file loops/PackageInfo.g
from false to true.
Download
The most recent version of LOOPS is 2.1.0.
Before you download LOOPS, you might want to check the
README.loops and
PackageInfo.g files,
and the documentation.
Documentation
The documentation for the package is included with the distribution and is
located in the loops/doc folder.
You can also access the documentation directly from here.
- pdf (pdf version)
- ps (postscript version)
- dvi (device independent version)
- html (html version)
New features
In version 2.1.0:
- Added library "nilpotent" of all nonassociative nilpotent loops of order less than 12.
- Added functions RandomLoop, RandomNilpotentLoop, RandomQuasigroup.
- AsGroup, AsLoop, AsQuasigroup replaced with IntoGroup, IntoLoop, IntoQuasigroup to avoid
conflict with naming rules of GAP.
- Added functions that, given a permutation group G, search for a loop Q such that the multiplication group of Q is contained in G.
- Major update of test files and documentation, particulary of the index.
In version 2.0.0
- New file structure for the entire package.
- Updated test files.
- Updated documentation.
- Added AssociatedLeftBruckLoop( L ) for left Bol loops L in which squaring is a permutation.
- Improved Discriminator. (It is a bit slower but it can substantially speed up search for isomorphisms.)
- Removed IsomorphismTypeOfMoufangLoop and the data file moufang_discriminators.dat, since the isomorphism problem
for Moufang loops of order 64 has been solved.
In version 1.9.0:
- New library "code" of code loops and related functions and filters: IsCodeLoop, CodeLoop.
- DisplayLibraryInfo( name ) now announces the list of correct library names and returns fail when
name is not a correct library name. Before, it returned an error.
- Documentation updated, including HTML.
- Added MiddleInnerMappingGroup.
- Added IsLeftALoop, IsMiddleALoop, IsRightALoop, IsALoop,
and many filters related to A-loops.
- Changed creation of quasigroups and loops by sections. We now support
CayleyTableByPerms( perms ), QuasigroupByLeftSection( section ),
LoopByLeftSection( section ), QuasigroupByRightSection( section ),
LoopByRightSection( section ), QuasigroupByRightSection( G, H, T ),
and LoopByRightSection( G, H, T ). The methods with arguments G, H, T are much faster
than in version 1.5.0. Note that we no more support
QuasigroupByLeftSection( G, H, T ), and LoopByLeftSection( G, H, T) since
actions act by default on the right in GAP.
- Test files updated.
Click to see the log of older changes.
Known bugs in the most recent version
- We are not aware of any bugs at this time.
Older versions of the package
Since several published papers rely on older versions of the package, we post them here so that calculations can be verified.
For Unix: version
1.0.0,
1.1.0,
1.2.0,
1.3.0,
1.4.0,
1.5.0,
1.9.0,
2.0.0.
For Windows: version
1.0.0,
1.1.0,
1.2.0,
1.3.0,
1.4.0,
1.5.0,
1.9.0,
2.0.0.
Acknowledgement
While developing the LOOPS package, G. P. Nagy was supported by the OTKA grants F042959 and T043758.
While working toward LOOPS version 2.0.0, Petr Vojtechovsky was supported by the 2006 PROF grant of the University of Denver.
We thank
Muniru Asiru, Bjoern Assmann, Andreas Distler, Steve Flammia, Kenneth W. Johnson,
Michael K. Kinyon, Frank Luebeck, and Jonathan D. H. Smith for comments and suggestions.
last update: December 27, 2008