On 11/20/2014 02:42 AM, Waldek Hebisch wrote:
>>   (a:%) > (b:%):Boolean      == ~(a <= b)

>>   (a:%) > (b:%):Boolean      == b < a
> 
> This is common definition, valid regardless of of order beeing
> a partial one or linear one.

Well, in fact, I also learned that the inverse of a relation R is defined by

    a R^(-1) b <==> b R a

i.e., exactly what you term "common definition".

But the original problem of this thread was, what to choose as the basic
operation, i.e., whether there is need to implement < or <=.

Personally I think one cannot much rely on default implementations, if
it is not clear (i.e. explicitly specified) what the "basic operation" is.

I faintly remember that I experimented with some language that by
default implements < in terms of > and at the same time > in terms of <,
so it leaves the decision to the user what the "basic operation" is. But
also this approach is bad, because the compiler will not complain at all
if the user implements neither < nor > and thus get into an infinite
loop at runtime.

Ralf

-- 
You received this message because you are subscribed to the Google Groups 
"FriCAS - computer algebra system" group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to [email protected].
To post to this group, send email to [email protected].
Visit this group at http://groups.google.com/group/fricas-devel.
For more options, visit https://groups.google.com/d/optout.

Reply via email to