Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Not all finitely generated magmas are groups (alternative to PR #2276) #2311

Merged

Conversation

fingolfin
Copy link
Member

... hence we should not set IsFinitelyGeneratedGroup for them.
Instead, only set IsFinitelyGeneratedGroup if the final magma
is actually a group (i.e., associative).

This is an alternative to PR #2276
Fixes #2252, closes #2276

@fingolfin fingolfin added kind: bug Issues describing general bugs, and PRs fixing them kind: bug: wrong result Issues describing bugs that result in mathematically or otherwise wrong results, and PRs fixing them topic: library labels Mar 27, 2018
@fingolfin fingolfin changed the title Not all finitely generated magmas are groups Not all finitely generated magmas are groups (alternative to PR #2276) Mar 27, 2018
Copy link
Contributor

@james-d-mitchell james-d-mitchell left a comment

Choose a reason for hiding this comment

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

Looks good to me.

Copy link
Contributor

@ThomasBreuer ThomasBreuer left a comment

Choose a reason for hiding this comment

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

The code is correct after these changes,
in this sense I could approve them,
as an intermediate solution.
On the other hand, the drawback is the forced
associativity check in the construction.

@fingolfin fingolfin force-pushed the mh/fix-MagmaWithOneByGenerators-alt branch from d3ecc64 to 09ebab4 Compare March 27, 2018 11:08
@codecov
Copy link

codecov bot commented Mar 27, 2018

Codecov Report

Merging #2311 into master will increase coverage by <.01%.
The diff coverage is 100%.

@@            Coverage Diff             @@
##           master    #2311      +/-   ##
==========================================
+ Coverage   72.52%   72.52%   +<.01%     
==========================================
  Files         478      478              
  Lines      246816   246818       +2     
==========================================
+ Hits       179003   179009       +6     
+ Misses      67813    67809       -4
Impacted Files Coverage Δ
lib/magma.gi 54.59% <100%> (+0.17%) ⬆️
hpcgap/lib/hpc/stdtasks.g 38.61% <0%> (-0.26%) ⬇️
src/c_oper1.c 91.47% <0%> (+0.16%) ⬆️
src/objset.c 81.49% <0%> (+0.22%) ⬆️

@fingolfin
Copy link
Member Author

@ThomasBreuer you are of course right; and this forced check also changes the outputs of various tests (causing them to fail), and indeed can produce a hang if the associativity check is difficult. I have now replaced this by what should have been in the first version of this PR: a check for HasIsAssociative( M ) and IsAssociative( M ) which avoids all that.

Thanks for the careful reviewing, I really appreciate it!

... hence we should not set IsFinitelyGeneratedGroup for them.
Instead, only set IsFinitelyGeneratedGroup if the final magma
is actually a group (i.e., associative).
@fingolfin fingolfin force-pushed the mh/fix-MagmaWithOneByGenerators-alt branch from 09ebab4 to 61372f5 Compare March 28, 2018 21:54
@fingolfin fingolfin merged commit 56e19c3 into gap-system:master Mar 29, 2018
@fingolfin fingolfin deleted the mh/fix-MagmaWithOneByGenerators-alt branch March 29, 2018 06:54
@fingolfin fingolfin added the release notes: added PRs introducing changes that have since been mentioned in the release notes label Sep 20, 2018
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
kind: bug: wrong result Issues describing bugs that result in mathematically or otherwise wrong results, and PRs fixing them kind: bug Issues describing general bugs, and PRs fixing them release notes: added PRs introducing changes that have since been mentioned in the release notes topic: library
Projects
None yet
Development

Successfully merging this pull request may close these issues.

MakeMagmaWithInversesByFiniteGenerators shouldn't set IsFinitelyGeneratedGroup
3 participants