/usr/share/mozart/doc/cpitut/node11.html is in mozart-doc 1.4.0-8ubuntu1.
This file is owned by root:root, with mode 0o644.
The actual contents of the file can be viewed below.
1 2 | <!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN">
<HTML><HEAD><TITLE>2.1.2 Overview over Generic Part of the CPI</TITLE><LINK href="ozdoc.css" rel="stylesheet" type="text/css"></HEAD><BODY><TABLE align="center" border="0" cellpadding="6" cellspacing="6" class="nav"><TR bgcolor="#DDDDDD"><TD><A href="node10.html#ct.intro.model"><< Prev</A></TD><TD><A href="node9.html">- Up -</A></TD></TR></TABLE><DIV id="ct.intro.overview"><H3><A name="ct.intro.overview">2.1.2 Overview over Generic Part of the C<SPAN class="allcaps">PI</SPAN></A></H3><P>The C<SPAN class="allcaps">PI</SPAN> provides abstractions to implement constraint systems from scratch. Five classes provide the required functionality. They allow to implement new constraint system at a high level of abstraction without sacrificing efficiency (e.g., it is straightforward to take advantage of wake-up lists for distinct wake-up events [lower bound changed, upper bound changed etc.]). </P><P> This part of the C<SPAN class="allcaps">PI</SPAN> is based on the principles developed by <A href="bib.html#holzbaur:90">[Hol90]</A>. </P><P>The following classes are provided: </P><DL><DT><CODE>OZ_CtDefinition</CODE> </DT><DD><P>The class <CODE>OZ_CtDefinition</CODE> serves as an identifier for a particular constraint system and defines certain parameters for that constraint system, as for example the number of wake-up lists. See <A href="../cpiref/node10.html#ct.reference.def">Section 2.1 of ``The Mozart Constraint Extensions Reference''</A> for details. </P></DD><DT><CODE>OZ_Ct</CODE> </DT><DD><P>The class <CODE>OZ_Ct</CODE> represents the actual constraint attached to a constrained variable. See <A href="../cpiref/node13.html#ct.reference.constraint">Section 2.4 of ``The Mozart Constraint Extensions Reference''</A> for details. </P></DD><DT><CODE>OZ_CtVar</CODE> </DT><DD><P>The class <CODE>OZ_CtVar</CODE> provides access to a constrained variable in the constraint store. Amongst other things, it provides the following services: </P><UL><LI><P>handling of local and global variables transparently (trailing). </P></LI><LI><P>Making the actual constraints in the store accessible from within a propagator to allow to manipulate them. </P></LI><LI><P>Triggering the scanning of appropriate wake-up lists (using <CODE>OZ_CtProfile</CODE>). </P></LI></UL><P> See <A href="../cpiref/node14.html#ct.reference.ctvar">Section 2.5 of ``The Mozart Constraint Extensions Reference''</A> for details. </P></DD><DT><CODE>OZ_CtProfile</CODE> </DT><DD><P>The class <CODE>OZ_CtProfile</CODE> stores characteristic parameters of a constraint (called its <EM> profile</EM>) to determine the wake-up list(s) to be scanned. Typically, this happens when a propagator is left. See <A href="../cpiref/node12.html#ct.reference.profile">Section 2.3 of ``The Mozart Constraint Extensions Reference''</A> for details. </P></DD><DT><CODE>OZ_CtWakeUp</CODE> </DT><DD><P>An instance of the class <CODE>OZ_CtWakeUp</CODE> controls which wake-up lists have to be scanned and is produced by comparing the current state of a constraint and a previously taken constraint profile. See <A href="../cpiref/node11.html#ct.reference.wakeup">Section 2.2 of ``The Mozart Constraint Extensions Reference''</A> for details. </P></DD></DL><P> </P><P></P><P>Further, there is a function <CODE>OZ_mkCtVariable()</CODE> that allows to create a new constrained variable according to a given definition and a given constraint. Additionally, the class <CODE>OZ_Expect</CODE> provides the member function <CODE>OZ_Expect<SPAN class="keyword">::</SPAN>expectGenCtVar()</CODE> to handle constrained variables appropriately. </P><P>To demonstrate the usage of this part of the C<SPAN class="allcaps">PI</SPAN>, constraints over real-intervals are implemented in <A href="node12.html#ct.casestudy">Section 2.2</A>. </P></DIV><TABLE align="center" border="0" cellpadding="6" cellspacing="6" class="nav"><TR bgcolor="#DDDDDD"><TD><A href="node10.html#ct.intro.model"><< Prev</A></TD><TD><A href="node9.html">- Up -</A></TD></TR></TABLE><HR><ADDRESS><A href="http://www.ps.uni-sb.de/~tmueller/">Tobias Müller</A><BR><SPAN class="version">Version 1.4.0 (20110908185330)</SPAN></ADDRESS></BODY></HTML>
|