Development History
Versions of the package

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

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

Version, &kan; 0.94, differed in two significant ways: this manual is prepared using the `GAPDoc` package; the test file kan/tst/kan\_manual.tst sets the AssertionLevel to 0 to avoid recursion in the `Automata` package. The latest version, &kan; 0.95, of 9th October 2007, just fixed file protections and added a CHANGES file.
What needs doing next?

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

Implement iterators and enumerators for double cosets.
At present the methods for DoubleCosetsNC and RightCosetsNC in this package return automata, rather than lists of cosets or coset enumerators. This needs to be fixed.
Provide methods for operations such as DoubleCosetRepsAndSizes.
Convert the rest of the &GAP; 3 &kan; package to &GAP; 4.
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 ]);;