Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
8 changes: 7 additions & 1 deletion lib/meatauto.gi
Original file line number Diff line number Diff line change
Expand Up @@ -1320,6 +1320,10 @@ local n, hc1, hc2, nc, b1, b2, map, remain, j, found, hom, i, k;
Length(SMTX.BasisEndomorphismsRadical(M2)) ) then
# different endomorphism algebra dimensions
return fail;
elif MTX.IsIrreducible(M1) and MTX.IsIrreducible(M2) then
return MTX.IsomorphismIrred(M1, M2);
elif MTX.IsIrreducible(M1) <> MTX.IsIrreducible(M2) then
return fail;
fi;

hc1:=SMTX.HomogeneousComponents(M1);
Expand Down Expand Up @@ -1637,7 +1641,9 @@ end;
SMTX.BasisModuleHomomorphisms:=function(m1,m2)
local b;
TestModulesFitTogether(m1,m2);
if m1.dimension>5 then
if MTX.IsIrreducible(m1) then
b:=MTX.Homomorphisms(m1,m2);
elif m1.dimension>5 then
b:= SpinHom(m1,m2);
Assert(1,Length(b)=Length(SmalldimHomomorphismsModules(m1,m2)));
else
Expand Down
12 changes: 12 additions & 0 deletions tst/testbugfix/2026-03-23-meataxe.tst
Original file line number Diff line number Diff line change
@@ -0,0 +1,12 @@
# Handling of irreducible Meataxe modules with lots of generators was far
# slower than necessary at least via the "high level" Meataxe APIs.
# See also <https://github.com/gap-system/gap/issues/6271>.
#
# The main test here is for performance: before the fix for issue #6271 this
# would have run for minutes, with the fix it should take far less than a
# second on a modern computer.
gap> n:=200;; # increase this to make the effect even stronger
gap> G:=GL(56,GF(25));;
gap> H:=Subgroup(G, Concatenation(GeneratorsOfGroup(G),List([1..n],i->PseudoRandom(G))));;
gap> MTX.IsomorphismModules(NaturalGModule(H), NaturalGModule(H)) <> fail;
true
Loading