Skip to content

Fix AffineNormalizer returning a proper subgroup - #62

Merged
gaehler merged 1 commit into
masterfrom
fix-affine-normalizer
Aug 18, 2026
Merged

Fix AffineNormalizer returning a proper subgroup#62
gaehler merged 1 commit into
masterfrom
fix-affine-normalizer

Conversation

@fingolfin

Copy link
Copy Markdown
Member

The stabilizer computation dropped the Schreier generators rep[p]grep[p^g]^-1, so groups such as Pc lost part of their affine normalizer.

While at it, also improve the orbit algorithm: instead of searching linearly, use binary search.

Fixes #60

Co-Authored-By: Claude Opus 5 noreply@anthropic.com

The stabilizer computation dropped the Schreier generators
rep[p]*g*rep[p^g]^-1, so groups such as Pc lost part of their
affine normalizer.

While at it, also improve the orbit algorithm: instead of
searching linearly, use binary search.

Fixes #60

Co-Authored-By: Claude Opus 5 <noreply@anthropic.com>
@fingolfin
fingolfin requested a review from gaehler August 16, 2026 17:51
@codecov

codecov Bot commented Aug 16, 2026

Copy link
Copy Markdown

Codecov Report

✅ All modified and coverable lines are covered by tests.
✅ Project coverage is 94.81%. Comparing base (e3bc48a) to head (f462e56).

Additional details and impacted files
@@            Coverage Diff             @@
##           master      #62      +/-   ##
==========================================
+ Coverage   94.68%   94.81%   +0.12%     
==========================================
  Files          24       24              
  Lines        7524     7537      +13     
==========================================
+ Hits         7124     7146      +22     
+ Misses        400      391       -9     
Files with missing lines Coverage Δ
gap/cryst2.gi 90.58% <100.00%> (+1.75%) ⬆️
🚀 New features to boost your workflow:
  • ❄️ Test Analytics: Detect flaky tests, report on failures, and find test suite problems.

@gaehler
gaehler merged commit 172fa65 into master Aug 18, 2026
5 checks passed
@gaehler
gaehler deleted the fix-affine-normalizer branch August 18, 2026 08:50
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.

AffineNormalizer(S) returns only a proper subgroup when the point-group normalizer is infinite

2 participants