MAF : Introduction : What's new?

What's new ?

This page no longer lists bug-fixes made in patch releases. For information about bug fixes, please refer to the Release Notes on SourceForge.

Known bugs

New in version 2.1

There are two new utilities:

New in version 2.0


The single biggest change in MAF 2.0 is in the documentation you are reading now. Although MAF was extensively documented, perhaps too extensively, it was not easy for a beginning user to find the most important information on how to get the best from MAF, nor was there much information on why you might want to use some of the many utilities provided. For this release the documentation has been reorganised. Previously the documentation followed the general plan of the standalone documentation for KBMAG (and was in part based on it). In the new version the documentation has been divided into smaller, more topic based, sections. The author hopes that users will also find it easier to navigate. The author would welcome suggestions on how to improve the documentation further.

Command line syntax

There have been a number of changes to the command line options for automata. In particular the -strategy option now works in a completely different way, and the -tactics n option has been removed and replaced with a number of separate options.

Coset enumeration

MAF now includes a powerful coset enumerator gptcenum, which can be used as an alternative to automata when investigating finite groups and finite-index subgroups. gptcenum has a somewhat similar architecture to ACE. Eventually MAF will probably offer the same sort of emulation for ACE as it does for KBMAG.

Other new utilities

MAF has a number of new utilities that provide additional facilities. These include:

KBMAG compatibility

An effort has been made to remove as many minor incompatibilities with KBMAG as possible, particularly in the case of those executables which form a prominent part of KBMAG's GAP interface. Where there is a conflict between compatibility and enhanced functionality the KBMAG compatibility programs can be expected to err on the side of compatibility.


Successive releases in the MAF 1.x series were mostly concerned with improving MAF's behaviour and performance when constructing very large automatic structures. In MAF 2.0 more attention has been paid to the implementation of the Knuth-Bendix procedure. In particular, the 64-bit version of MAF will use significantly less memory than before in its Knuth-Bendix phase (around 40% less), due to changes in the data structures used to store data about the rewriting system, making it possible to handle somewhat more difficult problems than before. It is also easier to vary MAF's strategy, so that if necessary one can experiment with a range of different strategies with an intractable input file. MAF's heuristics for picking a default set of options have also changed slightly in an attempt to improve typical performance.