1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37
|
<html>
<head><title>E_slash_D.html -- ACL2 Version 3.1</title></head>
<body text=#000000 bgcolor="#FFFFFF">
<h2>E/D</h2>enable/disable rules
<pre>Major Section: <a href="THEORIES.html">THEORIES</a>
</pre><p>
The macro <code>e/d</code> creates theory expressions for use in <code><a href="IN-THEORY.html">in-theory</a></code> hints
and events. It provides a convenient way to <code><a href="ENABLE.html">enable</a></code> and <code><a href="DISABLE.html">disable</a></code>
simultaneously, without having to write arcane theory expressions.
<pre>
Examples:
(e/d (lemma1 lemma2)) ; equivalent to (enable lemma1 lemma2)
(e/d () (lemma)) ; equivalent to (disable lemma)
(e/d (lemma1) (lemma2 lemma3)) ; Enable lemma1 then disable lemma2, lemma3.
(e/d () (lemma1) (lemma2)) ; Disable lemma1 then enable lemma2.
<p>
General Form:
(e/d enables-0 disables-0 ... enables-n disables-n)
</pre>
where each <code>enables-i</code> and <code>disables-i</code> is a list of runic designators;
see <a href="THEORIES.html">theories</a>, see <a href="ENABLE.html">enable</a>, and see <a href="DISABLE.html">disable</a>.<p>
The <code>e/d</code> macro takes any number of lists suitable for the <code><a href="ENABLE.html">enable</a></code> and
<code><a href="DISABLE.html">disable</a></code> macros, and creates a theory that is equal to
<code>(current-theory :here)</code> after executing the following commands.<p>
(in-theory (enable . enables-0))
(in-theory (disable . disables-0))
[etc.]
(in-theory (enable . enables-n))
(in-theory (disable . disables-n))
<br><br><br><a href="acl2-doc.html"><img src="llogo.gif"></a> <a href="acl2-doc-index.html"><img src="index.gif"></a>
</body>
</html>
|