# Elementary abelian p-subgroups of a finite group

Let G be a finite group. An elementary abelian p-subgroup of G is an abelian subgroup E whose exponent is p. The order of such a group is p^r from some r, called the rank of E. The lattice of all elementary abelian p-subgroups in G is called the Quillen Complex of the group G. I'm interested in using Sage to obtain some information about the Quillen Complex such as:

For a fixed r, how many conjugacy classes of elementary abelian p-subgroups of rank r are in G?

How many such subgroups are in each conjugacy class?

What is a set of minimal generators of a subgroup representing each conjugacy class?

In short, Magma has a command called ElementaryAbelianSubgroups which does exactly what I want, but I'd like to figure out how to do this with Sage. I'm very new to Sage, so I would appreciate as much detail in your answer as possible.

Perhaps someone has already dealt with this question, and I can benefit from their work, or perhaps there are similar commands that I can combine to answer my question.