#7555: Fix Cayley tables, add operation tables
---------------------------+------------------------------------------------
   Reporter:  rbeezer      |       Owner:  AlexGhitza                   
       Type:  enhancement  |      Status:  needs_work                   
   Priority:  minor        |   Milestone:                               
  Component:  algebra      |    Keywords:  cayley table, operation table
     Author:               |    Upstream:  N/A                          
   Reviewer:               |      Merged:                               
Work_issues:               |  
---------------------------+------------------------------------------------

Comment(by rbeezer):

 Hi Nicolas,

 Been working most of the day straightening this up.

 Allowing more general operations is a big improvement.  See example of
 table of commutators of a finite group once I get a patch up.  ;-)

 > Ok. Or maybe it can be just a helper function for how to list the
 > elements by default, which would be overridden in Groups.

 I'll include a note in the source to this effect.

 > See #8562, which you are very welcome to review :-) IntegerModRing's
 > were not yet categorified. I'll upload a patch after running the full
 > tests on it.

 Aah - that answers lots of questions.  Thanks.  "categorified"??  Your
 English is excellent, but that is pretty bad.  ;-) ;-)  ;-)  (But it was I
 might have said too).

 > > > Actually, it could be generalized to Magmas() (just a binary
 > > > operation, not necessarily associative) once we have this
 > > > category.
 > >
 > > Yes, I wanted this category.  Will there be two - additive and
 multiplicative?  Also called "groupoids" if we want avoid confusion with
 the CAS.  Doing {{{search_src}}} on "magma" turns up lots of things
 related to the program, not the structure.
 >
 > With groupds, there is a possible confusion with the other use of
 > groupoids (http://en.wikipedia.org/wiki/Groupoid) which is about
 > having a partially defined operation; but with associativity holding
 > whenever meaningful.
 >
 > Thanks to the s, there is no naming clash between Magmas and Magma, so
 > that's probably fine (http://en.wikipedia.org/wiki/Magma_%28algebra%29)

 Got it.

 > > Didn't check, but thought I'd have to add lots more logic to handle
 this case.  Maybe not.
 >
 > Ok; let me know how it goes.

 Not too bad.  Empty latex table is nice, empty ascii table is so-so, but
 not worth anymore effort.

 > > >  - Rename list to index_set, or maybe row_index_set, to avoid
 > > >    confusion with the usual semantic of list.
 > >
 > > How about "headings"?
 >
 > Thinking twice about it, I vote for m.column_keys() / m.row_keys() for
 > consistency with the d.keys() of a dictionary (which we also use for
 > Family's, and CombinatorialFreeModule elements).

 I did index_set.  ;-(

 > > >  - dict is a bit vague. It is related to ranking (see
 EnumeratedSets).
 > > >    Maybe row_rank, or row_rank_dict.
 > >
 >
 > > The returned dictionary pairs elements with their names.
 >
 > Ah, ok, sorry; I thought it would map an element to its position in
 > the list.
 >
 > >  So maybe there is a better name.  "translation"?
 >
 > names_of_elements? or just names? labels? element_labels?

 Used translation.  :-(


 > They multiplication table looks very much like a matrix, so one would
 > want, for u,v elements (not names/labels) of the group to have m[u,v]
 > be u*v.

 OK, that should be easy.

 > Yeah, hard point. multiplication / addition is consistent with __mul__
 > and __add__. So that's probably ok without cluttering the namespace.
 >
 > By the way: congrats on being essentially the first non Sage-Combinat
 > contributer to categories :-) How did it go?

 Nice.  I like it.  I'm a fan.  And your ring patch will help me recognize
 when/how categorification happens.

 I'm running out of time on this, it's semester break this week, so I'll
 throw something up soon.

 Rob

-- 
Ticket URL: <http://trac.sagemath.org/sage_trac/ticket/7555#comment:9>
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 post to this group, send email to [email protected].
To unsubscribe from this group, send email to 
[email protected].
For more options, visit this group at 
http://groups.google.com/group/sage-trac?hl=en.

Reply via email to