Prolog: Rules with nothing but anonymous variables in the head, and no body
<p>Prolog's grammar uses a <code>&lt;head&gt; :- &lt;body&gt;</code> format for rules as such:</p>

<p><code>tree(G) :- acyclic(G) , connected(G).</code>
, denoting status of G as a tree depends on status as acyclic and connected.</p>

<p>This grammar can be extended in an implicit fashion to facts. Following the same example:</p>

<p><code>connected(graphA)</code> suggests <code>connected(graphA):-true.</code></p>

<p>In this sense, one might loosely define Prolog facts as Prolog rules that are always true.</p>

<p><strong>My question:</strong>  Is in any context a bodiless rule (one that is presumed to be true under all conditions) ever appropriate? Syntactically such a rule would look as follows.</p>

<p><code>graph(X).</code> (suggesting <code>graph(X):-true.</code>)</p>