IsFrobenius:=function(g)
#Tests, if the (abstract) group is a Frobenius group
local N, a, H, U;

N:=NormalSubgroups(g);
N:=Filtered(N,x->IsNilpotent(x));
N:=Filtered(N,x->Size(x)>1);
N:=Filtered(N,x->IsHall(g,x));
for a in N do
H:=Complementclasses(g,a)[1];
U:=Operation(g,RightCosets(g,H),OnRight);
if PermutationGroupIsFrobenius(U) then
return true; #U is the right permutation group
fi;
od;
return false;
end;