<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"> <html xmlns="http://www.w3.org/1999/xhtml"> <head> <meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/> <title>PPL: Parma_Polyhedra_Library::Poly_Con_Relation Class Reference</title> <link href="tabs.css" rel="stylesheet" type="text/css"/> <link href="doxygen.css" rel="stylesheet" type="text/css"/> </head> <body> <!-- Generated by Doxygen 1.6.3 --> <div class="navigation" id="top"> <div class="tabs"> <ul> <li><a href="main.html"><span>Main Page</span></a></li> <li><a href="pages.html"><span>Related Pages</span></a></li> <li><a href="modules.html"><span>Modules</span></a></li> <li><a href="namespaces.html"><span>Namespaces</span></a></li> <li class="current"><a href="annotated.html"><span>Classes</span></a></li> </ul> </div> <div class="tabs"> <ul> <li><a href="annotated.html"><span>Class List</span></a></li> <li><a href="hierarchy.html"><span>Class Hierarchy</span></a></li> <li><a href="functions.html"><span>Class Members</span></a></li> </ul> </div> <div class="navpath"><a class="el" href="namespaceParma__Polyhedra__Library.html">Parma_Polyhedra_Library</a>::<a class="el" href="classParma__Polyhedra__Library_1_1Poly__Con__Relation.html">Poly_Con_Relation</a> </div> </div> <div class="contents"> <h1>Parma_Polyhedra_Library::Poly_Con_Relation Class Reference<br/> <small> [<a class="el" href="group__PPL__CXX__interface.html">C++ Language Interface</a>]</small> </h1><!-- doxytag: class="Parma_Polyhedra_Library::Poly_Con_Relation" --> <p>The relation between a polyhedron and a constraint. <a href="#_details">More...</a></p> <p><code>#include <ppl.hh></code></p> <p><a href="classParma__Polyhedra__Library_1_1Poly__Con__Relation-members.html">List of all members.</a></p> <table border="0" cellpadding="0" cellspacing="0"> <tr><td colspan="2"><h2>Public Member Functions</h2></td></tr> <tr><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="aa4b60ce3ac62aee15faac1b5035fdb4d"></a><!-- doxytag: member="Parma_Polyhedra_Library::Poly_Con_Relation::ascii_dump" ref="aa4b60ce3ac62aee15faac1b5035fdb4d" args="() const " --> void </td><td class="memItemRight" valign="bottom"><a class="el" href="classParma__Polyhedra__Library_1_1Poly__Con__Relation.html#aa4b60ce3ac62aee15faac1b5035fdb4d">ascii_dump</a> () const </td></tr> <tr><td class="mdescLeft"> </td><td class="mdescRight">Writes to <code>std::cerr</code> an ASCII representation of <code>*this</code>. <br/></td></tr> <tr><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="ab92b75d150bd5fbfc03cadec75d59e0f"></a><!-- doxytag: member="Parma_Polyhedra_Library::Poly_Con_Relation::ascii_dump" ref="ab92b75d150bd5fbfc03cadec75d59e0f" args="(std::ostream &s) const " --> void </td><td class="memItemRight" valign="bottom"><a class="el" href="classParma__Polyhedra__Library_1_1Poly__Con__Relation.html#ab92b75d150bd5fbfc03cadec75d59e0f">ascii_dump</a> (std::ostream &s) const </td></tr> <tr><td class="mdescLeft"> </td><td class="mdescRight">Writes to <code>s</code> an ASCII representation of <code>*this</code>. <br/></td></tr> <tr><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a4cc725a9fe3bdaded2c131bb8bb47ed8"></a><!-- doxytag: member="Parma_Polyhedra_Library::Poly_Con_Relation::print" ref="a4cc725a9fe3bdaded2c131bb8bb47ed8" args="() const " --> void </td><td class="memItemRight" valign="bottom"><a class="el" href="classParma__Polyhedra__Library_1_1Poly__Con__Relation.html#a4cc725a9fe3bdaded2c131bb8bb47ed8">print</a> () const </td></tr> <tr><td class="mdescLeft"> </td><td class="mdescRight">Prints <code>*this</code> to <code>std::cerr</code> using <code>operator<<</code>. <br/></td></tr> <tr><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="aa317e5d2d782c3589c48cb3b45d6790d"></a><!-- doxytag: member="Parma_Polyhedra_Library::Poly_Con_Relation::implies" ref="aa317e5d2d782c3589c48cb3b45d6790d" args="(const Poly_Con_Relation &y) const " --> bool </td><td class="memItemRight" valign="bottom"><a class="el" href="classParma__Polyhedra__Library_1_1Poly__Con__Relation.html#aa317e5d2d782c3589c48cb3b45d6790d">implies</a> (const <a class="el" href="classParma__Polyhedra__Library_1_1Poly__Con__Relation.html">Poly_Con_Relation</a> &y) const </td></tr> <tr><td class="mdescLeft"> </td><td class="mdescRight">True if and only if <code>*this</code> implies <code>y</code>. <br/></td></tr> <tr><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a80b9d602f99df76039d58032b20041d7"></a><!-- doxytag: member="Parma_Polyhedra_Library::Poly_Con_Relation::OK" ref="a80b9d602f99df76039d58032b20041d7" args="() const " --> bool </td><td class="memItemRight" valign="bottom"><a class="el" href="classParma__Polyhedra__Library_1_1Poly__Con__Relation.html#a80b9d602f99df76039d58032b20041d7">OK</a> () const </td></tr> <tr><td class="mdescLeft"> </td><td class="mdescRight">Checks if all the invariants are satisfied. <br/></td></tr> <tr><td colspan="2"><h2>Static Public Member Functions</h2></td></tr> <tr><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a553ae81ae234cedad36e72b32c967e65"></a><!-- doxytag: member="Parma_Polyhedra_Library::Poly_Con_Relation::nothing" ref="a553ae81ae234cedad36e72b32c967e65" args="()" --> static <a class="el" href="classParma__Polyhedra__Library_1_1Poly__Con__Relation.html">Poly_Con_Relation</a> </td><td class="memItemRight" valign="bottom"><a class="el" href="classParma__Polyhedra__Library_1_1Poly__Con__Relation.html#a553ae81ae234cedad36e72b32c967e65">nothing</a> ()</td></tr> <tr><td class="mdescLeft"> </td><td class="mdescRight">The assertion that says nothing. <br/></td></tr> <tr><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a62827195c6aeacf38a8fb3df6df8ff2e"></a><!-- doxytag: member="Parma_Polyhedra_Library::Poly_Con_Relation::is_disjoint" ref="a62827195c6aeacf38a8fb3df6df8ff2e" args="()" --> static <a class="el" href="classParma__Polyhedra__Library_1_1Poly__Con__Relation.html">Poly_Con_Relation</a> </td><td class="memItemRight" valign="bottom"><a class="el" href="classParma__Polyhedra__Library_1_1Poly__Con__Relation.html#a62827195c6aeacf38a8fb3df6df8ff2e">is_disjoint</a> ()</td></tr> <tr><td class="mdescLeft"> </td><td class="mdescRight">The polyhedron and the set of points satisfying the constraint are disjoint. <br/></td></tr> <tr><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a9f09728ae53c8e3dadeb202f28bb6fdb"></a><!-- doxytag: member="Parma_Polyhedra_Library::Poly_Con_Relation::strictly_intersects" ref="a9f09728ae53c8e3dadeb202f28bb6fdb" args="()" --> static <a class="el" href="classParma__Polyhedra__Library_1_1Poly__Con__Relation.html">Poly_Con_Relation</a> </td><td class="memItemRight" valign="bottom"><a class="el" href="classParma__Polyhedra__Library_1_1Poly__Con__Relation.html#a9f09728ae53c8e3dadeb202f28bb6fdb">strictly_intersects</a> ()</td></tr> <tr><td class="mdescLeft"> </td><td class="mdescRight">The polyhedron intersects the set of points satisfying the constraint, but it is not included in it. <br/></td></tr> <tr><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a1dd09c87a931132dbee52ea24266866a"></a><!-- doxytag: member="Parma_Polyhedra_Library::Poly_Con_Relation::is_included" ref="a1dd09c87a931132dbee52ea24266866a" args="()" --> static <a class="el" href="classParma__Polyhedra__Library_1_1Poly__Con__Relation.html">Poly_Con_Relation</a> </td><td class="memItemRight" valign="bottom"><a class="el" href="classParma__Polyhedra__Library_1_1Poly__Con__Relation.html#a1dd09c87a931132dbee52ea24266866a">is_included</a> ()</td></tr> <tr><td class="mdescLeft"> </td><td class="mdescRight">The polyhedron is included in the set of points satisfying the constraint. <br/></td></tr> <tr><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="ac8b0d22ea3470020b35240f778c34a94"></a><!-- doxytag: member="Parma_Polyhedra_Library::Poly_Con_Relation::saturates" ref="ac8b0d22ea3470020b35240f778c34a94" args="()" --> static <a class="el" href="classParma__Polyhedra__Library_1_1Poly__Con__Relation.html">Poly_Con_Relation</a> </td><td class="memItemRight" valign="bottom"><a class="el" href="classParma__Polyhedra__Library_1_1Poly__Con__Relation.html#ac8b0d22ea3470020b35240f778c34a94">saturates</a> ()</td></tr> <tr><td class="mdescLeft"> </td><td class="mdescRight">The polyhedron is included in the set of points saturating the constraint. <br/></td></tr> <tr><td colspan="2"><h2>Friends</h2></td></tr> <tr><td class="memItemLeft" align="right" valign="top">bool </td><td class="memItemRight" valign="bottom"><a class="el" href="classParma__Polyhedra__Library_1_1Poly__Con__Relation.html#a825bf274e880e1c8d51b42d32c69004e">operator==</a> (const <a class="el" href="classParma__Polyhedra__Library_1_1Poly__Con__Relation.html">Poly_Con_Relation</a> &x, const <a class="el" href="classParma__Polyhedra__Library_1_1Poly__Con__Relation.html">Poly_Con_Relation</a> &y)</td></tr> <tr><td class="mdescLeft"> </td><td class="mdescRight">True if and only if <code>x</code> and <code>y</code> are logically equivalent. <a href="#a825bf274e880e1c8d51b42d32c69004e"></a><br/></td></tr> <tr><td class="memItemLeft" align="right" valign="top">bool </td><td class="memItemRight" valign="bottom"><a class="el" href="classParma__Polyhedra__Library_1_1Poly__Con__Relation.html#af7184f692efc0672e3213f6be9d5cf4c">operator!=</a> (const <a class="el" href="classParma__Polyhedra__Library_1_1Poly__Con__Relation.html">Poly_Con_Relation</a> &x, const <a class="el" href="classParma__Polyhedra__Library_1_1Poly__Con__Relation.html">Poly_Con_Relation</a> &y)</td></tr> <tr><td class="mdescLeft"> </td><td class="mdescRight">True if and only if <code>x</code> and <code>y</code> are not logically equivalent. <a href="#af7184f692efc0672e3213f6be9d5cf4c"></a><br/></td></tr> <tr><td class="memItemLeft" align="right" valign="top"><a class="el" href="classParma__Polyhedra__Library_1_1Poly__Con__Relation.html">Poly_Con_Relation</a> </td><td class="memItemRight" valign="bottom"><a class="el" href="classParma__Polyhedra__Library_1_1Poly__Con__Relation.html#ad1bc9d7804925b15f8205df0b3efc8a4">operator&&</a> (const <a class="el" href="classParma__Polyhedra__Library_1_1Poly__Con__Relation.html">Poly_Con_Relation</a> &x, const <a class="el" href="classParma__Polyhedra__Library_1_1Poly__Con__Relation.html">Poly_Con_Relation</a> &y)</td></tr> <tr><td class="mdescLeft"> </td><td class="mdescRight">Yields the logical conjunction of <code>x</code> and <code>y</code>. <a href="#ad1bc9d7804925b15f8205df0b3efc8a4"></a><br/></td></tr> <tr><td class="memItemLeft" align="right" valign="top"><a class="el" href="classParma__Polyhedra__Library_1_1Poly__Con__Relation.html">Poly_Con_Relation</a> </td><td class="memItemRight" valign="bottom"><a class="el" href="classParma__Polyhedra__Library_1_1Poly__Con__Relation.html#ab9da0d811233cfb64481a7fe08b7f645">operator-</a> (const <a class="el" href="classParma__Polyhedra__Library_1_1Poly__Con__Relation.html">Poly_Con_Relation</a> &x, const <a class="el" href="classParma__Polyhedra__Library_1_1Poly__Con__Relation.html">Poly_Con_Relation</a> &y)</td></tr> <tr><td class="mdescLeft"> </td><td class="mdescRight">Yields the assertion with all the conjuncts of <code>x</code> that are not in <code>y</code>. <a href="#ab9da0d811233cfb64481a7fe08b7f645"></a><br/></td></tr> <tr><td colspan="2"><h2>Related Functions</h2></td></tr> <tr><td colspan="2"><p>(Note that these are not member functions.) </p> <br/><br/></td></tr> <tr><td class="memItemLeft" align="right" valign="top">std::ostream & </td><td class="memItemRight" valign="bottom"><a class="el" href="classParma__Polyhedra__Library_1_1Poly__Con__Relation.html#af00b427f47054a80d236d124443c580c">operator<<</a> (std::ostream &s, const <a class="el" href="classParma__Polyhedra__Library_1_1Poly__Con__Relation.html">Poly_Con_Relation</a> &r)</td></tr> <tr><td class="mdescLeft"> </td><td class="mdescRight">Output operator. <a href="#af00b427f47054a80d236d124443c580c"></a><br/></td></tr> </table> <hr/><a name="_details"></a><h2>Detailed Description</h2> <p>The relation between a polyhedron and a constraint. </p> <p>This class implements conjunctions of assertions on the relation between a polyhedron and a constraint. </p> <hr/><h2>Friends And Related Function Documentation</h2> <a class="anchor" id="a825bf274e880e1c8d51b42d32c69004e"></a><!-- doxytag: member="Parma_Polyhedra_Library::Poly_Con_Relation::operator==" ref="a825bf274e880e1c8d51b42d32c69004e" args="(const Poly_Con_Relation &x, const Poly_Con_Relation &y)" --> <div class="memitem"> <div class="memproto"> <table class="memname"> <tr> <td class="memname">bool operator== </td> <td>(</td> <td class="paramtype">const <a class="el" href="classParma__Polyhedra__Library_1_1Poly__Con__Relation.html">Poly_Con_Relation</a> & </td> <td class="paramname"> <em>x</em>, </td> </tr> <tr> <td class="paramkey"></td> <td></td> <td class="paramtype">const <a class="el" href="classParma__Polyhedra__Library_1_1Poly__Con__Relation.html">Poly_Con_Relation</a> & </td> <td class="paramname"> <em>y</em></td><td> </td> </tr> <tr> <td></td> <td>)</td> <td></td><td></td><td><code> [friend]</code></td> </tr> </table> </div> <div class="memdoc"> <p>True if and only if <code>x</code> and <code>y</code> are logically equivalent. </p> </div> </div> <a class="anchor" id="af7184f692efc0672e3213f6be9d5cf4c"></a><!-- doxytag: member="Parma_Polyhedra_Library::Poly_Con_Relation::operator!=" ref="af7184f692efc0672e3213f6be9d5cf4c" args="(const Poly_Con_Relation &x, const Poly_Con_Relation &y)" --> <div class="memitem"> <div class="memproto"> <table class="memname"> <tr> <td class="memname">bool operator!= </td> <td>(</td> <td class="paramtype">const <a class="el" href="classParma__Polyhedra__Library_1_1Poly__Con__Relation.html">Poly_Con_Relation</a> & </td> <td class="paramname"> <em>x</em>, </td> </tr> <tr> <td class="paramkey"></td> <td></td> <td class="paramtype">const <a class="el" href="classParma__Polyhedra__Library_1_1Poly__Con__Relation.html">Poly_Con_Relation</a> & </td> <td class="paramname"> <em>y</em></td><td> </td> </tr> <tr> <td></td> <td>)</td> <td></td><td></td><td><code> [friend]</code></td> </tr> </table> </div> <div class="memdoc"> <p>True if and only if <code>x</code> and <code>y</code> are not logically equivalent. </p> </div> </div> <a class="anchor" id="ad1bc9d7804925b15f8205df0b3efc8a4"></a><!-- doxytag: member="Parma_Polyhedra_Library::Poly_Con_Relation::operator&&" ref="ad1bc9d7804925b15f8205df0b3efc8a4" args="(const Poly_Con_Relation &x, const Poly_Con_Relation &y)" --> <div class="memitem"> <div class="memproto"> <table class="memname"> <tr> <td class="memname"><a class="el" href="classParma__Polyhedra__Library_1_1Poly__Con__Relation.html">Poly_Con_Relation</a> operator&& </td> <td>(</td> <td class="paramtype">const <a class="el" href="classParma__Polyhedra__Library_1_1Poly__Con__Relation.html">Poly_Con_Relation</a> & </td> <td class="paramname"> <em>x</em>, </td> </tr> <tr> <td class="paramkey"></td> <td></td> <td class="paramtype">const <a class="el" href="classParma__Polyhedra__Library_1_1Poly__Con__Relation.html">Poly_Con_Relation</a> & </td> <td class="paramname"> <em>y</em></td><td> </td> </tr> <tr> <td></td> <td>)</td> <td></td><td></td><td><code> [friend]</code></td> </tr> </table> </div> <div class="memdoc"> <p>Yields the logical conjunction of <code>x</code> and <code>y</code>. </p> </div> </div> <a class="anchor" id="ab9da0d811233cfb64481a7fe08b7f645"></a><!-- doxytag: member="Parma_Polyhedra_Library::Poly_Con_Relation::operator-" ref="ab9da0d811233cfb64481a7fe08b7f645" args="(const Poly_Con_Relation &x, const Poly_Con_Relation &y)" --> <div class="memitem"> <div class="memproto"> <table class="memname"> <tr> <td class="memname"><a class="el" href="classParma__Polyhedra__Library_1_1Poly__Con__Relation.html">Poly_Con_Relation</a> operator- </td> <td>(</td> <td class="paramtype">const <a class="el" href="classParma__Polyhedra__Library_1_1Poly__Con__Relation.html">Poly_Con_Relation</a> & </td> <td class="paramname"> <em>x</em>, </td> </tr> <tr> <td class="paramkey"></td> <td></td> <td class="paramtype">const <a class="el" href="classParma__Polyhedra__Library_1_1Poly__Con__Relation.html">Poly_Con_Relation</a> & </td> <td class="paramname"> <em>y</em></td><td> </td> </tr> <tr> <td></td> <td>)</td> <td></td><td></td><td><code> [friend]</code></td> </tr> </table> </div> <div class="memdoc"> <p>Yields the assertion with all the conjuncts of <code>x</code> that are not in <code>y</code>. </p> </div> </div> <a class="anchor" id="af00b427f47054a80d236d124443c580c"></a><!-- doxytag: member="Parma_Polyhedra_Library::Poly_Con_Relation::operator<<" ref="af00b427f47054a80d236d124443c580c" args="(std::ostream &s, const Poly_Con_Relation &r)" --> <div class="memitem"> <div class="memproto"> <table class="memname"> <tr> <td class="memname">std::ostream & operator<< </td> <td>(</td> <td class="paramtype">std::ostream & </td> <td class="paramname"> <em>s</em>, </td> </tr> <tr> <td class="paramkey"></td> <td></td> <td class="paramtype">const <a class="el" href="classParma__Polyhedra__Library_1_1Poly__Con__Relation.html">Poly_Con_Relation</a> & </td> <td class="paramname"> <em>r</em></td><td> </td> </tr> <tr> <td></td> <td>)</td> <td></td><td></td><td><code> [related]</code></td> </tr> </table> </div> <div class="memdoc"> <p>Output operator. </p> </div> </div> <hr/>The documentation for this class was generated from the following file:<ul> <li>ppl.hh</li> </ul> </div> <hr class="footer"/><address style="text-align: right;"><small>Generated on Sun Feb 27 10:10:57 2011 for PPL by <a href="http://www.doxygen.org/index.html"> <img class="footer" src="doxygen.png" alt="doxygen"/></a> 1.6.3 </small></address> </body> </html>