BTW. I've replied just on the axiom-developer since the email lists seem to be functioning (more or less) properly again. When replying to something that includes a Cc: to Axiom Wiki email [EMAIL PROTECTED], I think we need to keep in mind that the email will be appended to a page named by the bracket in the subject, [axiom-developer] in this case. Since this name automatically occurs on all emails forwarded from the axiom-developer list, this means the corresponding page on the Axiom Wiki can get unmanageably long...
On March 7, 2006 2:53 PM William Sit wrote: > ... > Ralf Hemmecke wrote: > > There is Chapter 9 of Doye's PhD thesis > > http://portal.axiom-developer.org/refs/articles/doye-aldor-phd.pdf > > which deals in part with the renaming. > > > > From what I understand, it simply makes two mathematically > > distinct things (operator symbols and operator names) distinct > > in the programming language. (Though I don't quite like the syntax.) > > ... > By the way, I don't follow his example at bottom of p. 127: > If \phi is a functor (he said homomorphism, but that is wrong, > because a list and a set are from different categories), Doye's use of the work homomorphism is correct in the context of order-sorted algebra. Doye is not using the language of category theory in either the mathematical sense or in Axiom's sense. http://en.wikipedia.org/wiki/Homomorphism A homomorphism is just a map from one algebra to another that preserves the abstract algebraic structure. From Doye's point of view both lists and sets are algebras in this sense). > he wants the equation to hold: > > \phi(#([1,1]) = #(\phi([1,1])) > This is just the definition of preservation of algebraic structure. > The right hand side makes sense, with answer 1, but the left > hand side does not, since #([1,1]) = 2 is a number, not a list. In Doye's formalism both number 2 and the list [1,1] are part of the algebraic structure of 'List'. phi maps both of these to the corresponding structures in 'Set'. > He claimed \phi(2) = 2. Yes, the '2' in 'List' maps to the '2' in 'Set'. > In addition, there is no requirement that a functor commutes > with operations. A functor should, in addition to taking > objects (lists) to objects (sets), also has to take a morphism > *between* source objects (lists) to another morphism *between* > the image objects (sets). The map '#' is not a morphism in the > category of Lists, nor of Sets. '#' is an operator in both the 'List' and 'Set' order-sorted algebras. > If one must, then '#' is a functor from the category of Lists > (and also for Sets) to the category whose objects are > non-negative integers. But the composition of functors \phi > \circ # does not make sense. No, this is not what Doye has in mind. > What Doye has in mind is the following diagram: > > # > Lists --> NNI > | | > \phi | | id > v # v > Sets --> NNI > > But there is no reason to expect this to be a commutative > diagram of functors. So I think his example illustrates nothing. > No. The diagram should look like this: #: Lists --> NNI | \phi | | v #: Sets --> NNI Where we have the algebra 'List' on top and the algebra 'Set' on the bottom. We should think of \phi as mapping everything from 'List' to 'Set', i.e. %_list -> %_set, NNI_list -> NNI_set, and #_list -> #_set. Regards, Bill Page. _______________________________________________ Axiom-developer mailing list [email protected] http://lists.nongnu.org/mailman/listinfo/axiom-developer
