mirror of
https://github.com/c-cube/sidekick.git
synced 2025-12-06 11:15:43 -05:00
2 lines
No EOL
8.1 KiB
HTML
2 lines
No EOL
8.1 KiB
HTML
<!DOCTYPE html>
|
||
<html xmlns="http://www.w3.org/1999/xhtml"><head><title>Sidekick_base (sidekick-base.Sidekick_base)</title><link rel="stylesheet" href="../../odoc.css"/><meta charset="utf-8"/><meta name="generator" content="odoc 2.0.2"/><meta name="viewport" content="width=device-width,initial-scale=1.0"/><script src="../../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-base</a> » Sidekick_base</nav><header class="odoc-preamble"><h1>Module <code><span>Sidekick_base</span></code></h1></header><nav class="odoc-toc"><ul><li><a href="#sidekick-base">Sidekick base</a></li></ul></nav><div class="odoc-content"><h2 id="sidekick-base"><a href="#sidekick-base" class="anchor"></a>Sidekick base</h2><p>This library is a starting point for writing concrete implementations of SMT solvers with Sidekick.</p><p>It provides a representation of terms, boolean formulas, linear arithmetic expressions, datatypes for the functors in Sidekick.</p><p>In addition, it has a notion of <a href="Base_types/Statement/index.html">Statement</a>. Statements are instructions for the SMT solver to do something, such as: define a new constant, declare a new constant, assert a formula as being true, set an option, check satisfiability of the set of statements added so far, etc. Logic formats such as SMT-LIB 2.6 are in fact based on a similar notion of statements, and a <code>.smt2</code> files contains a list of statements.</p><div class="odoc-spec"><div class="spec module" id="module-Base_types" class="anchored"><a href="#module-Base_types" class="anchor"></a><code><span><span class="keyword">module</span> </span><span><a href="Base_types/index.html">Base_types</a></span><span> : <span class="keyword">sig</span> ... <span class="keyword">end</span></span></code></div><div class="spec-doc"><p>Basic type definitions for Sidekick_base</p></div></div><div class="odoc-spec"><div class="spec module" id="module-ID" class="anchored"><a href="#module-ID" class="anchor"></a><code><span><span class="keyword">module</span> </span><span><a href="ID/index.html">ID</a></span><span> : <span class="keyword">sig</span> ... <span class="keyword">end</span></span></code></div><div class="spec-doc"><p>Unique Identifiers</p></div></div><div class="odoc-spec"><div class="spec module" id="module-Fun" class="anchored"><a href="#module-Fun" class="anchor"></a><code><span><span class="keyword">module</span> </span><span>Fun</span><span> = <a href="Base_types/Fun/index.html">Base_types.Fun</a></span></code></div></div><div class="odoc-spec"><div class="spec module" id="module-Stat" class="anchored"><a href="#module-Stat" class="anchor"></a><code><span><span class="keyword">module</span> </span><span>Stat</span><span> = <a href="../../sidekick/Sidekick_util/Stat/index.html">Sidekick_util.Stat</a></span></code></div></div><div class="odoc-spec"><div class="spec module" id="module-Model" class="anchored"><a href="#module-Model" class="anchor"></a><code><span><span class="keyword">module</span> </span><span><a href="Model/index.html">Model</a></span><span> : <span class="keyword">sig</span> ... <span class="keyword">end</span></span></code></div><div class="spec-doc"><p>Models</p></div></div><div class="odoc-spec"><div class="spec module" id="module-Term" class="anchored"><a href="#module-Term" class="anchor"></a><code><span><span class="keyword">module</span> </span><span>Term</span><span> = <a href="Base_types/Term/index.html">Base_types.Term</a></span></code></div></div><div class="odoc-spec"><div class="spec module" id="module-Value" class="anchored"><a href="#module-Value" class="anchor"></a><code><span><span class="keyword">module</span> </span><span>Value</span><span> = <a href="Base_types/Value/index.html">Base_types.Value</a></span></code></div></div><div class="odoc-spec"><div class="spec module" id="module-Term_cell" class="anchored"><a href="#module-Term_cell" class="anchor"></a><code><span><span class="keyword">module</span> </span><span>Term_cell</span><span> = <a href="Base_types/Term_cell/index.html">Base_types.Term_cell</a></span></code></div></div><div class="odoc-spec"><div class="spec module" id="module-Ty" class="anchored"><a href="#module-Ty" class="anchor"></a><code><span><span class="keyword">module</span> </span><span>Ty</span><span> = <a href="Base_types/Ty/index.html">Base_types.Ty</a></span></code></div></div><div class="odoc-spec"><div class="spec module" id="module-Statement" class="anchored"><a href="#module-Statement" class="anchor"></a><code><span><span class="keyword">module</span> </span><span>Statement</span><span> = <a href="Base_types/Statement/index.html">Base_types.Statement</a></span></code></div></div><div class="odoc-spec"><div class="spec module" id="module-Data" class="anchored"><a href="#module-Data" class="anchor"></a><code><span><span class="keyword">module</span> </span><span>Data</span><span> = <a href="Base_types/Data/index.html">Base_types.Data</a></span></code></div></div><div class="odoc-spec"><div class="spec module" id="module-Select" class="anchored"><a href="#module-Select" class="anchor"></a><code><span><span class="keyword">module</span> </span><span>Select</span><span> = <a href="Base_types/Select/index.html">Base_types.Select</a></span></code></div></div><div class="odoc-spec"><div class="spec module" id="module-Form" class="anchored"><a href="#module-Form" class="anchor"></a><code><span><span class="keyword">module</span> </span><span><a href="Form/index.html">Form</a></span><span> : <span class="keyword">sig</span> ... <span class="keyword">end</span></span></code></div><div class="spec-doc"><p>Formulas (boolean terms).</p></div></div><div class="odoc-spec"><div class="spec module" id="module-Solver_arg" class="anchored"><a href="#module-Solver_arg" class="anchor"></a><code><span><span class="keyword">module</span> </span><span><a href="Solver_arg/index.html">Solver_arg</a></span><span> : <span class="keyword">sig</span> ... <span class="keyword">end</span></span></code></div><div class="spec-doc"><p>Concrete implementation of <a href="../../sidekick/Sidekick_core/module-type-TERM/index.html"><code>Sidekick_core.TERM</code></a></p></div></div><div class="odoc-spec"><div class="spec module" id="module-Lit" class="anchored"><a href="#module-Lit" class="anchor"></a><code><span><span class="keyword">module</span> </span><span><a href="Lit/index.html">Lit</a></span><span> : <span class="keyword">sig</span> ... <span class="keyword">end</span></span></code></div></div><div class="odoc-spec"><div class="spec module" id="module-Proof_dummy" class="anchored"><a href="#module-Proof_dummy" class="anchor"></a><code><span><span class="keyword">module</span> </span><span><a href="Proof_dummy/index.html">Proof_dummy</a></span><span> : <span class="keyword">sig</span> ... <span class="keyword">end</span></span></code></div><div class="spec-doc"><p>Dummy proof module that does nothing.</p></div></div><div class="odoc-spec"><div class="spec module" id="module-Proof" class="anchored"><a href="#module-Proof" class="anchor"></a><code><span><span class="keyword">module</span> </span><span><a href="Proof/index.html">Proof</a></span><span> : <span class="keyword">sig</span> ... <span class="keyword">end</span></span></code></div><div class="spec-doc"><p>Proof representation</p></div></div><div class="odoc-spec"><div class="spec module" id="module-Proof_quip" class="anchored"><a href="#module-Proof_quip" class="anchor"></a><code><span><span class="keyword">module</span> </span><span><a href="Proof_quip/index.html">Proof_quip</a></span><span> : <span class="keyword">sig</span> ... <span class="keyword">end</span></span></code></div><div class="spec-doc"><p>Export to Quip from <a href="Proof/index.html"><code>Proof</code></a>.</p></div></div><div class="odoc-spec"><div class="spec module" id="module-IArray" class="anchored"><a href="#module-IArray" class="anchor"></a><code><span><span class="keyword">module</span> </span><span>IArray</span><span> = <a href="../../sidekick/Sidekick_util/IArray/index.html">Sidekick_util.IArray</a></span></code></div></div></div></body></html> |