'Return the subgroup generated by `gens` which is a list of
elements of the group'

def subgroup(self, gens):

    if (not all([(g in self) for g in gens])):
        raise ValueError("The    group    doesn't    contain    the    supplied    generators")
    G = PermutationGroup(gens)
    return G
