Skip to content

Make free bands be acting semigroups #973

@james-d-mitchell

Description

@james-d-mitchell

It should be relatively straightforward to make free bands in the Semigroups package acting semigroups. This will involve the following:

  • adding the filter IsActingSemigroup to IsFreeBandSubsemigroup, or at least, making it so that if IsFreeBandSubsemigroup holds then IsActingSemigroup does also
  • Definitions of the functions in main/setup.gd for free bands:
    • ActionRank = content of a free band element
    • MinActionRank = full content
    • LambdaFunc = (ftol, suffix)
    • LambdaAct = if (ftol_1, suffix_1) is the lambda value, and (prefix, ltof, ftol_2, suffix_2) is the element, then return the LambdaFunc of (reverse suffix_1, ftol_1, ftol_1, suffix) * (prefix, ltof, ftol_2, suffix_2)
    • RhoAct + RhoFunc are the analogues of LambdaAct and LambdaFunc, given by (prefix, ltof).
    • LambdaOrbSeed + RhoOrbSeed should be some neutral lambda func.
    • LambdaRank + RhoRank is the content of the lambda value (output of lambda func).
    • LambdaInverse + RhoInverse @reiniscirpons please fill this in
    • LambdaBound + RhoBound should both be 1
    • LambdaIdentity + RhoIdentity should both be the identity permutation
    • LambdaPerm always returns the identity permutation.
    • LambdaConjugator always returns the identity permutation.
    • IdempotentTester always returns true
    • IdempotentCreator given the lamba value (prefix, ltof) and rho value (ftol, suffix) returns (prefix, ltof, ftol, suffix)
    • StablizerAction(x, p) returns x
    • SchutzenbergerGroupMembership returns true.
    • A hash function for elements of free bands.

Metadata

Metadata

Assignees

No one assigned

    Labels

    feature-requestLabel for feature requestshelp wantedA label for issues where help is wanted.

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions