<HTML>
<HEAD>
<!-- This HTML file has been created by texi2html 1.31
     from reference_manual.texi_pp on 8 July 2003 -->

<TITLE>The Mercury Language Reference Manual - Footnotes</TITLE>
</HEAD>
<BODY>
<H1>The Mercury Language Reference Manual</H1>
<H3><A NAME="FOOT1" HREF="reference_manual.html#FOOT1">(1)</A></H3>
Operator term (see section <A HREF="reference_manual.html#SEC5">Terms</A>).
<H3><A NAME="FOOT2" HREF="reference_manual.html#FOOT2">(2)</A></H3>
The type of an explicitly
type qualified term may be an instance of the type specified by the
qualifier. This allows explicit type qualifications to constrain the
types of two data-terms to be identical, without knowing the exact types
of the data-terms. It also allows type qualifications to refer to the
types of the results of existentially typed predicates or functions.
<H3><A NAME="FOOT3" HREF="reference_manual.html#FOOT3">(3)</A></H3>
If <VAR>equalitypred</VAR> is not an equivalence relation,
then the program is inconsistent: its declarative semantics 
contains a contradiction, because the additional axioms for the user-defined
equality contradict the standard equality axioms.  That implies that the
implementation may compute any answer at all (see section <A HREF="reference_manual.html#SEC83">Semantics</A>),
i.e. the behaviour of the program is undefined.
</BODY>
</HTML>