[m-rev.] For review: inst any non-locals in promise_equivalent_solutions

Peter Schachte schachte at csse.unimelb.edu.au
Tue Feb 6 10:45:43 AEDT 2007


Ian MacLarty wrote:
> In the reference manual is says:
> 
> This goal promises that @var{Vars} is the set of variables bound by
> @var{Goal}, and that while @var{Goal} may have more than one solution,
> all of these solutions are equivalent with respect to the equality
> theories of the variables in @var{Vars}.
> 
> Is this still valid if some of the vars have inst any?  An inst any
> variable may represent many (different) solutions.  My understanding is
> that you just want a determinism cast, you don't want to promise that
> the solutions are all equivalent.

Perhaps "promise_equivalent_solutions" wasn't the right name for that, because
it sure sounds like it's saying what the reference manual says:  that all
solutions to the goal are = to one another.  For an inst any variable, that
promise should say that all satisfying values for that variable are =, which
doesn't sound like what you want.  Maybe Mercury should have a
"promise_equivalent_constraints" pragma, to specify that all solutions of the
enclosed goal for the specified variables have equivalent sets of constraints?
 That name and semantics would work equally well for inst any and inst ground
variables.

-- 
Peter Schachte              Nothing gives one person so much advantage over
schachte at cs.mu.OZ.AU        another as to remain always cool and unruffled
www.cs.mu.oz.au/~schachte/  under all circumstances.
Phone: +61 3 8344 1338          -- Thomas Jefferson
--------------------------------------------------------------------------
mercury-reviews mailing list
Post messages to:       mercury-reviews at csse.unimelb.edu.au
Administrative Queries: owner-mercury-reviews at csse.unimelb.edu.au
Subscriptions:          mercury-reviews-request at csse.unimelb.edu.au
--------------------------------------------------------------------------



More information about the reviews mailing list