#19613: Implement basic representations of semigroups
-------------------------------------+-------------------------------------
       Reporter:  tscrim             |        Owner:  sage-combinat
           Type:  enhancement        |       Status:  needs_review
       Priority:  major              |    Milestone:  sage-6.10
      Component:  group theory       |   Resolution:
       Keywords:  representation     |    Merged in:
        Authors:  Travis Scrimshaw   |    Reviewers:
Report Upstream:  N/A                |  Work issues:
         Branch:                     |       Commit:
  public/representations/basic_implementation-19613|  
9f2ff6e14f3376d420dbe87715a0bd112e0ccdb7
   Dependencies:                     |     Stopgaps:
-------------------------------------+-------------------------------------

Comment (by tscrim):

 Replying to [comment:2 darij]:
 > Can you document the `left_repr` keyword in the `regular_representation`
 method in `semigroups.py`?

 Added.

 > In the `_acted_upon_` of `TrivialRepresentation`, I would use a `sum`
 method instead of the `sum` function (I hope it would involve less
 indirection/ducktyping).

 That isn't ducktyping (it's the python `sum` not the symbolic `sum` that
 is at the top-level interface). Also, all `self.base_ring().sum(elts)`
 does is call `sum(elts, self.zero())` so it involves one further level of
 indirection.

 > Does the `RegularRepresentation` allow both multiplying by elements of
 the semigroup and multiplying by elements of the semigroup algebra? (And
 if so, please doctest both.)

 Yes, and I added some doctests about this. I also caught a few bugs with
 these doctests.

 > I have recently wrotten some really sloppy code to build a finite
 semigroup out of a multiplication table (I hoped to use it on #19892, but
 then I found that semigroups lack the support for that, so I ended up
 avoiding it). I'm wondering -- would this be useful for this patch? At the
 very least it could give us a way to doctest the methods. I could polish
 the code and submit it here; I just want to make sure it won't be in vain,
 as I have a hard time believing that there is no such thing in Sage
 already...

 There is code in `algebras/finite_dimensional_algebras` which essentially
 does that. We probably could separate that code into the semigroup part
 and the algebra part (and combine it with your code). However, I think
 that is better for a separate ticket because it won't directly apply to
 this (could be good for extensive testing of this, but I think that could
 be overkill).

--
Ticket URL: <http://trac.sagemath.org/ticket/19613#comment:4>
Sage <http://www.sagemath.org>
Sage: Creating a Viable Open Source Alternative to Magma, Maple, Mathematica, 
and MATLAB

-- 
You received this message because you are subscribed to the Google Groups 
"sage-trac" group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to [email protected].
To post to this group, send email to [email protected].
Visit this group at https://groups.google.com/group/sage-trac.
For more options, visit https://groups.google.com/d/optout.

Reply via email to