sidekick/dev/sidekick/Sidekick_cc/Resolved_expl/index.html
2023-06-24 01:36:40 +00:00

2 lines
No EOL
2.6 KiB
HTML
Raw Blame History

This file contains ambiguous Unicode characters

This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

<!DOCTYPE html>
<html xmlns="http://www.w3.org/1999/xhtml"><head><title>Resolved_expl (sidekick.Sidekick_cc.Resolved_expl)</title><link rel="stylesheet" href="../../../odoc.support/odoc.css"/><meta charset="utf-8"/><meta name="generator" content="odoc 2.2.0"/><meta name="viewport" content="width=device-width,initial-scale=1.0"/><script src="../../../odoc.support/highlight.pack.js"></script><script>hljs.initHighlightingOnLoad();</script></head><body class="odoc"><nav class="odoc-nav"><a href="../index.html">Up</a> <a href="../../index.html">sidekick</a> &#x00BB; <a href="../index.html">Sidekick_cc</a> &#x00BB; Resolved_expl</nav><header class="odoc-preamble"><h1>Module <code><span>Sidekick_cc.Resolved_expl</span></code></h1><p>Resolved explanations.</p><p>The congruence closure keeps explanations for why terms are in the same class. However these are represented in a compact, cheap form. To use these explanations we need to <b>resolve</b> them into a resolved explanation, typically a list of literals that are true in the current trail and are responsible for merges.</p><p>However, we can also have merged classes because they have the same value in the current model.</p></header><div class="odoc-content"><div class="odoc-spec"><div class="spec type anchored" id="type-t"><a href="#type-t" class="anchor"></a><code><span><span class="keyword">type</span> t</span><span> = </span><span>{</span></code><ol><li id="type-t.lits" class="def record field anchored"><a href="#type-t.lits" class="anchor"></a><code><span>lits : <span><a href="../../Sidekick_core/Lit/index.html#type-t">Sidekick_core.Lit.t</a> list</span>;</span></code></li><li id="type-t.pr" class="def record field anchored"><a href="#type-t.pr" class="anchor"></a><code><span>pr : <a href="../../Sidekick_proof/Pterm/index.html#type-delayed">Sidekick_proof.Pterm.delayed</a>;</span></code></li></ol><code><span>}</span></code></div></div><div class="odoc-include"><details open="open"><summary class="spec include"><code><span><span class="keyword">include</span> <a href="../../Sidekick_sigs/module-type-PRINT/index.html">Sidekick_sigs.PRINT</a> <span class="keyword">with</span> <span><span class="keyword">type</span> <a href="../../Sidekick_sigs/module-type-PRINT/index.html#type-t">t</a> := <a href="#type-t">t</a></span></span></code></summary><div class="odoc-spec"><div class="spec value anchored" id="val-pp"><a href="#val-pp" class="anchor"></a><code><span><span class="keyword">val</span> pp : <span><a href="#type-t">t</a> <a href="../../Sidekick_sigs/index.html#type-printer">Sidekick_sigs.printer</a></span></span></code></div></div></details></div></div></body></html>