 mathematics. The intuition behind this notation is that whenever <code>p</code> is true-valued, then <code>q</code> should be; but when <code>p</code> is false-valued, then <code>q</code> should be too. Hence, <code>p</code> should be true-valued when (and only when) <code>q</code> is true-valued.</p>
<h2><a class="anchor" id="autotoc_md130"></a>
Minimal complete definition</h2>
<p><code>eval_if</code>, <code>not_</code> and <code>while_</code></p>
<p>All the other functions can be defined in those terms: 