<htmlxmlns="http://www.w3.org/1999/xhtml"><head><title>BoundMap (infer.Costlib.BoundMap)</title><linkrel="stylesheet"href="../../../odoc.css"/><metacharset="utf-8"/><metaname="generator"content="odoc 1.5.2"/><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>»<ahref="../index.html">Costlib</a>» BoundMap</nav><h1>Module <code>Costlib.BoundMap</code></h1></header><divclass="spec module"id="module-BasicCost"><ahref="#module-BasicCost"class="anchor"></a><code><spanclass="keyword">module</span> BasicCost = <ahref="../CostDomain/index.html#module-BasicCost">CostDomain.BasicCost</a></code></div><divclass="spec module"id="module-Node"><ahref="#module-Node"class="anchor"></a><code><spanclass="keyword">module</span> Node = <ahref="../../Absint/ProcCfg/index.html#module-DefaultNode">Absint.ProcCfg.DefaultNode</a></code></div><dl><dtclass="spec value"id="val-lookup_upperbound"><ahref="#val-lookup_upperbound"class="anchor"></a><code><spanclass="keyword">val</span> lookup_upperbound : <span><ahref="../../Costlib__CostDomain/BasicCost/index.html#type-t">BasicCost.t</a><ahref="../../Absint__ProcCfg/DefaultNode/index.html#module-IdMap">Node.IdMap</a>.t</span><span>-></span><ahref="../../Absint__ProcCfg/DefaultNode/index.html#type-id">Node.id</a><span>-></span><ahref="../../Costlib__CostDomain/BasicCost/index.html#type-t">BasicCost.t</a></code></dt><dd><p>given a bound map and a node, lookup the number of times it can be executed</p></dd></dl><dl><dtclass="spec value"id="val-compute_upperbound_map"><ahref="#val-compute_upperbound_map"class="anchor"></a><code><spanclass="keyword">val</span> compute_upperbound_map : <ahref="../../IR/Procdesc/index.html#type-t">IR.Procdesc.t</a><span>-></span><ahref="../../BO/BufferOverrunAnalysis/index.html#type-invariant_map">BO.BufferOverrunAnalysis.invariant_map</a><span>-></span><ahref="../../Checkers/Control/index.html#type-invariant_map">Checkers.Control.invariant_map</a><span>-></span><span><ahref="../../Checkers/LoopInvariant/VarsInLoop/index.html#type-t">Checkers.LoopInvariant.VarsInLoop.t</a><ahref="../../IR__Procdesc/index.html#module-NodeMap">IR.Procdesc.NodeMap</a>.t</span><span>-></span><span><ahref="../../Costlib__CostDomain/BasicCost/index.html#type-t">BasicCost.t</a><ahref="../../Absint__ProcCfg/DefaultNode/index.html#module-IdMap">Node.IdMap</a>.t</span></code></dt><dd><p>compute a map from each node to an upper bound on the number of times it can be executed.</p></dd></dl></div></body></html>