Skip to content

Commit 6099a15

Browse files
author
Leo
committed
Trying to resolve the failing tests
1 parent 24bd307 commit 6099a15

File tree

6 files changed

+55
-50
lines changed

6 files changed

+55
-50
lines changed

PackageInfo.g

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -5,7 +5,7 @@
55
SetPackageInfo( rec(
66
PackageName := "ModIsom",
77
Subtitle := "Computing automorphisms and checking isomorphisms for modular group algebras of finite p-groups",
8-
Version := "3.0.1",
8+
Version := "3.0.2",
99
Date := "28/12/2024", # dd/mm/yyyy format
1010
License := "GPL-2.0-or-later",
1111

VERSION

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1 +1 @@
1-
3.0.0
1+
3.0.2

changes.txt

Lines changed: 6 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1,3 +1,9 @@
1+
2+
Changes in 3.0.2:
3+
- corrected a mistake in the function JenningsInfoAllFields
4+
- slight modification of manual
5+
6+
------------------------------------------
17
Changes in version 3.0.1: LAGUNA is now a requiered package. This solves the issue of warnings coming up when ModIsom was loaded without LAGUNA
28

39
-----------------------------------------------------------------

doc/modisom.tex

Lines changed: 3 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -110,7 +110,7 @@
110110

111111
For more evolved calculations one can use the function
112112

113-
\> MIPBinSplit(p, n, k, start, step, L, [f])
113+
\> MIPBinSplit(p, n, max, start, step, L, [f])
114114

115115
Given a list $L$ of small group library Id's or a list of groups of order $p^n$ this functions checks
116116
isomorphism of the associated modular group algebras using canonical forms for the quotients of the
@@ -525,6 +525,8 @@
525525
cohomology group which equals the number $\sum_{g^G} \log_p(C_G(g)/\Phi(C_G(g))$ where the sum runs over
526526
all the conjugacy classes of $G$ \cite{HS06}(Section 2.6).
527527

528+
The return contains first the Roggenkamp parameter, then the Kuelshammer invariants (starting from $i = 0)$ and then the invariant of Parmenter-Polcino Milies.
529+
528530
\> SubgroupsInfo(G) F
529531

530532
Computes the number of conjugacy classes of maximal elementary abelian subgroups of rank 1,2,...

gap/grpalg/detbins.gi

Lines changed: 42 additions & 45 deletions
Original file line numberDiff line numberDiff line change
@@ -155,9 +155,6 @@ BindGlobal("JenningsInfoAllFields", function(G)
155155
r := [];
156156
for i in [1..Length(s)-1] do
157157
a := [GroupInfo(s[i]/s[i+1])];
158-
if i <= Length(s)-2 then
159-
Add(a, GroupInfo(s[i]/s[i+2]));
160-
fi;
161158
Add(r, a);
162159
od;
163160
return r;
@@ -704,90 +701,90 @@ BindGlobal("OnlyJenningsInfo", function(G)
704701
end);
705702

706703
BindGlobal("CenterNormalInfo", function(G, N)
707-
local ZI,ZQ;
708-
ZI:=Intersection(Center(G), N);
709-
ZQ:= Subgroup(G, Union(GeneratorsOfGroup(Center(G)), GeneratorsOfGroup(N)))/N;
704+
local ZI, ZQ;
705+
ZI := Intersection(Center(G), N);
706+
ZQ := Subgroup(G, Union(GeneratorsOfGroup(Center(G)), GeneratorsOfGroup(N)))/N;
710707
return [ AbelianInvariants(ZI), AbelianInvariants(ZQ)];
711708
end);
712709

713710

714711
#L is normal, N contains G'
715-
BindGlobal("LNInfo", function(G,L,N)
716-
local LN,Q1,Q2;
717-
LN:= Subgroup(G, Union(GeneratorsOfGroup(N), GeneratorsOfGroup(L)));
718-
Q1:=G/LN;
719-
Q2:=LN/N;
712+
BindGlobal("LNInfo", function(G, L, N)
713+
local LN, Q1, Q2;
714+
LN := Subgroup(G, Union(GeneratorsOfGroup(N), GeneratorsOfGroup(L)));
715+
Q1 := G/LN;
716+
Q2 := LN/N;
720717
return [AbelianInvariants(Q1), AbelianInvariants(Q2)];
721718
end);
722719

723720

724721
# The next three functions are the operations preserving canonicity described in Lemma 3.6.
725-
BindGlobal("OmegaModuloN", function(G,N,p,t)
726-
local f, Q,R;
722+
BindGlobal("OmegaModuloN", function(G, N, p, t)
723+
local f, Q, R;
727724
if Size(N)=Size(G) then return G; else
728-
f:= NaturalHomomorphismByNormalSubgroup( G, N );
729-
Q:=Image(f);
730-
R:=Omega(Q,p, t);
731-
return PreImage(f,R);
725+
f := NaturalHomomorphismByNormalSubgroup( G, N );
726+
Q := Image(f);
727+
R := Omega(Q, p, t);
728+
return PreImage(f, R);
732729
fi;
733730
end);
734731

735-
BindGlobal("AgemoLModuloN", function(G,L,N,p,t)
732+
BindGlobal("AgemoLModuloN", function(G, L, N, p, t)
736733
local AgemoL;
737-
AgemoL:=Agemo(L, p,t);
734+
AgemoL := Agemo(L, p, t);
738735
return Subgroup(G, Union(GeneratorsOfGroup(AgemoL), GeneratorsOfGroup(N)));
739736
end);
740737

741738

742739
BindGlobal("OmegaCenterN", function(G,N,p,t)
743740
local OmegaCenter;
744-
OmegaCenter:=Omega(Center(G), p,t);
741+
OmegaCenter := Omega(Center(G), p, t);
745742
return Subgroup(G, Union(GeneratorsOfGroup(OmegaCenter), GeneratorsOfGroup(N)));
746743
end);
747744

748745
#N is a subgroup containing G'. Then the following function computes the subgroups obtained using the previous operations.
749746
#(Observe that if L=G, t doesn't really matter since the output for different values of t can be obtained iterating of the operation).
750-
BindGlobal("SuccessorsN", function(G,L,N,p)
751-
local S1,S2,S3, SizeN, successorsN;
752-
successorsN:=[];
753-
SizeN:=Size(N);
754-
S1:=OmegaModuloN(G,N,p,1);
755-
if Size(S1)<>SizeN then Add(successorsN, S1); fi;
756-
S2:=AgemoLModuloN(G,L,N,p,1);
757-
if Size(S2)<>SizeN then Add(successorsN, S2); fi;
758-
S3:=OmegaCenterN(G,N,p,1);
759-
if Size(S3)<>SizeN then Add(successorsN, S3); fi;
747+
BindGlobal("SuccessorsN", function(G, L, N, p)
748+
local S1, S2, S3, SizeN, successorsN;
749+
successorsN := [ ];
750+
SizeN := Size(N);
751+
S1 := OmegaModuloN(G, N, p, 1);
752+
if Size(S1) <> SizeN then Add(successorsN, S1); fi;
753+
S2 := AgemoLModuloN(G, L, N, p, 1);
754+
if Size(S2) <> SizeN then Add(successorsN, S2); fi;
755+
S3 := OmegaCenterN(G, N, p, 1);
756+
if Size(S3) <> SizeN then Add(successorsN, S3); fi;
760757
return successorsN;
761758
end);
762759

763760
#!
764761
BindGlobal("CanonicalNormalSubgroups", function(G)
765-
local normalSubgroups, normalSubgroupsLeveli,normalSubgroupsLevelip1,e,Gprime,Ab, SN,N,p, normalSubgroups0, i;
766-
Gprime:=DerivedSubgroup(G);
767-
normalSubgroups:=[Gprime];
768-
p:=Factors(Order(G))[1];
769-
Ab:=G/Gprime;
770-
e:=3*Log(Exponent(Ab),p); #Probably using this e as a bound makes no sense.
771-
normalSubgroupsLeveli:=normalSubgroups;
762+
local normalSubgroups, normalSubgroupsLeveli, normalSubgroupsLevelip1, e, Gprime, Ab, SN, N, p, normalSubgroups0, i;
763+
Gprime := DerivedSubgroup(G);
764+
normalSubgroups := [Gprime];
765+
p := Factors(Order(G))[1];
766+
Ab := G/Gprime;
767+
e := 3*Log(Exponent(Ab), p); #Probably using this e as a bound makes no sense.
768+
normalSubgroupsLeveli := normalSubgroups;
772769
for i in [1..e] do
773-
normalSubgroupsLevelip1:=[];
770+
normalSubgroupsLevelip1 := [ ];
774771
for N in normalSubgroupsLeveli do
775-
SN:=SuccessorsN(G,G,N,p);
776-
normalSubgroupsLevelip1:=Concatenation(normalSubgroupsLevelip1, SN);
772+
SN := SuccessorsN(G, G, N, p);
773+
normalSubgroupsLevelip1 := Concatenation(normalSubgroupsLevelip1, SN);
777774
od;
778-
normalSubgroupsLeveli:=normalSubgroupsLevelip1;
779-
normalSubgroups:=Concatenation(normalSubgroups, normalSubgroupsLevelip1);
775+
normalSubgroupsLeveli := normalSubgroupsLevelip1;
776+
normalSubgroups := Concatenation(normalSubgroups, normalSubgroupsLevelip1);
780777
od;
781778
#Some subgroups are missing, for examples the last ones in Remark 3.6 (3), because when L is not G the value of t matters.
782-
normalSubgroups0:=normalSubgroups;
779+
normalSubgroups0 := normalSubgroups;
783780
return normalSubgroups;
784781
end);
785782

786783
#The next function collects the data arising from the Jenning series of the (major part of) canonical normal subgroups.
787784
BindGlobal("NormalSubgroupsInfo", function(G)
788785
local normalSubgroups,Gprime;
789-
Gprime:=DerivedSubgroup(G);
790-
return List(CanonicalNormalSubgroups(G), x->[OnlyJenningsInfo(x), CenterNormalInfo(G,x), LNInfo(G,x,Gprime)]);
786+
Gprime := DerivedSubgroup(G);
787+
return List(CanonicalNormalSubgroups(G), x -> [OnlyJenningsInfo(x), CenterNormalInfo(G, x), LNInfo(G, x, Gprime)]);
791788
end);
792789
#####################
793790

tst/manexamples.tst

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -96,9 +96,9 @@ gap> bins := BinsByGT(2,6);
9696
[ [ 156, 158, 160 ], [ 155, 157 ], [ 173, 176 ], [ 179, 180 ] ]
9797

9898
#####################################################################
99-
gap> MIPSplitGroupsByAlgebras(2,6,bins[1]).bins;
99+
gap> MIPSplitGroupsByAlgebras(2,6,[156,158,160]).bins;
100100
[ ]
101-
gap> MIPSplitGroupsByAlgebras(2,6,bins[1]).splits;
101+
gap> MIPSplitGroupsByAlgebras(2,6,[156,158,160]).splits;
102102
[ [ 7, [ 156, 158, 160 ] ] ]
103103

104104
#####################################################################

0 commit comments

Comments
 (0)