<htmlxmlns="http://www.w3.org/1999/xhtml"><head><title>Biabduction__Prop (infer.Biabduction__Prop)</title><linkrel="stylesheet"href="../../odoc.css"/><metacharset="utf-8"/><metaname="generator"content="odoc 1.5.1"/><metaname="viewport"content="width=device-width,initial-scale=1.0"/><scriptsrc="../../highlight.pack.js"></script><script>hljs.initHighlightingOnLoad();</script></head><body><divclass="content"><header><nav><ahref="../index.html">Up</a>–<ahref="../index.html">infer</a>» Biabduction__Prop</nav><h1>Module <code>Biabduction__Prop</code></h1><navclass="toc"><ul><li><ahref="#basic-functions-for-propositions">Basic Functions for propositions</a></li><li><ahref="#normalization">Normalization</a></li><li><ahref="#compaction">Compaction</a></li><li><ahref="#queries-about-propositions">Queries about propositions</a></li><li><ahref="#functions-for-changing-and-generating-propositions">Functions for changing and generating propositions</a></li><li><ahref="#functions-for-existentially-quantifying-and-unquantifying-variables">Functions for existentially quantifying and unquantifying variables</a></li><li><ahref="#prop-iterators">Prop iterators</a></li><li><ahref="#internal-modules">Internal modules</a></li></ul></nav></header><aside><p>Functions for Propositions (i.e., Symbolic Heaps)</p></aside><dl><dtclass="spec type"id="type-normal"><ahref="#type-normal"class="anchor"></a><code><spanclass="keyword">type</span> normal</code></dt><dd><p>kind for normal props, i.e. normalized</p></dd></dl><dl><dtclass="spec type"id="type-exposed"><ahref="#type-exposed"class="anchor"></a><code><spanclass="keyword">type</span> exposed</code></dt><dd><p>kind for exposed props</p></dd></dl><dl><dtclass="spec type"id="type-sorted"><ahref="#type-sorted"class="anchor"></a><code><spanclass="keyword">type</span> sorted</code></dt><dd><p>kind for sorted props</p></dd></dl><aside><p>Proposition.</p></aside><dl><dtclass="spec type"id="type-pi"><ahref="#type-pi"class="anchor"></a><code><spanclass="keyword">type</span> pi</code><code> = <span><ahref="../Biabduction/Predicates/index.html#type-atom">Biabduction.Predicates.atom</a> list</span></code></dt><dtclass="spec type"id="type-sigma"><ahref="#type-sigma"class="anchor"></a><code><spanclass="keyword">type</span> sigma</code><code> = <span><ahref="../Biabduction/Predicates/index.html#type-hpred">Biabduction.Predicates.hpred</a> list</span></code></dt><dtclass="spec type"id="type-t"><ahref="#type-t"class="anchor"></a><code><spanclass="keyword">type</span><span>'a t</span></code><code> = <spanclass="keyword">private</span></code><code>{</code><tableclass="record"><trid="type-t.sigma"class="anchored"><tdclass="def field"><ahref="#type-t.sigma"class="anchor"></a><code>sigma : <ahref="index.html#type-sigma">sigma</a>;</code></td><tdclass="doc"><p>spatial part</p></td></tr><trid="type-t.sub"class="anchored"><tdclass="def field"><ahref="#type-t.sub"class="anchor"></a><code>sub : <ahref="../Biabduction/Predicates/index.html#type-subst">Biabduction.Predicates.subst</a>;</code></td><tdclass="doc"><p>substitution</p></td></tr><trid="type-t.pi"class="anchored"><tdclass="def field"><ahref="#type-t.pi"class="anchor"></a><code>pi : <ahref="index.html#type-pi">pi</a>;</code></td><tdclass="doc"><p>pure part</p></td></tr><trid="type-t.sigma_fp"class="anchored"><tdclass="def field"><ahref="#type-t.sigma_fp"class="anchor"></a><code>sigma_fp : <ahref="index.html#type-sigma">sigma</a>;</code></td><tdclass="doc"><p>abduced spatial part</p></td></tr><trid="type-t.pi_fp"class="anchored"><tdclass="def field"><ahref="#type-t.pi_fp"class="anchor"></a><code>pi_fp : <ahref="index.html#type-pi">pi</a>;</code></td><tdclass="doc"><p>abduced pure part</p></td></tr></table><code>}</code></dt><dd><p>the kind 'a should range over <code>normal</code> and <code>exposed</code></p></dd></dl><div><divclass="spec include"><divclass="doc"><dl><dtclass="spec value"id="val-compare"><ahref="#val-compare"class="anchor"></a><code><spanclass="