Semigroups icon indicating copy to clipboard operation
Semigroups copied to clipboard

Renaming PreImages... functions as PreImages...NC : GAP PR#5073

Open cdwensley opened this issue 1 year ago • 7 comments

PreImagesRepresetnative, PreImages, PreImagesSet and PreImagesElm can all return incorrect results when the element(s) supplied are not in the range of the map. This situation has been discussed in GAP issue #4809. To rectify the situation the plan is to have NC versions of these four operations and to add tests to the non-NC versions. The procedure to be adopted is as follows. (1) Rename the four operations by adding 'NC' to their names, and then declare the original operations as synonyms of these. PR #5073 addresses this. (2) Ask package authors/maintainers to convert all their calls to these functions to the NC versions (unless there is good reason not to do so). A clause added to init.g ensures the package works in older versions of GAP. (3) Once all the packages have been updated, add tests to the non-NC versions of the operations.

No progress has been made on this since February, but now seems a good time to continue with stage (2).
No PR is offered to Semigroups at the moment because it is not clear what to do. In attributes/homomorph.gi there are two methods implemented, and both of these apply tests, so should clearly not be converted to NC. On the other hand, in attributes/isorms.gi there are two new methods implemented which do not do tests, so perhaps should be converted to NC. Apart from these methods, there are just a few calls to PreImagesRepresentative. How would the package authors like to proceed?

cdwensley avatar Sep 12 '23 09:09 cdwensley