</para>
</sect1>
<sect1 id="tac_change">
- <title><emphasis role="bold">change</emphasis> <pattern> <emphasis role="bold">with</emphasis> &sterm;</title>
+ <title><emphasis role="bold">change</emphasis> &pattern; <emphasis role="bold">with</emphasis> &sterm;</title>
<titleabbrev>change</titleabbrev>
<para><userinput>change patt with t</userinput></para>
<para>
</para>
</sect1>
<sect1 id="tac_decompose">
- <title><emphasis role="bold">decompose</emphasis> &id; [&id;]… [<intros_spec>]</title>
+ <title><emphasis role="bold">decompose</emphasis> &id; [&id;]… &intros-spec;</title>
<titleabbrev>decompose</titleabbrev>
<para><userinput>decompose ???</userinput></para>
<para>
</variablelist>
</para>
</sect1>
+ <sect1 id="tac_demodulation">
+ <title><emphasis role="bold">demodulation</emphasis> &pattern;</title>
+ <titleabbrev>demodulation</titleabbrev>
+ <para><userinput>demodulation patt</userinput></para>
+ <para>
+ <variablelist>
+ <varlistentry>
+ <term>Pre-conditions:</term>
+ <listitem>
+ <para>None.</para>
+ </listitem>
+ </varlistentry>
+ <varlistentry>
+ <term>Action:</term>
+ <listitem>
+ <para>&TODO;</para>
+ </listitem>
+ </varlistentry>
+ <varlistentry>
+ <term>New sequents to prove:</term>
+ <listitem>
+ <para>None.</para>
+ </listitem>
+ </varlistentry>
+ </variablelist>
+ </para>
+ </sect1>
<sect1 id="tac_discriminate">
<title><emphasis role="bold">discriminate</emphasis> &sterm;</title>
<titleabbrev>discriminate</titleabbrev>
</para>
</sect1>
<sect1 id="tac_elim">
- <title><emphasis role="bold">elim</emphasis> &sterm; [<emphasis role="bold">using</emphasis> &sterm;] [<intros_spec>]</title>
+ <title><emphasis role="bold">elim</emphasis> &sterm; [<emphasis role="bold">using</emphasis> &sterm;] &intros-spec;</title>
<titleabbrev>elim</titleabbrev>
<para><userinput>elim t using th hyps</userinput></para>
<para>
</para>
</sect1>
<sect1 id="tac_elimType">
- <title><emphasis role="bold">elimType</emphasis> &sterm; [<emphasis role="bold">using</emphasis> &sterm;] [<intros_spec>]</title>
+ <title><emphasis role="bold">elimType</emphasis> &sterm; [<emphasis role="bold">using</emphasis> &sterm;] &intros-spec;</title>
<titleabbrev>elimType</titleabbrev>
<para><userinput>elimType T using th hyps</userinput></para>
<para>
</para>
</sect1>
<sect1 id="tac_fold">
- <title><emphasis role="bold">fold</emphasis> <reduction_kind> &sterm; <pattern></title>
+ <title><emphasis role="bold">fold</emphasis> &reduction-kind; &sterm; &pattern;</title>
<titleabbrev>fold</titleabbrev>
<para><userinput>fold red t patt</userinput></para>
<para>
</para>
</sect1>
<sect1 id="tac_fwd">
- <title><emphasis role="bold">fwd</emphasis> &id; [<ident list>]</title>
+ <title><emphasis role="bold">fwd</emphasis> &id; [<emphasis role="bold">(</emphasis>[&id;]…<emphasis role="bold">)</emphasis>]</title>
<titleabbrev>fwd</titleabbrev>
<para><userinput>fwd ...TODO</userinput></para>
<para>
</para>
</sect1>
<sect1 id="tac_generalize">
- <title><emphasis role="bold">generalize</emphasis> <pattern> [<emphasis role="bold">as</emphasis> &id;]</title>
+ <title><emphasis role="bold">generalize</emphasis> &pattern; [<emphasis role="bold">as</emphasis> &id;]</title>
<titleabbrev>generalize</titleabbrev>
<para><userinput>generalize patt as H</userinput></para>
<para>
</para>
</sect1>
<sect1 id="tac_intros">
- <title><emphasis role="bold">intros</emphasis> <intros_spec></title>
+ <title><emphasis role="bold">intros</emphasis> &intros-spec;</title>
<titleabbrev>intros</titleabbrev>
<para><userinput>intros hyps</userinput></para>
<para>
</para>
</sect1>
<sect1 id="tac_lapply">
- <title><emphasis role="bold">lapply</emphasis> [<emphasis role="bold">depth=</emphasis>&nat;] &sterm; [<emphasis role="bold">to</emphasis> <term list>] [<emphasis role="bold">using</emphasis> &id;]</title>
+ <title><emphasis role="bold">lapply</emphasis> [<emphasis role="bold">depth=</emphasis>&nat;] &sterm; [<emphasis role="bold">to</emphasis> &sterm; [&sterm;]…] [<emphasis role="bold">using</emphasis> &id;]</title>
<titleabbrev>lapply</titleabbrev>
<para><userinput>lapply ???</userinput></para>
<para>
</para>
</sect1>
<sect1 id="tac_normalize">
- <title><emphasis role="bold">normalize</emphasis> <pattern></title>
+ <title><emphasis role="bold">normalize</emphasis> &pattern;</title>
<titleabbrev>normalize</titleabbrev>
<para><userinput>normalize patt</userinput></para>
<para>
</para>
</sect1>
<sect1 id="tac_paramodulation">
- <title><emphasis role="bold">paramodulation</emphasis> <pattern></title>
+ <title><emphasis role="bold">paramodulation</emphasis> &pattern;</title>
<titleabbrev>paramodulation</titleabbrev>
<para><userinput>paramodulation patt</userinput></para>
<para>
</para>
</sect1>
<sect1 id="tac_reduce">
- <title><emphasis role="bold">reduce</emphasis> <pattern></title>
+ <title><emphasis role="bold">reduce</emphasis> &pattern;</title>
<titleabbrev>reduce</titleabbrev>
<para><userinput>reduce patt</userinput></para>
<para>
</para>
</sect1>
<sect1 id="tac_replace">
- <title><emphasis role="bold">replace</emphasis> <pattern> <emphasis role="bold">with</emphasis> &sterm;</title>
+ <title><emphasis role="bold">replace</emphasis> &pattern; <emphasis role="bold">with</emphasis> &sterm;</title>
<titleabbrev>change</titleabbrev>
<para><userinput>change patt with t</userinput></para>
<para>
</para>
</sect1>
<sect1 id="tac_rewrite">
- <title><emphasis role="bold">rewrite</emphasis> [<emphasis role="bold"><</emphasis>|<emphasis role="bold">></emphasis>] &sterm; <pattern></title>
+ <title><emphasis role="bold">rewrite</emphasis> [<emphasis role="bold"><</emphasis>|<emphasis role="bold">></emphasis>] &sterm; &pattern;</title>
<titleabbrev>rewrite</titleabbrev>
<para><userinput>rewrite dir p patt</userinput></para>
<para>
</para>
</sect1>
<sect1 id="tac_simplify">
- <title><emphasis role="bold">simplify</emphasis> <pattern></title>
+ <title><emphasis role="bold">simplify</emphasis> &pattern;</title>
<titleabbrev>simplify</titleabbrev>
<para><userinput>simplify patt</userinput></para>
<para>
</para>
</sect1>
<sect1 id="tac_unfold">
- <title><emphasis role="bold">unfold</emphasis> [&sterm;] <pattern></title>
+ <title><emphasis role="bold">unfold</emphasis> [&sterm;] &pattern;</title>
<titleabbrev>unfold</titleabbrev>
<para><userinput>unfold t patt</userinput></para>
<para>
</para>
</sect1>
<sect1 id="tac_whd">
- <title><emphasis role="bold">whd</emphasis> <pattern></title>
+ <title><emphasis role="bold">whd</emphasis> &pattern;</title>
<titleabbrev>whd</titleabbrev>
<para><userinput>whd patt</userinput></para>
<para>
</sect2>
</sect1>
+ <sect1 id="tacticargs">
+ <title>Tactic arguments</title>
+ <para>This section documents the syntax of some recurring arguments for
+ tactics.</para>
+
+ <sect2 id="introsspec">
+ <title>intros-spec</title>
+ <table frame="all" rowsep="0" colsep="0">
+ <title>intros-spec</title>
+ <tgroup cols="4">
+ <tbody>
+ <row>
+ <entry id="intros-spec">&intros-spec;</entry>
+ <entry>::=</entry>
+ <entry>[&nat;] [<emphasis role="bold">(</emphasis>[&id;]…<emphasis role="bold">)</emphasis>]</entry>
+ </row>
+ </tbody>
+ </tgroup>
+ </table>
+ <para>The natural number is the number of new hypotheses to be introduced. The list of identifiers gives the name for the first hypotheses.</para>
+ </sect2>
+
+ <sect2 id="pattern">
+ <title>pattern</title>
+ <table frame="all" rowsep="0" colsep="0">
+ <title>pattern</title>
+ <tgroup cols="4">
+ <tbody>
+ <row>
+ <entry id="pattern">&pattern;</entry>
+ <entry>::=</entry>
+ <entry>&TODO;</entry>
+ </row>
+ </tbody>
+ </tgroup>
+ </table>
+ <para>&TODO;</para>
+ </sect2>
+
+ <sect2 id="reduction-kind">
+ <title>reduction-kind</title>
+ <para>Reduction kinds are normalization functions that transform a term
+ to a convertible but simpler one. Each reduction kind can be used both
+ as a tactic argument and as a stand-alone tactic.</para>
+ <table frame="all" rowsep="0" colsep="0">
+ <title>reduction-kind</title>
+ <tgroup cols="4">
+ <tbody>
+ <row>
+ <entry id="reduction-kind">&reduction-kind;</entry>
+ <entry>::=</entry>
+ <entry><emphasis role="bold">demodulate</emphasis></entry>
+ </row>
+ <row>
+ <entry/>
+ <entry>|</entry>
+ <entry><emphasis role="bold">normalize</emphasis></entry>
+ <entry>Computes the βδιζ-normal form</entry>
+ </row>
+ <row>
+ <entry/>
+ <entry>|</entry>
+ <entry><emphasis role="bold">reduce</emphasis></entry>
+ <entry>Computes the βδιζ-normal form</entry>
+ </row>
+ <row>
+ <entry/>
+ <entry>|</entry>
+ <entry><emphasis role="bold">simplify</emphasis></entry>
+ <entry>Computes a form supposed to be simpler</entry>
+ </row>
+ <row>
+ <entry/>
+ <entry>|</entry>
+ <entry><emphasis role="bold">unfold</emphasis> [&sterm;]</entry>
+ <entry>δ-reduces the constant or variable specified, or that
+ in head position if none is specified</entry>
+ </row>
+ <row>
+ <entry/>
+ <entry>|</entry>
+ <entry><emphasis role="bold">whd</emphasis></entry>
+ <entry>Computes the βδιζ-weak-head normal form</entry>
+ </row>
+ </tbody>
+ </tgroup>
+ </table>
+ </sect2>
+ </sect1>
+
</chapter>