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

Brief comment on PullBack vs. Pullback #31

Open
cdwensley opened this issue Nov 28, 2018 · 0 comments
Open

Brief comment on PullBack vs. Pullback #31

cdwensley opened this issue Nov 28, 2018 · 0 comments

Comments

@cdwensley
Copy link

This is a report on what I have been doing elsewhere, just for your information, and not requesting any changes to QPA. On finding I needed a pullback function for group homomorphisms in XMod, I did a "gap> ?Pullback" and found only the PullBack function in QPA. Although the QPA manual states "Arguments: f,g - two homomorphisms with a common range", the declaration is:

DeclareOperation( "PullBack", [ IsPathAlgebraMatModuleHomomorphism, IsPathAlgebraMatModuleHomomorphism ] );

and the implementation uses:

AplusC := DirectSumOfQPAModules([A,C]);

so it was apparent that PullBack would not suit my purposes.
Because the notion of pullback could have wider application, I have added a Pullback function to Utils (version 0.61 released today) rather than to XMod. This operation currently takes two group homomorphisms with a common range as input. Following the examples of DirectProduct and SemidirectProduct, Pullback returns the pullback group (which is the subgroup of a direct product rather than a direct sum) and this group P has an attribute given by "info := PullbackInfo(P)", a record with fields info!.directProduct and info!.projections. (QPA's PullBack returns the two projections.)
This addition to Utils is somewhat experimental, and any suggestions would be very welcome.
For a more comprehensive implementation, one could envisage a global function Pullback which could call operations PullbackForGroups; PullbackForModules; etc., but the demand is probably not there at the moment, and PullBack/Pullback can coexist quite happily.

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

No branches or pull requests

1 participant