Group interface missing.
We should add a Group interface to the docs. Actually, we should add a general AbstractAlgebra object interface, since it seems like some things have to exist for every AbstractAlgebra object, regardless of what they are, e.g. parent or deepcopy, etc.
We could then factor out some stuff that would be in both the Group and Ring interface.
Perhaps @kalmarek could look into adding a Group interface to the docs, modeled after the Ring interface.
The factoring out of the common part can be done later on, if we decide we want it.
Fixed in trunk.
where is the group interface actually described?
I'll reopen if you like.
I was just curious if something was done what slipped my attention
No, nothing. I just looked and saw there was a section "Groups" in the docs. I didn't check carefully enough.
By the way, would you be terribly offended if we based the Groups section of Oscar.jl on Gap instead of your Julia code in AbstractAlgebra? (The latter can continue to exist and will be independently useful, in my opinion, it just wouldn't be the default code for groups in Oscar.jl.) Basically Oscar.jl has to make a canonical choice between all the different systems for each type of object, and then implement conversions to all the others.
No, not at all ;-)
I think we are not going to spend much time implementing Groups in AbstractAlgebra, or defining a full interface. Of course this may be revisited at some point.
But for now I will mark this as something the Julia community might like to take over, if it is useful to them.
Such interface is already defined in GroupsCore.jl package.
If AbstractAlgebra won't implement anything more on the groups side it would make more sense for GroupsCore to define Group abstract type, since then could be extended by "julia_community" (e.g. become a subtype of Monoid etc).
Of course only if Oscar.jl intends to implement GroupsCore interface for its groups @fingolfin?
Ok with me. We only use permutations I believe. I don't see any way around continuing to do so. But yeah, there is no need for us to define Group if that is more convenient.
Hecke uses Group for the abelian groups. Alternatively the group Interface stuff just goes here without further discussions.
Ok, I'll mark this as decision instead of julia_community. I don't have an opinion and will wait for you guys to decide what you want. I am not a computational group theorist. :-)