GAP:DirectedPowerGraph

Function type
The function takes as input a group (supposed to be a finite group) and outputs a graph.

Behavior
The graph output is isomorphic to the directed power graph of the group.

Packages used
The function definition requires the Grape package. If this package is installed but not loaded, it can be loaded using:

LoadPackage("grape")

Code
DirectedPowerGraph := function(G) local L,o,f; o := Order(G); L := AsList(Set(G)); f := function(x,y) return(IsSubgroup(Group(L[x]),Group(L[y]))); end;; return(Graph(TrivialSubgroup(SymmetricGroup(o)),[1..o],OnPoints,f,true)\ );