Skip to content

Conversation

@ThomasBreuer
Copy link
Contributor

This is an experiment mentioned in #6221:

  • Remove the implication from IsGF2MatrixRep to IsRowListMatrix, such that IsGF2MatrixRep no longer implies IsMatrixObj.
  • Analogously, let IsGF2VectorRep not imply IsVectorObj.

The first aim is to see how many package tests fail due to this change.

- Remove the implication from `IsGF2MatrixRep` to `IsRowListMatrix`,
  such that `IsGF2MatrixRep` no longer implies `IsMatrixObj`.
- Analogously, let `IsGF2VectorRep` not imply `IsVectorObj`.
@ThomasBreuer ThomasBreuer added kind: enhancement Label for issues suggesting enhancements; and for pull requests implementing enhancements do not merge PRs which are not yet ready to be merged (e.g. submitted for discussion, or test results) topic: library release notes: not needed PRs introducing changes that are wholly irrelevant to the release notes labels Feb 10, 2026
@fingolfin
Copy link
Member

I've triggered a test run of the package distro tests against your PR.

@ThomasBreuer
Copy link
Contributor Author

Thanks @fingolfin .

@fingolfin
Copy link
Member

This revealed failures in fining, forms, and semigroups. I did not yet look closer.

@ThomasBreuer
Copy link
Contributor Author

Concerning the failures of package tests:

  • Semigroups:
    In gap/semigroups/semigrp.gi, the check IsMatrixObj(Representative(gens)) no longer returns true for the representative in IsGF2MatrixRep or Is8BitMatrixRep. As a consequence, the filter IsMatrixOverFiniteFieldSemigroup is not set in the semigroup in question, and then no BaseDomain method is applicable.
    A solution would be to check for IsMatrixOrMatrixObj(Representative(gens)) instead.

  • Fining:
    This points to a problem in the cvec package:
    Its NewMatrix functions call (the two argument version of) CVec in different ways, depending on the representation of the entries of the given list.
    For IsPlistRep, nothing is to do, and IsVectorObj requires an Unpack; this Unpack is needed for "proper" IsVectorObjs but apparently also for IsGF2VectorRep and Is8BitVectorRep.
    A solution would be to add the handling of IsGF2VectorRep and Is8BitVectorRep analogous to IsVectorObj.

  • Forms:
    This problem disappears as soon as add ConformalSymplecticGroup and some generalizations gap-packages/forms#80 gets merged.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

do not merge PRs which are not yet ready to be merged (e.g. submitted for discussion, or test results) kind: enhancement Label for issues suggesting enhancements; and for pull requests implementing enhancements release notes: not needed PRs introducing changes that are wholly irrelevant to the release notes topic: library

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants