Sophie

Sophie

distrib > Mandriva > 2010.0 > i586 > media > contrib-release > by-pkgid > a24e1a39141f9b4ca49bd1e2e23a54ba > files > 314

polybori-doc-0.5rc.p9-6mdv2010.0.i586.rpm

<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
<html><head><meta http-equiv="Content-Type" content="text/html;charset=UTF-8">
<title>PolyBoRi: polybori::COrderBase 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.5.9 -->
<div class="navigation" id="top">
  <div class="tabs">
    <ul>
      <li><a href="index.html"><span>Main&nbsp;Page</span></a></li>
      <li><a href="pages.html"><span>Related&nbsp;Pages</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>
      <li><a href="files.html"><span>Files</span></a></li>
    </ul>
  </div>
  <div class="tabs">
    <ul>
      <li><a href="annotated.html"><span>Class&nbsp;List</span></a></li>
      <li><a href="hierarchy.html"><span>Class&nbsp;Hierarchy</span></a></li>
      <li><a href="functions.html"><span>Class&nbsp;Members</span></a></li>
    </ul>
  </div>
  <div class="navpath"><a class="el" href="namespacepolybori.html">polybori</a>::<a class="el" href="classpolybori_1_1COrderBase.html">COrderBase</a>
  </div>
</div>
<div class="contents">
<h1>polybori::COrderBase Class Reference</h1><!-- doxytag: class="polybori::COrderBase" --><!-- doxytag: inherits="polybori::CAuxTypes" -->This class defines ordering related functions.  
<a href="#_details">More...</a>
<p>
<code>#include &lt;<a class="el" href="COrderBase_8h_source.html">COrderBase.h</a>&gt;</code>
<p>
<div class="dynheader">
Inheritance diagram for polybori::COrderBase:</div>
<div class="dynsection">

<p><center><img src="classpolybori_1_1COrderBase.png" usemap="#polybori::COrderBase_map" border="0" alt=""></center>
<map name="polybori::COrderBase_map">
<area href="structpolybori_1_1CAuxTypes.html" alt="polybori::CAuxTypes" shape="rect" coords="452,0,668,24">
<area href="classpolybori_1_1BlockDegLexOrder.html" alt="polybori::BlockDegLexOrder" shape="rect" coords="0,112,216,136">
<area href="classpolybori_1_1BlockDegRevLexAscOrder.html" alt="polybori::BlockDegRevLexAscOrder" shape="rect" coords="226,112,442,136">
<area href="classpolybori_1_1DegLexOrder.html" alt="polybori::DegLexOrder" shape="rect" coords="452,112,668,136">
<area href="classpolybori_1_1DegRevLexAscOrder.html" alt="polybori::DegRevLexAscOrder" shape="rect" coords="678,112,894,136">
<area href="classpolybori_1_1LexOrder.html" alt="polybori::LexOrder" shape="rect" coords="904,112,1120,136">
</map>
</div>

<p>
<a href="classpolybori_1_1COrderBase-members.html">List of all members.</a><table border="0" cellpadding="0" cellspacing="0">
<tr><td></td></tr>
<tr><td colspan="2"><br><h2>Public Types</h2></td></tr>
<tr><td class="memItemLeft" nowrap align="right" valign="top">typedef <a class="el" href="classpolybori_1_1COrderBase.html">COrderBase</a>&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classpolybori_1_1COrderBase.html#51e2640f37144a87420dd1abd167a506">base</a></td></tr>

<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">current type should used as base only  <a href="#51e2640f37144a87420dd1abd167a506"></a><br></td></tr>
<tr><td class="memItemLeft" nowrap align="right" valign="top">typedef <a class="el" href="classpolybori_1_1BoolePolynomial.html">BoolePolynomial</a>&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classpolybori_1_1COrderBase.html#765ce5ee7b380be4b63c97ea477832a0">poly_type</a></td></tr>

<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Type of Boolean polynomials.  <a href="#765ce5ee7b380be4b63c97ea477832a0"></a><br></td></tr>
<tr><td class="memItemLeft" nowrap align="right" valign="top">typedef <a class="el" href="classpolybori_1_1BoolePolynomial.html#a95ed10bbb6de4d0c80ef3836e3c53aa">poly_type::size_type</a>&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classpolybori_1_1COrderBase.html#322bdadf8a951e359d41fc2fc40dc086">size_type</a></td></tr>

<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Type for sizes.  <a href="#322bdadf8a951e359d41fc2fc40dc086"></a><br></td></tr>
<tr><td class="memItemLeft" nowrap align="right" valign="top">typedef <a class="el" href="classpolybori_1_1BoolePolynomial.html#387f5d548f4eb9882bf74f4e481cd76a">poly_type::idx_type</a>&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classpolybori_1_1COrderBase.html#166639953567c0341e186c64654a05a0">idx_type</a></td></tr>

<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Type for indices.  <a href="#166639953567c0341e186c64654a05a0"></a><br></td></tr>
<tr><td class="memItemLeft" nowrap align="right" valign="top">typedef <a class="el" href="classpolybori_1_1BooleMonomial.html">BooleMonomial</a>&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classpolybori_1_1COrderBase.html#91afa0399945e03e4b1aff784bc53a31">monom_type</a></td></tr>

<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Type of Boolean monomials.  <a href="#91afa0399945e03e4b1aff784bc53a31"></a><br></td></tr>
<tr><td class="memItemLeft" nowrap align="right" valign="top">typedef <a class="el" href="classpolybori_1_1CCuddNavigator.html">BoolePolynomial::navigator</a>&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classpolybori_1_1COrderBase.html#d7f2a5e40b887116be4309d940c0bc1b">navigator</a></td></tr>

<tr><td class="memItemLeft" nowrap align="right" valign="top">typedef <a class="el" href="classpolybori_1_1COrderedIter.html">COrderedIter</a><br class="typebreak">
&lt; <a class="el" href="classpolybori_1_1CCuddNavigator.html">navigator</a>, <a class="el" href="classpolybori_1_1BooleMonomial.html">monom_type</a> &gt;&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classpolybori_1_1COrderBase.html#86343faee2c48605b49bd7e40520e8f3">indirect_iterator</a></td></tr>

<tr><td class="memItemLeft" nowrap align="right" valign="top">typedef <a class="el" href="classpolybori_1_1BooleSet.html">BooleSet</a>&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classpolybori_1_1COrderBase.html#c6acf67395b0ce9120b4c6b8079cfae2">set_type</a></td></tr>

<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Type of Boolean sets.  <a href="#c6acf67395b0ce9120b4c6b8079cfae2"></a><br></td></tr>
<tr><td class="memItemLeft" nowrap align="right" valign="top">typedef <a class="el" href="classpolybori_1_1BooleExponent.html">BooleExponent</a>&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classpolybori_1_1COrderBase.html#da72cd5c37a9d0baff66638bebf273be">exp_type</a></td></tr>

<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Type of Boolean monomials.  <a href="#da72cd5c37a9d0baff66638bebf273be"></a><br></td></tr>
<tr><td class="memItemLeft" nowrap align="right" valign="top">typedef <a class="el" href="classpolybori_1_1COrderedIter.html">COrderedIter</a><br class="typebreak">
&lt; <a class="el" href="classpolybori_1_1CCuddNavigator.html">navigator</a>, <a class="el" href="classpolybori_1_1BooleExponent.html">exp_type</a> &gt;&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classpolybori_1_1COrderBase.html#eed9f5f9c37c2c890afd526cc956a32d">indirect_exp_iterator</a></td></tr>

<tr><td class="memItemLeft" nowrap align="right" valign="top">typedef std::vector&lt; <a class="el" href="classpolybori_1_1COrderBase.html#166639953567c0341e186c64654a05a0">idx_type</a> &gt;&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classpolybori_1_1COrderBase.html#f599ed9381cac855d0ba2080b61279b0">block_idx_type</a></td></tr>

<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Type for block indices.  <a href="#f599ed9381cac855d0ba2080b61279b0"></a><br></td></tr>
<tr><td class="memItemLeft" nowrap align="right" valign="top">typedef <br class="typebreak">
block_idx_type::const_iterator&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classpolybori_1_1COrderBase.html#013bbb0b65404fde314a56a621b0deb9">block_iterator</a></td></tr>

<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Type for block iterators.  <a href="#013bbb0b65404fde314a56a621b0deb9"></a><br></td></tr>
<tr><td colspan="2"><div class="groupHeader">define generic property markers (default is invalid)</div></td></tr>
<tr><td class="memItemLeft" nowrap align="right" valign="top">typedef <a class="el" href="structpolybori_1_1invalid__tag.html">invalid_tag</a>&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classpolybori_1_1COrderBase.html#38ecb1433f6eb3651bd49a99250d8a84">lex_property</a></td></tr>

<tr><td class="memItemLeft" nowrap align="right" valign="top">typedef <a class="el" href="structpolybori_1_1invalid__tag.html">invalid_tag</a>&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classpolybori_1_1COrderBase.html#e7b7b81fcfffbcd3ff4aa2fbe7f686dd">ordered_property</a></td></tr>

<tr><td class="memItemLeft" nowrap align="right" valign="top">typedef <a class="el" href="structpolybori_1_1invalid__tag.html">invalid_tag</a>&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classpolybori_1_1COrderBase.html#9b568c3b42f72ae732813f9a8a28c01d">symmetry_property</a></td></tr>

<tr><td class="memItemLeft" nowrap align="right" valign="top">typedef <a class="el" href="structpolybori_1_1invalid__tag.html">invalid_tag</a>&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classpolybori_1_1COrderBase.html#0a21a8838782e7e6a51620f2985315d9">degorder_property</a></td></tr>

<tr><td class="memItemLeft" nowrap align="right" valign="top">typedef <a class="el" href="structpolybori_1_1invalid__tag.html">invalid_tag</a>&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classpolybori_1_1COrderBase.html#d016061d38241950a20325582c6e1e54">blockorder_property</a></td></tr>

<tr><td class="memItemLeft" nowrap align="right" valign="top">typedef <a class="el" href="structpolybori_1_1invalid__tag.html">invalid_tag</a>&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classpolybori_1_1COrderBase.html#d160fd4b10bb06423ea63a0e0db2fd5c">degrevlexorder_property</a></td></tr>

<tr><td class="memItemLeft" nowrap align="right" valign="top">typedef <a class="el" href="structpolybori_1_1invalid__tag.html">invalid_tag</a>&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classpolybori_1_1COrderBase.html#ec2694259a4119ef858dcf546a1e7e3c">totaldegorder_property</a></td></tr>

<tr><td class="memItemLeft" nowrap align="right" valign="top">typedef <a class="el" href="structpolybori_1_1invalid__tag.html">invalid_tag</a>&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classpolybori_1_1COrderBase.html#72eff7be973366e5cba97c35ad2157a1">ascending_property</a></td></tr>

<tr><td class="memItemLeft" nowrap align="right" valign="top">typedef <a class="el" href="structpolybori_1_1invalid__tag.html">invalid_tag</a>&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classpolybori_1_1COrderBase.html#10df354dcf406c2508bed2d87e18c56d">descending_property</a></td></tr>

<tr><td colspan="2"><br><h2>Public Member Functions</h2></td></tr>
<tr><td class="memItemLeft" nowrap align="right" valign="top">&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classpolybori_1_1COrderBase.html#f93a64694831abff275f89bc0e736220">COrderBase</a> ()</td></tr>

<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Default Constructor.  <a href="#f93a64694831abff275f89bc0e736220"></a><br></td></tr>
<tr><td class="memItemLeft" nowrap align="right" valign="top">&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classpolybori_1_1COrderBase.html#9df0a6fe451baece841a6b69e9eb37d9">COrderBase</a> (const <a class="el" href="classpolybori_1_1COrderBase.html">COrderBase</a> &amp;)</td></tr>

<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Copy Constructor.  <a href="#9df0a6fe451baece841a6b69e9eb37d9"></a><br></td></tr>
<tr><td class="memItemLeft" nowrap align="right" valign="top">virtual&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classpolybori_1_1COrderBase.html#a0edeeed6b0f99526047445420238840">~COrderBase</a> ()</td></tr>

<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Destructor.  <a href="#a0edeeed6b0f99526047445420238840"></a><br></td></tr>
<tr><td class="memItemLeft" nowrap align="right" valign="top">virtual <a class="el" href="structpolybori_1_1CAuxTypes.html#c65df1421059e92da32ec24121d4192f">comp_type</a>&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classpolybori_1_1COrderBase.html#317089865cfba81e1f94cf2ff9872bc7">compare</a> (<a class="el" href="classpolybori_1_1COrderBase.html#166639953567c0341e186c64654a05a0">idx_type</a>, <a class="el" href="classpolybori_1_1COrderBase.html#166639953567c0341e186c64654a05a0">idx_type</a>) const =0</td></tr>

<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Comparison of indices corresponding to variables.  <a href="#317089865cfba81e1f94cf2ff9872bc7"></a><br></td></tr>
<tr><td class="memItemLeft" nowrap align="right" valign="top">virtual <a class="el" href="structpolybori_1_1CAuxTypes.html#c65df1421059e92da32ec24121d4192f">comp_type</a>&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classpolybori_1_1COrderBase.html#56aff8e656a14d37d15503b2f6e1dc23">compare</a> (const <a class="el" href="classpolybori_1_1BooleMonomial.html">monom_type</a> &amp;, const <a class="el" href="classpolybori_1_1BooleMonomial.html">monom_type</a> &amp;) const =0</td></tr>

<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Comparison of monomials.  <a href="#56aff8e656a14d37d15503b2f6e1dc23"></a><br></td></tr>
<tr><td class="memItemLeft" nowrap align="right" valign="top">virtual <a class="el" href="structpolybori_1_1CAuxTypes.html#c65df1421059e92da32ec24121d4192f">comp_type</a>&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classpolybori_1_1COrderBase.html#a1c6ed7e4b52f58b826dc320d484faf6">compare</a> (const <a class="el" href="classpolybori_1_1BooleExponent.html">exp_type</a> &amp;, const <a class="el" href="classpolybori_1_1BooleExponent.html">exp_type</a> &amp;) const =0</td></tr>

<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Comparison of exponent vectors.  <a href="#a1c6ed7e4b52f58b826dc320d484faf6"></a><br></td></tr>
<tr><td class="memItemLeft" nowrap align="right" valign="top">virtual <a class="el" href="classpolybori_1_1BooleMonomial.html">monom_type</a>&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classpolybori_1_1COrderBase.html#60beb85ae70103ee26e1dfe169e3a603">lead</a> (const <a class="el" href="classpolybori_1_1BoolePolynomial.html">poly_type</a> &amp;) const =0</td></tr>

<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Get leading term.  <a href="#60beb85ae70103ee26e1dfe169e3a603"></a><br></td></tr>
<tr><td class="memItemLeft" nowrap align="right" valign="top">virtual <a class="el" href="classpolybori_1_1BooleMonomial.html">monom_type</a>&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classpolybori_1_1COrderBase.html#f03c47a559fc9b61db8794e7a9a8fb36">lead</a> (const <a class="el" href="classpolybori_1_1BoolePolynomial.html">poly_type</a> &amp;, <a class="el" href="classpolybori_1_1COrderBase.html#322bdadf8a951e359d41fc2fc40dc086">size_type</a>) const =0</td></tr>

<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Get leading term (using an upper bound).  <a href="#f03c47a559fc9b61db8794e7a9a8fb36"></a><br></td></tr>
<tr><td class="memItemLeft" nowrap align="right" valign="top">virtual <a class="el" href="classpolybori_1_1BooleExponent.html">exp_type</a>&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classpolybori_1_1COrderBase.html#b0ce5171fad18bf43c4560d296c51fb4">leadExp</a> (const <a class="el" href="classpolybori_1_1BoolePolynomial.html">poly_type</a> &amp;) const =0</td></tr>

<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Get leading exponent.  <a href="#b0ce5171fad18bf43c4560d296c51fb4"></a><br></td></tr>
<tr><td class="memItemLeft" nowrap align="right" valign="top">virtual <a class="el" href="classpolybori_1_1BooleExponent.html">exp_type</a>&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classpolybori_1_1COrderBase.html#1815e6de7572e4b5f749e500255b4dd8">leadExp</a> (const <a class="el" href="classpolybori_1_1BoolePolynomial.html">poly_type</a> &amp;, <a class="el" href="classpolybori_1_1COrderBase.html#322bdadf8a951e359d41fc2fc40dc086">size_type</a>) const =0</td></tr>

<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Get leading exponent (using an upper bound).  <a href="#1815e6de7572e4b5f749e500255b4dd8"></a><br></td></tr>
<tr><td class="memItemLeft" nowrap align="right" valign="top">virtual <a class="el" href="classpolybori_1_1COrderedIter.html">indirect_iterator</a>&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classpolybori_1_1COrderBase.html#2e202cf97ad61d570bd3d1a379e3a873">leadIteratorBegin</a> (const <a class="el" href="classpolybori_1_1BoolePolynomial.html">poly_type</a> &amp;) const =0</td></tr>

<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Initialize iterator corresponding to leading term.  <a href="#2e202cf97ad61d570bd3d1a379e3a873"></a><br></td></tr>
<tr><td class="memItemLeft" nowrap align="right" valign="top">virtual <a class="el" href="classpolybori_1_1COrderedIter.html">indirect_iterator</a>&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classpolybori_1_1COrderBase.html#71dd0099c91120590d8051e09d791bcb">leadIteratorEnd</a> () const =0</td></tr>

<tr><td class="memItemLeft" nowrap align="right" valign="top">virtual <a class="el" href="classpolybori_1_1COrderedIter.html">indirect_exp_iterator</a>&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classpolybori_1_1COrderBase.html#7a1d0721ce7359e4c455641bba508623">leadExpIteratorBegin</a> (const <a class="el" href="classpolybori_1_1BoolePolynomial.html">poly_type</a> &amp;) const =0</td></tr>

<tr><td class="memItemLeft" nowrap align="right" valign="top">virtual <a class="el" href="classpolybori_1_1COrderedIter.html">indirect_exp_iterator</a>&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classpolybori_1_1COrderBase.html#14552bdde31666811128c6ce1a92ae35">leadExpIteratorEnd</a> () const =0</td></tr>

<tr><td colspan="2"><div class="groupHeader">interface for block orderings</div></td></tr>
<tr><td class="memItemLeft" nowrap align="right" valign="top">virtual <a class="el" href="classpolybori_1_1COrderBase.html#013bbb0b65404fde314a56a621b0deb9">block_iterator</a>&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classpolybori_1_1COrderBase.html#d4db72a43ad2ce84d360cf9d83ebd031">blockBegin</a> () const </td></tr>

<tr><td class="memItemLeft" nowrap align="right" valign="top">virtual <a class="el" href="classpolybori_1_1COrderBase.html#013bbb0b65404fde314a56a621b0deb9">block_iterator</a>&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classpolybori_1_1COrderBase.html#f1eec2f57094a21a0f7b0b96c44c1478">blockEnd</a> () const </td></tr>

<tr><td class="memItemLeft" nowrap align="right" valign="top">virtual void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classpolybori_1_1COrderBase.html#3f47ccdf1a8100ad7faeab650dfa6871">appendBlock</a> (<a class="el" href="classpolybori_1_1COrderBase.html#166639953567c0341e186c64654a05a0">idx_type</a>) const </td></tr>

<tr><td class="memItemLeft" nowrap align="right" valign="top">virtual void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classpolybori_1_1COrderBase.html#d9c2326fbdecdfb97eac96faa844c391">clearBlocks</a> () const </td></tr>

<tr><td colspan="2"><br><h2>Protected Member Functions</h2></td></tr>
<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="el" href="classpolybori_1_1BooleMonomial.html">monom_type</a>&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classpolybori_1_1COrderBase.html#a550ce36acfc54bc55240d6383e55ce2">monom</a> (const <a class="el" href="classpolybori_1_1BooleSet.html">set_type</a> &amp;rhs) const </td></tr>

<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Get monomial from set of subsets of Boolean variables (internal use only).  <a href="#a550ce36acfc54bc55240d6383e55ce2"></a><br></td></tr>
</table>
<hr><a name="_details"></a><h2>Detailed Description</h2>
This class defines ordering related functions. <hr><h2>Member Typedef Documentation</h2>
<a class="anchor" name="72eff7be973366e5cba97c35ad2157a1"></a><!-- doxytag: member="polybori::COrderBase::ascending_property" ref="72eff7be973366e5cba97c35ad2157a1" args="" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">typedef <a class="el" href="structpolybori_1_1invalid__tag.html">invalid_tag</a> <a class="el" href="structpolybori_1_1invalid__tag.html">polybori::COrderBase::ascending_property</a>          </td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>

<p>Reimplemented in <a class="el" href="classpolybori_1_1DegRevLexAscOrder.html#ae1a3a7f071f8a28b9b372d78b8be7e1">polybori::DegRevLexAscOrder</a>.</p>

</div>
</div><p>
<a class="anchor" name="51e2640f37144a87420dd1abd167a506"></a><!-- doxytag: member="polybori::COrderBase::base" ref="51e2640f37144a87420dd1abd167a506" args="" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">typedef <a class="el" href="classpolybori_1_1COrderBase.html">COrderBase</a> <a class="el" href="classpolybori_1_1COrderBase.html">polybori::COrderBase::base</a>          </td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>
current type should used as base only 
<p>

</div>
</div><p>
<a class="anchor" name="f599ed9381cac855d0ba2080b61279b0"></a><!-- doxytag: member="polybori::COrderBase::block_idx_type" ref="f599ed9381cac855d0ba2080b61279b0" args="" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">typedef std::vector&lt;<a class="el" href="classpolybori_1_1COrderBase.html#166639953567c0341e186c64654a05a0">idx_type</a>&gt; <a class="el" href="classpolybori_1_1COrderBase.html#f599ed9381cac855d0ba2080b61279b0">polybori::COrderBase::block_idx_type</a>          </td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>
Type for block indices. 
<p>

</div>
</div><p>
<a class="anchor" name="013bbb0b65404fde314a56a621b0deb9"></a><!-- doxytag: member="polybori::COrderBase::block_iterator" ref="013bbb0b65404fde314a56a621b0deb9" args="" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">typedef block_idx_type::const_iterator <a class="el" href="classpolybori_1_1COrderBase.html#013bbb0b65404fde314a56a621b0deb9">polybori::COrderBase::block_iterator</a>          </td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>
Type for block iterators. 
<p>

</div>
</div><p>
<a class="anchor" name="d016061d38241950a20325582c6e1e54"></a><!-- doxytag: member="polybori::COrderBase::blockorder_property" ref="d016061d38241950a20325582c6e1e54" args="" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">typedef <a class="el" href="structpolybori_1_1invalid__tag.html">invalid_tag</a> <a class="el" href="structpolybori_1_1invalid__tag.html">polybori::COrderBase::blockorder_property</a>          </td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>

<p>Reimplemented in <a class="el" href="classpolybori_1_1BlockDegLexOrder.html#d966297601562c62040f74a500397f90">polybori::BlockDegLexOrder</a>, and <a class="el" href="classpolybori_1_1BlockDegRevLexAscOrder.html#a03794e965d53ac787fdbfcc2bdb6bba">polybori::BlockDegRevLexAscOrder</a>.</p>

</div>
</div><p>
<a class="anchor" name="0a21a8838782e7e6a51620f2985315d9"></a><!-- doxytag: member="polybori::COrderBase::degorder_property" ref="0a21a8838782e7e6a51620f2985315d9" args="" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">typedef <a class="el" href="structpolybori_1_1invalid__tag.html">invalid_tag</a> <a class="el" href="structpolybori_1_1invalid__tag.html">polybori::COrderBase::degorder_property</a>          </td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>

<p>Reimplemented in <a class="el" href="classpolybori_1_1DegLexOrder.html#9c1e9173242d0dbd57bfb51eb6a50ca7">polybori::DegLexOrder</a>, and <a class="el" href="classpolybori_1_1DegRevLexAscOrder.html#10198a6c90d44ced9f8c16a1b28dfa3b">polybori::DegRevLexAscOrder</a>.</p>

</div>
</div><p>
<a class="anchor" name="d160fd4b10bb06423ea63a0e0db2fd5c"></a><!-- doxytag: member="polybori::COrderBase::degrevlexorder_property" ref="d160fd4b10bb06423ea63a0e0db2fd5c" args="" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">typedef <a class="el" href="structpolybori_1_1invalid__tag.html">invalid_tag</a> <a class="el" href="structpolybori_1_1invalid__tag.html">polybori::COrderBase::degrevlexorder_property</a>          </td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>

<p>Reimplemented in <a class="el" href="classpolybori_1_1DegRevLexAscOrder.html#c65585e07e921e81fa20e3756376b3b0">polybori::DegRevLexAscOrder</a>.</p>

</div>
</div><p>
<a class="anchor" name="10df354dcf406c2508bed2d87e18c56d"></a><!-- doxytag: member="polybori::COrderBase::descending_property" ref="10df354dcf406c2508bed2d87e18c56d" args="" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">typedef <a class="el" href="structpolybori_1_1invalid__tag.html">invalid_tag</a> <a class="el" href="structpolybori_1_1invalid__tag.html">polybori::COrderBase::descending_property</a>          </td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>

<p>Reimplemented in <a class="el" href="classpolybori_1_1BlockDegLexOrder.html#73a4a0bcb83efada9755b71bd0b292a8">polybori::BlockDegLexOrder</a>, <a class="el" href="classpolybori_1_1BlockDegRevLexAscOrder.html#180c064511def59c1312607fe2ea85b7">polybori::BlockDegRevLexAscOrder</a>, <a class="el" href="classpolybori_1_1DegLexOrder.html#ee2824d0366790cda2a7d9a53e51e2c4">polybori::DegLexOrder</a>, and <a class="el" href="classpolybori_1_1LexOrder.html#c245e7e256f83e003d2b528dabdf8353">polybori::LexOrder</a>.</p>

</div>
</div><p>
<a class="anchor" name="da72cd5c37a9d0baff66638bebf273be"></a><!-- doxytag: member="polybori::COrderBase::exp_type" ref="da72cd5c37a9d0baff66638bebf273be" args="" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">typedef <a class="el" href="classpolybori_1_1BooleExponent.html">BooleExponent</a> <a class="el" href="classpolybori_1_1BooleExponent.html">polybori::COrderBase::exp_type</a>          </td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>
Type of Boolean monomials. 
<p>

</div>
</div><p>
<a class="anchor" name="166639953567c0341e186c64654a05a0"></a><!-- doxytag: member="polybori::COrderBase::idx_type" ref="166639953567c0341e186c64654a05a0" args="" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">typedef <a class="el" href="classpolybori_1_1BoolePolynomial.html#387f5d548f4eb9882bf74f4e481cd76a">poly_type::idx_type</a> <a class="el" href="classpolybori_1_1COrderBase.html#166639953567c0341e186c64654a05a0">polybori::COrderBase::idx_type</a>          </td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>
Type for indices. 
<p>

<p>Reimplemented from <a class="el" href="structpolybori_1_1CAuxTypes.html#8c170014c637d9ecf5950063ca30ef46">polybori::CAuxTypes</a>.</p>

</div>
</div><p>
<a class="anchor" name="eed9f5f9c37c2c890afd526cc956a32d"></a><!-- doxytag: member="polybori::COrderBase::indirect_exp_iterator" ref="eed9f5f9c37c2c890afd526cc956a32d" args="" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">typedef <a class="el" href="classpolybori_1_1COrderedIter.html">COrderedIter</a>&lt;<a class="el" href="classpolybori_1_1CCuddNavigator.html">navigator</a>, <a class="el" href="classpolybori_1_1BooleExponent.html">exp_type</a>&gt; <a class="el" href="classpolybori_1_1COrderedIter.html">polybori::COrderBase::indirect_exp_iterator</a>          </td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>

</div>
</div><p>
<a class="anchor" name="86343faee2c48605b49bd7e40520e8f3"></a><!-- doxytag: member="polybori::COrderBase::indirect_iterator" ref="86343faee2c48605b49bd7e40520e8f3" args="" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">typedef <a class="el" href="classpolybori_1_1COrderedIter.html">COrderedIter</a>&lt;<a class="el" href="classpolybori_1_1CCuddNavigator.html">navigator</a>, <a class="el" href="classpolybori_1_1BooleMonomial.html">monom_type</a>&gt; <a class="el" href="classpolybori_1_1COrderedIter.html">polybori::COrderBase::indirect_iterator</a>          </td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>

</div>
</div><p>
<a class="anchor" name="38ecb1433f6eb3651bd49a99250d8a84"></a><!-- doxytag: member="polybori::COrderBase::lex_property" ref="38ecb1433f6eb3651bd49a99250d8a84" args="" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">typedef <a class="el" href="structpolybori_1_1invalid__tag.html">invalid_tag</a> <a class="el" href="structpolybori_1_1invalid__tag.html">polybori::COrderBase::lex_property</a>          </td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>

<p>Reimplemented in <a class="el" href="classpolybori_1_1LexOrder.html#5ced4b3f6490881785c8485f3ff25183">polybori::LexOrder</a>.</p>

</div>
</div><p>
<a class="anchor" name="91afa0399945e03e4b1aff784bc53a31"></a><!-- doxytag: member="polybori::COrderBase::monom_type" ref="91afa0399945e03e4b1aff784bc53a31" args="" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">typedef <a class="el" href="classpolybori_1_1BooleMonomial.html">BooleMonomial</a> <a class="el" href="classpolybori_1_1BooleMonomial.html">polybori::COrderBase::monom_type</a>          </td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>
Type of Boolean monomials. 
<p>

</div>
</div><p>
<a class="anchor" name="d7f2a5e40b887116be4309d940c0bc1b"></a><!-- doxytag: member="polybori::COrderBase::navigator" ref="d7f2a5e40b887116be4309d940c0bc1b" args="" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">typedef <a class="el" href="classpolybori_1_1CCuddNavigator.html">BoolePolynomial::navigator</a> <a class="el" href="classpolybori_1_1CCuddNavigator.html">polybori::COrderBase::navigator</a>          </td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>

</div>
</div><p>
<a class="anchor" name="e7b7b81fcfffbcd3ff4aa2fbe7f686dd"></a><!-- doxytag: member="polybori::COrderBase::ordered_property" ref="e7b7b81fcfffbcd3ff4aa2fbe7f686dd" args="" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">typedef <a class="el" href="structpolybori_1_1invalid__tag.html">invalid_tag</a> <a class="el" href="structpolybori_1_1invalid__tag.html">polybori::COrderBase::ordered_property</a>          </td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>

<p>Reimplemented in <a class="el" href="classpolybori_1_1LexOrder.html#966b8424fddd9a0ea341270375e4ee0a">polybori::LexOrder</a>.</p>

</div>
</div><p>
<a class="anchor" name="765ce5ee7b380be4b63c97ea477832a0"></a><!-- doxytag: member="polybori::COrderBase::poly_type" ref="765ce5ee7b380be4b63c97ea477832a0" args="" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">typedef <a class="el" href="classpolybori_1_1BoolePolynomial.html">BoolePolynomial</a> <a class="el" href="classpolybori_1_1BoolePolynomial.html">polybori::COrderBase::poly_type</a>          </td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>
Type of Boolean polynomials. 
<p>

</div>
</div><p>
<a class="anchor" name="c6acf67395b0ce9120b4c6b8079cfae2"></a><!-- doxytag: member="polybori::COrderBase::set_type" ref="c6acf67395b0ce9120b4c6b8079cfae2" args="" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">typedef <a class="el" href="classpolybori_1_1BooleSet.html">BooleSet</a> <a class="el" href="classpolybori_1_1BooleSet.html">polybori::COrderBase::set_type</a>          </td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>
Type of Boolean sets. 
<p>

</div>
</div><p>
<a class="anchor" name="322bdadf8a951e359d41fc2fc40dc086"></a><!-- doxytag: member="polybori::COrderBase::size_type" ref="322bdadf8a951e359d41fc2fc40dc086" args="" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">typedef <a class="el" href="classpolybori_1_1BoolePolynomial.html#a95ed10bbb6de4d0c80ef3836e3c53aa">poly_type::size_type</a> <a class="el" href="classpolybori_1_1COrderBase.html#322bdadf8a951e359d41fc2fc40dc086">polybori::COrderBase::size_type</a>          </td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>
Type for sizes. 
<p>

<p>Reimplemented from <a class="el" href="structpolybori_1_1CAuxTypes.html#0e254f927049b57061437ac57ea5c2cd">polybori::CAuxTypes</a>.</p>

</div>
</div><p>
<a class="anchor" name="9b568c3b42f72ae732813f9a8a28c01d"></a><!-- doxytag: member="polybori::COrderBase::symmetry_property" ref="9b568c3b42f72ae732813f9a8a28c01d" args="" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">typedef <a class="el" href="structpolybori_1_1invalid__tag.html">invalid_tag</a> <a class="el" href="structpolybori_1_1invalid__tag.html">polybori::COrderBase::symmetry_property</a>          </td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>

<p>Reimplemented in <a class="el" href="classpolybori_1_1DegLexOrder.html#fe459d2146b8dad90702270705eea4a4">polybori::DegLexOrder</a>, <a class="el" href="classpolybori_1_1DegRevLexAscOrder.html#9af4967457e84ae459aab47c0160b2c9">polybori::DegRevLexAscOrder</a>, and <a class="el" href="classpolybori_1_1LexOrder.html#cf628b1bf1bdf7506b63ecf3aedaa3f9">polybori::LexOrder</a>.</p>

</div>
</div><p>
<a class="anchor" name="ec2694259a4119ef858dcf546a1e7e3c"></a><!-- doxytag: member="polybori::COrderBase::totaldegorder_property" ref="ec2694259a4119ef858dcf546a1e7e3c" args="" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">typedef <a class="el" href="structpolybori_1_1invalid__tag.html">invalid_tag</a> <a class="el" href="structpolybori_1_1invalid__tag.html">polybori::COrderBase::totaldegorder_property</a>          </td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>

<p>Reimplemented in <a class="el" href="classpolybori_1_1DegLexOrder.html#905e076f6045a0a3a1c3a4e8ffe11554">polybori::DegLexOrder</a>, and <a class="el" href="classpolybori_1_1DegRevLexAscOrder.html#f728a077eba4fe0f7768f0d6b21b1593">polybori::DegRevLexAscOrder</a>.</p>

</div>
</div><p>
<hr><h2>Constructor &amp; Destructor Documentation</h2>
<a class="anchor" name="f93a64694831abff275f89bc0e736220"></a><!-- doxytag: member="polybori::COrderBase::COrderBase" ref="f93a64694831abff275f89bc0e736220" args="()" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">polybori::COrderBase::COrderBase           </td>
          <td>(</td>
          <td class="paramname">          </td>
          <td>&nbsp;)&nbsp;</td>
          <td><code> [inline]</code></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>
Default Constructor. 
<p>

</div>
</div><p>
<a class="anchor" name="9df0a6fe451baece841a6b69e9eb37d9"></a><!-- doxytag: member="polybori::COrderBase::COrderBase" ref="9df0a6fe451baece841a6b69e9eb37d9" args="(const COrderBase &amp;)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">polybori::COrderBase::COrderBase           </td>
          <td>(</td>
          <td class="paramtype">const <a class="el" href="classpolybori_1_1COrderBase.html">COrderBase</a> &amp;&nbsp;</td>
          <td class="paramname">          </td>
          <td>&nbsp;)&nbsp;</td>
          <td><code> [inline]</code></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>
Copy Constructor. 
<p>

</div>
</div><p>
<a class="anchor" name="a0edeeed6b0f99526047445420238840"></a><!-- doxytag: member="polybori::COrderBase::~COrderBase" ref="a0edeeed6b0f99526047445420238840" args="()" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">virtual polybori::COrderBase::~COrderBase           </td>
          <td>(</td>
          <td class="paramname">          </td>
          <td>&nbsp;)&nbsp;</td>
          <td><code> [inline, virtual]</code></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>
Destructor. 
<p>

</div>
</div><p>
<hr><h2>Member Function Documentation</h2>
<a class="anchor" name="3f47ccdf1a8100ad7faeab650dfa6871"></a><!-- doxytag: member="polybori::COrderBase::appendBlock" ref="3f47ccdf1a8100ad7faeab650dfa6871" args="(idx_type) const " -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">virtual void polybori::COrderBase::appendBlock           </td>
          <td>(</td>
          <td class="paramtype"><a class="el" href="classpolybori_1_1COrderBase.html#166639953567c0341e186c64654a05a0">idx_type</a>&nbsp;</td>
          <td class="paramname">          </td>
          <td>&nbsp;)&nbsp;</td>
          <td> const<code> [inline, virtual]</code></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>

</div>
</div><p>
<a class="anchor" name="d4db72a43ad2ce84d360cf9d83ebd031"></a><!-- doxytag: member="polybori::COrderBase::blockBegin" ref="d4db72a43ad2ce84d360cf9d83ebd031" args="() const " -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">virtual <a class="el" href="classpolybori_1_1COrderBase.html#013bbb0b65404fde314a56a621b0deb9">block_iterator</a> polybori::COrderBase::blockBegin           </td>
          <td>(</td>
          <td class="paramname">          </td>
          <td>&nbsp;)&nbsp;</td>
          <td> const<code> [inline, virtual]</code></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>

<p>Reimplemented in <a class="el" href="classpolybori_1_1BlockDegLexOrder.html#9e699a5725e7f0fb372aa2f501d76948">polybori::BlockDegLexOrder</a>, and <a class="el" href="classpolybori_1_1BlockDegRevLexAscOrder.html#a9d0835a1ffee477049a55c41d3db6bd">polybori::BlockDegRevLexAscOrder</a>.</p>

</div>
</div><p>
<a class="anchor" name="f1eec2f57094a21a0f7b0b96c44c1478"></a><!-- doxytag: member="polybori::COrderBase::blockEnd" ref="f1eec2f57094a21a0f7b0b96c44c1478" args="() const " -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">virtual <a class="el" href="classpolybori_1_1COrderBase.html#013bbb0b65404fde314a56a621b0deb9">block_iterator</a> polybori::COrderBase::blockEnd           </td>
          <td>(</td>
          <td class="paramname">          </td>
          <td>&nbsp;)&nbsp;</td>
          <td> const<code> [inline, virtual]</code></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>

<p>Reimplemented in <a class="el" href="classpolybori_1_1BlockDegLexOrder.html#621ac190b7a6875d7795c04bb61915d3">polybori::BlockDegLexOrder</a>, and <a class="el" href="classpolybori_1_1BlockDegRevLexAscOrder.html#58a8efcf3e1184611d6b61fc2835b4fe">polybori::BlockDegRevLexAscOrder</a>.</p>

</div>
</div><p>
<a class="anchor" name="d9c2326fbdecdfb97eac96faa844c391"></a><!-- doxytag: member="polybori::COrderBase::clearBlocks" ref="d9c2326fbdecdfb97eac96faa844c391" args="() const " -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">virtual void polybori::COrderBase::clearBlocks           </td>
          <td>(</td>
          <td class="paramname">          </td>
          <td>&nbsp;)&nbsp;</td>
          <td> const<code> [inline, virtual]</code></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>

</div>
</div><p>
<a class="anchor" name="a1c6ed7e4b52f58b826dc320d484faf6"></a><!-- doxytag: member="polybori::COrderBase::compare" ref="a1c6ed7e4b52f58b826dc320d484faf6" args="(const exp_type &amp;, const exp_type &amp;) const =0" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">virtual <a class="el" href="structpolybori_1_1CAuxTypes.html#c65df1421059e92da32ec24121d4192f">comp_type</a> polybori::COrderBase::compare           </td>
          <td>(</td>
          <td class="paramtype">const <a class="el" href="classpolybori_1_1BooleExponent.html">exp_type</a> &amp;&nbsp;</td>
          <td class="paramname">, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">const <a class="el" href="classpolybori_1_1BooleExponent.html">exp_type</a> &amp;&nbsp;</td>
          <td class="paramname"></td><td>&nbsp;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td><td> const<code> [pure virtual]</code></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>
Comparison of exponent vectors. 
<p>

<p>Implemented in <a class="el" href="classpolybori_1_1BlockDegLexOrder.html#b03d4b5bbd4268721e44a4bec836df0d">polybori::BlockDegLexOrder</a>, <a class="el" href="classpolybori_1_1BlockDegRevLexAscOrder.html#5ecec6bcc8ebdcc2e949d6987ae75355">polybori::BlockDegRevLexAscOrder</a>, <a class="el" href="classpolybori_1_1DegLexOrder.html#9de1e10df8718e3910435bc6e707afee">polybori::DegLexOrder</a>, <a class="el" href="classpolybori_1_1DegRevLexAscOrder.html#ab0c631ab08454ff732b068a94d9776e">polybori::DegRevLexAscOrder</a>, and <a class="el" href="classpolybori_1_1LexOrder.html#0a7e08f3e53361a8afc798c7043a8547">polybori::LexOrder</a>.</p>

</div>
</div><p>
<a class="anchor" name="56aff8e656a14d37d15503b2f6e1dc23"></a><!-- doxytag: member="polybori::COrderBase::compare" ref="56aff8e656a14d37d15503b2f6e1dc23" args="(const monom_type &amp;, const monom_type &amp;) const =0" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">virtual <a class="el" href="structpolybori_1_1CAuxTypes.html#c65df1421059e92da32ec24121d4192f">comp_type</a> polybori::COrderBase::compare           </td>
          <td>(</td>
          <td class="paramtype">const <a class="el" href="classpolybori_1_1BooleMonomial.html">monom_type</a> &amp;&nbsp;</td>
          <td class="paramname">, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">const <a class="el" href="classpolybori_1_1BooleMonomial.html">monom_type</a> &amp;&nbsp;</td>
          <td class="paramname"></td><td>&nbsp;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td><td> const<code> [pure virtual]</code></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>
Comparison of monomials. 
<p>

<p>Implemented in <a class="el" href="classpolybori_1_1BlockDegLexOrder.html#aef60cdc1472e35db94bcc2c20ab6f16">polybori::BlockDegLexOrder</a>, <a class="el" href="classpolybori_1_1BlockDegRevLexAscOrder.html#24da2ac56802a05e5fafb5fae5b53871">polybori::BlockDegRevLexAscOrder</a>, <a class="el" href="classpolybori_1_1DegLexOrder.html#c2fb4568684f3463a9ecf515f462b89d">polybori::DegLexOrder</a>, <a class="el" href="classpolybori_1_1DegRevLexAscOrder.html#4084fbd5e65e3cf2c6900f9bb5b98ebb">polybori::DegRevLexAscOrder</a>, and <a class="el" href="classpolybori_1_1LexOrder.html#08e53b959e043b4dfecf5ffe0fc8a0ef">polybori::LexOrder</a>.</p>

</div>
</div><p>
<a class="anchor" name="317089865cfba81e1f94cf2ff9872bc7"></a><!-- doxytag: member="polybori::COrderBase::compare" ref="317089865cfba81e1f94cf2ff9872bc7" args="(idx_type, idx_type) const =0" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">virtual <a class="el" href="structpolybori_1_1CAuxTypes.html#c65df1421059e92da32ec24121d4192f">comp_type</a> polybori::COrderBase::compare           </td>
          <td>(</td>
          <td class="paramtype"><a class="el" href="classpolybori_1_1COrderBase.html#166639953567c0341e186c64654a05a0">idx_type</a>&nbsp;</td>
          <td class="paramname">, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype"><a class="el" href="classpolybori_1_1COrderBase.html#166639953567c0341e186c64654a05a0">idx_type</a>&nbsp;</td>
          <td class="paramname"></td><td>&nbsp;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td><td> const<code> [pure virtual]</code></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>
Comparison of indices corresponding to variables. 
<p>

<p>Implemented in <a class="el" href="classpolybori_1_1BlockDegLexOrder.html#2395a4cc08ce0ee604b9d32a70858102">polybori::BlockDegLexOrder</a>, <a class="el" href="classpolybori_1_1BlockDegRevLexAscOrder.html#4ac8841e47973fcfb9dc94e505efd919">polybori::BlockDegRevLexAscOrder</a>, <a class="el" href="classpolybori_1_1DegLexOrder.html#9cf74877de5859b5a354c79e79a1c237">polybori::DegLexOrder</a>, <a class="el" href="classpolybori_1_1DegRevLexAscOrder.html#fa3aa33a123a3b9f798ce5848d96ff7a">polybori::DegRevLexAscOrder</a>, and <a class="el" href="classpolybori_1_1LexOrder.html#53b1fa2af971f566c0f9b73fbd0c36e7">polybori::LexOrder</a>.</p>

</div>
</div><p>
<a class="anchor" name="f03c47a559fc9b61db8794e7a9a8fb36"></a><!-- doxytag: member="polybori::COrderBase::lead" ref="f03c47a559fc9b61db8794e7a9a8fb36" args="(const poly_type &amp;, size_type) const =0" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">virtual <a class="el" href="classpolybori_1_1BooleMonomial.html">monom_type</a> polybori::COrderBase::lead           </td>
          <td>(</td>
          <td class="paramtype">const <a class="el" href="classpolybori_1_1BoolePolynomial.html">poly_type</a> &amp;&nbsp;</td>
          <td class="paramname">, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype"><a class="el" href="classpolybori_1_1COrderBase.html#322bdadf8a951e359d41fc2fc40dc086">size_type</a>&nbsp;</td>
          <td class="paramname"></td><td>&nbsp;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td><td> const<code> [pure virtual]</code></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>
Get leading term (using an upper bound). 
<p>

<p>Implemented in <a class="el" href="classpolybori_1_1BlockDegLexOrder.html#d765b42f6ef7a320ff27d73522488ff5">polybori::BlockDegLexOrder</a>, <a class="el" href="classpolybori_1_1BlockDegRevLexAscOrder.html#ed8fde079fac737afcf162f128ee6be0">polybori::BlockDegRevLexAscOrder</a>, <a class="el" href="classpolybori_1_1DegLexOrder.html#0992bf93ef743558f883dbd9a8fca373">polybori::DegLexOrder</a>, <a class="el" href="classpolybori_1_1DegRevLexAscOrder.html#3f75f9f3d861ea8069d77aadeb8c0fd6">polybori::DegRevLexAscOrder</a>, and <a class="el" href="classpolybori_1_1LexOrder.html#469a306ea9cbbd4b8dbb569253b17af1">polybori::LexOrder</a>.</p>

</div>
</div><p>
<a class="anchor" name="60beb85ae70103ee26e1dfe169e3a603"></a><!-- doxytag: member="polybori::COrderBase::lead" ref="60beb85ae70103ee26e1dfe169e3a603" args="(const poly_type &amp;) const =0" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">virtual <a class="el" href="classpolybori_1_1BooleMonomial.html">monom_type</a> polybori::COrderBase::lead           </td>
          <td>(</td>
          <td class="paramtype">const <a class="el" href="classpolybori_1_1BoolePolynomial.html">poly_type</a> &amp;&nbsp;</td>
          <td class="paramname">          </td>
          <td>&nbsp;)&nbsp;</td>
          <td> const<code> [pure virtual]</code></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>
Get leading term. 
<p>

<p>Implemented in <a class="el" href="classpolybori_1_1BlockDegLexOrder.html#87d691bc67d4106ac70a31a7ef75e217">polybori::BlockDegLexOrder</a>, <a class="el" href="classpolybori_1_1BlockDegRevLexAscOrder.html#5392fcdbd0caf147627a13ecbc9b2fc1">polybori::BlockDegRevLexAscOrder</a>, <a class="el" href="classpolybori_1_1DegLexOrder.html#9f0f4f222d053926bf5b66e364bfa46b">polybori::DegLexOrder</a>, <a class="el" href="classpolybori_1_1DegRevLexAscOrder.html#60a893fd3438c89a16e7277fd6d623ac">polybori::DegRevLexAscOrder</a>, and <a class="el" href="classpolybori_1_1LexOrder.html#4b7a4dcbdb7d145e6d28059ccc8719bc">polybori::LexOrder</a>.</p>

</div>
</div><p>
<a class="anchor" name="1815e6de7572e4b5f749e500255b4dd8"></a><!-- doxytag: member="polybori::COrderBase::leadExp" ref="1815e6de7572e4b5f749e500255b4dd8" args="(const poly_type &amp;, size_type) const =0" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">virtual <a class="el" href="classpolybori_1_1BooleExponent.html">exp_type</a> polybori::COrderBase::leadExp           </td>
          <td>(</td>
          <td class="paramtype">const <a class="el" href="classpolybori_1_1BoolePolynomial.html">poly_type</a> &amp;&nbsp;</td>
          <td class="paramname">, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype"><a class="el" href="classpolybori_1_1COrderBase.html#322bdadf8a951e359d41fc2fc40dc086">size_type</a>&nbsp;</td>
          <td class="paramname"></td><td>&nbsp;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td><td> const<code> [pure virtual]</code></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>
Get leading exponent (using an upper bound). 
<p>

<p>Implemented in <a class="el" href="classpolybori_1_1BlockDegLexOrder.html#60e536341ebb32fa052cf0feba61a87f">polybori::BlockDegLexOrder</a>, <a class="el" href="classpolybori_1_1BlockDegRevLexAscOrder.html#8ad3630c4428fbd6a65fd95d450c3bb3">polybori::BlockDegRevLexAscOrder</a>, <a class="el" href="classpolybori_1_1DegLexOrder.html#5da51d49b75930784a763f3d48197b28">polybori::DegLexOrder</a>, <a class="el" href="classpolybori_1_1DegRevLexAscOrder.html#de4a575e7212173b158a6429a1e6557b">polybori::DegRevLexAscOrder</a>, and <a class="el" href="classpolybori_1_1LexOrder.html#b8aa266e142738178467f98e226bce3c">polybori::LexOrder</a>.</p>

</div>
</div><p>
<a class="anchor" name="b0ce5171fad18bf43c4560d296c51fb4"></a><!-- doxytag: member="polybori::COrderBase::leadExp" ref="b0ce5171fad18bf43c4560d296c51fb4" args="(const poly_type &amp;) const =0" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">virtual <a class="el" href="classpolybori_1_1BooleExponent.html">exp_type</a> polybori::COrderBase::leadExp           </td>
          <td>(</td>
          <td class="paramtype">const <a class="el" href="classpolybori_1_1BoolePolynomial.html">poly_type</a> &amp;&nbsp;</td>
          <td class="paramname">          </td>
          <td>&nbsp;)&nbsp;</td>
          <td> const<code> [pure virtual]</code></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>
Get leading exponent. 
<p>

<p>Implemented in <a class="el" href="classpolybori_1_1BlockDegLexOrder.html#f0b387f8a18fca6eff9dd1005157132f">polybori::BlockDegLexOrder</a>, <a class="el" href="classpolybori_1_1BlockDegRevLexAscOrder.html#47523b26a8235ab12a2ab717d8f1a6ce">polybori::BlockDegRevLexAscOrder</a>, <a class="el" href="classpolybori_1_1DegLexOrder.html#49c737217ea2699c1f510b7fad02928b">polybori::DegLexOrder</a>, <a class="el" href="classpolybori_1_1DegRevLexAscOrder.html#254e4967e4c918a292ef555766e1256a">polybori::DegRevLexAscOrder</a>, and <a class="el" href="classpolybori_1_1LexOrder.html#9467078d7185a46f51ffe1b2c8608d18">polybori::LexOrder</a>.</p>

</div>
</div><p>
<a class="anchor" name="7a1d0721ce7359e4c455641bba508623"></a><!-- doxytag: member="polybori::COrderBase::leadExpIteratorBegin" ref="7a1d0721ce7359e4c455641bba508623" args="(const poly_type &amp;) const =0" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">virtual <a class="el" href="classpolybori_1_1COrderedIter.html">indirect_exp_iterator</a> polybori::COrderBase::leadExpIteratorBegin           </td>
          <td>(</td>
          <td class="paramtype">const <a class="el" href="classpolybori_1_1BoolePolynomial.html">poly_type</a> &amp;&nbsp;</td>
          <td class="paramname">          </td>
          <td>&nbsp;)&nbsp;</td>
          <td> const<code> [pure virtual]</code></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>

<p>Implemented in <a class="el" href="classpolybori_1_1BlockDegLexOrder.html#d51829634118e8c0c9fffd38184841e6">polybori::BlockDegLexOrder</a>, <a class="el" href="classpolybori_1_1BlockDegRevLexAscOrder.html#4212b46194899c561b9a3388d99e64e5">polybori::BlockDegRevLexAscOrder</a>, <a class="el" href="classpolybori_1_1DegLexOrder.html#1fcb7edd0cd5754dd490952877117355">polybori::DegLexOrder</a>, <a class="el" href="classpolybori_1_1DegRevLexAscOrder.html#fa8f16afd9e3c34842a882ef62366a82">polybori::DegRevLexAscOrder</a>, and <a class="el" href="classpolybori_1_1LexOrder.html#76ccc95de38fa919f2f6c8698db63b25">polybori::LexOrder</a>.</p>

</div>
</div><p>
<a class="anchor" name="14552bdde31666811128c6ce1a92ae35"></a><!-- doxytag: member="polybori::COrderBase::leadExpIteratorEnd" ref="14552bdde31666811128c6ce1a92ae35" args="() const =0" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">virtual <a class="el" href="classpolybori_1_1COrderedIter.html">indirect_exp_iterator</a> polybori::COrderBase::leadExpIteratorEnd           </td>
          <td>(</td>
          <td class="paramname">          </td>
          <td>&nbsp;)&nbsp;</td>
          <td> const<code> [pure virtual]</code></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>

<p>Implemented in <a class="el" href="classpolybori_1_1BlockDegLexOrder.html#33f5c007c8b341982935423444fe7785">polybori::BlockDegLexOrder</a>, <a class="el" href="classpolybori_1_1BlockDegRevLexAscOrder.html#c2fa8e85594236c2b711a488cd0c9404">polybori::BlockDegRevLexAscOrder</a>, <a class="el" href="classpolybori_1_1DegLexOrder.html#3789f4fc0924e68edf7fa90d2969dfd8">polybori::DegLexOrder</a>, <a class="el" href="classpolybori_1_1DegRevLexAscOrder.html#396a72b0dce710646ed8618b268da9ad">polybori::DegRevLexAscOrder</a>, and <a class="el" href="classpolybori_1_1LexOrder.html#d072e33c180e84021eb6c7858da312b3">polybori::LexOrder</a>.</p>

</div>
</div><p>
<a class="anchor" name="2e202cf97ad61d570bd3d1a379e3a873"></a><!-- doxytag: member="polybori::COrderBase::leadIteratorBegin" ref="2e202cf97ad61d570bd3d1a379e3a873" args="(const poly_type &amp;) const =0" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">virtual <a class="el" href="classpolybori_1_1COrderedIter.html">indirect_iterator</a> polybori::COrderBase::leadIteratorBegin           </td>
          <td>(</td>
          <td class="paramtype">const <a class="el" href="classpolybori_1_1BoolePolynomial.html">poly_type</a> &amp;&nbsp;</td>
          <td class="paramname">          </td>
          <td>&nbsp;)&nbsp;</td>
          <td> const<code> [pure virtual]</code></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>
Initialize iterator corresponding to leading term. 
<p>

<p>Implemented in <a class="el" href="classpolybori_1_1BlockDegLexOrder.html#6c9288d515b786dbd35e51ecd2ca37fd">polybori::BlockDegLexOrder</a>, <a class="el" href="classpolybori_1_1BlockDegRevLexAscOrder.html#151727c8ae95718fd67870fc5f97af35">polybori::BlockDegRevLexAscOrder</a>, <a class="el" href="classpolybori_1_1DegLexOrder.html#65287793ddc3199db6df50028939cd20">polybori::DegLexOrder</a>, <a class="el" href="classpolybori_1_1DegRevLexAscOrder.html#c329c003ef6c0385acc9f3c055617ae7">polybori::DegRevLexAscOrder</a>, and <a class="el" href="classpolybori_1_1LexOrder.html#70df8396388d4a13f6982cfeb9513ca6">polybori::LexOrder</a>.</p>

</div>
</div><p>
<a class="anchor" name="71dd0099c91120590d8051e09d791bcb"></a><!-- doxytag: member="polybori::COrderBase::leadIteratorEnd" ref="71dd0099c91120590d8051e09d791bcb" args="() const =0" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">virtual <a class="el" href="classpolybori_1_1COrderedIter.html">indirect_iterator</a> polybori::COrderBase::leadIteratorEnd           </td>
          <td>(</td>
          <td class="paramname">          </td>
          <td>&nbsp;)&nbsp;</td>
          <td> const<code> [pure virtual]</code></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>

<p>Implemented in <a class="el" href="classpolybori_1_1BlockDegLexOrder.html#5fee712a710f71831d0b627b7232ead9">polybori::BlockDegLexOrder</a>, <a class="el" href="classpolybori_1_1BlockDegRevLexAscOrder.html#24371d2148a8ecee2d36d15f2db16e97">polybori::BlockDegRevLexAscOrder</a>, <a class="el" href="classpolybori_1_1DegLexOrder.html#889ad0814a918eebffff05b0694cba8d">polybori::DegLexOrder</a>, <a class="el" href="classpolybori_1_1DegRevLexAscOrder.html#12f69a15bd79d1f3cda8b0a0093bbd58">polybori::DegRevLexAscOrder</a>, and <a class="el" href="classpolybori_1_1LexOrder.html#95b2b829004473b8429c9ef3f1145933">polybori::LexOrder</a>.</p>

</div>
</div><p>
<a class="anchor" name="a550ce36acfc54bc55240d6383e55ce2"></a><!-- doxytag: member="polybori::COrderBase::monom" ref="a550ce36acfc54bc55240d6383e55ce2" args="(const set_type &amp;rhs) const " -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname"><a class="el" href="classpolybori_1_1BooleMonomial.html">monom_type</a> polybori::COrderBase::monom           </td>
          <td>(</td>
          <td class="paramtype">const <a class="el" href="classpolybori_1_1BooleSet.html">set_type</a> &amp;&nbsp;</td>
          <td class="paramname"> <em>rhs</em>          </td>
          <td>&nbsp;)&nbsp;</td>
          <td> const<code> [inline, protected]</code></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>
Get monomial from set of subsets of Boolean variables (internal use only). 
<p>

<p>Referenced by <a class="el" href="DegRevLexAscOrder_8cc_source.html#l00134">polybori::DegRevLexAscOrder::lead()</a>, <a class="el" href="DegLexOrder_8cc_source.html#l00148">polybori::DegLexOrder::lead()</a>, <a class="el" href="BlockDegRevLexAscOrder_8cc_source.html#l00116">polybori::BlockDegRevLexAscOrder::lead()</a>, and <a class="el" href="BlockDegLexOrder_8cc_source.html#l00109">polybori::BlockDegLexOrder::lead()</a>.</p>

</div>
</div><p>
<hr>The documentation for this class was generated from the following file:<ul>
<li><a class="el" href="COrderBase_8h_source.html">COrderBase.h</a></ul>
</div>
<hr size="1"><address style="text-align: right;"><small>Generated on Wed Sep 9 14:31:02 2009 for PolyBoRi by&nbsp;
<a href="http://www.doxygen.org/index.html">
<img src="doxygen.png" alt="doxygen" align="middle" border="0"></a> 1.5.9 </small></address>
</body>
</html>