]> matita.cs.unibo.it Git - helm.git/blobdiff - helm/software/matita/help/C/sec_tactics.xml
added generation of quick reference card of tactic syntax
[helm.git] / helm / software / matita / help / C / sec_tactics.xml
index fb695879f35cb92c8748f9b937647b8ce0b5fbd6..2e1f6f36565e8a32f32c921e63badaf964e26a36 100644 (file)
@@ -1,14 +1,27 @@
 
 <!-- ============ Tactics ====================== -->
 <chapter id="sec_tactics">
- <title>Tactics</title>
+  <title>Tactics</title>
+
+  <sect1 id="tactics_quickref">
+    <title>Quick reference card</title>
+    <para>
+      &tacticref;
+    </para>
+  </sect1>
 
   <sect1 id="tac_absurd">
-    <title>absurd &term;</title>
+    <title>absurd</title>
     <titleabbrev>absurd</titleabbrev>
     <para><userinput>absurd P</userinput></para>
      <para>
       <variablelist>
+        <varlistentry role="tactic.synopsis">
+          <term>Synopsis:</term>
+          <listitem>
+            <para><emphasis role="bold">absurd</emphasis> &sterm;</para>
+          </listitem>
+        </varlistentry>
         <varlistentry>
           <term>Pre-conditions:</term>
           <listitem>
      </para>
   </sect1>
   <sect1 id="tac_apply">
-    <title>apply &term;</title>
+    <title>apply</title>
     <titleabbrev>apply</titleabbrev>
     <para><userinput>apply t</userinput></para>
     <para>
       <variablelist>
+        <varlistentry role="tactic.synopsis">
+          <term>Synopsis:</term>
+          <listitem>
+            <para><emphasis role="bold">apply</emphasis> &sterm;</para>
+          </listitem>
+        </varlistentry>
         <varlistentry>
           <term>Pre-conditions:</term>
           <listitem>
     <para><userinput>assumption </userinput></para>
     <para>
       <variablelist>
+        <varlistentry role="tactic.synopsis">
+          <term>Synopsis:</term>
+          <listitem>
+            <para><emphasis role="bold">assumption</emphasis></para>
+          </listitem>
+        </varlistentry>
         <varlistentry>
           <term>Pre-conditions:</term>
           <listitem>
     </para>
   </sect1>
   <sect1 id="tac_auto">
-    <title>auto [depth=&nat;] [width=&nat;] [paramodulation] [full]</title>
+    <title>auto</title>
     <titleabbrev>auto</titleabbrev>
     <para><userinput>auto depth=d width=w paramodulation full</userinput></para>
     <para>
       <variablelist>
+        <varlistentry role="tactic.synopsis">
+          <term>Synopsis:</term>
+          <listitem>
+            <para><emphasis role="bold">auto</emphasis> [<emphasis role="bold">depth=</emphasis>&nat;] [<emphasis role="bold">width=</emphasis>&nat;] [<emphasis role="bold">paramodulation</emphasis>] [<emphasis role="bold">full</emphasis>]</para>
+          </listitem>
+        </varlistentry>
         <varlistentry>
           <term>Pre-conditions:</term>
           <listitem>
     </para>
   </sect1>
   <sect1 id="tac_clear">
-    <title>clear &id;</title>
+    <title>clear</title>
     <titleabbrev>clear</titleabbrev>
     <para><userinput>clear H</userinput></para>
     <para>
       <variablelist>
+        <varlistentry role="tactic.synopsis">
+          <term>Synopsis:</term>
+          <listitem>
+            <para><emphasis role="bold">clear</emphasis> &id;</para>
+          </listitem>
+        </varlistentry>
         <varlistentry>
           <term>Pre-conditions:</term>
           <listitem>
     </para>
   </sect1>
   <sect1 id="tac_clearbody">
-    <title>clearbody &id;</title>
+    <title>clearbody</title>
     <titleabbrev>clearbody</titleabbrev>
     <para><userinput>clearbody H</userinput></para>
     <para>
       <variablelist>
+        <varlistentry role="tactic.synopsis">
+          <term>Synopsis:</term>
+          <listitem>
+            <para><emphasis role="bold">clearbody</emphasis> &id;</para>
+          </listitem>
+        </varlistentry>
         <varlistentry>
           <term>Pre-conditions:</term>
           <listitem>
     </para>
   </sect1>
   <sect1 id="tac_change">
-    <title>change &lt;pattern&gt; with &term;</title>
+    <title>change</title>
     <titleabbrev>change</titleabbrev>
     <para><userinput>change patt with t</userinput></para>
     <para>
       <variablelist>
+        <varlistentry role="tactic.synopsis">
+          <term>Synopsis:</term>
+          <listitem>
+            <para><emphasis role="bold">change</emphasis> &pattern; <emphasis role="bold">with</emphasis> &sterm;</para>
+          </listitem>
+        </varlistentry>
         <varlistentry>
           <term>Pre-conditions:</term>
           <listitem>
     </para>
   </sect1>
   <sect1 id="tac_constructor">
-    <title>constructor &nat;</title>
+    <title>constructor</title>
     <titleabbrev>constructor</titleabbrev>
     <para><userinput>constructor n</userinput></para>
     <para>
       <variablelist>
+        <varlistentry role="tactic.synopsis">
+          <term>Synopsis:</term>
+          <listitem>
+            <para><emphasis role="bold">constructor</emphasis> &nat;</para>
+          </listitem>
+        </varlistentry>
         <varlistentry>
           <term>Pre-conditions:</term>
           <listitem>
     <para><userinput>contradiction </userinput></para>
     <para>
       <variablelist>
+        <varlistentry role="tactic.synopsis">
+          <term>Synopsis:</term>
+          <listitem>
+            <para><emphasis role="bold">contradiction</emphasis></para>
+          </listitem>
+        </varlistentry>
         <varlistentry>
           <term>Pre-conditions:</term>
           <listitem>
     </para>
   </sect1>
   <sect1 id="tac_cut">
-    <title>cut &term; [as &id;]</title>
+    <title>cut</title>
     <titleabbrev>cut</titleabbrev>
     <para><userinput>cut P as H</userinput></para>
     <para>
       <variablelist>
+        <varlistentry role="tactic.synopsis">
+          <term>Synopsis:</term>
+          <listitem>
+            <para><emphasis role="bold">cut</emphasis> &sterm; [<emphasis role="bold">as</emphasis> &id;]</para>
+          </listitem>
+        </varlistentry>
         <varlistentry>
           <term>Pre-conditions:</term>
           <listitem>
     </para>
   </sect1>
   <sect1 id="tac_decompose">
-    <title>decompose &id; [&id;]… [&lt;intros_spec&gt;]</title>
+    <title>decompose</title>
     <titleabbrev>decompose</titleabbrev>
-    <para><userinput>decompose ???</userinput></para>
+    <para><userinput>
+     decompose (T<subscript>1</subscript> ... T<subscript>n</subscript>) H hips
+    </userinput></para>
     <para>
       <variablelist>
+        <varlistentry role="tactic.synopsis">
+          <term>Synopsis:</term>
+          <listitem>
+            <para><emphasis role="bold">decompose</emphasis> &id; [&id;]… &intros-spec;</para>
+          </listitem>
+        </varlistentry>
         <varlistentry>
           <term>Pre-conditions:</term>
           <listitem>
-            <para>TODO.</para>
+            <para> 
+            <command>H</command> must inhabit one inductive type among  
+            <command>
+             T<subscript>1</subscript> ... T<subscript>n</subscript>
+            </command>
+            and the types of a predefined list.
+           </para>
           </listitem>
         </varlistentry>
         <varlistentry>
           <term>Action:</term>
           <listitem>
-            <para>TODO.</para>
+            <para>
+            Runs <command>elim H hyps</command>, clears H and tries to run
+             itself recursively on each new identifier introduced by 
+            <command>elim</command> in the opened sequents.
+           </para>
           </listitem>
         </varlistentry>
         <varlistentry>
           <term>New sequents to prove:</term>
           <listitem>
-            <para>TODO.</para>
+            <para>
+            The ones generated by all the <command>elim</command> tactics run.
+           </para>
+          </listitem>
+        </varlistentry>
+      </variablelist>
+    </para>
+  </sect1>
+  <sect1 id="tac_demodulation">
+    <title>demodulation</title>
+    <titleabbrev>demodulation</titleabbrev>
+    <para><userinput>demodulation patt</userinput></para>
+    <para>
+      <variablelist>
+        <varlistentry role="tactic.synopsis">
+          <term>Synopsis:</term>
+          <listitem>
+            <para><emphasis role="bold">demodulation</emphasis> &pattern;</para>
+          </listitem>
+        </varlistentry>
+        <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>discriminate &term;</title>
+    <title>discriminate</title>
     <titleabbrev>discriminate</titleabbrev>
     <para><userinput>discriminate p</userinput></para>
     <para>
       <variablelist>
+        <varlistentry role="tactic.synopsis">
+          <term>Synopsis:</term>
+          <listitem>
+            <para><emphasis role="bold">discriminate</emphasis> &sterm;</para>
+          </listitem>
+        </varlistentry>
         <varlistentry>
           <term>Pre-conditions:</term>
           <listitem>
@@ -368,11 +494,17 @@ its constructor takes no arguments.</para>
     </para>
   </sect1>
   <sect1 id="tac_elim">
-    <title>elim &term; [using &term;] [&lt;intros_spec&gt;]</title>
+    <title>elim</title>
     <titleabbrev>elim</titleabbrev>
     <para><userinput>elim t using th hyps</userinput></para>
     <para>
       <variablelist>
+        <varlistentry role="tactic.synopsis">
+          <term>Synopsis:</term>
+          <listitem>
+            <para><emphasis role="bold">elim</emphasis> &sterm; [<emphasis role="bold">using</emphasis> &sterm;] &intros-spec;</para>
+          </listitem>
+        </varlistentry>
         <varlistentry>
           <term>Pre-conditions:</term>
           <listitem>
@@ -405,11 +537,17 @@ its constructor takes no arguments.</para>
     </para>
   </sect1>
   <sect1 id="tac_elimType">
-    <title>elimType &term; [using &term;] [&lt;intros_spec&gt;]</title>
+    <title>elimType</title>
     <titleabbrev>elimType</titleabbrev>
     <para><userinput>elimType T using th hyps</userinput></para>
     <para>
       <variablelist>
+        <varlistentry role="tactic.synopsis">
+          <term>Synopsis:</term>
+          <listitem>
+            <para><emphasis role="bold">elimType</emphasis> &sterm; [<emphasis role="bold">using</emphasis> &sterm;] &intros-spec;</para>
+          </listitem>
+        </varlistentry>
         <varlistentry>
           <term>Pre-conditions:</term>
           <listitem>
@@ -432,11 +570,17 @@ its constructor takes no arguments.</para>
     </para>
   </sect1>
   <sect1 id="tac_exact">
-    <title>exact &term;</title>
+    <title>exact</title>
     <titleabbrev>exact</titleabbrev>
     <para><userinput>exact p</userinput></para>
     <para>
       <variablelist>
+        <varlistentry role="tactic.synopsis">
+          <term>Synopsis:</term>
+          <listitem>
+            <para><emphasis role="bold">exact</emphasis> &sterm;</para>
+          </listitem>
+        </varlistentry>
         <varlistentry>
           <term>Pre-conditions:</term>
           <listitem>
@@ -465,6 +609,12 @@ its constructor takes no arguments.</para>
     <para><userinput>exists </userinput></para>
     <para>
       <variablelist>
+        <varlistentry role="tactic.synopsis">
+          <term>Synopsis:</term>
+          <listitem>
+            <para><emphasis role="bold">exists</emphasis></para>
+          </listitem>
+        </varlistentry>
         <varlistentry>
           <term>Pre-conditions:</term>
           <listitem>
@@ -491,11 +641,17 @@ its constructor takes no arguments.</para>
     </para>
   </sect1>
   <sect1 id="tac_fail">
-    <title>fail </title>
-    <titleabbrev>failt</titleabbrev>
+    <title>fail</title>
+    <titleabbrev>fail</titleabbrev>
     <para><userinput>fail</userinput></para>
     <para>
       <variablelist>
+        <varlistentry role="tactic.synopsis">
+          <term>Synopsis:</term>
+          <listitem>
+            <para><emphasis role="bold">fail</emphasis></para>
+          </listitem>
+        </varlistentry>
         <varlistentry>
           <term>Pre-conditions:</term>
           <listitem>
@@ -518,11 +674,17 @@ its constructor takes no arguments.</para>
     </para>
   </sect1>
   <sect1 id="tac_fold">
-    <title>fold &lt;reduction_kind&gt; &term; &lt;pattern&gt;</title>
+    <title>fold</title>
     <titleabbrev>fold</titleabbrev>
     <para><userinput>fold red t patt</userinput></para>
     <para>
       <variablelist>
+        <varlistentry role="tactic.synopsis">
+          <term>Synopsis:</term>
+          <listitem>
+            <para><emphasis role="bold">fold</emphasis> &reduction-kind; &sterm; &pattern;</para>
+          </listitem>
+        </varlistentry>
         <varlistentry>
           <term>Pre-conditions:</term>
           <listitem>
@@ -555,6 +717,12 @@ its constructor takes no arguments.</para>
     <para><userinput>fourier </userinput></para>
     <para>
       <variablelist>
+        <varlistentry role="tactic.synopsis">
+          <term>Synopsis:</term>
+          <listitem>
+            <para><emphasis role="bold">fourier</emphasis></para>
+          </listitem>
+        </varlistentry>
         <varlistentry>
           <term>Pre-conditions:</term>
           <listitem>
@@ -580,11 +748,17 @@ its constructor takes no arguments.</para>
     </para>
   </sect1>
   <sect1 id="tac_fwd">
-    <title>fwd &id; [&lt;ident list&gt;]</title>
+    <title>fwd</title>
     <titleabbrev>fwd</titleabbrev>
     <para><userinput>fwd ...TODO</userinput></para>
     <para>
       <variablelist>
+        <varlistentry role="tactic.synopsis">
+          <term>Synopsis:</term>
+          <listitem>
+            <para><emphasis role="bold">fwd</emphasis> &id; [<emphasis role="bold">(</emphasis>[&id;]…<emphasis role="bold">)</emphasis>]</para>
+          </listitem>
+        </varlistentry>
         <varlistentry>
           <term>Pre-conditions:</term>
           <listitem>
@@ -607,11 +781,17 @@ its constructor takes no arguments.</para>
     </para>
   </sect1>
   <sect1 id="tac_generalize">
-    <title>generalize &lt;pattern&gt; [as &id;]</title>
+    <title>generalize</title>
     <titleabbrev>generalize</titleabbrev>
     <para><userinput>generalize patt as H</userinput></para>
     <para>
       <variablelist>
+        <varlistentry role="tactic.synopsis">
+          <term>Synopsis:</term>
+          <listitem>
+            <para><emphasis role="bold">generalize</emphasis> &pattern; [<emphasis role="bold">as</emphasis> &id;]</para>
+          </listitem>
+        </varlistentry>
         <varlistentry>
           <term>Pre-conditions:</term>
           <listitem>
@@ -648,6 +828,12 @@ its constructor takes no arguments.</para>
     <para><userinput>id </userinput></para>
     <para>
       <variablelist>
+        <varlistentry role="tactic.synopsis">
+          <term>Synopsis:</term>
+          <listitem>
+            <para><emphasis role="bold">id</emphasis></para>
+          </listitem>
+        </varlistentry>
         <varlistentry>
           <term>Pre-conditions:</term>
           <listitem>
@@ -670,11 +856,17 @@ its constructor takes no arguments.</para>
     </para>
   </sect1>
   <sect1 id="tac_injection">
-    <title>injection &term;</title>
-    <titleabbrev>injection</titleabbrev>
+    <title>injection</title>
+    <titleabbrev><emphasis role="bold">injection</emphasis></titleabbrev>
     <para><userinput>injection p</userinput></para>
     <para>
       <variablelist>
+        <varlistentry role="tactic.synopsis">
+          <term>Synopsis:</term>
+          <listitem>
+            <para><emphasis role="bold">injection</emphasis> &sterm;</para>
+          </listitem>
+        </varlistentry>
         <varlistentry>
           <term>Pre-conditions:</term>
           <listitem>
@@ -701,11 +893,17 @@ its constructor takes no arguments.</para>
     </para>
   </sect1>
   <sect1 id="tac_intro">
-    <title>intro [&id;]</title>
+    <title>intro</title>
     <titleabbrev>intro</titleabbrev>
     <para><userinput>intro H</userinput></para>
     <para>
       <variablelist>
+        <varlistentry role="tactic.synopsis">
+          <term>Synopsis:</term>
+          <listitem>
+            <para><emphasis role="bold">intro</emphasis> [&id;]</para>
+          </listitem>
+        </varlistentry>
         <varlistentry>
           <term>Pre-conditions:</term>
           <listitem>
@@ -734,11 +932,17 @@ its constructor takes no arguments.</para>
     </para>
   </sect1>
   <sect1 id="tac_intros">
-    <title>intros &lt;intros_spec&gt;</title>
+    <title>intros</title>
     <titleabbrev>intros</titleabbrev>
     <para><userinput>intros hyps</userinput></para>
     <para>
       <variablelist>
+        <varlistentry role="tactic.synopsis">
+          <term>Synopsis:</term>
+          <listitem>
+            <para><emphasis role="bold">intros</emphasis> &intros-spec;</para>
+          </listitem>
+        </varlistentry>
         <varlistentry>
           <term>Pre-conditions:</term>
           <listitem>
@@ -771,11 +975,17 @@ its constructor takes no arguments.</para>
     </para>
   </sect1>
   <sect1 id="tac_inversion">
-    <title>inversion &term;</title>
+    <title>inversion</title>
     <titleabbrev>inversion</titleabbrev>
     <para><userinput>inversion t</userinput></para>
     <para>
       <variablelist>
+        <varlistentry role="tactic.synopsis">
+          <term>Synopsis:</term>
+          <listitem>
+            <para><emphasis role="bold">inversion</emphasis> &sterm;</para>
+          </listitem>
+        </varlistentry>
         <varlistentry>
           <term>Pre-conditions:</term>
           <listitem>
@@ -806,11 +1016,20 @@ its constructor takes no arguments.</para>
     </para>
   </sect1>
   <sect1 id="tac_lapply">
-    <title>lapply [depth=&nat;] &term; [to &lt;term list&gt;] [using &id;]</title>
+    <title>lapply</title>
     <titleabbrev>lapply</titleabbrev>
-    <para><userinput>lapply ???</userinput></para>
+    <para><userinput>
+     lapply depth=d t 
+     to t<subscript>1</subscript>, ..., t<subscript>n</subscript> as H
+    </userinput></para>
     <para>
       <variablelist>
+        <varlistentry role="tactic.synopsis">
+          <term>Synopsis:</term>
+          <listitem>
+            <para><emphasis role="bold">lapply</emphasis> [<emphasis role="bold">depth=</emphasis>&nat;] &sterm; [<emphasis role="bold">to</emphasis> &sterm; [&sterm;]…] [<emphasis role="bold">as</emphasis> &id;]</para>
+          </listitem>
+        </varlistentry>
         <varlistentry>
           <term>Pre-conditions:</term>
           <listitem>
@@ -838,6 +1057,12 @@ its constructor takes no arguments.</para>
     <para><userinput>left </userinput></para>
     <para>
       <variablelist>
+        <varlistentry role="tactic.synopsis">
+          <term>Synopsis:</term>
+          <listitem>
+            <para><emphasis role="bold">left</emphasis></para>
+          </listitem>
+        </varlistentry>
         <varlistentry>
           <term>Pre-conditions:</term>
           <listitem>
@@ -864,11 +1089,17 @@ its constructor takes no arguments.</para>
     </para>
   </sect1>
   <sect1 id="tac_letin">
-    <title>letin &id; ≝ &term;</title>
+    <title>letin</title>
     <titleabbrev>letin</titleabbrev>
     <para><userinput>letin x ≝ t</userinput></para>
     <para>
       <variablelist>
+        <varlistentry role="tactic.synopsis">
+          <term>Synopsis:</term>
+          <listitem>
+            <para><emphasis role="bold">letin</emphasis> &id; <emphasis role="bold">≝</emphasis> &sterm;</para>
+          </listitem>
+        </varlistentry>
         <varlistentry>
           <term>Pre-conditions:</term>
           <listitem>
@@ -892,11 +1123,17 @@ its constructor takes no arguments.</para>
     </para>
   </sect1>
   <sect1 id="tac_normalize">
-    <title>normalize &lt;pattern&gt;</title>
+    <title>normalize</title>
     <titleabbrev>normalize</titleabbrev>
     <para><userinput>normalize patt</userinput></para>
     <para>
       <variablelist>
+        <varlistentry role="tactic.synopsis">
+          <term>Synopsis:</term>
+          <listitem>
+            <para><emphasis role="bold">normalize</emphasis> &pattern;</para>
+          </listitem>
+        </varlistentry>
         <varlistentry>
           <term>Pre-conditions:</term>
           <listitem>
@@ -920,11 +1157,17 @@ its constructor takes no arguments.</para>
     </para>
   </sect1>
   <sect1 id="tac_paramodulation">
-    <title>paramodulation &lt;pattern&gt;</title>
+    <title>paramodulation</title>
     <titleabbrev>paramodulation</titleabbrev>
     <para><userinput>paramodulation patt</userinput></para>
     <para>
       <variablelist>
+        <varlistentry role="tactic.synopsis">
+          <term>Synopsis:</term>
+          <listitem>
+            <para><emphasis role="bold">paramodulation</emphasis> &pattern;</para>
+          </listitem>
+        </varlistentry>
         <varlistentry>
           <term>Pre-conditions:</term>
           <listitem>
@@ -947,11 +1190,17 @@ its constructor takes no arguments.</para>
     </para>
   </sect1>
   <sect1 id="tac_reduce">
-    <title>reduce &lt;pattern&gt;</title>
+    <title>reduce</title>
     <titleabbrev>reduce</titleabbrev>
     <para><userinput>reduce patt</userinput></para>
     <para>
       <variablelist>
+        <varlistentry role="tactic.synopsis">
+          <term>Synopsis:</term>
+          <listitem>
+            <para><emphasis role="bold">reduce</emphasis> &pattern;</para>
+          </listitem>
+        </varlistentry>
         <varlistentry>
           <term>Pre-conditions:</term>
           <listitem>
@@ -980,6 +1229,12 @@ its constructor takes no arguments.</para>
     <para><userinput>reflexivity </userinput></para>
     <para>
       <variablelist>
+        <varlistentry role="tactic.synopsis">
+          <term>Synopsis:</term>
+          <listitem>
+            <para><emphasis role="bold">reflexivity</emphasis></para>
+          </listitem>
+        </varlistentry>
         <varlistentry>
           <term>Pre-conditions:</term>
           <listitem>
@@ -1004,11 +1259,17 @@ its constructor takes no arguments.</para>
     </para>
   </sect1>
   <sect1 id="tac_replace">
-    <title>replace &lt;pattern&gt; with &term;</title>
+    <title>replace</title>
     <titleabbrev>change</titleabbrev>
     <para><userinput>change patt with t</userinput></para>
     <para>
       <variablelist>
+        <varlistentry role="tactic.synopsis">
+          <term>Synopsis:</term>
+          <listitem>
+            <para><emphasis role="bold">replace</emphasis> &pattern; <emphasis role="bold">with</emphasis> &sterm;</para>
+          </listitem>
+        </varlistentry>
         <varlistentry>
           <term>Pre-conditions:</term>
           <listitem>
@@ -1036,11 +1297,17 @@ its constructor takes no arguments.</para>
     </para>
   </sect1>
   <sect1 id="tac_rewrite">
-    <title>rewrite [&lt;|&gt;] &term; &lt;pattern&gt;</title>
+    <title>rewrite</title>
     <titleabbrev>rewrite</titleabbrev>
     <para><userinput>rewrite dir p patt</userinput></para>
     <para>
       <variablelist>
+        <varlistentry role="tactic.synopsis">
+          <term>Synopsis:</term>
+          <listitem>
+            <para><emphasis role="bold">rewrite</emphasis> [<emphasis role="bold">&lt;</emphasis>|<emphasis role="bold">&gt;</emphasis>] &sterm; &pattern;</para>
+          </listitem>
+        </varlistentry>
         <varlistentry>
           <term>Pre-conditions:</term>
           <listitem>
@@ -1076,6 +1343,12 @@ its constructor takes no arguments.</para>
     <para><userinput>right </userinput></para>
     <para>
       <variablelist>
+        <varlistentry role="tactic.synopsis">
+          <term>Synopsis:</term>
+          <listitem>
+            <para><emphasis role="bold">right</emphasis></para>
+          </listitem>
+        </varlistentry>
         <varlistentry>
           <term>Pre-conditions:</term>
           <listitem>
@@ -1107,6 +1380,12 @@ its constructor takes no arguments.</para>
     <para><userinput>ring </userinput></para>
     <para>
       <variablelist>
+        <varlistentry role="tactic.synopsis">
+          <term>Synopsis:</term>
+          <listitem>
+            <para><emphasis role="bold">ring</emphasis></para>
+          </listitem>
+        </varlistentry>
         <varlistentry>
           <term>Pre-conditions:</term>
           <listitem>
@@ -1133,11 +1412,17 @@ its constructor takes no arguments.</para>
     </para>
   </sect1>
   <sect1 id="tac_simplify">
-    <title>simplify &lt;pattern&gt;</title>
+    <title>simplify</title>
     <titleabbrev>simplify</titleabbrev>
     <para><userinput>simplify patt</userinput></para>
     <para>
       <variablelist>
+        <varlistentry role="tactic.synopsis">
+          <term>Synopsis:</term>
+          <listitem>
+            <para><emphasis role="bold">simplify</emphasis> &pattern;</para>
+          </listitem>
+        </varlistentry>
         <varlistentry>
           <term>Pre-conditions:</term>
           <listitem>
@@ -1166,6 +1451,12 @@ its constructor takes no arguments.</para>
     <para><userinput>split </userinput></para>
     <para>
       <variablelist>
+        <varlistentry role="tactic.synopsis">
+          <term>Synopsis:</term>
+          <listitem>
+            <para><emphasis role="bold">split</emphasis></para>
+          </listitem>
+        </varlistentry>
         <varlistentry>
           <term>Pre-conditions:</term>
           <listitem>
@@ -1198,6 +1489,12 @@ its constructor takes no arguments.</para>
     <para><userinput>symmetry </userinput></para>
     <para>
       <variablelist>
+        <varlistentry role="tactic.synopsis">
+          <term>Synopsis:</term>
+          <listitem>
+            <para><emphasis role="bold">symmetry</emphasis></para>
+          </listitem>
+        </varlistentry>
         <varlistentry>
           <term>Pre-conditions:</term>
           <listitem>
@@ -1221,11 +1518,17 @@ its constructor takes no arguments.</para>
     </para>
   </sect1>
   <sect1 id="tac_transitivity">
-    <title>transitivity &term;</title>
+    <title>transitivity</title>
     <titleabbrev>transitivity</titleabbrev>
     <para><userinput>transitivity t</userinput></para>
     <para>
       <variablelist>
+        <varlistentry role="tactic.synopsis">
+          <term>Synopsis:</term>
+          <listitem>
+            <para><emphasis role="bold">transitivity</emphasis> &sterm;</para>
+          </listitem>
+        </varlistentry>
         <varlistentry>
           <term>Pre-conditions:</term>
           <listitem>
@@ -1250,11 +1553,17 @@ the current sequent to prove.</para>
     </para>
   </sect1>
   <sect1 id="tac_unfold">
-    <title>unfold [&term;] &lt;pattern&gt;</title>
+    <title>unfold</title>
     <titleabbrev>unfold</titleabbrev>
     <para><userinput>unfold t patt</userinput></para>
     <para>
       <variablelist>
+        <varlistentry role="tactic.synopsis">
+          <term>Synopsis:</term>
+          <listitem>
+            <para><emphasis role="bold">unfold</emphasis> [&sterm;] &pattern;</para>
+          </listitem>
+        </varlistentry>
         <varlistentry>
           <term>Pre-conditions:</term>
           <listitem>
@@ -1282,11 +1591,17 @@ the current sequent to prove.</para>
     </para>
   </sect1>
   <sect1 id="tac_whd">
-    <title>whd &lt;pattern&gt;</title>
+    <title>whd</title>
     <titleabbrev>whd</titleabbrev>
     <para><userinput>whd patt</userinput></para>
     <para>
       <variablelist>
+        <varlistentry role="tactic.synopsis">
+          <term>Synopsis:</term>
+          <listitem>
+            <para><emphasis role="bold">whd</emphasis> &pattern;</para>
+          </listitem>
+        </varlistentry>
         <varlistentry>
           <term>Pre-conditions:</term>
           <listitem>