Using the Magma calculator at http://magma.maths.usyd.edu.au/calc/ I listed all subgroups of C3XC3 :
F<x, y>:=FreeAbelianGroup(2);
G:=quo<F | 3*x, 3*y>;
sub:=Subgroups(G);
sub
Conjugacy classes of subgroups
------------------------------
[1] Order 9 Length 1
Abelian Group isomorphic to Z/3 + Z/3
Defined on 2 generators
Relations:
3*G.1 = 0
3*G.2 = 0
[2] Order 3 Length 1
Abelian Group isomorphic to Z/3
Defined on 1 generator in supergroup G:
$.1 = 2*G.1
Relations:
3*$.1 = 0
[3] Order 3 Length 1
Abelian Group isomorphic to Z/3
Defined on 1 generator in supergroup G:
$.1 = G.2
Relations:
3*$.1 = 0
[4] Order 3 Length 1
Abelian Group isomorphic to Z/3
Defined on 1 generator in supergroup G:
$.1 = 2*G.1 + 2*G.2
Relations:
3*$.1 = 0
[5] Order 3 Length 1
Abelian Group isomorphic to Z/3
Defined on 1 generator in supergroup G:
$.1 = 2*G.1 + G.2
Relations:
3*$.1 = 0
[6] Order 1 Length 1
Abelian Group of order 1
How can I get the same information using Sage?
EDIT/UPDATE: Thanks to an answer of kcrisman I now have:
F.<x, y, z>=FreeGroup()
G=F/[x^2, y^6, z^6, x*y*x^-1*y^-1, x*z*x^-1*z^-1, y*z*y^-1*z^-1]
G_perm = G.as_permutation_group()
G_perm.structure_description()
len(G_perm.subgroups())
[G_perm.subgroups()[x].structure_description() for x in range (len(G_perm.subgroups()))]
Remaining questions are:
1) How do I get the generators and relations of the subgroups?
2) Is it possible to list only the subgroups which are only subgroups of the group and continue in a tree fashion manner?
3) No doubt there is a better, faster way to get the info, how?
We could probably get this information more directly from Gap, but here is at least some of what you are looking for.