[Top][All Lists]
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: [Axiomdeveloper] Curiosities with Axiom mathematical structures
From: 
Gabriel Dos Reis 
Subject: 
Re: [Axiomdeveloper] Curiosities with Axiom mathematical structures 
Date: 
14 Mar 2006 01:26:09 +0100 
Ralf Hemmecke <address@hidden> writes:
[...]
 Yes, one has to rethink that quite a lot. The problem with your
 suggestion is the following

 1) You cannot simply ask

 Integer has Monoid

 because you have to give a parameter.
yes, that is alright. The question
Integer has Monoid
is an underspecified question.
 2) If you say something like

 MyMonoid(T: Type, m: (T, T) > T): Category == with {
 square: T> T;
 default {square(t: T): T == m(t, t)}
 }

 then it is perfect Aldor.
 Then, however, you ask

 Integer has MyMonoid(Integer, *)

 and it will return true only if you have said

 extend Integer: MyMonoid(Integer, *) == add;

 somewhere.
That is fine!  I don't expect Aldor to read my mind :)
 (But probably you had something else in mind.)

 Although I don't really like that an AbelianMonoid is not a Monoid,
 and although I think that renaming during inheritance would be nearer
 to mathematics...
I still don't follow that path. Please could you explain with more
examples? The understanding of renaming I have causes more trouble
than it solves problem.
 after all the discussion here, I somehow think that
 the design in Axiom is not really bad. The reason is that I have not
 seen a clear case where renaming would be overadvantageous.

 I'd like to say

 Integer has Monoid

 instead of

 Integer has Monoid(*, 1);
 Integer has Monoid(+, 0);
I would not. The question
Integer has Monoid
gives me no clue about what is going on.
In fact, in situations where when I ask the question
Integer has Group(op)
I'm more interested interested in retrieving the inverse operation and
neutral element of op, than just the mere question is it a Group.
Consider computing the nth "power" of x (of type T). First of, one
can have a general (helper) implementation of "power" for a monoid (or
even just a semigroup or a magma) see page 99 of
http://www.stepanovpapers.com/notes.pdf
and onwards. If n is negative and T is a group, then one can just
take the "positive" power of the inverse of x  reuse known
abstraction.
 Simply think of a category Foo with hundreds of exported function,
 would you like to write

 Dom has Foo(f1, f2, ..., f100)

 ??? That is not really handy.
quite; but I believe my first idea can be refined (as I did): I doubt
all of the hundreds parameters for Foo are independent. In pratice,
the number of indenpendent parameters for the algebraic structure does
nto exceed 5 or six. However, many of the "exported" functions are
"functions" of those independent parameters.
 Gaby
 Re: [Axiomdeveloper] Curiosities with Axiom mathematical structures, (continued)
 Re: [Axiomdeveloper] Curiosities with Axiom mathematical structures, William Sit, 2006/03/13
 Re: [Axiomdeveloper] Curiosities with Axiom mathematical structures, Gabriel Dos Reis, 2006/03/13
 Re: [Axiomdeveloper] Curiosities with Axiom mathematical structures, Gabriel Dos Reis, 2006/03/13
 Re: [Axiomdeveloper] Curiosities with Axiom mathematical structures, Gabriel Dos Reis, 2006/03/13
 Re: [Axiomdeveloper] Curiosities with Axiom mathematical structures, Ralf Hemmecke, 2006/03/14
 RE: [Axiomdeveloper] Curiosities with Axiom mathematical structures, Bill Page, 2006/03/13
 Re: [Axiomdeveloper] Curiosities with Axiom mathematical structures, Gabriel Dos Reis, 2006/03/13
 Re: [Axiomdeveloper] Curiosities with Axiom mathematical structures, Ralf Hemmecke, 2006/03/14
 Re: [Axiomdeveloper] Curiosities with Axiom mathematical structures, Gabriel Dos Reis, 2006/03/13
 Re: [Axiomdeveloper] Curiosities with Axiom mathematical structures, Ralf Hemmecke, 2006/03/14
 Re: [Axiomdeveloper] Curiosities with Axiom mathematical structures,
Gabriel Dos Reis <=
 Re: [Axiomdeveloper] Curiosities with Axiom mathematical structures, Ralf Hemmecke, 2006/03/08
 Re: [Axiomdeveloper] Curiosities with Axiom mathematical structures, Ralf Hemmecke, 2006/03/08
 Re: [Axiomdeveloper] Curiosities with Axiom mathematical structures, William Sit, 2006/03/09
 Re: [Axiomdeveloper] Curiosities with Axiom mathematical structures, Ralf Hemmecke, 2006/03/09
 Re: [Axiomdeveloper] Curiosities with Axiom mathematical structures, William Sit, 2006/03/10
 RE: [Axiomdeveloper] Curiosities with Axiom mathematical structures, Bill Page, 2006/03/08
 Re: [Axiomdeveloper] Curiosities with Axiom mathematical structures, William Sit, 2006/03/09
 Re: [Axiomdeveloper] Curiosities with Axiom mathematical structures, Gabriel Dos Reis, 2006/03/13
 Re: [Axiomdeveloper] Curiosities with Axiom mathematical structures, Gabriel Dos Reis, 2006/03/13
 Re: [Axiomdeveloper] Curiosities with Axiom mathematical structures, William Sit, 2006/03/14