Blob Blame History Raw
--- lib/morpheus.gi.orig	2022-08-18 14:51:32.000000000 -0600
+++ lib/morpheus.gi	2022-09-10 09:58:47.425774918 -0600
@@ -1746,8 +1746,11 @@ InstallGlobalFunction(Morphium,function(
 local len,combi,Gr,Gcl,Ggc,Hr,Hcl,bg,bpri,x,dat,
       gens,i,c,hom,free,elms,price,result,rels,inns,bcl,vsu;
 
-  IsSolvableGroup(G); # force knowledge
-  gens:=SmallGeneratingSet(G);
+  if IsSolvableGroup(G) then
+    gens:=MinimalGeneratingSet(G);
+  else
+    gens:=SmallGeneratingSet(G);
+  fi;
   len:=Length(gens);
   Gr:=MorRatClasses(G);
   Gcl:=MorMaxFusClasses(Gr);
--- lib/teaching.g.orig	2022-08-18 14:51:32.000000000 -0600
+++ lib/teaching.g	2022-09-10 10:03:01.610057933 -0600
@@ -197,9 +197,9 @@ DeclareGlobalFunction("CosetDecompositio
 ##  <A>H</A>-conjugacy.
 ##  <Example><![CDATA[
 ##  gap> AllHomomorphismClasses(SymmetricGroup(4),SymmetricGroup(3)); 
-##  [ [ (1,3,4,2), (1,3,4) ] -> [ (), () ],
-##    [ (1,3,4,2), (1,3,4) ] -> [ (1,2), () ],
-##    [ (1,3,4,2), (1,3,4) ] -> [ (2,3), (1,2,3) ] ]
+##  [ [ (2,4,3), (1,4,2,3) ] -> [ (), () ],
+##    [ (2,4,3), (1,4,2,3) ] -> [ (), (1,2) ],
+##    [ (2,4,3), (1,4,2,3) ] -> [ (1,2,3), (1,2) ] ]
 ##  ]]></Example>
 ##  </Description>
 ##  </ManSection>
@@ -227,16 +227,16 @@ DeclareGlobalFunction("AllHomomorphismCl
 ##  <Ref Func="AllAutomorphisms"/> returns all bijective endomorphisms.
 ##  <Example><![CDATA[
 ##  gap> AllHomomorphisms(SymmetricGroup(3),SymmetricGroup(3));
-##  [ [ (1,2,3), (1,2) ] -> [ (), () ], 
-##    [ (1,2,3), (1,2) ] -> [ (), (1,2) ], 
-##    [ (1,2,3), (1,2) ] -> [ (), (2,3) ], 
-##    [ (1,2,3), (1,2) ] -> [ (), (1,3) ], 
-##    [ (1,2,3), (1,2) ] -> [ (1,2,3), (1,2) ], 
-##    [ (1,2,3), (1,2) ] -> [ (1,2,3), (2,3) ], 
-##    [ (1,2,3), (1,2) ] -> [ (1,3,2), (1,2) ], 
-##    [ (1,2,3), (1,2) ] -> [ (1,2,3), (1,3) ], 
-##    [ (1,2,3), (1,2) ] -> [ (1,3,2), (1,3) ], 
-##    [ (1,2,3), (1,2) ] -> [ (1,3,2), (2,3) ] ]
+##  [ [ (2,3), (1,2,3) ] -> [ (), () ], 
+##    [ (2,3), (1,2,3) ] -> [ (1,2), () ], 
+##    [ (2,3), (1,2,3) ] -> [ (2,3), () ], 
+##    [ (2,3), (1,2,3) ] -> [ (1,3), () ], 
+##    [ (2,3), (1,2,3) ] -> [ (2,3), (1,2,3) ], 
+##    [ (2,3), (1,2,3) ] -> [ (1,3), (1,2,3) ], 
+##    [ (2,3), (1,2,3) ] -> [ (1,3), (1,3,2) ], 
+##    [ (2,3), (1,2,3) ] -> [ (1,2), (1,2,3) ], 
+##    [ (2,3), (1,2,3) ] -> [ (2,3), (1,3,2) ], 
+##    [ (2,3), (1,2,3) ] -> [ (1,2), (1,3,2) ] ]
 ##  ]]></Example>
 ##  </Description>
 ##  </ManSection>
@@ -954,7 +954,11 @@ local cl,cnt,bg,bw,bo,bi,k,gens,go,imgs,
     repeat
       if cnt=0 then
 	# first the small gen syst.
-	gens:=SmallGeneratingSet(H);
+	if IsSolvableGroup(H) then
+	  gens:=MinimalGeneratingSet(H);
+	else
+	  gens:=SmallGeneratingSet(H);
+	fi;
 	sg:=Length(gens);
       else
 	# then something random