[mercury-users] Solver types and \=

Peter Schachte schachte at cs.mu.OZ.AU
Fri Aug 12 11:21:31 AEST 2005

On Fri, Aug 12, 2005 at 10:48:37AM +1000, Peter Hawkins wrote:
> Suppose A and B are variables of a solver type with an equality defined. 
> Then Mercury appears to transparently convert:
> A \= B
> to:
> not(A = B)
> Perhaps it 
> would be better to leave '\=' undefined for solver types, and leave the 
> user to define a custom inequality predicate if it makes sense?

I guess the transformation above should be limited to cases where A
and B are ground.  I would hope solver implementations would not post
constraints when the arguments *are* ground.  And solver type
declarations should be allowed to include "where disequality is

Peter Schachte              In order to become the master, the politician
schachte at cs.mu.OZ.AU        poses as the servant.
www.cs.mu.oz.au/~schachte/      -- Charles de Gaulle 
Phone: +61 3 8344 1338      
mercury-users mailing list
post:  mercury-users at cs.mu.oz.au
administrative address: owner-mercury-users at cs.mu.oz.au
unsubscribe: Address: mercury-users-request at cs.mu.oz.au Message: unsubscribe
subscribe:   Address: mercury-users-request at cs.mu.oz.au Message: subscribe

More information about the users mailing list