On Tue, Aug 5, 2008 at 7:26 PM, Bill Page <[EMAIL PROTECTED]> wrote: > On Tue, Aug 5, 2008 at 7:56 PM, Gabriel Dos Reis wrote: >> On Tue, Aug 5, 2008 at 6:47 PM, Bill Page wrote: >>>> >>>> Just eliminating the syntactic transformations in the interpreter >>>> does not solve the problem: you get new failures, and they need to >>>> be resolved. My proposal fort SetAggregate is to replace "<" with >>>> "part?". >>>> >>> >>> Sure, that would solve the immediate problem. If that is all that is >>> of interest then why not just replace those references to '<' with >>> 'subset?' and eliminate the export of '<' from SetAggregate? >> >> The operation subset? does not compute the same thing as "<". >> > > Duh... You mean that the documentation in 'SetAggregate' > > ++ s < t returns true if all elements of set aggregate s are also > ++ elements of set aggregate t. > > is wrong?
No -- just that it needs second reading. To appreciate the difference, you have to look at the documentation above SetAggregate which alludes to the difference between a finite set and a multi set. Also, look at the definition of "<" in Multiset -- it computes strict multiset inclusion, not just set inclusion; e.g. the multiplicity of elements is important (which is not the case for subset? as you can see). > I guess that is the case since I see that the definition of > '<' in 'FiniteSetAggregate' is > > s < t == #s < #t and s = intersect(s,t) > > So you are saying that the intention of SetAggregate is that '<' > denote a "proper" (strict) subset relation. > > http://en.wikipedia.org/wiki/Subset > > But then '<' is just a (strict) "partial ordering operation" that > obeys a different but related set of axioms. Of course they are > interchangeable because we also have '=' and '~='. > > I think this is "harmful" only because of the "misguided syntactic > transformations" that you referred to in the original email. If '<' is > exported by a domain called 'PartiallyOrderedSet', then it's correct > semantics are clear. Again, my problem is not that I do not understand what a partially ordered set is -- I guess you can give me credit for that [I know I'd assume that anybody contributing to this discuss understands those basic notions until proven otherwise :-)] The problem is that even if you define a separate category named PartiallyOrderetSet that exports "<" and the likes, that still does not solve a fundamental problem: That many partial orderings may exist on the same domain, and if we stipulate that any partial ordering must be spelled "<", then we have an impossible situation: This is exactly an instance of the general monoid problem. This is why I view this solution as abstractly attractive but programmatically ineffective -- unless the monoid problem is solved. ------------------------------------------------------------------------- This SF.Net email is sponsored by the Moblin Your Move Developer's challenge Build the coolest Linux based applications with Moblin SDK & win great prizes Grand prize is a trip for two to an Open Source event anywhere in the world http://moblin-contest.org/redirect.php?banner_id=100&url=/ _______________________________________________ open-axiom-devel mailing list open-axiom-devel@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/open-axiom-devel