Closed aidevnn closed 4 months ago
A proper implementation of the J.J. Cannon algorithm for defining relators is now complete. This allows for the computation of permutation groups of order 7 in just one second. By leveraging newly discovered methods, we can enhance the previous implementation of the Todd-Coxeter algorithm.
There are some concerns with the current implementation of the Todd-Coxeter algorithm. Specifically, it struggles to handle coincidences when the relators are not properly structured. Additionally, there seems to be some redundant or ‘dead’ code present that needs to be addressed.
We have implemented a new version of the Todd-Coxeter algorithm, which computes permutation groups of order 7 more efficiently than the previous one. This version can also be applied to the J.J.Cannon algorithm for defining relators, and both algorithms can be integrated into a single structure.
Common Graph tools* can handle both TC-algo and JJCan-algo. The remaining task is to integrate it with WordGroup and to rerun all unit tests and examples.
*: implementation is independant from other part of the project and can be reused (copy-paste) without change or migrated to another programming language.
A possible integration of the Todd-Coxeter algorithm and Cannon’s algorithm has been done, and it works very well.
John J. Cannon also provided many other useful algorithms for finite groups, such as computing all subgroups of a given group, or finding transitive groups of higher degree. It would be interesting to write them in C# as well and to add them to the project.
The current implementations of the Todd-Coxeter and J. Cannon algorithms for managing finite group presentations do not incorporate graph theory, presenting an opportunity for enhancement. For instance, these methods are currently unable to handle the Symmetric group of order 7.