Dear Sage developers,

The point below was discussed during Sage Days 15,

On Sun, Nov 09, 2008 at 04:31:52PM +0100, Nicolas Thiéry wrote:
>
> ... About naming conventions for categories:
>
>  - Do we want to stick to the (possibly questionable) Axiom/MuPAD
>    convention to distinguish between monoids (or groups/...)  written
>    additively or multiplicatively:
> 
>     - AbelianGroups, AbelianMonoids,     ...: structure for the + operation
>     - Monoids, Groups, CommutativeGroups, ...: structure for the * operation
> 
>    With this convention, a Ring is both an AbelianGroup and a Monoid
> 
>    Alternatively, one could use the more verbose AdditiveMonoid
>    w.r.t. MultiplicativeMonoid; other suggestions are welcome.
> 
>    Part of the question is whether we will ever want to have a
>    category for non abelian monoids written additively (I would
>    personnaly frown upon this, as much as I dislike using + for
>    concatenation of lists and strings; but that might be just me).

We discussed this point at Sage Days 15, and apparently the consensus
was to go for the more explicit, at the price of breaking with
historical conventions in Axiom and MuPAD (and actually also in Sage:
before the category patch, Rings inherits from AbelianGroups!).

Since this was not debated on the list, this e-mail is a last call for
comments before the things get set in stone.

So: is there a reasonable consensus on the following naming scheme:

 - Structure for the + operation:
   AdditiveMonoids, AdditiveGroups, CommutativeAdditiveMonoids, ...

 - Structure for the * operation:
   Monoids, Groups, CommutativeMonoids, CommutativeGroups

Then, a Ring would be a CommutativeAdditiveGroup and a Monoid.


Note: I personally vote against specifying Multiplicative.
CommutativeMultiplicativeGroups is unnecessary long and cumbersome.
The convention above readily breaks any ambiguity.

On a similar note, we will need conventions at some point for rings
without 1 or without 0. Here I am a totally in favor of breaking with
the historical hack which was certainly fun but not quite reasonable:
`i` stands for `identity`, and n for neutral. So:

 - Ring: usual ring
 - Rig: Ring without 0
 - Rng: Ring without 1
 - Rg: Ring without 1 and 0

Suggestions?

Cheers,
                                Nicolas
--
Nicolas M. Thiéry "Isil" <nthi...@users.sf.net>
http://Nicolas.Thiery.name/

--~--~---------~--~----~------------~-------~--~----~
To post to this group, send email to sage-devel@googlegroups.com
To unsubscribe from this group, send email to 
sage-devel-unsubscr...@googlegroups.com
For more options, visit this group at http://groups.google.com/group/sage-devel
URLs: http://www.sagemath.org
-~----------~----~----~----~------~----~------~--~---

Reply via email to