Skip to content

Allow Centralizer to fall back on generic GAP methods#68

Merged
fingolfin merged 13 commits intogap-packages:masterfrom
stertooy:centralizer_allow_fallback
Aug 27, 2025
Merged

Allow Centralizer to fall back on generic GAP methods#68
fingolfin merged 13 commits intogap-packages:masterfrom
stertooy:centralizer_allow_fallback

Conversation

@stertooy
Copy link
Copy Markdown
Contributor

@stertooy stertooy commented May 17, 2021

Resolves #64. Of course, if there is a reason for forcing this error, this shouldn't be merged.

@codecov
Copy link
Copy Markdown

codecov bot commented May 17, 2021

Codecov Report

✅ All modified and coverable lines are covered by tests.
✅ Project coverage is 57.27%. Comparing base (604b482) to head (af20e5b).
⚠️ Report is 1 commits behind head on master.

Additional details and impacted files
@@            Coverage Diff             @@
##           master      #68      +/-   ##
==========================================
+ Coverage   57.22%   57.27%   +0.05%     
==========================================
  Files          87       87              
  Lines       13095    13095              
==========================================
+ Hits         7493     7500       +7     
+ Misses       5602     5595       -7     
Files with missing lines Coverage Δ
gap/pcpgrp/centcon.gi 64.06% <100.00%> (+3.64%) ⬆️
🚀 New features to boost your workflow:
  • ❄️ Test Analytics: Detect flaky tests, report on failures, and find test suite problems.

Comment thread gap/pcpgrp/centcon.gi
# check
if ForAny( g, x -> not x in G ) then
Error("elements must be contained in group");
TryNextMethod();
Copy link
Copy Markdown
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I haven't checked yet, but: is this actually a requirement for CentralizerBySeries to work correctly? Or is perhaps the test above wrong and instead the check is supposed to check that the g are elements of the parent of G / the full group of the underlying collector?

Copy link
Copy Markdown
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Unfortunately, it seems like this is really a requirement. In both the nilpotent and in the general case I get incorrect results for the centralizer.

gap> G := SmallGroup( 16, 8 );; # QD16, Nilpotent
gap> U := Subgroup( G, [ G.2*G.3*G.4 ] );;
gap> g := G.1*G.2*G.3*G.4;;
gap> Centralizer( U, g );
Group([  ])
gap> iso := IsomorphismPcpGroup( G );;
gap> G := Image( iso, G );;U := Image( iso, U );;g := Image( iso, g );;
gap> CentralizerPcpGroup( U, g );
Pcp-group with orders [ 2 ]
gap> CentralizerNilpotentPcpGroup( U, g );
Pcp-group with orders [ 2 ]

@fingolfin fingolfin enabled auto-merge (squash) August 27, 2025 16:01
@fingolfin fingolfin merged commit d8c1323 into gap-packages:master Aug 27, 2025
8 checks passed
@fingolfin fingolfin changed the title Allow Centralizer to fall back on generic GAP methods (review needed) Allow Centralizer to fall back on generic GAP methods Aug 27, 2025
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

Centralizer( G, g ) does not work if g is not in G

2 participants