Goto Chapter: Top 1 2 3 Bib Ind
 [Top of Book]  [Contents]   [Previous Chapter]   [Next Chapter] 

3 Development History
 3.1 Versions of the package
 3.2 What needs doing next?

3 Development History

3.1 Versions of the package

The first version of the package, written for GAP 3, formed part of Anne Heyworth's thesis [Hey99] in 1999, but was not made generally available.

Version 0.91 was prepared to run under GAP 4.4.6, in July 2005.

Version 0.94 differed in two significant ways.

Version 0.95, of 9th October 2007, just fixed file protections and added a CHANGES file.

Version 0.96 was required because the Kan website moved with the rest of the Mathematics website at Bangor.

Version 0.97, of November 18th 2008, deleted temporary fixes which were no longer needed once version 1.12 of Automata became available.

Version 1.01, of August 2011, included minor changes required for GAP 4.5. In particular, the test file kan_manual.tst was replaced by the pair fulltest.tst and parttest.tst.

Version 1.11, of December 2014 was required when the Kan website moved yet again. At the same time a bitbucket repository for the package was started.

Kan became an accepted GAP package in May 2015.

3.2 What needs doing next?

There are too many items to list here, but some of the most important are as follows.

3.2-1 DoubleCosetsAutomaton
‣ DoubleCosetsAutomaton( G, U, V )( operation )
‣ RightCosetsAutomaton( G, V )( operation )

Alternative methods for DoubleCosetsNC(G,U,V) and RightCosetsNC(G,V) should be provided in the cases where the group G has a rewriting system or is known to be infinite. At present the functions RightCosetsAutomaton and DoubleCosetsAutomaton return minimized automata, and Iterators for these are not yet available.


gap> F := FreeGroup(2);;
gap> rels := [ F.2^2, (F.1*F.2)^2 ];;
gap> G4 := F/rels;;
gap> genG4 := GeneratorsOfGroup( G4 );;
gap> a := genG4[1];  b := genG4[2];;
gap> U := Subgroup( G4, [a^2] );;
gap> V := Subgroup( G4, [b] );;
gap> dc4 := DoubleCosetsAutomaton( G4, U, V );;
gap> Print( dc4 );
Automaton("det",5,"HKaAbB",[ [ 2, 2, 2, 5, 2 ], [ 2, 2, 1, 2, 1 ], [ 2, 2, 2, \
2, 3 ], [ 2, 2, 2, 2, 2 ], [ 2, 2, 2, 2, 2 ], [ 2, 2, 2, 2, 2 ] ],[ 4 ],[ 1 ])\
;;
gap> rc4 := RightCosetsAutomaton( G4, V );;
gap> Print( rc4 );
Automaton("det",6,"HKaAbB",[ [ 2, 2, 2, 6, 2, 2 ], [ 2, 2, 1, 2, 1, 1 ], [ 2, \
2, 3, 2, 2, 3 ], [ 2, 2, 2, 2, 5, 5 ], [ 2, 2, 2, 2, 2, 2 ], [ 2, 2, 2, 2, 2, \
2 ] ],[ 4 ],[ 1 ]);;

 [Top of Book]  [Contents]   [Previous Chapter]   [Next Chapter] 
Goto Chapter: Top 1 2 3 Bib Ind

generated by GAPDoc2HTML