[m-rev.] for review: document the default equality/comparison for solver types

Julien Fischer juliensf at csse.unimelb.edu.au
Tue Jan 15 13:49:42 AEDT 2008


For review by Mark and Ralph.

Estimated hours taken: 2
Branches: main

Document the default equality and comparison for solver types.

doc/reference_manual.texi:
 	Specify what a Mercury implementation should do when equality or comparison are
 	not specified for a solver type.

 	Document what the Melbourne implementation does.

 	Fix a typo: s/suppport/support/

Julien.

Index: doc/reference_manual.texi
===================================================================
RCS file: /home/mercury/mercury1/repository/mercury/doc/reference_manual.texi,v
retrieving revision 1.415
diff -u -r1.415 reference_manual.texi
--- doc/reference_manual.texi	14 Jan 2008 00:08:02 -0000	1.415
+++ doc/reference_manual.texi	15 Jan 2008 02:45:27 -0000
@@ -2398,6 +2398,20 @@
  specified, @code{equality_pred} and @code{comparison_pred} are also
  exported from the same module.

+If the @code{equality_pred} attribute is omitted then the implementation should
+supply an equality predicate for the solver type such that the axioms for
+equality predicates listed in @pxref{User-defined equality and comparison} are satisfied
+and the supplied equality predicate does not update the constraint solver state.
+
+Likewise, if the @code{comparison_pred} attribute is omitted then the implementation
+should supply a comparison predicate for the solver type such that the axioms for comparison
+predicates listed in @pxref{User-defined equality and comparison} are satisfied and the
+supplied comparison predicate does not update the constraint solver state.
+
+If required to provide an equality or comparison predicate for a solver type the
+Melbourne Mercury implementation implements these operations using word equality
+and comparison respectively.
+
  If provided, any mutable declarations given for the @code{constraint_store}
  attribute are equivalent to separate mutable declarations; their association
  with the solver type is for the purposes of documentation.  That is,
@@ -10465,7 +10479,7 @@
  (see @ref{Tabled evaluation}).

  @item @samp{parallel_conj}
-This feature specifies that the compilation model must suppport
+This feature specifies that the compilation model must support
  parallel execution of conjunctions.
  This feature cannot be specified together with the @samp{trailing}
  feature.

--------------------------------------------------------------------------
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