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

Two fixes for fp group homomorphisms and Improvement for Fitting free matrix group setup #3103

Merged
merged 4 commits into from
Dec 14, 2018

Conversation

hulpke
Copy link
Contributor

@hulpke hulpke commented Dec 11, 2018

This fixes #3097, #3100 and a nuisance error when working with matrix groups under the fitting free setup (avoid RestrictedMapping which runs into trouble).

@hulpke hulpke changed the title Two fixes for fp group homomorphisms Two fixes for fp group homomorphisms and Improvement for Fitting free matrix group setup Dec 11, 2018
@hulpke hulpke added kind: bug: wrong result Issues describing bugs that result in mathematically or otherwise wrong results, and PRs fixing them kind: bug: unexpected error Issues describing bugs in which computation unexpectedly encounters an error, and PRs fixing them labels Dec 12, 2018
@laurentbartholdi
Copy link
Contributor

laurentbartholdi commented Dec 12, 2018 via email

@@ -28,7 +28,17 @@ local cache,ffs,pcisom,rest,it,kpc,k,x,ker,r;

pcisom:=ffs.pcisom;

rest:=RestrictedMapping(ffs.factorhom,U);
#rest:=RestrictedMapping(ffs.factorhom,U);
if IsPermGroup(U) and AssertionLevel()>1 then
Copy link
Member

Choose a reason for hiding this comment

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

The commit message says:

using RestrictedMapping as it will not work for certain matrix group homomorphisms

So, does that mean that there is a bug in RestrictedMapping? Or is this more a general problem where e.g. RestrictedMapping doesn't have enough information to do something sensible in all cases? Or perhaps a third option?

Also, what exactly is a "matrix group homomorphisms" in this context? A hom with a matrix group as source? Range? Both? Either? And, based on that, I'd have expected that only these kinds of homs would be treated separately here, and the rest handled by RestrictedMapping anyway, but that's not the case. I am sure there is a good reason, but what is it?

In any case, IMHO there should be a comment here that briefly explains these things.

Copy link
Contributor Author

Choose a reason for hiding this comment

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

Changed text.

lib/fitfree.gi Outdated
List(GeneratorsOfGroup(U),x->ImagesRepresentative(ffs.factorhom,x)));
RUN_IN_GGMBI:=false;
fi;
if rest=fail then Error("can't build homomorphism"); fi;
Copy link
Member

Choose a reason for hiding this comment

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

So when would this ever fail? Can we perhaps give a slightly more helpful error message?

Copy link
Contributor Author

Choose a reason for hiding this comment

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

I've replaced the error with an assertion.

@codecov
Copy link

codecov bot commented Dec 12, 2018

Codecov Report

Merging #3103 into master will increase coverage by 0.01%.
The diff coverage is 75%.

@@            Coverage Diff             @@
##           master    #3103      +/-   ##
==========================================
+ Coverage   83.56%   83.57%   +0.01%     
==========================================
  Files         686      686              
  Lines      336759   336772      +13     
==========================================
+ Hits       281396   281466      +70     
+ Misses      55363    55306      -57
Impacted Files Coverage Δ
lib/ghomfp.gi 85.09% <100%> (+0.03%) ⬆️
lib/morpheus.gi 82.53% <100%> (+0.02%) ⬆️
lib/fitfree.gi 57.44% <55.55%> (-0.06%) ⬇️
lib/ghomperm.gi 91.46% <0%> (-0.08%) ⬇️
src/plist.c 95.27% <0%> (ø) ⬆️
src/vecgf2.c 73.93% <0%> (ø) ⬆️
src/vec8bit.c 84.1% <0%> (ø) ⬆️
lib/sgpres.gi 76.6% <0%> (+2.82%) ⬆️

@codecov
Copy link

codecov bot commented Dec 12, 2018

Codecov Report

Merging #3103 into master will increase coverage by 0.01%.
The diff coverage is 79.16%.

@@            Coverage Diff             @@
##           master    #3103      +/-   ##
==========================================
+ Coverage   83.55%   83.57%   +0.01%     
==========================================
  Files         686      686              
  Lines      336665   336777     +112     
==========================================
+ Hits       281317   281460     +143     
+ Misses      55348    55317      -31
Impacted Files Coverage Δ
lib/ghomfp.gi 85.09% <100%> (+0.03%) ⬆️
lib/morpheus.gi 82.53% <100%> (+0.02%) ⬆️
lib/fitfree.gi 57.59% <70.58%> (+0.09%) ⬆️
src/iostream.c 62.35% <0%> (-1.15%) ⬇️
lib/streams.gi 70.24% <0%> (-0.22%) ⬇️
lib/ghomperm.gi 91.46% <0%> (-0.08%) ⬇️
src/opers.c 95.16% <0%> (+0.13%) ⬆️
src/io.c 59.19% <0%> (+1.3%) ⬆️
lib/sgpres.gi 76.6% <0%> (+2.82%) ⬆️

@hulpke
Copy link
Contributor Author

hulpke commented Dec 12, 2018

@laurentbartholdi
Thank you -- changed.

@hulpke hulpke force-pushed the fixes branch 2 times, most recently from 1ae7729 to 1c23d1c Compare December 13, 2018 11:26
Copy link
Contributor

@laurentbartholdi laurentbartholdi left a comment

Choose a reason for hiding this comment

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

I didn't pull the changes, but reviewing the code it seems all good.

for the epimorphism from a group to its fitting free factor, as no method for
constructing this restriction might exist. (E.g. in the case of matrix groups.)
@hulpke hulpke merged commit 76575f9 into gap-system:master Dec 14, 2018
@fingolfin fingolfin added the kind: bug Issues describing general bugs, and PRs fixing them label Mar 21, 2019
@markusbaumeister markusbaumeister added the release notes: to be added PRs introducing changes that should be (but have not yet been) mentioned in the release notes label Apr 16, 2019
@DominikBernhardt DominikBernhardt added release notes: added PRs introducing changes that have since been mentioned in the release notes and removed release notes: to be added PRs introducing changes that should be (but have not yet been) mentioned in the release notes labels Aug 22, 2019
@olexandr-konovalov olexandr-konovalov added this to the GAP 4.11.0 milestone Feb 15, 2020
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
kind: bug: unexpected error Issues describing bugs in which computation unexpectedly encounters an error, and PRs fixing them 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
Projects
None yet
Development

Successfully merging this pull request may close these issues.

Too general "Order" for automorphisms
6 participants