]> matita.cs.unibo.it Git - helm.git/blob - matita/matita/help/C/tac_destruct.html
Ignore *-stamp in matita/help/C
[helm.git] / matita / matita / help / C / tac_destruct.html
1 <?xml version="1.0" encoding="UTF-8" standalone="no"?>
2 <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"><html xmlns="http://www.w3.org/1999/xhtml"><head><meta http-equiv="Content-Type" content="text/html; charset=UTF-8" /><title>destruct</title><link rel="stylesheet" type="text/css" href="docbook.css" /><meta name="generator" content="DocBook XSL Stylesheets Vsnapshot" /><link rel="home" href="index.html" title="Matita V0.99.5 User Manual (rev. 0.99.5 )" /><link rel="up" href="sec_tactics.html" title="Chapter 7. Tactics" /><link rel="prev" href="tac_cut.html" title="cut" /><link rel="next" href="tac_elim.html" title="elim" /></head><body><a xmlns="" href="../../../"><div class="matita_logo"><img src="figures/matita.png" alt="Tiny Matita logo" /><span>Matita Home</span></div></a><div class="navheader"><table width="100%" summary="Navigation header"><tr><th colspan="3" align="center">destruct</th></tr><tr><td width="20%" align="left"><a accesskey="p" href="tac_cut.html">Prev</a> </td><th width="60%" align="center">Chapter 7. Tactics</th><td width="20%" align="right"> <a accesskey="n" href="tac_elim.html">Next</a></td></tr></table><hr /></div><div class="sect1"><div class="titlepage"><div><div><h2 class="title" style="clear: both"><a id="tac_destruct"></a>destruct</h2></div></div></div><p><strong class="userinput"><code>destruct (H<sub>0</sub> ... H<sub>n</sub>) skip (K<sub>0</sub> ... K<sub>m</sub>)</code></strong></p><p>
3       </p><div class="variablelist"><dl class="variablelist"><dt><span class="term">Synopsis:</span></dt><dd><p><span class="bold"><strong>destruct</strong></span>
4              [<span class="bold"><strong>(</strong></span><span class="emphasis"><em><a class="link" href="sec_terms.html#grammar.id">id</a></em></span>…<span class="bold"><strong>)</strong></span>] [<span class="bold"><strong>skip</strong></span> <span class="bold"><strong>(</strong></span><span class="emphasis"><em><a class="link" href="sec_terms.html#grammar.id">id</a></em></span>…<span class="bold"><strong>)</strong></span>]</p></dd><dt><span class="term">Pre-conditions:</span></dt><dd><p>Each hypothesis <span class="command"><strong>H<sub>i</sub></strong></span> must be either a Leibniz or a John Major equality where the two sides of the equality are possibly applied constructors of an inductive type.</p></dd><dt><span class="term">Action:</span></dt><dd><p>The tactic recursively compare the two sides of each equality
5              looking for different constructors in corresponding position.
6              If two of them are found, the tactic closes the current sequent
7              by proving the absurdity of <span class="command"><strong>p</strong></span>. Otherwise
8              it adds a new hypothesis for each leaf of the formula that
9              states the equality of the subformulae in the corresponding
10              positions on the two sides of the equality. If the newly
11              added hypothesis is an equality between a variable and a term,
12              the variable is substituted for the term everywhere in the
13              sequent, except for the hypotheses <span class="command"><strong>K<sub>j</sub></strong></span>, and it is then cleared from the list of hypotheses.
14             </p></dd><dt><span class="term">New sequents to prove:</span></dt><dd><p>None.</p></dd></dl></div><p>
15     </p></div><div class="navfooter"><hr /><table width="100%" summary="Navigation footer"><tr><td width="40%" align="left"><a accesskey="p" href="tac_cut.html">Prev</a> </td><td width="20%" align="center"><a accesskey="u" href="sec_tactics.html">Up</a></td><td width="40%" align="right"> <a accesskey="n" href="tac_elim.html">Next</a></td></tr><tr><td width="40%" align="left" valign="top">cut </td><td width="20%" align="center"><a accesskey="h" href="index.html">Home</a></td><td width="40%" align="right" valign="top"> elim</td></tr></table></div></body></html>