#31939 closed enhancement (fixed)

Finite dimensional invariant algebra

Reported by: tkarn Owned by: tkarn
Priority: major Milestone: sage-9.4
Component: algebra Keywords: gsoc2021 invariant
Cc: tscrim, tkarn Merged in:
Authors: Trevor K. Karn Reviewers: Travis Scrimshaw
Report Upstream: N/A Work issues:
Branch: 2a64c19 (Commits, GitHub, GitLab) Commit: 2a64c198c5fb49085ea4e353fc7c73525800b9c4
Dependencies: #31987 Stopgaps:

Status badges

Description (last modified by tkarn)

As part of the GSoC project #31929, we will implement a class for invariant algebras, given a group action on the basis of an algebra.

Change History (24)

comment:1 Changed 11 months ago by tkarn

  • Branch set to u/tkarn/invariant_modules_31939
  • Commit set to 5526500c23b9cb4aa2a03f7fcdc81b616c963470
  • Owner changed from (none) to tkarn

New commits:

35f43f3Initial commit
5526500Add __init__ and tests

comment:2 Changed 11 months ago by git

  • Commit changed from 5526500c23b9cb4aa2a03f7fcdc81b616c963470 to c8b769b1534a3649b7e8bbdd4940faa5877822fc

Branch pushed to git repo; I updated commit sha1. New commits:

466a9bcAdd .invariant_algebra() method to ParentMethods of FiniteDimensionalModuleWithBasis
c8b769bRewrite FiniteDimensionalInvariantAlgebra to subclass UniqueRepresentation and SubmoduleWithBasis

comment:3 Changed 11 months ago by git

  • Commit changed from c8b769b1534a3649b7e8bbdd4940faa5877822fc to 3c2a2f9d480e775a0cf28c2552c744d708f0977c

Branch pushed to git repo; I updated commit sha1. New commits:

c1bafa5Fix bad merge
775fae7Remove @cached_method decorator from .invariant_algebra()
842b314Move from algebras.invariants to modules.with_basis.invariant
37dafe9WIP
3c2a2f9Add FiniteDiimensionalInvariantModule with no tests/documentation

comment:4 Changed 11 months ago by tkarn

  • Dependencies set to #31987

comment:5 Changed 11 months ago by tkarn

  • Keywords gsoc2021 added; gsoc removed

comment:6 Changed 11 months ago by tkarn

  • Description modified (diff)

comment:7 Changed 11 months ago by git

  • Commit changed from 3c2a2f9d480e775a0cf28c2552c744d708f0977c to beeda87256df0b3cf0ebf72ca44b6c9a17482be7

Branch pushed to git repo; I updated commit sha1. This was a forced push. Last 10 new commits:

f0cadccFix typos and whitespace issues
263b385Initial commit of FiniteDimensionalTwistedInvariantModule
e767248Fix multiplication and add tests
374207fFix cyclic action on generators of ExteriorAlgebra, add tests for the multiplication of group elements on the group algebra as a representation
7e423f8Merge branch 'catrep' into invariants
5351ebbFix PEP8 spacing issue, simplify tuple
469286cMerge branch 'catrep' into invariants
dc9a3d0Fix whitespace issues
81f3bc4Add tests and _repr_ to finite_dimensional_invariant_algebras
beeda87WIP

comment:8 Changed 11 months ago by git

  • Commit changed from beeda87256df0b3cf0ebf72ca44b6c9a17482be7 to 7cf2cf0d270995f47515874270f9970a23cbcb58

Branch pushed to git repo; I updated commit sha1. This was a forced push. New commits:

7cf2cf0WIP

comment:9 Changed 11 months ago by tkarn

  • Description modified (diff)

comment:10 Changed 11 months ago by git

  • Commit changed from 7cf2cf0d270995f47515874270f9970a23cbcb58 to e0712a4fe0e2aa62a85f0716b5395f829f03a824

Branch pushed to git repo; I updated commit sha1. This was a forced push. New commits:

a70d92cWIP
3748265Remove invariant algebra class
e981555Remove OS changes
e0712a4Modify invariant.py to work only in the Representation (not in the ambient module of the Representation)

comment:11 Changed 11 months ago by git

  • Commit changed from e0712a4fe0e2aa62a85f0716b5395f829f03a824 to 2c6ada7295af45db81c55a9343c9d905fbf57cf8

Branch pushed to git repo; I updated commit sha1. New commits:

2c6ada7Add tests for arithmetic in FiniteDimensionalInvariantModule, fix bug with multiplication of the underlying representation's underlying module's base ring

comment:12 Changed 11 months ago by git

  • Commit changed from 2c6ada7295af45db81c55a9343c9d905fbf57cf8 to d89c264ba395524c7b64d918991c3a44a19e21b8

Branch pushed to git repo; I updated commit sha1. New commits:

f08d6f9Add tests to invariant.py for full coverage
a5fab0cFix error introduced in representation.py
ff2047dAdd reference for invariants/twisted invariants
a15d52eWIP
d2d1ddeAdd check for valid characters for finite semigroups
d89c264Add basis computation and initial commit of Element class

comment:13 Changed 11 months ago by git

  • Commit changed from d89c264ba395524c7b64d918991c3a44a19e21b8 to f519fbcfcd29fc9bf1cc1483638fa53a188a60b1

Branch pushed to git repo; I updated commit sha1. This was a forced push. Last 10 new commits:

730baaeAdd tests and _repr_ to finite_dimensional_invariant_algebras
f4d5ed6WIP
6ae01b4Remove invariant algebra class
63ddf15Remove OS changes
f93c224Modify invariant.py to work only in the Representation (not in the ambient module of the Representation)
1c87493Add tests for arithmetic in FiniteDimensionalInvariantModule, fix bug with multiplication of the underlying representation's underlying module's base ring
1792be1Add tests to invariant.py for full coverage
d5bb24cRemove draft of twisted invariant. Moved to trac #32145
f121263Fix whitespace
f519fbcAdd _test_invariant for TestSuite

comment:14 Changed 11 months ago by tkarn

  • Status changed from new to needs_review

comment:15 Changed 11 months ago by tkarn

  • Status changed from needs_review to needs_work

comment:16 Changed 11 months ago by git

  • Commit changed from f519fbcfcd29fc9bf1cc1483638fa53a188a60b1 to c038ef539cabfe7468ff72c319ddd2a1866e5172

Branch pushed to git repo; I updated commit sha1. This was a forced push. New commits:

3519cf1Add _test_invariant for TestSuite
0b000e1Add exposition to examples of invariant.py
f6f76c5Fix invariant_module method inside the FiniteDimensionalModuleWithBasis.ParentMethods class
ac750a4Add example of symmetric functions with monomial basis
42d5e34Fix _mul_ to assume that both are in same parent
c038ef5Edit exposition in symmetric function example

comment:17 Changed 11 months ago by tkarn

  • Status changed from needs_work to needs_review

comment:18 Changed 11 months ago by tkarn

It was suggested to change the FiniteDimensionalInvariantModule._semigroup_representation attribute to be an alias of FiniteDimensionalInvariantModule._ambient. I chose not to use this suggestion because the semigroup representation is required to build the basis which we use to call the SubmoduleWithBasis.__init__ via super(), but the ._ambient attribute is defined in SubmoduleWithBasiis.__init__, so it seemed circular.

comment:19 Changed 11 months ago by git

  • Commit changed from c038ef539cabfe7468ff72c319ddd2a1866e5172 to a75293a228dd7e5db70a86be6ceecf5ba66615bb

Branch pushed to git repo; I updated commit sha1. New commits:

a75293aAdd exposition in examples

comment:20 Changed 11 months ago by tscrim

  • Branch changed from u/tkarn/invariant_modules_31939 to public/algebras/invariant_modules-31939
  • Commit changed from a75293a228dd7e5db70a86be6ceecf5ba66615bb to 553dc56e758b7dbac708a9ea2560a4cae1353ce7
  • Reviewers set to Travis Scrimshaw

Thank you. I have made my reviewer pass through the code. Overall it looks great. However, I thought some more about what type of constructions we want it to handle. As a result, I made what the invariant module can handle much more general. This allows us to use a natural action, should it exist, or pass a general action (not necessarily one defined on the basis).

In order to make things work smoothly, I had to extend some stuff for Representation so it more naturally works with subgroups and coercion. I also removed the _l/rmul_ as those are generically implemented in the IndexedModuleElement class (I forgot about this; sorry!). I did some other documentation tweaks.

If my changes are good with you, then you can set a positive review.


New commits:

553dc56Reviewer changes for invariant modules.

comment:21 Changed 10 months ago by git

  • Commit changed from 553dc56e758b7dbac708a9ea2560a4cae1353ce7 to 2a64c198c5fb49085ea4e353fc7c73525800b9c4

Branch pushed to git repo; I updated commit sha1. New commits:

2a64c19Update input documentation

comment:22 Changed 10 months ago by tkarn

The changes made before commit 2a64c19 look good to me. If the changes to the documentation I made are good, then you can set a positive review.

comment:23 Changed 10 months ago by tscrim

  • Status changed from needs_review to positive_review

Thanks.

comment:24 Changed 10 months ago by vbraun

  • Branch changed from public/algebras/invariant_modules-31939 to 2a64c198c5fb49085ea4e353fc7c73525800b9c4
  • Resolution set to fixed
  • Status changed from positive_review to closed
Note: See TracTickets for help on using tickets.