sidekick/dev/sidekick-base/Sidekick_base/index.html
2021-07-04 05:30:10 +00:00

2 lines
No EOL
6.3 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 1.5.2"/><meta name="viewport" content="width=device-width,initial-scale=1.0"/><script src="../../highlight.pack.js"></script><script>hljs.initHighlightingOnLoad();</script></head><body><div class="content"><header><nav><a href="../index.html">Up</a> <a href="../index.html">sidekick-base</a> &#x00BB; Sidekick_base</nav><h1>Module <code>Sidekick_base</code></h1><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"><span>Statement</span></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></header><dl><dt class="spec module" id="module-Base_types"><a href="#module-Base_types" class="anchor"></a><code><span class="keyword">module</span> <a href="Base_types/index.html">Base_types</a> : <span class="keyword">sig</span> ... <span class="keyword">end</span></code></dt><dd><p>Basic type definitions for Sidekick_base</p></dd></dl><dl><dt class="spec module" id="module-ID"><a href="#module-ID" class="anchor"></a><code><span class="keyword">module</span> <a href="ID/index.html">ID</a> : <span class="keyword">sig</span> ... <span class="keyword">end</span></code></dt><dd><p>Unique Identifiers</p></dd></dl><div class="spec module" id="module-Fun"><a href="#module-Fun" class="anchor"></a><code><span class="keyword">module</span> Fun = <a href="Base_types/index.html#module-Fun">Base_types.Fun</a></code></div><div class="spec module" id="module-Stat"><a href="#module-Stat" class="anchor"></a><code><span class="keyword">module</span> Stat = <a href="../../sidekick/Sidekick_util/index.html#module-Stat">Sidekick_util.Stat</a></code></div><dl><dt class="spec module" id="module-Model"><a href="#module-Model" class="anchor"></a><code><span class="keyword">module</span> <a href="Model/index.html">Model</a> : <span class="keyword">sig</span> ... <span class="keyword">end</span></code></dt><dd><p>Models</p></dd></dl><div class="spec module" id="module-Term"><a href="#module-Term" class="anchor"></a><code><span class="keyword">module</span> Term = <a href="Base_types/index.html#module-Term">Base_types.Term</a></code></div><div class="spec module" id="module-Value"><a href="#module-Value" class="anchor"></a><code><span class="keyword">module</span> Value = <a href="Base_types/index.html#module-Value">Base_types.Value</a></code></div><div class="spec module" id="module-Term_cell"><a href="#module-Term_cell" class="anchor"></a><code><span class="keyword">module</span> Term_cell = <a href="Base_types/index.html#module-Term_cell">Base_types.Term_cell</a></code></div><div class="spec module" id="module-Ty"><a href="#module-Ty" class="anchor"></a><code><span class="keyword">module</span> Ty = <a href="Base_types/index.html#module-Ty">Base_types.Ty</a></code></div><div class="spec module" id="module-Statement"><a href="#module-Statement" class="anchor"></a><code><span class="keyword">module</span> Statement = <a href="Base_types/index.html#module-Statement">Base_types.Statement</a></code></div><div class="spec module" id="module-Data"><a href="#module-Data" class="anchor"></a><code><span class="keyword">module</span> Data = <a href="Base_types/index.html#module-Data">Base_types.Data</a></code></div><div class="spec module" id="module-Select"><a href="#module-Select" class="anchor"></a><code><span class="keyword">module</span> Select = <a href="Base_types/index.html#module-Select">Base_types.Select</a></code></div><dl><dt class="spec module" id="module-Proof"><a href="#module-Proof" class="anchor"></a><code><span class="keyword">module</span> <a href="Proof/index.html">Proof</a> : <span class="keyword">sig</span> ... <span class="keyword">end</span></code></dt><dd><p>Proofs of unsatisfiability</p></dd></dl><dl><dt class="spec module" id="module-Form"><a href="#module-Form" class="anchor"></a><code><span class="keyword">module</span> <a href="Form/index.html">Form</a> : <span class="keyword">sig</span> ... <span class="keyword">end</span></code></dt><dd><p>Formulas (boolean terms).</p></dd></dl><div class="spec module" id="module-IArray"><a href="#module-IArray" class="anchor"></a><code><span class="keyword">module</span> IArray = <a href="../../sidekick/Sidekick_util/index.html#module-IArray">Sidekick_util.IArray</a></code></div><dl><dt class="spec module" id="module-Arg"><a href="#module-Arg" class="anchor"></a><code><span class="keyword">module</span> <a href="Arg/index.html">Arg</a> : <a href="../../sidekick/Sidekick_core/index.html#module-type-TERM">Sidekick_core.TERM</a> <span class="keyword">with</span> <span class="keyword">type</span> <a href="../../sidekick/Sidekick_core/module-type-TERM/Term/index.html#type-t">Term.t</a> = <a href="../Sidekick_base__Base_types/Term/index.html#type-t">Term.t</a> <span class="keyword">and</span> <span class="keyword">type</span> <a href="../../sidekick/Sidekick_core/module-type-TERM/Fun/index.html#type-t">Fun.t</a> = <a href="../Sidekick_base__Base_types/Fun/index.html#type-t">Fun.t</a> <span class="keyword">and</span> <span class="keyword">type</span> <a href="../../sidekick/Sidekick_core/module-type-TERM/Ty/index.html#type-t">Ty.t</a> = <a href="../Sidekick_base__Base_types/Ty/index.html#type-t">Ty.t</a> <span class="keyword">and</span> <span class="keyword">type</span> <a href="../../sidekick/Sidekick_core/module-type-TERM/Term/index.html#type-store">Term.store</a> = <a href="../Sidekick_base__Base_types/Term/index.html#type-store">Term.store</a></code></dt><dd><p>Concrete implementation of <a href="../../sidekick/Sidekick_core/module-type-TERM/index.html"><code>Sidekick_core.TERM</code></a></p></dd></dl></div></body></html>