[Top][All Lists]
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: [Axiom-developer] BINGO,Curiosities with Axiom mathematical structur
From: |
William Sit |
Subject: |
Re: [Axiom-developer] BINGO,Curiosities with Axiom mathematical structures |
Date: |
Thu, 09 Mar 2006 14:27:10 -0500 |
Martin:
Good work (I'm impressed :-). I think your solution is in fact the way
mathematicians build up algebraic structures: first define the underlying set
and the basic operations, then prove that the axioms of certain algebraic
structure are satisfied. Here you declare (rather than prove) these using
Aldor's 'extend' mechanism.
The beauty of your solution is that the notation (naming of the operations) is
defined in the domain itself and then the algebraic properties declared by
extension.
The slight disadvantage is that these structural operations must be listed with
each domain, and there is no default way (yet). So perhaps in MyMonoid, with
parameters, there can be a default syntax, such as:
MyMonoid(T:Type, default{*:(T,T)->T)}):Category
MyDualMonoid(T:Type, default{*:(T,T)->T, o:(T,T)->T}):Category ==
with{MyMonoid(T); MyMonoid(T, o)};
MyAbelianMonoid(T:Type, default{+:(T,T)->T}):Category ==
with{commutative(+); MyMonoid(T, +), ...};
MyRing(T:Type, default{*:(T,T)->T, +:(T,T)->T}:Category ==
with{MyAbelianMonoid(T), MyMonoid(T), ...};
MyCommutativeRing(T:Type, default{*:(T,T)->T, +:(T,T)->T}:Category ==
with{MyAbelianMonoid(T), MyAbelianMonoid(T,*), ...};
(the above omits the units for the operations, which could be added easily) so
that
extend MyInteger: MyRing(MyInteger) == add;
would make sense.
William
- Re: [Axiom-developer] Curiosities with Axiom mathematical structures, (continued)
- Re: [Axiom-developer] Curiosities with Axiom mathematical structures, Gabriel Dos Reis, 2006/03/02
- Re: [Axiom-developer] Curiosities with Axiom mathematical structures, William Sit, 2006/03/04
- Re: [Axiom-developer] Curiosities with Axiom mathematical structures, Ralf Hemmecke, 2006/03/07
- Re: [Axiom-developer] Curiosities with Axiom mathematical structures, William Sit, 2006/03/07
- Re: [Axiom-developer] Curiosities with Axiom mathematical structures, Martin Rubey, 2006/03/08
- Re: [Axiom-developer] Curiosities with Axiom mathematical structures, Ralf Hemmecke, 2006/03/09
- Re: [Axiom-developer] Curiosities with Axiom mathematical structures, Martin Rubey, 2006/03/09
- [Axiom-developer] BINGO, Curiosities with Axiom mathematical structures, Martin Rubey, 2006/03/09
- Re: [Axiom-developer] BINGO,Curiosities with Axiom mathematical structures,
William Sit <=
- Re: [Axiom-developer] BINGO, Curiosities with Axiom mathematical structures, Ralf Hemmecke, 2006/03/10
- Re: [Axiom-developer] BINGO,Curiosities with Axiom mathematical structures, William Sit, 2006/03/10
- Re: [Axiom-developer] BINGO, Curiosities with Axiom mathematical structures, Gabriel Dos Reis, 2006/03/13
- RE: [Axiom-developer] BINGO, Curiosities with Axiom mathematical structures, Bill Page, 2006/03/09
- Re: [Axiom-developer] BINGO,Curiosities with Axiom mathematical structures, William Sit, 2006/03/10
- Re: [Axiom-developer] BINGO, Curiosities with Axiom mathematical structures, Gabriel Dos Reis, 2006/03/13
- [Axiom-developer] Re: BINGO, Curiosities with Axiom mathematical structures, Martin Rubey, 2006/03/10
- Re: [Axiom-developer] Curiosities with Axiom mathematical structures, Ralf Hemmecke, 2006/03/09
- RE: [Axiom-developer] Curiosities with Axiom mathematical structures, Bill Page, 2006/03/10
- Re: [Axiom-developer] Curiosities with Axiom mathematical structures, Gabriel Dos Reis, 2006/03/13