<!DOCTYPE html>
<html xmlns="http://www.w3.org/1999/xhtml"><head><title>Libabsolute__Dom (libabsolute.Libabsolute__Dom)</title><link rel="stylesheet" href="../../odoc.css"/><meta charset="utf-8"/><meta name="generator" content="odoc 1.5.1"/><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">libabsolute</a> &#x00BB; Libabsolute__Dom</nav><h1>Module <code>Libabsolute__Dom</code></h1><p>This module defines the different kinds of definition domains of variables</p><nav class="toc"><ul><li><a href="#constructors">Constructors</a></li><li><a href="#predicates">Predicates</a></li><li><a href="#operations">Operations</a></li><li><a href="#printing">Printing</a></li></ul></nav></header><dl><dt class="spec type" id="type-t"><a href="#type-t" class="anchor"></a><code><span class="keyword">type</span> t</code><code> = </code><table class="variant"><tr id="type-t.Finite" class="anchored"><td class="def constructor"><a href="#type-t.Finite" class="anchor"></a><code>| </code><code><span class="constructor">Finite</span> <span class="keyword">of</span> <a href="../Libabsolute/Q/index.html#type-t">Libabsolute.Q.t</a> * <a href="../Libabsolute/Q/index.html#type-t">Libabsolute.Q.t</a></code></td><td class="doc"><p>[a;b]</p></td></tr><tr id="type-t.Minf" class="anchored"><td class="def constructor"><a href="#type-t.Minf" class="anchor"></a><code>| </code><code><span class="constructor">Minf</span> <span class="keyword">of</span> <a href="../Libabsolute/Q/index.html#type-t">Libabsolute.Q.t</a></code></td><td class="doc"><p>]-oo; a]</p></td></tr><tr id="type-t.Inf" class="anchored"><td class="def constructor"><a href="#type-t.Inf" class="anchor"></a><code>| </code><code><span class="constructor">Inf</span> <span class="keyword">of</span> <a href="../Libabsolute/Q/index.html#type-t">Libabsolute.Q.t</a></code></td><td class="doc"><p>[a; +oo[</p></td></tr><tr id="type-t.Set" class="anchored"><td class="def constructor"><a href="#type-t.Set" class="anchor"></a><code>| </code><code><span class="constructor">Set</span> <span class="keyword">of</span> <span><a href="../Libabsolute/Q/index.html#type-t">Libabsolute.Q.t</a> list</span></code></td><td class="doc"><p>{x1; x2; ...; xn}</p></td></tr><tr id="type-t.Top" class="anchored"><td class="def constructor"><a href="#type-t.Top" class="anchor"></a><code>| </code><code><span class="constructor">Top</span></code></td><td class="doc"><p>]-oo; +oo[</p></td></tr></table></dt><dd><p>main type</p></dd></dl><section><header><h2 id="constructors"><a href="#constructors" class="anchor"></a>Constructors</h2></header><dl><dt class="spec value" id="val-interval"><a href="#val-interval" class="anchor"></a><code><span class="keyword">val</span> interval : <a href="../Libabsolute/Q/index.html#type-t">Libabsolute.Q.t</a> <span>&#45;&gt;</span> <a href="../Libabsolute/Q/index.html#type-t">Libabsolute.Q.t</a> <span>&#45;&gt;</span> <a href="index.html#type-t">t</a></code></dt><dd><p>[a;b]</p></dd></dl><dl><dt class="spec value" id="val-of_ints"><a href="#val-of_ints" class="anchor"></a><code><span class="keyword">val</span> of_ints : int <span>&#45;&gt;</span> int <span>&#45;&gt;</span> <a href="index.html#type-t">t</a></code></dt><dt class="spec value" id="val-of_floats"><a href="#val-of_floats" class="anchor"></a><code><span class="keyword">val</span> of_floats : float <span>&#45;&gt;</span> float <span>&#45;&gt;</span> <a href="index.html#type-t">t</a></code></dt><dt class="spec value" id="val-inf"><a href="#val-inf" class="anchor"></a><code><span class="keyword">val</span> inf : <a href="../Libabsolute/Q/index.html#type-t">Libabsolute.Q.t</a> <span>&#45;&gt;</span> <a href="index.html#type-t">t</a></code></dt><dd><p>semi-open interval : [x;+oo[</p></dd></dl><dl><dt class="spec value" id="val-set"><a href="#val-set" class="anchor"></a><code><span class="keyword">val</span> set : <span><a href="../Libabsolute/Q/index.html#type-t">Libabsolute.Q.t</a> list</span> <span>&#45;&gt;</span> <a href="index.html#type-t">t</a></code></dt><dd><p>finite sets of values {x1; x2; ...; xn}</p></dd></dl><dl><dt class="spec value" id="val-minf"><a href="#val-minf" class="anchor"></a><code><span class="keyword">val</span> minf : <a href="../Libabsolute/Q/index.html#type-t">Libabsolute.Q.t</a> <span>&#45;&gt;</span> <a href="index.html#type-t">t</a></code></dt><dd><p>semi-open interval : ]-oo;x]</p></dd></dl><dl><dt class="spec value" id="val-top"><a href="#val-top" class="anchor"></a><code><span class="keyword">val</span> top : <a href="index.html#type-t">t</a></code></dt><dd><p>]-oo;+oo[</p></dd></dl></section><section><header><h2 id="predicates"><a href="#predicates" class="anchor"></a>Predicates</h2></header><dl><dt class="spec value" id="val-belong"><a href="#val-belong" class="anchor"></a><code><span class="keyword">val</span> belong : <a href="../Libabsolute/Q/index.html#type-t">Libabsolute.Q.t</a> <span>&#45;&gt;</span> <a href="index.html#type-t">t</a> <span>&#45;&gt;</span> bool</code></dt><dd><p>checks if a given rational belongs to a domain</p></dd></dl><dl><dt class="spec value" id="val-is_bounded"><a href="#val-is_bounded" class="anchor"></a><code><span class="keyword">val</span> is_bounded : <a href="index.html#type-t">t</a> <span>&#45;&gt;</span> bool</code></dt></dl></section><section><header><h2 id="operations"><a href="#operations" class="anchor"></a>Operations</h2></header><aside><p>Given a variable name <code>v</code> and a domain <code>d</code>, builds the weakest constraint that <code>v</code> should respect to be in <code>d</code>.</p></aside><dl><dt class="spec value" id="val-to_constraint"><a href="#val-to_constraint" class="anchor"></a><code><span class="keyword">val</span> to_constraint : string <span>&#45;&gt;</span> <a href="index.html#type-t">t</a> <span>&#45;&gt;</span> <a href="../Libabsolute/Constraint/index.html#type-t">Libabsolute.Constraint.t</a></code></dt><dd><p>Given a variable name <code>v</code> and a domain <code>d</code>, builds the weakest constraint that <code>v</code> should respect to be in <code>d</code>.</p></dd></dl></section><section><header><h2 id="printing"><a href="#printing" class="anchor"></a>Printing</h2></header><dl><dt class="spec value" id="val-print"><a href="#val-print" class="anchor"></a><code><span class="keyword">val</span> print : Stdlib.Format.formatter <span>&#45;&gt;</span> <a href="index.html#type-t">t</a> <span>&#45;&gt;</span> unit</code></dt><dd><p>printer</p></dd></dl><dl><dt class="spec value" id="val-to_string"><a href="#val-to_string" class="anchor"></a><code><span class="keyword">val</span> to_string : <a href="index.html#type-t">t</a> <span>&#45;&gt;</span> string</code></dt><dd><p>Conversion to a string</p></dd></dl></section></div></body></html>