axiom-developer
[Top][All Lists]

## Re: [Axiom-developer] Curiosities with Axiom mathematical structures

 From: Gabriel Dos Reis Subject: Re: [Axiom-developer] Curiosities with Axiom mathematical structures Date: 26 Feb 2006 17:42:40 +0100

```Hello Willian,

| Gabriel Dos Reis wrote:
| >   In the impressive diagram titled "Basic Agebra Hierarchy" displayed
| > in the Axiom Book (I only have a copy of the edition copyrighted 1992,
| > NAG), AbelianSemiGroup is not "derived" from SemiGroup, and similarly
| > AbelianMonoid is not "derived" from Monoid.  I find that curious as it
| > goes counter the mathematical fact that an AbelianMonoid *is* a
| > Monoid, with an additional algebraic law (commutation).
| >
| >   Does anyone know the reason of those curiosities?
|
| One probable reason may be the convention in mathematics to use +
| instead of * when a semigroup, monoid, or group is abelian.

I find that argument very unconvincing for several reasons:

1.  "+" or "*" are *syntax*, not algebraic properties.  Whether a
monoid is Abelian or not does stop it from being a monoid.  The
mathematical definition of an Abelian monoid is that it is a
monoid, whose operation *additionally* is commutative.

2.  The set of natural numbers, NN, has *many* Abelian structures on it,
for examples:
a. (NN, +, 0) -- the usual addition
b. (NN, *, 1) -- the usual multiplication, commutative!
c. (NN, max, 0) -- "max" is the usual maximum function

Such a counterexample can be multiplied.

>From mathematical point of view, a structure is a *tuple* where every
slot has some property.  I find Axiom's realization a bit disturbing,
if not handicapping for teaching students "hands on" classes on Algebra.

An algorithm working on Monoid should work with AbelianMonoid

| Another is the independence allows for the category of rings without
| having to overload the * operation for both the underlying abelian
| group and the multiplicative monoid, which would have been very
| confusing!

I agree that independent concepts should be developed independently,
and combining them should be possible.  However, that is hardly a
reason for not deriving an AbelianMonoid from a Monoid.  Furthermore,
the "*" for rings is *syntax*, not something important.  It is like
saying that if my ring is called G, instead of R, it would not be a
ring!

The very coexistence of several structures within a richer structure
should indicate that the "object oriented" approach -- where a given
name is singled out and hoped to be overridden in derived structures
to be a particular thing -- will fail to be adequate tool for modeling
mathematical structures.  This is far from being a theoretical issue.

| A third one is because addition is an ubiquitous
| operation in many algebraic objects (vector space, modules, rings, algebras,
| etc.) with richer structures.

probably but not every Abelian monoid has "+" has its monoid operation
-- see examples above.  The defect here as I see it is that a
particular name (pure syntax) has been singled out to characterize an
Algebraic structure (tuple).

| The second is the most compelling.

well, in fact no. :-(

| It can be generalized to a principle for
| setting up new basic categories: every time a set is equipped with a new
| (usually binary) operation with some axioms to satisfy, a new category that
| encapsulates the operation with a new notation is necessary in order to allow
| for simultaneous operations on the same set, providing a rich algebraic
| structure.

what you say here is very different from what the "second reason" says.
Furthermore, what you say here is that the name chosen in the
implementation of a algebraic structure should be *immaterial*, just
like when defining a function, the name of the parameter should be
immaterial.   The ability to combine different algebraic structures
with same underlying set dictate that the names used to model the
operations (necessarily variable) in individual algebraic
structures are immaterial.

| An example would be Lie algebras which have at least an addition, a
| multiplication, and the Lie bracket. Square matrices of a fixed size
| form a Lie algebra.

or, simply, the set of natural numbers with as many monoidal
structures as there are communitatuve functions f : NN x NN -> NN and
neutral elements e : NN :-)

-- Gaby

```