<!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::BooleMonomial 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_1BooleMonomial.html">BooleMonomial</a> </div> </div> <div class="contents"> <h1>polybori::BooleMonomial Class Reference</h1><!-- doxytag: class="polybori::BooleMonomial" -->This class is just a wrapper for using variables from <code>cudd's</code> decicion diagram. <a href="#_details">More...</a> <p> <code>#include <<a class="el" href="BooleMonomial_8h_source.html">BooleMonomial.h</a>></code> <p> <p> <a href="classpolybori_1_1BooleMonomial-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_1BooleMonomial.html">BooleMonomial</a> </td><td class="memItemRight" valign="bottom"><a class="el" href="classpolybori_1_1BooleMonomial.html#5421ea67b92c7b530e8d69831df559fe">self</a></td></tr> <tr><td class="mdescLeft"> </td><td class="mdescRight">Generic access to current type. <a href="#5421ea67b92c7b530e8d69831df559fe"></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_1BooleMonomial.html#0c2c73cbcf10863817c6751a0578c306">poly_type</a></td></tr> <tr><td class="mdescLeft"> </td><td class="mdescRight">Type of Boolean polynomials. <a href="#0c2c73cbcf10863817c6751a0578c306"></a><br></td></tr> <tr><td class="memItemLeft" nowrap align="right" valign="top">typedef <a class="el" href="classpolybori_1_1BooleVariable.html">poly_type::var_type</a> </td><td class="memItemRight" valign="bottom"><a class="el" href="classpolybori_1_1BooleMonomial.html#b762c4c19b98631b524adb202588b6ed">var_type</a></td></tr> <tr><td class="mdescLeft"> </td><td class="mdescRight">Type of Boolean variables. <a href="#b762c4c19b98631b524adb202588b6ed"></a><br></td></tr> <tr><td class="memItemLeft" nowrap align="right" valign="top">typedef <a class="el" href="classpolybori_1_1BooleConstant.html">poly_type::constant_type</a> </td><td class="memItemRight" valign="bottom"><a class="el" href="classpolybori_1_1BooleMonomial.html#c42b1ece9b517f538311a4d97479cc7b">constant_type</a></td></tr> <tr><td class="mdescLeft"> </td><td class="mdescRight">Type of Boolean constants. <a href="#c42b1ece9b517f538311a4d97479cc7b"></a><br></td></tr> <tr><td class="memItemLeft" nowrap align="right" valign="top">typedef <a class="el" href="classpolybori_1_1BooleSet.html">poly_type::set_type</a> </td><td class="memItemRight" valign="bottom"><a class="el" href="classpolybori_1_1BooleMonomial.html#d808fd10e3adf11aba1bb694d502d271">set_type</a></td></tr> <tr><td class="mdescLeft"> </td><td class="mdescRight">Type of sets of Boolean variables. <a href="#d808fd10e3adf11aba1bb694d502d271"></a><br></td></tr> <tr><td class="memItemLeft" nowrap align="right" valign="top">typedef <a class="el" href="classpolybori_1_1BooleExponent.html">poly_type::exp_type</a> </td><td class="memItemRight" valign="bottom"><a class="el" href="classpolybori_1_1BooleMonomial.html#75c4211bbb64be56dcae3fd7a9a208d8">exp_type</a></td></tr> <tr><td class="mdescLeft"> </td><td class="mdescRight">Type of exponent vector. <a href="#75c4211bbb64be56dcae3fd7a9a208d8"></a><br></td></tr> <tr><td class="memItemLeft" nowrap align="right" valign="top">typedef <a class="el" href="classpolybori_1_1BooleRing.html">poly_type::ring_type</a> </td><td class="memItemRight" valign="bottom"><a class="el" href="classpolybori_1_1BooleMonomial.html#217f482ef03ea81b4c6afc9357e20a73">ring_type</a></td></tr> <tr><td class="mdescLeft"> </td><td class="mdescRight">Type for Boolean polynomial rings (without ordering). <a href="#217f482ef03ea81b4c6afc9357e20a73"></a><br></td></tr> <tr><td class="memItemLeft" nowrap align="right" valign="top">typedef <a class="el" href="classpolybori_1_1CCuddFirstIter.html">poly_type::first_iterator</a> </td><td class="memItemRight" valign="bottom"><a class="el" href="classpolybori_1_1BooleMonomial.html#05886e7e9eacdf4d911f5b59fbe42925">const_iterator</a></td></tr> <tr><td class="mdescLeft"> </td><td class="mdescRight">Access to iterator over indices. <a href="#05886e7e9eacdf4d911f5b59fbe42925"></a><br></td></tr> <tr><td class="memItemLeft" nowrap align="right" valign="top">typedef <a class="el" href="classpolybori_1_1CVariableIter.html">CVariableIter</a><br class="typebreak"> < <a class="el" href="classpolybori_1_1CCuddFirstIter.html">const_iterator</a>, <a class="el" href="classpolybori_1_1BooleVariable.html">var_type</a> > </td><td class="memItemRight" valign="bottom"><a class="el" href="classpolybori_1_1BooleMonomial.html#66acd739ddf0d7fdcd778e769fe3dfb0">variable_iterator</a></td></tr> <tr><td class="mdescLeft"> </td><td class="mdescRight">Access to iterator over variables. <a href="#66acd739ddf0d7fdcd778e769fe3dfb0"></a><br></td></tr> <tr><td class="memItemLeft" nowrap align="right" valign="top">typedef std::map< <a class="el" href="classpolybori_1_1BooleMonomial.html">self</a>, <br class="typebreak"> <a class="el" href="classpolybori_1_1BooleMonomial.html#5aa2051b32664928bac19cf6e89c4607">idx_type</a>, <br class="typebreak"> <a class="el" href="classpolybori_1_1symmetric__composition.html">symmetric_composition</a><br class="typebreak"> < std::less<br class="typebreak"> < <a class="el" href="classpolybori_1_1CCuddNavigator.html">poly_type::navigator</a> ><br class="typebreak"> , <a class="el" href="classpolybori_1_1navigates.html">navigates</a>< <a class="el" href="classpolybori_1_1BoolePolynomial.html">poly_type</a> > > > </td><td class="memItemRight" valign="bottom"><a class="el" href="classpolybori_1_1BooleMonomial.html#5098408fbdcf7bac7d818be20a98e3c0">idx_map_type</a></td></tr> <tr><td class="mdescLeft"> </td><td class="mdescRight">Type for index maps. <a href="#5098408fbdcf7bac7d818be20a98e3c0"></a><br></td></tr> <tr><td class="memItemLeft" nowrap align="right" valign="top">typedef <br class="typebreak"> <a class="el" href="structpolybori_1_1valid__tag.html">dd_type::easy_equality_property</a> </td><td class="memItemRight" valign="bottom"><a class="el" href="classpolybori_1_1BooleMonomial.html#3076cdbc8783193bb280dd51f2669fc3">easy_equality_property</a></td></tr> <tr><td class="mdescLeft"> </td><td class="mdescRight">The property whether the equality check is easy is inherited from dd_type. <a href="#3076cdbc8783193bb280dd51f2669fc3"></a><br></td></tr> <tr><td colspan="2"><div class="groupHeader">Adopt global type definitions</div></td></tr> <tr><td class="memItemLeft" nowrap align="right" valign="top">typedef <a class="el" href="classpolybori_1_1CDDInterface.html">CTypes::dd_type</a> </td><td class="memItemRight" valign="bottom"><a class="el" href="classpolybori_1_1BooleMonomial.html#b8ef0078862a39f44536fbddf145e1c3">dd_type</a></td></tr> <tr><td class="memItemLeft" nowrap align="right" valign="top">typedef <a class="el" href="structpolybori_1_1CAuxTypes.html#0e254f927049b57061437ac57ea5c2cd">CTypes::size_type</a> </td><td class="memItemRight" valign="bottom"><a class="el" href="classpolybori_1_1BooleMonomial.html#8c6a010c64cdd814454094adaaf694a5">size_type</a></td></tr> <tr><td class="memItemLeft" nowrap align="right" valign="top">typedef <a class="el" href="structpolybori_1_1CAuxTypes.html#8c170014c637d9ecf5950063ca30ef46">CTypes::idx_type</a> </td><td class="memItemRight" valign="bottom"><a class="el" href="classpolybori_1_1BooleMonomial.html#5aa2051b32664928bac19cf6e89c4607">idx_type</a></td></tr> <tr><td class="memItemLeft" nowrap align="right" valign="top">typedef <a class="el" href="structpolybori_1_1CAuxTypes.html#eb07372fd3478864402ba0e30b211d5e">CTypes::hash_type</a> </td><td class="memItemRight" valign="bottom"><a class="el" href="classpolybori_1_1BooleMonomial.html#c0db090f68262d440492e79d299572cd">hash_type</a></td></tr> <tr><td class="memItemLeft" nowrap align="right" valign="top">typedef <a class="el" href="structpolybori_1_1CAuxTypes.html#ae2c602841648d0b2b240eb3b612111e">CTypes::bool_type</a> </td><td class="memItemRight" valign="bottom"><a class="el" href="classpolybori_1_1BooleMonomial.html#e7eee5761fd8b835cea774f8f769c71d">bool_type</a></td></tr> <tr><td class="memItemLeft" nowrap align="right" valign="top">typedef <a class="el" href="structpolybori_1_1CAuxTypes.html#c65df1421059e92da32ec24121d4192f">CTypes::comp_type</a> </td><td class="memItemRight" valign="bottom"><a class="el" href="classpolybori_1_1BooleMonomial.html#983c8221113525a285b542407fe43ec0">comp_type</a></td></tr> <tr><td class="memItemLeft" nowrap align="right" valign="top">typedef <a class="el" href="structpolybori_1_1CAuxTypes.html#54250b7e59ca3f754d1c1d52b07c339a">CTypes::integer_type</a> </td><td class="memItemRight" valign="bottom"><a class="el" href="classpolybori_1_1BooleMonomial.html#fe35ca1ed1a818918f5201bddc533cb4">integer_type</a></td></tr> <tr><td class="memItemLeft" nowrap align="right" valign="top">typedef <a class="el" href="structpolybori_1_1CAuxTypes.html#e146a837e32358883da648ea0f83004d">CTypes::ostream_type</a> </td><td class="memItemRight" valign="bottom"><a class="el" href="classpolybori_1_1BooleMonomial.html#af039ed980d944b98f5967c92f93333b">ostream_type</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_1BooleMonomial.html#48e7b303e66ee8c7d88224a65a0ec640">BooleMonomial</a> ()</td></tr> <tr><td class="mdescLeft"> </td><td class="mdescRight">Default Constructor (Constructs monomial one of the active ring). <a href="#48e7b303e66ee8c7d88224a65a0ec640"></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_1BooleMonomial.html#5767926c75129f0a620ba5e21cc71cbe">BooleMonomial</a> (const <a class="el" href="classpolybori_1_1BooleMonomial.html">self</a> &rhs)</td></tr> <tr><td class="mdescLeft"> </td><td class="mdescRight">Copy constructor. <a href="#5767926c75129f0a620ba5e21cc71cbe"></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_1BooleMonomial.html#17b2d96950728b380d5a1654ad1f2092">BooleMonomial</a> (const <a class="el" href="classpolybori_1_1BooleVariable.html">var_type</a> &rhs)</td></tr> <tr><td class="mdescLeft"> </td><td class="mdescRight">Construct from Boolean variable. <a href="#17b2d96950728b380d5a1654ad1f2092"></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_1BooleMonomial.html#57315945829d7b96ad2795b1ca8b8ade">BooleMonomial</a> (const <a class="el" href="classpolybori_1_1BooleExponent.html">exp_type</a> &rhs, const <a class="el" href="classpolybori_1_1BooleRing.html">ring_type</a> &ring)</td></tr> <tr><td class="mdescLeft"> </td><td class="mdescRight">Construct from exponent vector. <a href="#57315945829d7b96ad2795b1ca8b8ade"></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_1BooleMonomial.html#f4e9314075413b2a306c200a9707128e">BooleMonomial</a> (const <a class="el" href="classpolybori_1_1BooleRing.html">ring_type</a> &ring)</td></tr> <tr><td class="mdescLeft"> </td><td class="mdescRight">Construct from given ring. <a href="#f4e9314075413b2a306c200a9707128e"></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_1BooleMonomial.html#03e88c8956221d469564421b219711d5">~BooleMonomial</a> ()</td></tr> <tr><td class="mdescLeft"> </td><td class="mdescRight">Destructor. <a href="#03e88c8956221d469564421b219711d5"></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_1BooleMonomial.html#32443f002de79bb218a7f566dfd7086f">operator const BoolePolynomial &</a> () const </td></tr> <tr><td class="mdescLeft"> </td><td class="mdescRight">Casting operator. <a href="#32443f002de79bb218a7f566dfd7086f"></a><br></td></tr> <tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="el" href="classpolybori_1_1BooleExponent.html">exp_type</a> </td><td class="memItemRight" valign="bottom"><a class="el" href="classpolybori_1_1BooleMonomial.html#7987bd65a9aa41fb00300112c94dac70">exp</a> () const </td></tr> <tr><td class="mdescLeft"> </td><td class="mdescRight">Get exponent vector. <a href="#7987bd65a9aa41fb00300112c94dac70"></a><br></td></tr> <tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="el" href="classpolybori_1_1CCuddFirstIter.html">const_iterator</a> </td><td class="memItemRight" valign="bottom"><a class="el" href="classpolybori_1_1BooleMonomial.html#525ffe23d66ef5a8fcccb178f1226f12">begin</a> () const </td></tr> <tr><td class="mdescLeft"> </td><td class="mdescRight">Start iteration over indices. <a href="#525ffe23d66ef5a8fcccb178f1226f12"></a><br></td></tr> <tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="el" href="classpolybori_1_1CCuddFirstIter.html">const_iterator</a> </td><td class="memItemRight" valign="bottom"><a class="el" href="classpolybori_1_1BooleMonomial.html#144a9252492dcb1854154095e634eee5">end</a> () const </td></tr> <tr><td class="mdescLeft"> </td><td class="mdescRight">Finish iteration over indices. <a href="#144a9252492dcb1854154095e634eee5"></a><br></td></tr> <tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="el" href="classpolybori_1_1CVariableIter.html">variable_iterator</a> </td><td class="memItemRight" valign="bottom"><a class="el" href="classpolybori_1_1BooleMonomial.html#d419387f1feda4d1bc59be0aad915c14">variableBegin</a> () const </td></tr> <tr><td class="mdescLeft"> </td><td class="mdescRight">Start iteration over variables. <a href="#d419387f1feda4d1bc59be0aad915c14"></a><br></td></tr> <tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="el" href="classpolybori_1_1CVariableIter.html">variable_iterator</a> </td><td class="memItemRight" valign="bottom"><a class="el" href="classpolybori_1_1BooleMonomial.html#aea55681119e64b96e08223cbf961a2e">variableEnd</a> () const </td></tr> <tr><td class="mdescLeft"> </td><td class="mdescRight">Finish iteration over variables. <a href="#aea55681119e64b96e08223cbf961a2e"></a><br></td></tr> <tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="el" href="classpolybori_1_1BooleMonomial.html#8c6a010c64cdd814454094adaaf694a5">size_type</a> </td><td class="memItemRight" valign="bottom"><a class="el" href="classpolybori_1_1BooleMonomial.html#7f8db3627c0fcdb60bafe6e6f25bfc3a">deg</a> () const </td></tr> <tr><td class="mdescLeft"> </td><td class="mdescRight">Degree of the monomial. <a href="#7f8db3627c0fcdb60bafe6e6f25bfc3a"></a><br></td></tr> <tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="el" href="classpolybori_1_1BooleMonomial.html#8c6a010c64cdd814454094adaaf694a5">size_type</a> </td><td class="memItemRight" valign="bottom"><a class="el" href="classpolybori_1_1BooleMonomial.html#f41263f68e4c4e25530132ee69cce943">size</a> () const </td></tr> <tr><td class="mdescLeft"> </td><td class="mdescRight">Size of the exponents. <a href="#f41263f68e4c4e25530132ee69cce943"></a><br></td></tr> <tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="el" href="classpolybori_1_1BooleSet.html">set_type</a> </td><td class="memItemRight" valign="bottom"><a class="el" href="classpolybori_1_1BooleMonomial.html#8f2276fdfa44d2fb08b53d423be6f2b1">divisors</a> () const </td></tr> <tr><td class="mdescLeft"> </td><td class="mdescRight">Divisors of the monomial. <a href="#8f2276fdfa44d2fb08b53d423be6f2b1"></a><br></td></tr> <tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="el" href="classpolybori_1_1BooleSet.html">set_type</a> </td><td class="memItemRight" valign="bottom"><a class="el" href="classpolybori_1_1BooleMonomial.html#1ab3ea493b684ea8f2c475a2c798fb28">multiples</a> (const <a class="el" href="classpolybori_1_1BooleMonomial.html">self</a> &) const </td></tr> <tr><td class="mdescLeft"> </td><td class="mdescRight">multiples of the monomial wrt. given monomial <a href="#1ab3ea493b684ea8f2c475a2c798fb28"></a><br></td></tr> <tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="el" href="classpolybori_1_1BooleMonomial.html#c0db090f68262d440492e79d299572cd">hash_type</a> </td><td class="memItemRight" valign="bottom"><a class="el" href="classpolybori_1_1BooleMonomial.html#2d69a19345d4a07f5c791cfab4ad6a16">stableHash</a> () const </td></tr> <tr><td class="mdescLeft"> </td><td class="mdescRight">Hash value of the monomial. <a href="#2d69a19345d4a07f5c791cfab4ad6a16"></a><br></td></tr> <tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="el" href="classpolybori_1_1BooleMonomial.html#c0db090f68262d440492e79d299572cd">hash_type</a> </td><td class="memItemRight" valign="bottom"><a class="el" href="classpolybori_1_1BooleMonomial.html#5a1570365678bb21087aca36830e7c17">hash</a> () const </td></tr> <tr><td class="mdescLeft"> </td><td class="mdescRight">Get unique hash value (valid only per runtime). <a href="#5a1570365678bb21087aca36830e7c17"></a><br></td></tr> <tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="el" href="classpolybori_1_1BooleMonomial.html">self</a> & </td><td class="memItemRight" valign="bottom"><a class="el" href="classpolybori_1_1BooleMonomial.html#f703e7e8545dda1a3e6e0b93946b8a93">changeAssign</a> (<a class="el" href="classpolybori_1_1BooleMonomial.html#5aa2051b32664928bac19cf6e89c4607">idx_type</a>)</td></tr> <tr><td class="mdescLeft"> </td><td class="mdescRight">Substitute variable with index idx by its complement and assign. <a href="#f703e7e8545dda1a3e6e0b93946b8a93"></a><br></td></tr> <tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="el" href="classpolybori_1_1BooleMonomial.html">self</a> </td><td class="memItemRight" valign="bottom"><a class="el" href="classpolybori_1_1BooleMonomial.html#9ba8d80b06698f2de253226d95ec0e02">change</a> (<a class="el" href="classpolybori_1_1BooleMonomial.html#5aa2051b32664928bac19cf6e89c4607">idx_type</a>) const </td></tr> <tr><td class="mdescLeft"> </td><td class="mdescRight">Substitute variable with index idx by its complement. <a href="#9ba8d80b06698f2de253226d95ec0e02"></a><br></td></tr> <tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="el" href="classpolybori_1_1BooleMonomial.html#e7eee5761fd8b835cea774f8f769c71d">bool_type</a> </td><td class="memItemRight" valign="bottom"><a class="el" href="classpolybori_1_1BooleMonomial.html#1d5bda51e3183bb389d8bbc605f69f83">reducibleBy</a> (const <a class="el" href="classpolybori_1_1BooleMonomial.html">self</a> &rhs) const </td></tr> <tr><td class="mdescLeft"> </td><td class="mdescRight">Test for reducibility. <a href="#1d5bda51e3183bb389d8bbc605f69f83"></a><br></td></tr> <tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="el" href="classpolybori_1_1BooleMonomial.html#e7eee5761fd8b835cea774f8f769c71d">bool_type</a> </td><td class="memItemRight" valign="bottom"><a class="el" href="classpolybori_1_1BooleMonomial.html#b0955b0c04925ac470c5f97f67abe3f2">reducibleBy</a> (const <a class="el" href="classpolybori_1_1BooleVariable.html">var_type</a> &rhs) const </td></tr> <tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="el" href="classpolybori_1_1BooleMonomial.html#983c8221113525a285b542407fe43ec0">comp_type</a> </td><td class="memItemRight" valign="bottom"><a class="el" href="classpolybori_1_1BooleMonomial.html#2ece9c4978232a3c6eb84546bb9dbedf">compare</a> (const <a class="el" href="classpolybori_1_1BooleMonomial.html">self</a> &) const </td></tr> <tr><td class="mdescLeft"> </td><td class="mdescRight">Compare with rhs monomial and return comparision code. <a href="#2ece9c4978232a3c6eb84546bb9dbedf"></a><br></td></tr> <tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="el" href="classpolybori_1_1BooleMonomial.html#8c6a010c64cdd814454094adaaf694a5">size_type</a> </td><td class="memItemRight" valign="bottom"><a class="el" href="classpolybori_1_1BooleMonomial.html#a909b9fa318d12c486fd8ea67f245e8d">LCMDeg</a> (const <a class="el" href="classpolybori_1_1BooleMonomial.html">self</a> &) const </td></tr> <tr><td class="mdescLeft"> </td><td class="mdescRight">Degree of the least common multiple. <a href="#a909b9fa318d12c486fd8ea67f245e8d"></a><br></td></tr> <tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="el" href="classpolybori_1_1BooleMonomial.html">self</a> & </td><td class="memItemRight" valign="bottom"><a class="el" href="classpolybori_1_1BooleMonomial.html#e9a4dff344950879e7bc89752a3df9dc">LCMAssign</a> (const <a class="el" href="classpolybori_1_1BooleMonomial.html">self</a> &)</td></tr> <tr><td class="mdescLeft"> </td><td class="mdescRight">Compute theleast common multiple and assign. <a href="#e9a4dff344950879e7bc89752a3df9dc"></a><br></td></tr> <tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="el" href="classpolybori_1_1BooleMonomial.html">self</a> </td><td class="memItemRight" valign="bottom"><a class="el" href="classpolybori_1_1BooleMonomial.html#5266d92b608e44adcb45b061d81601b5">LCM</a> (const <a class="el" href="classpolybori_1_1BooleMonomial.html">self</a> &) const </td></tr> <tr><td class="mdescLeft"> </td><td class="mdescRight">Compute the greatest common divisor. <a href="#5266d92b608e44adcb45b061d81601b5"></a><br></td></tr> <tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="el" href="classpolybori_1_1BooleMonomial.html">self</a> & </td><td class="memItemRight" valign="bottom"><a class="el" href="classpolybori_1_1BooleMonomial.html#4b25d2af1d1f338d0a5a8d11b22db43a">GCDAssign</a> (const <a class="el" href="classpolybori_1_1BooleMonomial.html">self</a> &)</td></tr> <tr><td class="mdescLeft"> </td><td class="mdescRight">Compute the greatest common divisor and assign. <a href="#4b25d2af1d1f338d0a5a8d11b22db43a"></a><br></td></tr> <tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="el" href="classpolybori_1_1BooleMonomial.html">self</a> </td><td class="memItemRight" valign="bottom"><a class="el" href="classpolybori_1_1BooleMonomial.html#1d5c778300c8058b0234b5739183a9c2">GCD</a> (const <a class="el" href="classpolybori_1_1BooleMonomial.html">self</a> &) const </td></tr> <tr><td class="mdescLeft"> </td><td class="mdescRight">Compute the greatest common divisor. <a href="#1d5c778300c8058b0234b5739183a9c2"></a><br></td></tr> <tr><td class="memItemLeft" nowrap align="right" valign="top">const <a class="el" href="classpolybori_1_1CDDInterface.html">dd_type</a> & </td><td class="memItemRight" valign="bottom"><a class="el" href="classpolybori_1_1BooleMonomial.html#4884899505316ffe516f66256743b4e1">diagram</a> () const </td></tr> <tr><td class="mdescLeft"> </td><td class="mdescRight">Read-only access to internal decision diagramm structure. <a href="#4884899505316ffe516f66256743b4e1"></a><br></td></tr> <tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="el" href="classpolybori_1_1BooleSet.html">set_type</a> </td><td class="memItemRight" valign="bottom"><a class="el" href="classpolybori_1_1BooleMonomial.html#42c6a4a067541423960b3f4d229bbc3b">set</a> () const </td></tr> <tr><td class="mdescLeft"> </td><td class="mdescRight">Get corresponding subset of of the powerset over all variables. <a href="#42c6a4a067541423960b3f4d229bbc3b"></a><br></td></tr> <tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="el" href="classpolybori_1_1BooleMonomial.html">self</a> & </td><td class="memItemRight" valign="bottom"><a class="el" href="classpolybori_1_1BooleMonomial.html#c55c858f07aca383a710e888a17cde6c">popFirst</a> ()</td></tr> <tr><td class="mdescLeft"> </td><td class="mdescRight">Removes the first variables from monomial. <a href="#c55c858f07aca383a710e888a17cde6c"></a><br></td></tr> <tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="el" href="classpolybori_1_1BooleVariable.html">var_type</a> </td><td class="memItemRight" valign="bottom"><a class="el" href="classpolybori_1_1BooleMonomial.html#6bc6f01b5d0cd777a76095ea9111ad8c">firstVariable</a> () const </td></tr> <tr><td class="mdescLeft"> </td><td class="mdescRight">Get first variable in monomial. <a href="#6bc6f01b5d0cd777a76095ea9111ad8c"></a><br></td></tr> <tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="el" href="classpolybori_1_1BooleMonomial.html#5aa2051b32664928bac19cf6e89c4607">idx_type</a> </td><td class="memItemRight" valign="bottom"><a class="el" href="classpolybori_1_1BooleMonomial.html#d78df1d46dae6f71c05f5dba0861b22c">firstIndex</a> () const </td></tr> <tr><td class="mdescLeft"> </td><td class="mdescRight">Get first index in monomial. <a href="#d78df1d46dae6f71c05f5dba0861b22c"></a><br></td></tr> <tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="el" href="classpolybori_1_1BooleRing.html">ring_type</a> </td><td class="memItemRight" valign="bottom"><a class="el" href="classpolybori_1_1BooleMonomial.html#e0d640f9ebc821179c772515b1dbd54b">ring</a> () const </td></tr> <tr><td class="mdescLeft"> </td><td class="mdescRight">Access ring, where this belongs to. <a href="#e0d640f9ebc821179c772515b1dbd54b"></a><br></td></tr> <tr><td colspan="2"><div class="groupHeader">Arithmetical operations</div></td></tr> <tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="el" href="classpolybori_1_1BooleMonomial.html">self</a> & </td><td class="memItemRight" valign="bottom"><a class="el" href="classpolybori_1_1BooleMonomial.html#da042498623ed45738da001db5de9304">operator*=</a> (const <a class="el" href="classpolybori_1_1BooleMonomial.html">self</a> &)</td></tr> <tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="el" href="classpolybori_1_1BooleMonomial.html">self</a> & </td><td class="memItemRight" valign="bottom"><a class="el" href="classpolybori_1_1BooleMonomial.html#b99a4399e1cd82623de2144c7cf0f855">operator/=</a> (const <a class="el" href="classpolybori_1_1BooleMonomial.html">self</a> &)</td></tr> <tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="el" href="classpolybori_1_1BooleMonomial.html">self</a> & </td><td class="memItemRight" valign="bottom"><a class="el" href="classpolybori_1_1BooleMonomial.html#775c52201df38bd7e154e8bc4dd1e7e3">operator*=</a> (const <a class="el" href="classpolybori_1_1BooleVariable.html">var_type</a> &)</td></tr> <tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="el" href="classpolybori_1_1BooleMonomial.html">self</a> & </td><td class="memItemRight" valign="bottom"><a class="el" href="classpolybori_1_1BooleMonomial.html#79b0ecbed11c24afc83323cc94fe328e">operator/=</a> (const <a class="el" href="classpolybori_1_1BooleVariable.html">var_type</a> &)</td></tr> <tr><td colspan="2"><div class="groupHeader">Logical operations</div></td></tr> <tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="el" href="classpolybori_1_1BooleMonomial.html#e7eee5761fd8b835cea774f8f769c71d">bool_type</a> </td><td class="memItemRight" valign="bottom"><a class="el" href="classpolybori_1_1BooleMonomial.html#755aba27c181441ad2ea548f5036e761">operator==</a> (const <a class="el" href="classpolybori_1_1BooleMonomial.html">self</a> &rhs) const </td></tr> <tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="el" href="classpolybori_1_1BooleMonomial.html#e7eee5761fd8b835cea774f8f769c71d">bool_type</a> </td><td class="memItemRight" valign="bottom"><a class="el" href="classpolybori_1_1BooleMonomial.html#9485154173cb1cdcba46c8624b115439">operator!=</a> (const <a class="el" href="classpolybori_1_1BooleMonomial.html">self</a> &rhs) const </td></tr> <tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="el" href="classpolybori_1_1BooleMonomial.html#e7eee5761fd8b835cea774f8f769c71d">bool_type</a> </td><td class="memItemRight" valign="bottom"><a class="el" href="classpolybori_1_1BooleMonomial.html#1f63f9f398387cfe6f47c6ba43138bd3">operator==</a> (<a class="el" href="classpolybori_1_1BooleConstant.html">constant_type</a> rhs) const </td></tr> <tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="el" href="classpolybori_1_1BooleMonomial.html#e7eee5761fd8b835cea774f8f769c71d">bool_type</a> </td><td class="memItemRight" valign="bottom"><a class="el" href="classpolybori_1_1BooleMonomial.html#00d8f29619ac88f9544688e8e1ef60ba">operator!=</a> (<a class="el" href="classpolybori_1_1BooleConstant.html">constant_type</a> rhs) const </td></tr> <tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="el" href="classpolybori_1_1BooleMonomial.html#e7eee5761fd8b835cea774f8f769c71d">bool_type</a> </td><td class="memItemRight" valign="bottom"><a class="el" href="classpolybori_1_1BooleMonomial.html#0b49d4b1f7700056498a631fd3335457">isOne</a> () const </td></tr> <tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="el" href="classpolybori_1_1BooleMonomial.html#e7eee5761fd8b835cea774f8f769c71d">bool_type</a> </td><td class="memItemRight" valign="bottom"><a class="el" href="classpolybori_1_1BooleMonomial.html#d0982eab817d9137c41b7ada2bbdc021">isConstant</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_1CDDInterface.html">dd_type</a> & </td><td class="memItemRight" valign="bottom"><a class="el" href="classpolybori_1_1BooleMonomial.html#dc63e7b0e79d566c42bd047aeb2f56cf">internalDiagram</a> ()</td></tr> <tr><td class="mdescLeft"> </td><td class="mdescRight">Access to internal decision diagramm structure. <a href="#dc63e7b0e79d566c42bd047aeb2f56cf"></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_1BooleMonomial.html#a307490c6b340f1b73c520e79dc5edc9">BooleMonomial</a> (const <a class="el" href="classpolybori_1_1BooleSet.html">set_type</a> &rhs)</td></tr> <tr><td class="mdescLeft"> </td><td class="mdescRight">Construct from decision diagram. <a href="#a307490c6b340f1b73c520e79dc5edc9"></a><br></td></tr> <tr><td colspan="2"><br><h2>Friends</h2></td></tr> <tr><td class="memItemLeft" nowrap align="right" valign="top">class </td><td class="memItemRight" valign="bottom"><a class="el" href="classpolybori_1_1BooleMonomial.html#e93d16556ee01649fe5d050f4fdeb0d1">CDDOperations</a></td></tr> <tr><td class="memItemLeft" nowrap align="right" valign="top">class </td><td class="memItemRight" valign="bottom"><a class="el" href="classpolybori_1_1BooleMonomial.html#62ad52f8c65f749d2b2e25c48ca81ef3">COrderBase</a></td></tr> <tr><td class="memItemLeft" nowrap align="right" valign="top">class </td><td class="memItemRight" valign="bottom"><a class="el" href="classpolybori_1_1BooleMonomial.html#cd03c4a7738297292b27c2c28e3dbd04">CTermGeneratorBase</a></td></tr> </table> <hr><a name="_details"></a><h2>Detailed Description</h2> This class is just a wrapper for using variables from <code>cudd's</code> decicion diagram. <p> <dl class="note" compact><dt><b>Note:</b></dt><dd><code><a class="el" href="classpolybori_1_1BooleMonomial.html" title="This class is just a wrapper for using variables from cudd's decicion diagram...">BooleMonomial</a></code> is actually a specialization of <code><a class="el" href="classpolybori_1_1BoolePolynomial.html" title="This class wraps the underlying decicion diagram type and defines the necessary operations...">BoolePolynomial</a></code> with a special constructor. </dd></dl> <hr><h2>Member Typedef Documentation</h2> <a class="anchor" name="e7eee5761fd8b835cea774f8f769c71d"></a><!-- doxytag: member="polybori::BooleMonomial::bool_type" ref="e7eee5761fd8b835cea774f8f769c71d" args="" --> <div class="memitem"> <div class="memproto"> <table class="memname"> <tr> <td class="memname">typedef <a class="el" href="structpolybori_1_1CAuxTypes.html#ae2c602841648d0b2b240eb3b612111e">CTypes::bool_type</a> <a class="el" href="classpolybori_1_1BooleMonomial.html#e7eee5761fd8b835cea774f8f769c71d">polybori::BooleMonomial::bool_type</a> </td> </tr> </table> </div> <div class="memdoc"> <p> </div> </div><p> <a class="anchor" name="983c8221113525a285b542407fe43ec0"></a><!-- doxytag: member="polybori::BooleMonomial::comp_type" ref="983c8221113525a285b542407fe43ec0" args="" --> <div class="memitem"> <div class="memproto"> <table class="memname"> <tr> <td class="memname">typedef <a class="el" href="structpolybori_1_1CAuxTypes.html#c65df1421059e92da32ec24121d4192f">CTypes::comp_type</a> <a class="el" href="classpolybori_1_1BooleMonomial.html#983c8221113525a285b542407fe43ec0">polybori::BooleMonomial::comp_type</a> </td> </tr> </table> </div> <div class="memdoc"> <p> </div> </div><p> <a class="anchor" name="05886e7e9eacdf4d911f5b59fbe42925"></a><!-- doxytag: member="polybori::BooleMonomial::const_iterator" ref="05886e7e9eacdf4d911f5b59fbe42925" args="" --> <div class="memitem"> <div class="memproto"> <table class="memname"> <tr> <td class="memname">typedef <a class="el" href="classpolybori_1_1CCuddFirstIter.html">poly_type::first_iterator</a> <a class="el" href="classpolybori_1_1CCuddFirstIter.html">polybori::BooleMonomial::const_iterator</a> </td> </tr> </table> </div> <div class="memdoc"> <p> Access to iterator over indices. <p> </div> </div><p> <a class="anchor" name="c42b1ece9b517f538311a4d97479cc7b"></a><!-- doxytag: member="polybori::BooleMonomial::constant_type" ref="c42b1ece9b517f538311a4d97479cc7b" args="" --> <div class="memitem"> <div class="memproto"> <table class="memname"> <tr> <td class="memname">typedef <a class="el" href="classpolybori_1_1BooleConstant.html">poly_type::constant_type</a> <a class="el" href="classpolybori_1_1BooleConstant.html">polybori::BooleMonomial::constant_type</a> </td> </tr> </table> </div> <div class="memdoc"> <p> Type of Boolean constants. <p> </div> </div><p> <a class="anchor" name="b8ef0078862a39f44536fbddf145e1c3"></a><!-- doxytag: member="polybori::BooleMonomial::dd_type" ref="b8ef0078862a39f44536fbddf145e1c3" args="" --> <div class="memitem"> <div class="memproto"> <table class="memname"> <tr> <td class="memname">typedef <a class="el" href="classpolybori_1_1CDDInterface.html">CTypes::dd_type</a> <a class="el" href="classpolybori_1_1CDDInterface.html">polybori::BooleMonomial::dd_type</a> </td> </tr> </table> </div> <div class="memdoc"> <p> </div> </div><p> <a class="anchor" name="3076cdbc8783193bb280dd51f2669fc3"></a><!-- doxytag: member="polybori::BooleMonomial::easy_equality_property" ref="3076cdbc8783193bb280dd51f2669fc3" args="" --> <div class="memitem"> <div class="memproto"> <table class="memname"> <tr> <td class="memname">typedef <a class="el" href="structpolybori_1_1valid__tag.html">dd_type::easy_equality_property</a> <a class="el" href="structpolybori_1_1valid__tag.html">polybori::BooleMonomial::easy_equality_property</a> </td> </tr> </table> </div> <div class="memdoc"> <p> The property whether the equality check is easy is inherited from dd_type. <p> </div> </div><p> <a class="anchor" name="75c4211bbb64be56dcae3fd7a9a208d8"></a><!-- doxytag: member="polybori::BooleMonomial::exp_type" ref="75c4211bbb64be56dcae3fd7a9a208d8" args="" --> <div class="memitem"> <div class="memproto"> <table class="memname"> <tr> <td class="memname">typedef <a class="el" href="classpolybori_1_1BooleExponent.html">poly_type::exp_type</a> <a class="el" href="classpolybori_1_1BooleExponent.html">polybori::BooleMonomial::exp_type</a> </td> </tr> </table> </div> <div class="memdoc"> <p> Type of exponent vector. <p> </div> </div><p> <a class="anchor" name="c0db090f68262d440492e79d299572cd"></a><!-- doxytag: member="polybori::BooleMonomial::hash_type" ref="c0db090f68262d440492e79d299572cd" args="" --> <div class="memitem"> <div class="memproto"> <table class="memname"> <tr> <td class="memname">typedef <a class="el" href="structpolybori_1_1CAuxTypes.html#eb07372fd3478864402ba0e30b211d5e">CTypes::hash_type</a> <a class="el" href="classpolybori_1_1BooleMonomial.html#c0db090f68262d440492e79d299572cd">polybori::BooleMonomial::hash_type</a> </td> </tr> </table> </div> <div class="memdoc"> <p> </div> </div><p> <a class="anchor" name="5098408fbdcf7bac7d818be20a98e3c0"></a><!-- doxytag: member="polybori::BooleMonomial::idx_map_type" ref="5098408fbdcf7bac7d818be20a98e3c0" args="" --> <div class="memitem"> <div class="memproto"> <table class="memname"> <tr> <td class="memname">typedef std::map<<a class="el" href="classpolybori_1_1BooleMonomial.html">self</a>, <a class="el" href="classpolybori_1_1BooleMonomial.html#5aa2051b32664928bac19cf6e89c4607">idx_type</a>, <a class="el" href="classpolybori_1_1symmetric__composition.html">symmetric_composition</a>< std::less<<a class="el" href="classpolybori_1_1CCuddNavigator.html">poly_type::navigator</a>>, <a class="el" href="classpolybori_1_1navigates.html">navigates</a><<a class="el" href="classpolybori_1_1BoolePolynomial.html">poly_type</a>> > > <a class="el" href="classpolybori_1_1BooleMonomial.html#5098408fbdcf7bac7d818be20a98e3c0">polybori::BooleMonomial::idx_map_type</a> </td> </tr> </table> </div> <div class="memdoc"> <p> Type for index maps. <p> </div> </div><p> <a class="anchor" name="5aa2051b32664928bac19cf6e89c4607"></a><!-- doxytag: member="polybori::BooleMonomial::idx_type" ref="5aa2051b32664928bac19cf6e89c4607" args="" --> <div class="memitem"> <div class="memproto"> <table class="memname"> <tr> <td class="memname">typedef <a class="el" href="structpolybori_1_1CAuxTypes.html#8c170014c637d9ecf5950063ca30ef46">CTypes::idx_type</a> <a class="el" href="classpolybori_1_1BooleMonomial.html#5aa2051b32664928bac19cf6e89c4607">polybori::BooleMonomial::idx_type</a> </td> </tr> </table> </div> <div class="memdoc"> <p> </div> </div><p> <a class="anchor" name="fe35ca1ed1a818918f5201bddc533cb4"></a><!-- doxytag: member="polybori::BooleMonomial::integer_type" ref="fe35ca1ed1a818918f5201bddc533cb4" args="" --> <div class="memitem"> <div class="memproto"> <table class="memname"> <tr> <td class="memname">typedef <a class="el" href="structpolybori_1_1CAuxTypes.html#54250b7e59ca3f754d1c1d52b07c339a">CTypes::integer_type</a> <a class="el" href="classpolybori_1_1BooleMonomial.html#fe35ca1ed1a818918f5201bddc533cb4">polybori::BooleMonomial::integer_type</a> </td> </tr> </table> </div> <div class="memdoc"> <p> </div> </div><p> <a class="anchor" name="af039ed980d944b98f5967c92f93333b"></a><!-- doxytag: member="polybori::BooleMonomial::ostream_type" ref="af039ed980d944b98f5967c92f93333b" args="" --> <div class="memitem"> <div class="memproto"> <table class="memname"> <tr> <td class="memname">typedef <a class="el" href="structpolybori_1_1CAuxTypes.html#e146a837e32358883da648ea0f83004d">CTypes::ostream_type</a> <a class="el" href="classpolybori_1_1BooleMonomial.html#af039ed980d944b98f5967c92f93333b">polybori::BooleMonomial::ostream_type</a> </td> </tr> </table> </div> <div class="memdoc"> <p> </div> </div><p> <a class="anchor" name="0c2c73cbcf10863817c6751a0578c306"></a><!-- doxytag: member="polybori::BooleMonomial::poly_type" ref="0c2c73cbcf10863817c6751a0578c306" 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::BooleMonomial::poly_type</a> </td> </tr> </table> </div> <div class="memdoc"> <p> Type of Boolean polynomials. <p> </div> </div><p> <a class="anchor" name="217f482ef03ea81b4c6afc9357e20a73"></a><!-- doxytag: member="polybori::BooleMonomial::ring_type" ref="217f482ef03ea81b4c6afc9357e20a73" args="" --> <div class="memitem"> <div class="memproto"> <table class="memname"> <tr> <td class="memname">typedef <a class="el" href="classpolybori_1_1BooleRing.html">poly_type::ring_type</a> <a class="el" href="classpolybori_1_1BooleRing.html">polybori::BooleMonomial::ring_type</a> </td> </tr> </table> </div> <div class="memdoc"> <p> Type for Boolean polynomial rings (without ordering). <p> </div> </div><p> <a class="anchor" name="5421ea67b92c7b530e8d69831df559fe"></a><!-- doxytag: member="polybori::BooleMonomial::self" ref="5421ea67b92c7b530e8d69831df559fe" 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::BooleMonomial::self</a> </td> </tr> </table> </div> <div class="memdoc"> <p> Generic access to current type. <p> </div> </div><p> <a class="anchor" name="d808fd10e3adf11aba1bb694d502d271"></a><!-- doxytag: member="polybori::BooleMonomial::set_type" ref="d808fd10e3adf11aba1bb694d502d271" args="" --> <div class="memitem"> <div class="memproto"> <table class="memname"> <tr> <td class="memname">typedef <a class="el" href="classpolybori_1_1BooleSet.html">poly_type::set_type</a> <a class="el" href="classpolybori_1_1BooleSet.html">polybori::BooleMonomial::set_type</a> </td> </tr> </table> </div> <div class="memdoc"> <p> Type of sets of Boolean variables. <p> </div> </div><p> <a class="anchor" name="8c6a010c64cdd814454094adaaf694a5"></a><!-- doxytag: member="polybori::BooleMonomial::size_type" ref="8c6a010c64cdd814454094adaaf694a5" args="" --> <div class="memitem"> <div class="memproto"> <table class="memname"> <tr> <td class="memname">typedef <a class="el" href="structpolybori_1_1CAuxTypes.html#0e254f927049b57061437ac57ea5c2cd">CTypes::size_type</a> <a class="el" href="classpolybori_1_1BooleMonomial.html#8c6a010c64cdd814454094adaaf694a5">polybori::BooleMonomial::size_type</a> </td> </tr> </table> </div> <div class="memdoc"> <p> </div> </div><p> <a class="anchor" name="b762c4c19b98631b524adb202588b6ed"></a><!-- doxytag: member="polybori::BooleMonomial::var_type" ref="b762c4c19b98631b524adb202588b6ed" args="" --> <div class="memitem"> <div class="memproto"> <table class="memname"> <tr> <td class="memname">typedef <a class="el" href="classpolybori_1_1BooleVariable.html">poly_type::var_type</a> <a class="el" href="classpolybori_1_1BooleVariable.html">polybori::BooleMonomial::var_type</a> </td> </tr> </table> </div> <div class="memdoc"> <p> Type of Boolean variables. <p> </div> </div><p> <a class="anchor" name="66acd739ddf0d7fdcd778e769fe3dfb0"></a><!-- doxytag: member="polybori::BooleMonomial::variable_iterator" ref="66acd739ddf0d7fdcd778e769fe3dfb0" args="" --> <div class="memitem"> <div class="memproto"> <table class="memname"> <tr> <td class="memname">typedef <a class="el" href="classpolybori_1_1CVariableIter.html">CVariableIter</a><<a class="el" href="classpolybori_1_1CCuddFirstIter.html">const_iterator</a>, <a class="el" href="classpolybori_1_1BooleVariable.html">var_type</a>> <a class="el" href="classpolybori_1_1CVariableIter.html">polybori::BooleMonomial::variable_iterator</a> </td> </tr> </table> </div> <div class="memdoc"> <p> Access to iterator over variables. <p> </div> </div><p> <hr><h2>Constructor & Destructor Documentation</h2> <a class="anchor" name="48e7b303e66ee8c7d88224a65a0ec640"></a><!-- doxytag: member="polybori::BooleMonomial::BooleMonomial" ref="48e7b303e66ee8c7d88224a65a0ec640" args="()" --> <div class="memitem"> <div class="memproto"> <table class="memname"> <tr> <td class="memname">polybori::BooleMonomial::BooleMonomial </td> <td>(</td> <td class="paramname"> </td> <td> ) </td> <td><code> [inline]</code></td> </tr> </table> </div> <div class="memdoc"> <p> Default Constructor (Constructs monomial one of the active ring). <p> </div> </div><p> <a class="anchor" name="5767926c75129f0a620ba5e21cc71cbe"></a><!-- doxytag: member="polybori::BooleMonomial::BooleMonomial" ref="5767926c75129f0a620ba5e21cc71cbe" args="(const self &rhs)" --> <div class="memitem"> <div class="memproto"> <table class="memname"> <tr> <td class="memname">polybori::BooleMonomial::BooleMonomial </td> <td>(</td> <td class="paramtype">const <a class="el" href="classpolybori_1_1BooleMonomial.html">self</a> & </td> <td class="paramname"> <em>rhs</em> </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="17b2d96950728b380d5a1654ad1f2092"></a><!-- doxytag: member="polybori::BooleMonomial::BooleMonomial" ref="17b2d96950728b380d5a1654ad1f2092" args="(const var_type &rhs)" --> <div class="memitem"> <div class="memproto"> <table class="memname"> <tr> <td class="memname">polybori::BooleMonomial::BooleMonomial </td> <td>(</td> <td class="paramtype">const <a class="el" href="classpolybori_1_1BooleVariable.html">var_type</a> & </td> <td class="paramname"> <em>rhs</em> </td> <td> ) </td> <td></td> </tr> </table> </div> <div class="memdoc"> <p> Construct from Boolean variable. <p> <p>References <a class="el" href="pbori__defs_8h_source.html#l00226">PBORI_TRACE_FUNC</a>.</p> </div> </div><p> <a class="anchor" name="57315945829d7b96ad2795b1ca8b8ade"></a><!-- doxytag: member="polybori::BooleMonomial::BooleMonomial" ref="57315945829d7b96ad2795b1ca8b8ade" args="(const exp_type &rhs, const ring_type &ring)" --> <div class="memitem"> <div class="memproto"> <table class="memname"> <tr> <td class="memname">polybori::BooleMonomial::BooleMonomial </td> <td>(</td> <td class="paramtype">const <a class="el" href="classpolybori_1_1BooleExponent.html">exp_type</a> & </td> <td class="paramname"> <em>rhs</em>, </td> </tr> <tr> <td class="paramkey"></td> <td></td> <td class="paramtype">const <a class="el" href="classpolybori_1_1BooleRing.html">ring_type</a> & </td> <td class="paramname"> <em>ring</em></td><td> </td> </tr> <tr> <td></td> <td>)</td> <td></td><td></td><td><code> [inline]</code></td> </tr> </table> </div> <div class="memdoc"> <p> Construct from exponent vector. <p> </div> </div><p> <a class="anchor" name="f4e9314075413b2a306c200a9707128e"></a><!-- doxytag: member="polybori::BooleMonomial::BooleMonomial" ref="f4e9314075413b2a306c200a9707128e" args="(const ring_type &ring)" --> <div class="memitem"> <div class="memproto"> <table class="memname"> <tr> <td class="memname">polybori::BooleMonomial::BooleMonomial </td> <td>(</td> <td class="paramtype">const <a class="el" href="classpolybori_1_1BooleRing.html">ring_type</a> & </td> <td class="paramname"> <em>ring</em> </td> <td> ) </td> <td><code> [inline]</code></td> </tr> </table> </div> <div class="memdoc"> <p> Construct from given ring. <p> </div> </div><p> <a class="anchor" name="03e88c8956221d469564421b219711d5"></a><!-- doxytag: member="polybori::BooleMonomial::~BooleMonomial" ref="03e88c8956221d469564421b219711d5" args="()" --> <div class="memitem"> <div class="memproto"> <table class="memname"> <tr> <td class="memname">polybori::BooleMonomial::~BooleMonomial </td> <td>(</td> <td class="paramname"> </td> <td> ) </td> <td><code> [inline]</code></td> </tr> </table> </div> <div class="memdoc"> <p> Destructor. <p> </div> </div><p> <a class="anchor" name="a307490c6b340f1b73c520e79dc5edc9"></a><!-- doxytag: member="polybori::BooleMonomial::BooleMonomial" ref="a307490c6b340f1b73c520e79dc5edc9" args="(const set_type &rhs)" --> <div class="memitem"> <div class="memproto"> <table class="memname"> <tr> <td class="memname">polybori::BooleMonomial::BooleMonomial </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><code> [inline, protected]</code></td> </tr> </table> </div> <div class="memdoc"> <p> Construct from decision diagram. <p> Construct from decision diagram </div> </div><p> <hr><h2>Member Function Documentation</h2> <a class="anchor" name="525ffe23d66ef5a8fcccb178f1226f12"></a><!-- doxytag: member="polybori::BooleMonomial::begin" ref="525ffe23d66ef5a8fcccb178f1226f12" args="() const " --> <div class="memitem"> <div class="memproto"> <table class="memname"> <tr> <td class="memname"><a class="el" href="classpolybori_1_1CCuddFirstIter.html">const_iterator</a> polybori::BooleMonomial::begin </td> <td>(</td> <td class="paramname"> </td> <td> ) </td> <td> const<code> [inline]</code></td> </tr> </table> </div> <div class="memdoc"> <p> Start iteration over indices. <p> <p>Referenced by <a class="el" href="groebner__alg_8cc_source.html#l02078">polybori::groebner::GroebnerStrategy::addGenerator()</a>, <a class="el" href="groebner__alg_8cc_source.html#l02063">polybori::groebner::addPolynomialToReductor()</a>, <a class="el" href="BlockDegRevLexAscOrder_8cc_source.html#l00078">polybori::BlockDegRevLexAscOrder::compare()</a>, <a class="el" href="BlockDegLexOrder_8cc_source.html#l00072">polybori::BlockDegLexOrder::compare()</a>, <a class="el" href="BooleMonomial_8cc_source.html#l00256">GCDAssign()</a>, <a class="el" href="BooleExponent_8cc_source.html#l00113">polybori::BooleExponent::get()</a>, <a class="el" href="BooleSet_8cc_source.html#l00369">polybori::BooleSet::hasTermOfVariables()</a>, <a class="el" href="BooleMonomial_8cc_source.html#l00203">LCMDeg()</a>, <a class="el" href="BooleExponent_8h_source.html#l00253">polybori::BooleExponent::operator=()</a>, <a class="el" href="nf_8cc_source.html#l00884">polybori::groebner::parallel_reduce()</a>, <a class="el" href="groebner__alg_8cc_source.html#l01517">polybori::groebner::polynomial_in_one_block()</a>, <a class="el" href="groebner__alg_8cc_source.html#l00716">polybori::groebner::reduce_by_monom()</a>, <a class="el" href="groebner__alg_8cc_source.html#l00796">polybori::groebner::reduce_complete()</a>, <a class="el" href="BooleExponent_8cc_source.html#l00145">polybori::BooleExponent::reducibleBy()</a>, and <a class="el" href="nf_8cc_source.html#l00821">polybori::groebner::sum_size()</a>.</p> </div> </div><p> <a class="anchor" name="9ba8d80b06698f2de253226d95ec0e02"></a><!-- doxytag: member="polybori::BooleMonomial::change" ref="9ba8d80b06698f2de253226d95ec0e02" args="(idx_type) const " --> <div class="memitem"> <div class="memproto"> <table class="memname"> <tr> <td class="memname"><a class="el" href="classpolybori_1_1BooleMonomial.html">BooleMonomial</a> polybori::BooleMonomial::change </td> <td>(</td> <td class="paramtype"><a class="el" href="classpolybori_1_1BooleMonomial.html#5aa2051b32664928bac19cf6e89c4607">idx_type</a> </td> <td class="paramname"> <em>idx</em> </td> <td> ) </td> <td> const</td> </tr> </table> </div> <div class="memdoc"> <p> Substitute variable with index idx by its complement. <p> <p>References <a class="el" href="pbori__defs_8h_source.html#l00226">PBORI_TRACE_FUNC</a>.</p> </div> </div><p> <a class="anchor" name="f703e7e8545dda1a3e6e0b93946b8a93"></a><!-- doxytag: member="polybori::BooleMonomial::changeAssign" ref="f703e7e8545dda1a3e6e0b93946b8a93" args="(idx_type)" --> <div class="memitem"> <div class="memproto"> <table class="memname"> <tr> <td class="memname"><a class="el" href="classpolybori_1_1BooleMonomial.html">BooleMonomial</a> & polybori::BooleMonomial::changeAssign </td> <td>(</td> <td class="paramtype"><a class="el" href="classpolybori_1_1BooleMonomial.html#5aa2051b32664928bac19cf6e89c4607">idx_type</a> </td> <td class="paramname"> <em>idx</em> </td> <td> ) </td> <td></td> </tr> </table> </div> <div class="memdoc"> <p> Substitute variable with index idx by its complement and assign. <p> <p>References <a class="el" href="CDDInterface_8h_source.html#l00587">polybori::CDDInterface< CuddLikeZDD >::changeAssign()</a>, <a class="el" href="BoolePolynomial_8h_source.html#l00795">polybori::BoolePolynomial::internalDiagram()</a>, and <a class="el" href="pbori__defs_8h_source.html#l00226">PBORI_TRACE_FUNC</a>.</p> <p>Referenced by <a class="el" href="BooleMonomial_8cc_source.html#l00256">GCDAssign()</a>, and <a class="el" href="BooleMonomial_8cc_source.html#l00168">operator*=()</a>.</p> </div> </div><p> <a class="anchor" name="2ece9c4978232a3c6eb84546bb9dbedf"></a><!-- doxytag: member="polybori::BooleMonomial::compare" ref="2ece9c4978232a3c6eb84546bb9dbedf" args="(const self &) const " --> <div class="memitem"> <div class="memproto"> <table class="memname"> <tr> <td class="memname"><a class="el" href="classpolybori_1_1BooleMonomial.html#983c8221113525a285b542407fe43ec0">BooleMonomial::comp_type</a> polybori::BooleMonomial::compare </td> <td>(</td> <td class="paramtype">const <a class="el" href="classpolybori_1_1BooleMonomial.html">self</a> & </td> <td class="paramname"> <em>rhs</em> </td> <td> ) </td> <td> const</td> </tr> </table> </div> <div class="memdoc"> <p> Compare with rhs monomial and return comparision code. <p> <p>References <a class="el" href="BooleEnv_8cc_source.html#l00085">polybori::BooleEnv::ordering()</a>, and <a class="el" href="pbori__defs_8h_source.html#l00226">PBORI_TRACE_FUNC</a>.</p> <p>Referenced by <a class="el" href="BooleMonomial_8h_source.html#l00442">polybori::operator<()</a>, <a class="el" href="BooleMonomial_8h_source.html#l00456">polybori::operator<=()</a>, <a class="el" href="BooleMonomial_8h_source.html#l00449">polybori::operator>()</a>, and <a class="el" href="BooleMonomial_8h_source.html#l00463">polybori::operator>=()</a>.</p> </div> </div><p> <a class="anchor" name="7f8db3627c0fcdb60bafe6e6f25bfc3a"></a><!-- doxytag: member="polybori::BooleMonomial::deg" ref="7f8db3627c0fcdb60bafe6e6f25bfc3a" args="() const " --> <div class="memitem"> <div class="memproto"> <table class="memname"> <tr> <td class="memname"><a class="el" href="classpolybori_1_1BooleMonomial.html#8c6a010c64cdd814454094adaaf694a5">size_type</a> polybori::BooleMonomial::deg </td> <td>(</td> <td class="paramname"> </td> <td> ) </td> <td> const<code> [inline]</code></td> </tr> </table> </div> <div class="memdoc"> <p> Degree of the monomial. <p> <p> <dl class="todo" compact><dt><b><a class="el" href="todo.html#_todo000001">Todo:</a></b></dt><dd>optimal, if stored, else much too complicated, as it will probably use cache lookups </dd></dl> <p>Referenced by <a class="el" href="BooleMonomial_8cc_source.html#l00203">LCMDeg()</a>, <a class="el" href="nf_8cc_source.html#l00884">polybori::groebner::parallel_reduce()</a>, <a class="el" href="groebner__alg_8cc_source.html#l00716">polybori::groebner::reduce_by_monom()</a>, and <a class="el" href="nf_8cc_source.html#l00821">polybori::groebner::sum_size()</a>.</p> </div> </div><p> <a class="anchor" name="4884899505316ffe516f66256743b4e1"></a><!-- doxytag: member="polybori::BooleMonomial::diagram" ref="4884899505316ffe516f66256743b4e1" args="() const " --> <div class="memitem"> <div class="memproto"> <table class="memname"> <tr> <td class="memname">const <a class="el" href="classpolybori_1_1CDDInterface.html">dd_type</a>& polybori::BooleMonomial::diagram </td> <td>(</td> <td class="paramname"> </td> <td> ) </td> <td> const<code> [inline]</code></td> </tr> </table> </div> <div class="memdoc"> <p> Read-only access to internal decision diagramm structure. <p> <p>Referenced by <a class="el" href="BooleSet_8cc_source.html#l00254">polybori::BooleSet::addAssign()</a>, <a class="el" href="groebner__alg_8cc_source.html#l02078">polybori::groebner::GroebnerStrategy::addGenerator()</a>, <a class="el" href="BooleSet_8cc_source.html#l00419">polybori::BooleSet::divide()</a>, <a class="el" href="BooleSet_8cc_source.html#l00425">polybori::BooleSet::divideAssign()</a>, <a class="el" href="BooleSet_8cc_source.html#l00343">polybori::BooleSet::divisorsOf()</a>, <a class="el" href="BooleSet_8cc_source.html#l00455">polybori::BooleSet::existAbstract()</a>, <a class="el" href="groebner__alg_8cc_source.html#l01122">polybori::groebner::minimal_elements_internal()</a>, <a class="el" href="groebner__alg_8cc_source.html#l01154">polybori::groebner::minimal_elements_internal2()</a>, <a class="el" href="BooleMonomial_8cc_source.html#l00315">multiples()</a>, <a class="el" href="BooleSet_8cc_source.html#l00358">polybori::BooleSet::multiplesOf()</a>, <a class="el" href="BoolePolynomial_8cc_source.html#l00607">polybori::BoolePolynomial::operator%=()</a>, <a class="el" href="BoolePolynomial_8cc_source.html#l00501">polybori::BoolePolynomial::operator*=()</a>, <a class="el" href="BoolePolynomial_8cc_source.html#l00552">polybori::BoolePolynomial::operator/=()</a>, <a class="el" href="BooleSet_8cc_source.html#l00273">polybori::BooleSet::owns()</a>, <a class="el" href="nf_8cc_source.html#l01521">polybori::groebner::red_tail_general()</a>, <a class="el" href="nf_8cc_source.html#l01584">polybori::groebner::red_tail_generic()</a>, <a class="el" href="groebner__alg_8cc_source.html#l00716">polybori::groebner::reduce_by_monom()</a>, and <a class="el" href="groebner__alg_8cc_source.html#l00037">polybori::groebner::GroebnerStrategy::treat_m_p_1_case()</a>.</p> </div> </div><p> <a class="anchor" name="8f2276fdfa44d2fb08b53d423be6f2b1"></a><!-- doxytag: member="polybori::BooleMonomial::divisors" ref="8f2276fdfa44d2fb08b53d423be6f2b1" args="() const " --> <div class="memitem"> <div class="memproto"> <table class="memname"> <tr> <td class="memname"><a class="el" href="classpolybori_1_1BooleSet.html">set_type</a> polybori::BooleMonomial::divisors </td> <td>(</td> <td class="paramname"> </td> <td> ) </td> <td> const<code> [inline]</code></td> </tr> </table> </div> <div class="memdoc"> <p> Divisors of the monomial. <p> <p>Referenced by <a class="el" href="nf_8cc_source.html#l01116">polybori::groebner::LexHelper::irreducible_lead()</a>, and <a class="el" href="interpolate_8cc_source.html#l00054">polybori::groebner::variety_lex_leading_terms()</a>.</p> </div> </div><p> <a class="anchor" name="144a9252492dcb1854154095e634eee5"></a><!-- doxytag: member="polybori::BooleMonomial::end" ref="144a9252492dcb1854154095e634eee5" args="() const " --> <div class="memitem"> <div class="memproto"> <table class="memname"> <tr> <td class="memname"><a class="el" href="classpolybori_1_1CCuddFirstIter.html">const_iterator</a> polybori::BooleMonomial::end </td> <td>(</td> <td class="paramname"> </td> <td> ) </td> <td> const<code> [inline]</code></td> </tr> </table> </div> <div class="memdoc"> <p> Finish iteration over indices. <p> <p>Referenced by <a class="el" href="groebner__alg_8cc_source.html#l02078">polybori::groebner::GroebnerStrategy::addGenerator()</a>, <a class="el" href="BlockDegRevLexAscOrder_8cc_source.html#l00078">polybori::BlockDegRevLexAscOrder::compare()</a>, <a class="el" href="BlockDegLexOrder_8cc_source.html#l00072">polybori::BlockDegLexOrder::compare()</a>, <a class="el" href="BooleMonomial_8cc_source.html#l00256">GCDAssign()</a>, <a class="el" href="BooleExponent_8cc_source.html#l00113">polybori::BooleExponent::get()</a>, <a class="el" href="BooleSet_8cc_source.html#l00369">polybori::BooleSet::hasTermOfVariables()</a>, <a class="el" href="BooleMonomial_8cc_source.html#l00203">LCMDeg()</a>, <a class="el" href="BooleExponent_8h_source.html#l00253">polybori::BooleExponent::operator=()</a>, <a class="el" href="groebner__alg_8cc_source.html#l01517">polybori::groebner::polynomial_in_one_block()</a>, <a class="el" href="groebner__alg_8cc_source.html#l00716">polybori::groebner::reduce_by_monom()</a>, <a class="el" href="BooleExponent_8cc_source.html#l00145">polybori::BooleExponent::reducibleBy()</a>, and <a class="el" href="nf_8cc_source.html#l00821">polybori::groebner::sum_size()</a>.</p> </div> </div><p> <a class="anchor" name="7987bd65a9aa41fb00300112c94dac70"></a><!-- doxytag: member="polybori::BooleMonomial::exp" ref="7987bd65a9aa41fb00300112c94dac70" args="() const " --> <div class="memitem"> <div class="memproto"> <table class="memname"> <tr> <td class="memname"><a class="el" href="classpolybori_1_1BooleExponent.html">BooleMonomial::exp_type</a> polybori::BooleMonomial::exp </td> <td>(</td> <td class="paramname"> </td> <td> ) </td> <td> const</td> </tr> </table> </div> <div class="memdoc"> <p> Get exponent vector. <p> <p>References <a class="el" href="BooleExponent_8cc_source.html#l00113">polybori::BooleExponent::get()</a>, and <a class="el" href="pbori__defs_8h_source.html#l00226">PBORI_TRACE_FUNC</a>.</p> <p>Referenced by <a class="el" href="nf_8cc_source.html#l00199">polybori::groebner::nf3()</a>, <a class="el" href="nf_8cc_source.html#l00286">polybori::groebner::nf3_degree_order()</a>, <a class="el" href="nf_8cc_source.html#l00226">polybori::groebner::nf3_lexbuckets()</a>, <a class="el" href="nf_8cc_source.html#l00260">polybori::groebner::nf3_no_deg_growth()</a>, <a class="el" href="groebner__alg_8cc_source.html#l00678">polybori::groebner::PolyEntry::PolyEntry()</a>, and <a class="el" href="randomset_8cc_source.html#l00015">polybori::groebner::random_set_using_generator()</a>.</p> </div> </div><p> <a class="anchor" name="d78df1d46dae6f71c05f5dba0861b22c"></a><!-- doxytag: member="polybori::BooleMonomial::firstIndex" ref="d78df1d46dae6f71c05f5dba0861b22c" args="() const " --> <div class="memitem"> <div class="memproto"> <table class="memname"> <tr> <td class="memname"><a class="el" href="classpolybori_1_1BooleMonomial.html#5aa2051b32664928bac19cf6e89c4607">idx_type</a> polybori::BooleMonomial::firstIndex </td> <td>(</td> <td class="paramname"> </td> <td> ) </td> <td> const<code> [inline]</code></td> </tr> </table> </div> <div class="memdoc"> <p> Get first index in monomial. <p> <p>Referenced by <a class="el" href="BooleMonomial_8cc_source.html#l00354">firstVariable()</a>.</p> </div> </div><p> <a class="anchor" name="6bc6f01b5d0cd777a76095ea9111ad8c"></a><!-- doxytag: member="polybori::BooleMonomial::firstVariable" ref="6bc6f01b5d0cd777a76095ea9111ad8c" args="() const " --> <div class="memitem"> <div class="memproto"> <table class="memname"> <tr> <td class="memname"><a class="el" href="classpolybori_1_1BooleVariable.html">BooleMonomial::var_type</a> polybori::BooleMonomial::firstVariable </td> <td>(</td> <td class="paramname"> </td> <td> ) </td> <td> const</td> </tr> </table> </div> <div class="memdoc"> <p> Get first variable in monomial. <p> <p>References <a class="el" href="BooleMonomial_8h_source.html#l00383">firstIndex()</a>, <a class="el" href="pbori__defs_8h_source.html#l00226">PBORI_TRACE_FUNC</a>, and <a class="el" href="BooleMonomial_8h_source.html#l00389">ring()</a>.</p> </div> </div><p> <a class="anchor" name="1d5c778300c8058b0234b5739183a9c2"></a><!-- doxytag: member="polybori::BooleMonomial::GCD" ref="1d5c778300c8058b0234b5739183a9c2" args="(const self &) const " --> <div class="memitem"> <div class="memproto"> <table class="memname"> <tr> <td class="memname"><a class="el" href="classpolybori_1_1BooleMonomial.html">BooleMonomial</a> polybori::BooleMonomial::GCD </td> <td>(</td> <td class="paramtype">const <a class="el" href="classpolybori_1_1BooleMonomial.html">self</a> & </td> <td class="paramname"> <em>rhs</em> </td> <td> ) </td> <td> const</td> </tr> </table> </div> <div class="memdoc"> <p> Compute the greatest common divisor. <p> <p>References <a class="el" href="pbori__defs_8h_source.html#l00226">PBORI_TRACE_FUNC</a>.</p> <p>Referenced by <a class="el" href="BooleMonomial_8h_source.html#l00471">polybori::GCD()</a>, <a class="el" href="groebner__alg_8cc_source.html#l00777">polybori::groebner::reduce_by_binom()</a>, and <a class="el" href="groebner__alg_8cc_source.html#l00796">polybori::groebner::reduce_complete()</a>.</p> </div> </div><p> <a class="anchor" name="4b25d2af1d1f338d0a5a8d11b22db43a"></a><!-- doxytag: member="polybori::BooleMonomial::GCDAssign" ref="4b25d2af1d1f338d0a5a8d11b22db43a" args="(const self &)" --> <div class="memitem"> <div class="memproto"> <table class="memname"> <tr> <td class="memname"><a class="el" href="classpolybori_1_1BooleMonomial.html">BooleMonomial</a> & polybori::BooleMonomial::GCDAssign </td> <td>(</td> <td class="paramtype">const <a class="el" href="classpolybori_1_1BooleMonomial.html">self</a> & </td> <td class="paramname"> <em>rhs</em> </td> <td> ) </td> <td></td> </tr> </table> </div> <div class="memdoc"> <p> Compute the greatest common divisor and assign. <p> <p>References <a class="el" href="BoolePolynomial_8cc_source.html#l00960">polybori::BoolePolynomial::begin()</a>, <a class="el" href="BooleMonomial_8h_source.html#l00276">begin()</a>, <a class="el" href="BooleMonomial_8cc_source.html#l00124">changeAssign()</a>, <a class="el" href="BoolePolynomial_8cc_source.html#l00968">polybori::BoolePolynomial::end()</a>, <a class="el" href="BooleMonomial_8h_source.html#l00279">end()</a>, <a class="el" href="BoolePolynomial_8h_source.html#l00607">polybori::BoolePolynomial::isOne()</a>, <a class="el" href="BoolePolynomial_8h_source.html#l00604">polybori::BoolePolynomial::isZero()</a>, and <a class="el" href="pbori__defs_8h_source.html#l00226">PBORI_TRACE_FUNC</a>.</p> </div> </div><p> <a class="anchor" name="5a1570365678bb21087aca36830e7c17"></a><!-- doxytag: member="polybori::BooleMonomial::hash" ref="5a1570365678bb21087aca36830e7c17" args="() const " --> <div class="memitem"> <div class="memproto"> <table class="memname"> <tr> <td class="memname"><a class="el" href="classpolybori_1_1BooleMonomial.html#c0db090f68262d440492e79d299572cd">hash_type</a> polybori::BooleMonomial::hash </td> <td>(</td> <td class="paramname"> </td> <td> ) </td> <td> const<code> [inline]</code></td> </tr> </table> </div> <div class="memdoc"> <p> Get unique hash value (valid only per runtime). <p> <p>Referenced by <a class="el" href="groebner__alg_8h_source.html#l00097">polybori::groebner::MonomialHasher::operator()()</a>.</p> </div> </div><p> <a class="anchor" name="dc63e7b0e79d566c42bd047aeb2f56cf"></a><!-- doxytag: member="polybori::BooleMonomial::internalDiagram" ref="dc63e7b0e79d566c42bd047aeb2f56cf" args="()" --> <div class="memitem"> <div class="memproto"> <table class="memname"> <tr> <td class="memname"><a class="el" href="classpolybori_1_1CDDInterface.html">dd_type</a>& polybori::BooleMonomial::internalDiagram </td> <td>(</td> <td class="paramname"> </td> <td> ) </td> <td><code> [inline, protected]</code></td> </tr> </table> </div> <div class="memdoc"> <p> Access to internal decision diagramm structure. <p> </div> </div><p> <a class="anchor" name="d0982eab817d9137c41b7ada2bbdc021"></a><!-- doxytag: member="polybori::BooleMonomial::isConstant" ref="d0982eab817d9137c41b7ada2bbdc021" args="() const " --> <div class="memitem"> <div class="memproto"> <table class="memname"> <tr> <td class="memname"><a class="el" href="classpolybori_1_1BooleMonomial.html#e7eee5761fd8b835cea774f8f769c71d">bool_type</a> polybori::BooleMonomial::isConstant </td> <td>(</td> <td class="paramname"> </td> <td> ) </td> <td> const<code> [inline]</code></td> </tr> </table> </div> <div class="memdoc"> <p> </div> </div><p> <a class="anchor" name="0b49d4b1f7700056498a631fd3335457"></a><!-- doxytag: member="polybori::BooleMonomial::isOne" ref="0b49d4b1f7700056498a631fd3335457" args="() const " --> <div class="memitem"> <div class="memproto"> <table class="memname"> <tr> <td class="memname"><a class="el" href="classpolybori_1_1BooleMonomial.html#e7eee5761fd8b835cea774f8f769c71d">bool_type</a> polybori::BooleMonomial::isOne </td> <td>(</td> <td class="paramname"> </td> <td> ) </td> <td> const<code> [inline]</code></td> </tr> </table> </div> <div class="memdoc"> <p> </div> </div><p> <a class="anchor" name="5266d92b608e44adcb45b061d81601b5"></a><!-- doxytag: member="polybori::BooleMonomial::LCM" ref="5266d92b608e44adcb45b061d81601b5" args="(const self &) const " --> <div class="memitem"> <div class="memproto"> <table class="memname"> <tr> <td class="memname"><a class="el" href="classpolybori_1_1BooleMonomial.html">BooleMonomial</a> polybori::BooleMonomial::LCM </td> <td>(</td> <td class="paramtype">const <a class="el" href="classpolybori_1_1BooleMonomial.html">self</a> & </td> <td class="paramname"> <em>rhs</em> </td> <td> ) </td> <td> const</td> </tr> </table> </div> <div class="memdoc"> <p> Compute the greatest common divisor. <p> <p>References <a class="el" href="pbori__defs_8h_source.html#l00226">PBORI_TRACE_FUNC</a>.</p> <p>Referenced by <a class="el" href="BooleMonomial_8h_source.html#l00478">polybori::LCM()</a>.</p> </div> </div><p> <a class="anchor" name="e9a4dff344950879e7bc89752a3df9dc"></a><!-- doxytag: member="polybori::BooleMonomial::LCMAssign" ref="e9a4dff344950879e7bc89752a3df9dc" args="(const self &)" --> <div class="memitem"> <div class="memproto"> <table class="memname"> <tr> <td class="memname"><a class="el" href="classpolybori_1_1BooleMonomial.html">BooleMonomial</a> & polybori::BooleMonomial::LCMAssign </td> <td>(</td> <td class="paramtype">const <a class="el" href="classpolybori_1_1BooleMonomial.html">self</a> & </td> <td class="paramname"> <em>rhs</em> </td> <td> ) </td> <td></td> </tr> </table> </div> <div class="memdoc"> <p> Compute theleast common multiple and assign. <p> <p>References <a class="el" href="pbori__defs_8h_source.html#l00226">PBORI_TRACE_FUNC</a>.</p> </div> </div><p> <a class="anchor" name="a909b9fa318d12c486fd8ea67f245e8d"></a><!-- doxytag: member="polybori::BooleMonomial::LCMDeg" ref="a909b9fa318d12c486fd8ea67f245e8d" args="(const self &) const " --> <div class="memitem"> <div class="memproto"> <table class="memname"> <tr> <td class="memname"><a class="el" href="classpolybori_1_1BooleMonomial.html#8c6a010c64cdd814454094adaaf694a5">BooleMonomial::size_type</a> polybori::BooleMonomial::LCMDeg </td> <td>(</td> <td class="paramtype">const <a class="el" href="classpolybori_1_1BooleMonomial.html">self</a> & </td> <td class="paramname"> <em>rhs</em> </td> <td> ) </td> <td> const</td> </tr> </table> </div> <div class="memdoc"> <p> Degree of the least common multiple. <p> <p>References <a class="el" href="BooleMonomial_8h_source.html#l00276">begin()</a>, <a class="el" href="BooleMonomial_8h_source.html#l00292">deg()</a>, <a class="el" href="BooleMonomial_8h_source.html#l00279">end()</a>, <a class="el" href="BoolePolynomial_8h_source.html#l00607">polybori::BoolePolynomial::isOne()</a>, <a class="el" href="BoolePolynomial_8h_source.html#l00604">polybori::BoolePolynomial::isZero()</a>, and <a class="el" href="pbori__defs_8h_source.html#l00226">PBORI_TRACE_FUNC</a>.</p> </div> </div><p> <a class="anchor" name="1ab3ea493b684ea8f2c475a2c798fb28"></a><!-- doxytag: member="polybori::BooleMonomial::multiples" ref="1ab3ea493b684ea8f2c475a2c798fb28" args="(const self &) const " --> <div class="memitem"> <div class="memproto"> <table class="memname"> <tr> <td class="memname"><a class="el" href="classpolybori_1_1BooleSet.html">BooleMonomial::set_type</a> polybori::BooleMonomial::multiples </td> <td>(</td> <td class="paramtype">const <a class="el" href="classpolybori_1_1BooleMonomial.html">self</a> & </td> <td class="paramname"> <em>monom</em> </td> <td> ) </td> <td> const</td> </tr> </table> </div> <div class="memdoc"> <p> multiples of the monomial wrt. given monomial <p> <p>References <a class="el" href="BooleMonomial_8h_source.html#l00367">diagram()</a>, <a class="el" href="BoolePolynomial_8h_source.html#l00773">polybori::BoolePolynomial::diagram()</a>, and <a class="el" href="pbori__defs_8h_source.html#l00226">PBORI_TRACE_FUNC</a>.</p> </div> </div><p> <a class="anchor" name="32443f002de79bb218a7f566dfd7086f"></a><!-- doxytag: member="polybori::BooleMonomial::operator const BoolePolynomial &" ref="32443f002de79bb218a7f566dfd7086f" args="() const " --> <div class="memitem"> <div class="memproto"> <table class="memname"> <tr> <td class="memname">polybori::BooleMonomial::operator const <a class="el" href="classpolybori_1_1BoolePolynomial.html">BoolePolynomial</a> & </td> <td>(</td> <td class="paramname"> </td> <td> ) </td> <td> const<code> [inline]</code></td> </tr> </table> </div> <div class="memdoc"> <p> Casting operator. <p> </div> </div><p> <a class="anchor" name="00d8f29619ac88f9544688e8e1ef60ba"></a><!-- doxytag: member="polybori::BooleMonomial::operator!=" ref="00d8f29619ac88f9544688e8e1ef60ba" args="(constant_type rhs) const " --> <div class="memitem"> <div class="memproto"> <table class="memname"> <tr> <td class="memname"><a class="el" href="classpolybori_1_1BooleMonomial.html#e7eee5761fd8b835cea774f8f769c71d">bool_type</a> polybori::BooleMonomial::operator!= </td> <td>(</td> <td class="paramtype"><a class="el" href="classpolybori_1_1BooleConstant.html">constant_type</a> </td> <td class="paramname"> <em>rhs</em> </td> <td> ) </td> <td> const<code> [inline]</code></td> </tr> </table> </div> <div class="memdoc"> <p> </div> </div><p> <a class="anchor" name="9485154173cb1cdcba46c8624b115439"></a><!-- doxytag: member="polybori::BooleMonomial::operator!=" ref="9485154173cb1cdcba46c8624b115439" args="(const self &rhs) const " --> <div class="memitem"> <div class="memproto"> <table class="memname"> <tr> <td class="memname"><a class="el" href="classpolybori_1_1BooleMonomial.html#e7eee5761fd8b835cea774f8f769c71d">bool_type</a> polybori::BooleMonomial::operator!= </td> <td>(</td> <td class="paramtype">const <a class="el" href="classpolybori_1_1BooleMonomial.html">self</a> & </td> <td class="paramname"> <em>rhs</em> </td> <td> ) </td> <td> const<code> [inline]</code></td> </tr> </table> </div> <div class="memdoc"> <p> </div> </div><p> <a class="anchor" name="775c52201df38bd7e154e8bc4dd1e7e3"></a><!-- doxytag: member="polybori::BooleMonomial::operator*=" ref="775c52201df38bd7e154e8bc4dd1e7e3" args="(const var_type &)" --> <div class="memitem"> <div class="memproto"> <table class="memname"> <tr> <td class="memname"><a class="el" href="classpolybori_1_1BooleMonomial.html">BooleMonomial</a> & polybori::BooleMonomial::operator*= </td> <td>(</td> <td class="paramtype">const <a class="el" href="classpolybori_1_1BooleVariable.html">var_type</a> & </td> <td class="paramname"> <em>rhs</em> </td> <td> ) </td> <td></td> </tr> </table> </div> <div class="memdoc"> <p> <p>References <a class="el" href="BooleMonomial_8cc_source.html#l00124">changeAssign()</a>, <a class="el" href="BooleVariable_8h_source.html#l00151">polybori::BooleVariable::index()</a>, <a class="el" href="pbori__defs_8h_source.html#l00226">PBORI_TRACE_FUNC</a>, and <a class="el" href="BooleMonomial_8h_source.html#l00344">reducibleBy()</a>.</p> </div> </div><p> <a class="anchor" name="da042498623ed45738da001db5de9304"></a><!-- doxytag: member="polybori::BooleMonomial::operator*=" ref="da042498623ed45738da001db5de9304" args="(const self &)" --> <div class="memitem"> <div class="memproto"> <table class="memname"> <tr> <td class="memname"><a class="el" href="classpolybori_1_1BooleMonomial.html">BooleMonomial</a> & polybori::BooleMonomial::operator*= </td> <td>(</td> <td class="paramtype">const <a class="el" href="classpolybori_1_1BooleMonomial.html">self</a> & </td> <td class="paramname"> <em>rhs</em> </td> <td> ) </td> <td></td> </tr> </table> </div> <div class="memdoc"> <p> <p>References <a class="el" href="BoolePolynomial_8h_source.html#l00795">polybori::BoolePolynomial::internalDiagram()</a>, <a class="el" href="pbori__defs_8h_source.html#l00226">PBORI_TRACE_FUNC</a>, and <a class="el" href="CDDInterface_8h_source.html#l00553">polybori::CDDInterface< CuddLikeZDD >::unateProductAssign()</a>.</p> </div> </div><p> <a class="anchor" name="79b0ecbed11c24afc83323cc94fe328e"></a><!-- doxytag: member="polybori::BooleMonomial::operator/=" ref="79b0ecbed11c24afc83323cc94fe328e" args="(const var_type &)" --> <div class="memitem"> <div class="memproto"> <table class="memname"> <tr> <td class="memname"><a class="el" href="classpolybori_1_1BooleMonomial.html">BooleMonomial</a> & polybori::BooleMonomial::operator/= </td> <td>(</td> <td class="paramtype">const <a class="el" href="classpolybori_1_1BooleVariable.html">var_type</a> & </td> <td class="paramname"> <em>rhs</em> </td> <td> ) </td> <td></td> </tr> </table> </div> <div class="memdoc"> <p> <p>References <a class="el" href="BooleVariable_8h_source.html#l00151">polybori::BooleVariable::index()</a>, <a class="el" href="BoolePolynomial_8h_source.html#l00795">polybori::BoolePolynomial::internalDiagram()</a>, <a class="el" href="BoolePolynomial_8h_source.html#l00604">polybori::BoolePolynomial::isZero()</a>, <a class="el" href="pbori__defs_8h_source.html#l00386">polybori::CErrorEnums::monomial_zero</a>, <a class="el" href="pbori__defs_8h_source.html#l00226">PBORI_TRACE_FUNC</a>, <a class="el" href="CDDInterface_8h_source.html#l00575">polybori::CDDInterface< CuddLikeZDD >::subset1Assign()</a>, and <a class="el" href="pbori__defs_8h_source.html#l00175">UNLIKELY</a>.</p> </div> </div><p> <a class="anchor" name="b99a4399e1cd82623de2144c7cf0f855"></a><!-- doxytag: member="polybori::BooleMonomial::operator/=" ref="b99a4399e1cd82623de2144c7cf0f855" args="(const self &)" --> <div class="memitem"> <div class="memproto"> <table class="memname"> <tr> <td class="memname"><a class="el" href="classpolybori_1_1BooleMonomial.html">BooleMonomial</a> & polybori::BooleMonomial::operator/= </td> <td>(</td> <td class="paramtype">const <a class="el" href="classpolybori_1_1BooleMonomial.html">self</a> & </td> <td class="paramname"> <em>rhs</em> </td> <td> ) </td> <td></td> </tr> </table> </div> <div class="memdoc"> <p> <p>References <a class="el" href="BoolePolynomial_8h_source.html#l00604">polybori::BoolePolynomial::isZero()</a>, <a class="el" href="pbori__defs_8h_source.html#l00386">polybori::CErrorEnums::monomial_zero</a>, <a class="el" href="pbori__defs_8h_source.html#l00226">PBORI_TRACE_FUNC</a>, and <a class="el" href="pbori__defs_8h_source.html#l00175">UNLIKELY</a>.</p> </div> </div><p> <a class="anchor" name="1f63f9f398387cfe6f47c6ba43138bd3"></a><!-- doxytag: member="polybori::BooleMonomial::operator==" ref="1f63f9f398387cfe6f47c6ba43138bd3" args="(constant_type rhs) const " --> <div class="memitem"> <div class="memproto"> <table class="memname"> <tr> <td class="memname"><a class="el" href="classpolybori_1_1BooleMonomial.html#e7eee5761fd8b835cea774f8f769c71d">bool_type</a> polybori::BooleMonomial::operator== </td> <td>(</td> <td class="paramtype"><a class="el" href="classpolybori_1_1BooleConstant.html">constant_type</a> </td> <td class="paramname"> <em>rhs</em> </td> <td> ) </td> <td> const<code> [inline]</code></td> </tr> </table> </div> <div class="memdoc"> <p> </div> </div><p> <a class="anchor" name="755aba27c181441ad2ea548f5036e761"></a><!-- doxytag: member="polybori::BooleMonomial::operator==" ref="755aba27c181441ad2ea548f5036e761" args="(const self &rhs) const " --> <div class="memitem"> <div class="memproto"> <table class="memname"> <tr> <td class="memname"><a class="el" href="classpolybori_1_1BooleMonomial.html#e7eee5761fd8b835cea774f8f769c71d">bool_type</a> polybori::BooleMonomial::operator== </td> <td>(</td> <td class="paramtype">const <a class="el" href="classpolybori_1_1BooleMonomial.html">self</a> & </td> <td class="paramname"> <em>rhs</em> </td> <td> ) </td> <td> const<code> [inline]</code></td> </tr> </table> </div> <div class="memdoc"> <p> </div> </div><p> <a class="anchor" name="c55c858f07aca383a710e888a17cde6c"></a><!-- doxytag: member="polybori::BooleMonomial::popFirst" ref="c55c858f07aca383a710e888a17cde6c" args="()" --> <div class="memitem"> <div class="memproto"> <table class="memname"> <tr> <td class="memname"><a class="el" href="classpolybori_1_1BooleMonomial.html">self</a>& polybori::BooleMonomial::popFirst </td> <td>(</td> <td class="paramname"> </td> <td> ) </td> <td><code> [inline]</code></td> </tr> </table> </div> <div class="memdoc"> <p> Removes the first variables from monomial. <p> </div> </div><p> <a class="anchor" name="b0955b0c04925ac470c5f97f67abe3f2"></a><!-- doxytag: member="polybori::BooleMonomial::reducibleBy" ref="b0955b0c04925ac470c5f97f67abe3f2" args="(const var_type &rhs) const " --> <div class="memitem"> <div class="memproto"> <table class="memname"> <tr> <td class="memname"><a class="el" href="classpolybori_1_1BooleMonomial.html#e7eee5761fd8b835cea774f8f769c71d">BooleMonomial::bool_type</a> polybori::BooleMonomial::reducibleBy </td> <td>(</td> <td class="paramtype">const <a class="el" href="classpolybori_1_1BooleVariable.html">var_type</a> & </td> <td class="paramname"> <em>rhs</em> </td> <td> ) </td> <td> const</td> </tr> </table> </div> <div class="memdoc"> <p> <p>References <a class="el" href="pbori__defs_8h_source.html#l00226">PBORI_TRACE_FUNC</a>, and <a class="el" href="BoolePolynomial_8h_source.html#l00905">polybori::BoolePolynomial::reducibleBy()</a>.</p> </div> </div><p> <a class="anchor" name="1d5bda51e3183bb389d8bbc605f69f83"></a><!-- doxytag: member="polybori::BooleMonomial::reducibleBy" ref="1d5bda51e3183bb389d8bbc605f69f83" args="(const self &rhs) const " --> <div class="memitem"> <div class="memproto"> <table class="memname"> <tr> <td class="memname"><a class="el" href="classpolybori_1_1BooleMonomial.html#e7eee5761fd8b835cea774f8f769c71d">bool_type</a> polybori::BooleMonomial::reducibleBy </td> <td>(</td> <td class="paramtype">const <a class="el" href="classpolybori_1_1BooleMonomial.html">self</a> & </td> <td class="paramname"> <em>rhs</em> </td> <td> ) </td> <td> const<code> [inline]</code></td> </tr> </table> </div> <div class="memdoc"> <p> Test for reducibility. <p> <p>Referenced by <a class="el" href="groebner__alg_8cc_source.html#l01122">polybori::groebner::minimal_elements_internal()</a>, <a class="el" href="BooleMonomial_8cc_source.html#l00168">operator*=()</a>, and <a class="el" href="groebner__alg_8cc_source.html#l01953">polybori::groebner::GroebnerStrategy::treatNormalPairs()</a>.</p> </div> </div><p> <a class="anchor" name="e0d640f9ebc821179c772515b1dbd54b"></a><!-- doxytag: member="polybori::BooleMonomial::ring" ref="e0d640f9ebc821179c772515b1dbd54b" args="() const " --> <div class="memitem"> <div class="memproto"> <table class="memname"> <tr> <td class="memname"><a class="el" href="classpolybori_1_1BooleRing.html">ring_type</a> polybori::BooleMonomial::ring </td> <td>(</td> <td class="paramname"> </td> <td> ) </td> <td> const<code> [inline]</code></td> </tr> </table> </div> <div class="memdoc"> <p> Access ring, where this belongs to. <p> <p>Referenced by <a class="el" href="BooleMonomial_8cc_source.html#l00354">firstVariable()</a>, and <a class="el" href="groebner__alg_8cc_source.html#l01953">polybori::groebner::GroebnerStrategy::treatNormalPairs()</a>.</p> </div> </div><p> <a class="anchor" name="42c6a4a067541423960b3f4d229bbc3b"></a><!-- doxytag: member="polybori::BooleMonomial::set" ref="42c6a4a067541423960b3f4d229bbc3b" args="() const " --> <div class="memitem"> <div class="memproto"> <table class="memname"> <tr> <td class="memname"><a class="el" href="classpolybori_1_1BooleSet.html">set_type</a> polybori::BooleMonomial::set </td> <td>(</td> <td class="paramname"> </td> <td> ) </td> <td> const<code> [inline]</code></td> </tr> </table> </div> <div class="memdoc"> <p> Get corresponding subset of of the powerset over all variables. <p> </div> </div><p> <a class="anchor" name="f41263f68e4c4e25530132ee69cce943"></a><!-- doxytag: member="polybori::BooleMonomial::size" ref="f41263f68e4c4e25530132ee69cce943" args="() const " --> <div class="memitem"> <div class="memproto"> <table class="memname"> <tr> <td class="memname"><a class="el" href="classpolybori_1_1BooleMonomial.html#8c6a010c64cdd814454094adaaf694a5">size_type</a> polybori::BooleMonomial::size </td> <td>(</td> <td class="paramname"> </td> <td> ) </td> <td> const<code> [inline]</code></td> </tr> </table> </div> <div class="memdoc"> <p> Size of the exponents. <p> <p>Referenced by <a class="el" href="BooleExponent_8cc_source.html#l00113">polybori::BooleExponent::get()</a>, and <a class="el" href="BooleExponent_8h_source.html#l00253">polybori::BooleExponent::operator=()</a>.</p> </div> </div><p> <a class="anchor" name="2d69a19345d4a07f5c791cfab4ad6a16"></a><!-- doxytag: member="polybori::BooleMonomial::stableHash" ref="2d69a19345d4a07f5c791cfab4ad6a16" args="() const " --> <div class="memitem"> <div class="memproto"> <table class="memname"> <tr> <td class="memname"><a class="el" href="classpolybori_1_1BooleMonomial.html#c0db090f68262d440492e79d299572cd">hash_type</a> polybori::BooleMonomial::stableHash </td> <td>(</td> <td class="paramname"> </td> <td> ) </td> <td> const<code> [inline]</code></td> </tr> </table> </div> <div class="memdoc"> <p> Hash value of the monomial. <p> <p>References <a class="el" href="pbori__routines__hash_8h_source.html#l00095">polybori::stable_first_hash_range()</a>.</p> </div> </div><p> <a class="anchor" name="d419387f1feda4d1bc59be0aad915c14"></a><!-- doxytag: member="polybori::BooleMonomial::variableBegin" ref="d419387f1feda4d1bc59be0aad915c14" args="() const " --> <div class="memitem"> <div class="memproto"> <table class="memname"> <tr> <td class="memname"><a class="el" href="classpolybori_1_1CVariableIter.html">variable_iterator</a> polybori::BooleMonomial::variableBegin </td> <td>(</td> <td class="paramname"> </td> <td> ) </td> <td> const<code> [inline]</code></td> </tr> </table> </div> <div class="memdoc"> <p> Start iteration over variables. <p> </div> </div><p> <a class="anchor" name="aea55681119e64b96e08223cbf961a2e"></a><!-- doxytag: member="polybori::BooleMonomial::variableEnd" ref="aea55681119e64b96e08223cbf961a2e" args="() const " --> <div class="memitem"> <div class="memproto"> <table class="memname"> <tr> <td class="memname"><a class="el" href="classpolybori_1_1CVariableIter.html">variable_iterator</a> polybori::BooleMonomial::variableEnd </td> <td>(</td> <td class="paramname"> </td> <td> ) </td> <td> const<code> [inline]</code></td> </tr> </table> </div> <div class="memdoc"> <p> Finish iteration over variables. <p> </div> </div><p> <hr><h2>Friends And Related Function Documentation</h2> <a class="anchor" name="e93d16556ee01649fe5d050f4fdeb0d1"></a><!-- doxytag: member="polybori::BooleMonomial::CDDOperations" ref="e93d16556ee01649fe5d050f4fdeb0d1" args="" --> <div class="memitem"> <div class="memproto"> <table class="memname"> <tr> <td class="memname">friend class <a class="el" href="classpolybori_1_1CDDOperations.html">CDDOperations</a><code> [friend]</code> </td> </tr> </table> </div> <div class="memdoc"> <p> </div> </div><p> <a class="anchor" name="62ad52f8c65f749d2b2e25c48ca81ef3"></a><!-- doxytag: member="polybori::BooleMonomial::COrderBase" ref="62ad52f8c65f749d2b2e25c48ca81ef3" args="" --> <div class="memitem"> <div class="memproto"> <table class="memname"> <tr> <td class="memname">friend class <a class="el" href="classpolybori_1_1COrderBase.html">COrderBase</a><code> [friend]</code> </td> </tr> </table> </div> <div class="memdoc"> <p> </div> </div><p> <a class="anchor" name="cd03c4a7738297292b27c2c28e3dbd04"></a><!-- doxytag: member="polybori::BooleMonomial::CTermGeneratorBase" ref="cd03c4a7738297292b27c2c28e3dbd04" args="" --> <div class="memitem"> <div class="memproto"> <table class="memname"> <tr> <td class="memname">friend class <a class="el" href="classCTermGeneratorBase.html">CTermGeneratorBase</a><code> [friend]</code> </td> </tr> </table> </div> <div class="memdoc"> <p> </div> </div><p> <hr>The documentation for this class was generated from the following files:<ul> <li><a class="el" href="BooleMonomial_8h_source.html">BooleMonomial.h</a><li><a class="el" href="BooleMonomial_8cc.html">BooleMonomial.cc</a></ul> </div> <hr size="1"><address style="text-align: right;"><small>Generated on Wed Sep 9 14:31:00 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>