#31987 closed enhancement (fixed)

Adding category options to Representations

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

Status badges

Description

Add the option to give a specific choice of category for the Representation class.

Change History (9)

comment:1 Changed 12 months ago by tkarn

  • Branch set to u/tkarn/add_category_argument_to_representations
  • Commit set to fafed318b79fd1fdba1b61aa1b794e39cc20c991
  • Status changed from new to needs_review

New commits:

fafed31Add _mul_ to allow for algebras and add ability for Representation class to take category as a keyword argument.

comment:2 Changed 12 months ago by tkarn

  • Keywords gsoc2021 added; gsoc removed

comment:3 Changed 12 months ago by git

  • Commit changed from fafed318b79fd1fdba1b61aa1b794e39cc20c991 to e767248a97138680b8a25a971880cd8fb1cecfc5

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

e767248Fix multiplication and add tests

comment:4 Changed 12 months ago by tscrim

Looks good overall, but I don't think your representation of C3 on the exterior algebra has the group acting by ring automorphims. In particular, I would expect g (x1 x2) = (g x1) (g x2) = x2 x0 = -x0 x2, but your code yields x0 x2. First there is a more fundamental issue I had to fix:

-sage: on_basis = lambda g,m: E.monomial(tuple(g(i+1)-1 for i in m[0])) #cyclically permute generators
+sage: on_basis = lambda g,m: M.monomial(tuple(g(i+1)-1 for i in m)) #cyclically permute generators

then I get

sage: g = G.gen()
sage: r = R.an_element(); r
1 + 2*x0 + x0*x1 + 3*x1
sage: g * r
1 + 2*x1 + x1*x2 + 3*x2
sage: g^2 * r
1 + 3*x0 + 2*x2 + x2*x0

So a little more care is needed with this doctest.

Also, PEP8 spacing:

-sage: R = Representation(G, M, on_basis, category = Algebras(QQ).WithBasis().FiniteDimensional())
+sage: R = Representation(G, M, on_basis, category=Algebras(QQ).WithBasis().FiniteDimensional())

comment:5 Changed 12 months ago by git

  • Commit changed from e767248a97138680b8a25a971880cd8fb1cecfc5 to 374207fcc1597e811b9cc9b94790f56d17d36d97

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

374207fFix cyclic action on generators of ExteriorAlgebra, add tests for the multiplication of group elements on the group algebra as a representation

comment:6 Changed 12 months ago by tscrim

This change should be reverted for PEP8 spacing:

-            sage: R = Representation(G, A, action, 'left', category=category)
+            sage: R = Representation(G, A, action, 'left', category = category)

You can also simplify tuple([g(j+1)-1]) -> (g(j+1)-1,)

comment:7 Changed 12 months ago by git

  • Commit changed from 374207fcc1597e811b9cc9b94790f56d17d36d97 to 5351ebbfdd14067d008ae30b9acb76ba8bead936

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

5351ebbFix PEP8 spacing issue, simplify tuple

comment:8 Changed 12 months ago by tscrim

  • Reviewers set to Travis Scrimshaw
  • Status changed from needs_review to positive_review

LGTM.

comment:9 Changed 12 months ago by vbraun

  • Branch changed from u/tkarn/add_category_argument_to_representations to 5351ebbfdd14067d008ae30b9acb76ba8bead936
  • Resolution set to fixed
  • Status changed from positive_review to closed
Note: See TracTickets for help on using tickets.