From: Enrico Tassi <enrico.tassi@inria.fr> Date: Fri, 18 Nov 2011 17:11:53 +0000 (+0000) Subject: hints X-Git-Tag: make_still_working~2079 X-Git-Url: http://matita.cs.unibo.it/gitweb/?a=commitdiff_plain;h=ad4f4b0c08bdb4aaf714796fbac865dea648eecc;p=helm.git hints --- diff --git a/matita/matita/help/C/sec_commands.xml b/matita/matita/help/C/sec_commands.xml index 2e5995d98..6c9ad43af 100644 --- a/matita/matita/help/C/sec_commands.xml +++ b/matita/matita/help/C/sec_commands.xml @@ -502,46 +502,34 @@ </sect1> <sect1 id="command_unification_hint"> <title>unification hint</title> - <para>TODO</para> - <!-- - <para><userinput>coercion u with ariety saturation nocomposites</userinput></para> + <para><userinput>unification hint n â v1 : T1,⦠vi : Ti; h1 â t1, ⦠hn â tn ⢠tl â¡ tr.</userinput></para> <para> <variablelist> <varlistentry> <term>Synopsis:</term> <listitem> <para> - <emphasis role="bold">coercion</emphasis> - (&uri; | &term; <emphasis role="bold">with</emphasis>) - [ &nat; [&nat;]] - [ <emphasis role="bold">nocomposites</emphasis> ] + <emphasis role="bold">unification hint</emphasis> + &nat; + <emphasis role="bold">â</emphasis> + [ &id; [ <emphasis role="bold">:</emphasis> &term; ] ,.. ] + <emphasis role="bold">;</emphasis> + [ &id; <emphasis role="bold">â</emphasis> &term; ,.. ] + <emphasis role="bold">â¢</emphasis> + &term; <emphasis role="bold">â¡</emphasis> &term; </para> </listitem> </varlistentry> <varlistentry> <term>Action:</term> <listitem> - <para>Declares <command>u</command> as an implicit coercion. - If the type of <command>u</command> is - <command>âx1:T1. ⦠âx(n-1):T(n-1).Tn</command> the coercion target is - <command>T(n - ariety)</command> while its source is - <command>T(n - ariety - saturation - 1)</command>. - Every time a term <command>x</command> - of type source is used with expected type target, Matita - automatically replaces <command>x</command> with - <command>(u ? ⦠? x ? ⦠?)</command> to avoid a typing error.</para> - Note that the number of <command>?</command> added after - <command>x</command> is saturation. - <para>Implicit coercions are not displayed to the user: - <command>(u ? ⦠? x)</command> is rendered simply - as <command>x</command>.</para> - <para>When a coercion <command>u</command> is declared - from source <command>s</command> to target <command>t</command> - and there is already a coercion <command>u'</command> of - target <command>s</command> or source <command>t</command>, - a composite implicit coercion is automatically computed - by Matita unless <emphasis role="bold">nocomposites</emphasis> - is specified.</para> + <para>Declares the hint at precedence <command>n</command></para> + <para>The file <command>hints_declaration.ma</command> must be + included to declare hints with that syntax.</para> + <para>Unification hints are described in the paper + "Hints in unification" by + Asperti, Ricciotti, Sacerdoti and Tassi. + </para> </listitem> </varlistentry> </variablelist>