<!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 Page</span></a></li> <li><a href="pages.html"><span>Related 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 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="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 <<a class="el" href="COrderBase_8h_source.html">COrderBase.h</a>></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> </td><td class="memItemRight" valign="bottom"><a class="el" href="classpolybori_1_1COrderBase.html#51e2640f37144a87420dd1abd167a506">base</a></td></tr> <tr><td class="mdescLeft"> </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> </td><td class="memItemRight" valign="bottom"><a class="el" href="classpolybori_1_1COrderBase.html#765ce5ee7b380be4b63c97ea477832a0">poly_type</a></td></tr> <tr><td class="mdescLeft"> </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> </td><td class="memItemRight" valign="bottom"><a class="el" href="classpolybori_1_1COrderBase.html#322bdadf8a951e359d41fc2fc40dc086">size_type</a></td></tr> <tr><td class="mdescLeft"> </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> </td><td class="memItemRight" valign="bottom"><a class="el" href="classpolybori_1_1COrderBase.html#166639953567c0341e186c64654a05a0">idx_type</a></td></tr> <tr><td class="mdescLeft"> </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> </td><td class="memItemRight" valign="bottom"><a class="el" href="classpolybori_1_1COrderBase.html#91afa0399945e03e4b1aff784bc53a31">monom_type</a></td></tr> <tr><td class="mdescLeft"> </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> </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"> < <a class="el" href="classpolybori_1_1CCuddNavigator.html">navigator</a>, <a class="el" href="classpolybori_1_1BooleMonomial.html">monom_type</a> > </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> </td><td class="memItemRight" valign="bottom"><a class="el" href="classpolybori_1_1COrderBase.html#c6acf67395b0ce9120b4c6b8079cfae2">set_type</a></td></tr> <tr><td class="mdescLeft"> </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> </td><td class="memItemRight" valign="bottom"><a class="el" href="classpolybori_1_1COrderBase.html#da72cd5c37a9d0baff66638bebf273be">exp_type</a></td></tr> <tr><td class="mdescLeft"> </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"> < <a class="el" href="classpolybori_1_1CCuddNavigator.html">navigator</a>, <a class="el" href="classpolybori_1_1BooleExponent.html">exp_type</a> > </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< <a class="el" href="classpolybori_1_1COrderBase.html#166639953567c0341e186c64654a05a0">idx_type</a> > </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"> </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 </td><td class="memItemRight" valign="bottom"><a class="el" href="classpolybori_1_1COrderBase.html#013bbb0b65404fde314a56a621b0deb9">block_iterator</a></td></tr> <tr><td class="mdescLeft"> </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> </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> </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> </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> </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> </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> </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> </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> </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> </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"> </td><td class="memItemRight" valign="bottom"><a class="el" href="classpolybori_1_1COrderBase.html#f93a64694831abff275f89bc0e736220">COrderBase</a> ()</td></tr> <tr><td class="mdescLeft"> </td><td class="mdescRight">Default Constructor. <a href="#f93a64694831abff275f89bc0e736220"></a><br></td></tr> <tr><td class="memItemLeft" nowrap align="right" valign="top"> </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> &)</td></tr> <tr><td class="mdescLeft"> </td><td class="mdescRight">Copy Constructor. <a href="#9df0a6fe451baece841a6b69e9eb37d9"></a><br></td></tr> <tr><td class="memItemLeft" nowrap align="right" valign="top">virtual </td><td class="memItemRight" valign="bottom"><a class="el" href="classpolybori_1_1COrderBase.html#a0edeeed6b0f99526047445420238840">~COrderBase</a> ()</td></tr> <tr><td class="mdescLeft"> </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> </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"> </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> </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> &, const <a class="el" href="classpolybori_1_1BooleMonomial.html">monom_type</a> &) const =0</td></tr> <tr><td class="mdescLeft"> </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> </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> &, const <a class="el" href="classpolybori_1_1BooleExponent.html">exp_type</a> &) const =0</td></tr> <tr><td class="mdescLeft"> </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> </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> &) const =0</td></tr> <tr><td class="mdescLeft"> </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> </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> &, <a class="el" href="classpolybori_1_1COrderBase.html#322bdadf8a951e359d41fc2fc40dc086">size_type</a>) const =0</td></tr> <tr><td class="mdescLeft"> </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> </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> &) const =0</td></tr> <tr><td class="mdescLeft"> </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> </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> &, <a class="el" href="classpolybori_1_1COrderBase.html#322bdadf8a951e359d41fc2fc40dc086">size_type</a>) const =0</td></tr> <tr><td class="mdescLeft"> </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> </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> &) const =0</td></tr> <tr><td class="mdescLeft"> </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> </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> </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> &) 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> </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> </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> </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 </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 </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> </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> &rhs) const </td></tr> <tr><td class="mdescLeft"> </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<<a class="el" href="classpolybori_1_1COrderBase.html#166639953567c0341e186c64654a05a0">idx_type</a>> <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><<a class="el" href="classpolybori_1_1CCuddNavigator.html">navigator</a>, <a class="el" href="classpolybori_1_1BooleExponent.html">exp_type</a>> <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><<a class="el" href="classpolybori_1_1CCuddNavigator.html">navigator</a>, <a class="el" href="classpolybori_1_1BooleMonomial.html">monom_type</a>> <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 & 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> ) </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 &)" --> <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> & </td> <td class="paramname"> </td> <td> ) </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> ) </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> </td> <td class="paramname"> </td> <td> ) </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> ) </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> ) </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> ) </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 &, const exp_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">const <a class="el" href="classpolybori_1_1BooleExponent.html">exp_type</a> & </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> & </td> <td class="paramname"></td><td> </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 &, const monom_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">const <a class="el" href="classpolybori_1_1BooleMonomial.html">monom_type</a> & </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> & </td> <td class="paramname"></td><td> </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> </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> </td> <td class="paramname"></td><td> </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 &, 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> & </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> </td> <td class="paramname"></td><td> </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 &) 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> & </td> <td class="paramname"> </td> <td> ) </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 &, 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> & </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> </td> <td class="paramname"></td><td> </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 &) 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> & </td> <td class="paramname"> </td> <td> ) </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 &) 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> & </td> <td class="paramname"> </td> <td> ) </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> ) </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 &) 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> & </td> <td class="paramname"> </td> <td> ) </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> ) </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 &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> & </td> <td class="paramname"> <em>rhs</em> </td> <td> ) </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 <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>