Sounds good. I am just not sure if *implementing* a pure abstract group class is the best way to go. From an implementation perspective, it would be very convenient if the abstract group class encapsulates the permutation group class. Implementing any other concrete group will then require one to a) inherit the abstract class, b) map the group operation to an appropriate permutation group operation and c) construct an isomorphism from the concrete group to the permutation group. This way we can reuse all the algorithms that have been implemented for permutation groups. This strategy is useful for implementation because perm group algorithms are the simplest to implement.
I have not looked at the source code of GAP but I think the abstract groups that GAP allows you to create are really permutation groups masquerading as abstract groups. I could be hopelessly wrong though. -- You received this message because you are subscribed to the Google Groups "sympy" group. To post to this group, send email to sympy@googlegroups.com. To unsubscribe from this group, send email to sympy+unsubscr...@googlegroups.com. For more options, visit this group at http://groups.google.com/group/sympy?hl=en.