sidekick/dev/sidekick-base/Sidekick_base/index.html
2021-12-07 15:22:59 +00:00

2 lines
No EOL
8.1 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>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> &#x00BB; 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>