<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"> <html xmlns="http://www.w3.org/1999/xhtml"> <head> <meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/> <title>CVC3: CVC3::DecisionEngineDFS 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.7.4 --> <div id="top"> <div id="titlearea"> <table cellspacing="0" cellpadding="0"> <tbody> <tr style="height: 56px;"> <td style="padding-left: 0.5em;"> <div id="projectname">CVC3 <span id="projectnumber">2.4.1</span></div> </td> </tr> </tbody> </table> </div> <div id="navrow1" class="tabs"> <ul class="tablist"> <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="modules.html"><span>Modules</span></a></li> <li><a href="namespaces.html"><span>Namespaces</span></a></li> <li class="current"><a href="annotated.html"><span>Classes</span></a></li> <li><a href="files.html"><span>Files</span></a></li> </ul> </div> <div id="navrow2" class="tabs2"> <ul class="tablist"> <li><a href="annotated.html"><span>Class List</span></a></li> <li><a href="classes.html"><span>Class Index</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 id="nav-path" class="navpath"> <ul> <li class="navelem"><a class="el" href="namespaceCVC3.html">CVC3</a> </li> <li class="navelem"><a class="el" href="classCVC3_1_1DecisionEngineDFS.html">DecisionEngineDFS</a> </li> </ul> </div> </div> <div class="header"> <div class="summary"> <a href="#pub-methods">Public Member Functions</a> | <a href="#pro-methods">Protected Member Functions</a> </div> <div class="headertitle"> <div class="title">CVC3::DecisionEngineDFS Class Reference<div class="ingroups"><a class="el" href="group__DE.html">Decision Engine</a></div></div> </div> </div> <div class="contents"> <!-- doxytag: class="CVC3::DecisionEngineDFS" --><!-- doxytag: inherits="CVC3::DecisionEngine" --> <p>Decision Engine for use with the Search EngineAuthor: Clark Barrett. <a href="classCVC3_1_1DecisionEngineDFS.html#details">More...</a></p> <p><code>#include <<a class="el" href="decision__engine__dfs_8h_source.html">decision_engine_dfs.h</a>></code></p> <div class="dynheader"> Inheritance diagram for CVC3::DecisionEngineDFS:</div> <div class="dyncontent"> <div class="center"> <img src="classCVC3_1_1DecisionEngineDFS.png" usemap="#CVC3::DecisionEngineDFS_map" alt=""/> <map id="CVC3::DecisionEngineDFS_map" name="CVC3::DecisionEngineDFS_map"> <area href="classCVC3_1_1DecisionEngine.html" alt="CVC3::DecisionEngine" shape="rect" coords="0,0,165,24"/> </map> </div></div> <p><a href="classCVC3_1_1DecisionEngineDFS-members.html">List of all members.</a></p> <h2><a name="pub-methods"></a> Public Member Functions</h2> <ul> <li><a class="el" href="classCVC3_1_1DecisionEngineDFS.html#a5cd6174c6476f07e7cbb33fa3f805792">DecisionEngineDFS</a> (<a class="el" href="classCVC3_1_1TheoryCore.html">TheoryCore</a> *core, <a class="el" href="classCVC3_1_1SearchImplBase.html">SearchImplBase</a> *se) <dl class="el"><dd class="mdescRight">Constructor. <a href="#a5cd6174c6476f07e7cbb33fa3f805792"></a><br/></dl><li>virtual <a class="el" href="classCVC3_1_1DecisionEngineDFS.html#a30a646d3e6c2a6caae0d543cb5c510d7">~DecisionEngineDFS</a> () <li>virtual <a class="el" href="classCVC3_1_1Expr.html">Expr</a> <a class="el" href="classCVC3_1_1DecisionEngineDFS.html#afbb4011e6c9724af1fda70a63687f4d7">findSplitter</a> (const <a class="el" href="classCVC3_1_1Expr.html">Expr</a> &e) <dl class="el"><dd class="mdescRight">Find the next splitter. <a href="#afbb4011e6c9724af1fda70a63687f4d7"></a><br/></dl><li>virtual void <a class="el" href="classCVC3_1_1DecisionEngineDFS.html#a3ebbe142c86aa4d303e5de0610309d1c">goalSatisfied</a> () <dl class="el"><dd class="mdescRight">Search should call this when it derives 'false'. <a href="#a3ebbe142c86aa4d303e5de0610309d1c"></a><br/></dl></ul> <h2><a name="pro-methods"></a> Protected Member Functions</h2> <ul> <li>virtual bool <a class="el" href="classCVC3_1_1DecisionEngineDFS.html#af7db0332174c8495ccf28d04def2ecd1">isBetter</a> (const <a class="el" href="classCVC3_1_1Expr.html">Expr</a> &e1, const <a class="el" href="classCVC3_1_1Expr.html">Expr</a> &e2) </ul> <hr/><a name="details" id="details"></a><h2>Detailed Description</h2> <div class="textblock"><p>Decision Engine for use with the Search Engine</p> <p>Author: Clark Barrett. </p> <p><a class="anchor" id="de_dfs"></a></p> <p>Created: Fri Jul 11 16:34:22 2003 </p> <p>Definition at line <a class="el" href="decision__engine__dfs_8h_source.html#l00041">41</a> of file <a class="el" href="decision__engine__dfs_8h_source.html">decision_engine_dfs.h</a>.</p> </div><hr/><h2>Constructor & Destructor Documentation</h2> <a class="anchor" id="a5cd6174c6476f07e7cbb33fa3f805792"></a><!-- doxytag: member="CVC3::DecisionEngineDFS::DecisionEngineDFS" ref="a5cd6174c6476f07e7cbb33fa3f805792" args="(TheoryCore *core, SearchImplBase *se)" --> <div class="memitem"> <div class="memproto"> <table class="memname"> <tr> <td class="memname">DecisionEngineDFS::DecisionEngineDFS </td> <td>(</td> <td class="paramtype"><a class="el" href="classCVC3_1_1TheoryCore.html">TheoryCore</a> * </td> <td class="paramname"><em>core</em>, </td> </tr> <tr> <td class="paramkey"></td> <td></td> <td class="paramtype"><a class="el" href="classCVC3_1_1SearchImplBase.html">SearchImplBase</a> * </td> <td class="paramname"><em>se</em> </td> </tr> <tr> <td></td> <td>)</td> <td></td><td></td> </tr> </table> </div> <div class="memdoc"> <p>Constructor. </p> <p>Function: <a class="el" href="classCVC3_1_1DecisionEngineDFS.html#a5cd6174c6476f07e7cbb33fa3f805792" title="Constructor.">DecisionEngineDFS::DecisionEngineDFS</a></p> <p>Author: Clark Barrett</p> <p>Created: Sun Jul 13 22:52:51 2003</p> <p>Constructor </p> <p>Definition at line <a class="el" href="decision__engine__dfs_8cpp_source.html#l00049">49</a> of file <a class="el" href="decision__engine__dfs_8cpp_source.html">decision_engine_dfs.cpp</a>.</p> </div> </div> <a class="anchor" id="a30a646d3e6c2a6caae0d543cb5c510d7"></a><!-- doxytag: member="CVC3::DecisionEngineDFS::~DecisionEngineDFS" ref="a30a646d3e6c2a6caae0d543cb5c510d7" args="()" --> <div class="memitem"> <div class="memproto"> <table class="memname"> <tr> <td class="memname">virtual CVC3::DecisionEngineDFS::~DecisionEngineDFS </td> <td>(</td> <td class="paramname"></td><td>)</td> <td><code> [inline, virtual]</code></td> </tr> </table> </div> <div class="memdoc"> <p>Definition at line <a class="el" href="decision__engine__dfs_8h_source.html#l00049">49</a> of file <a class="el" href="decision__engine__dfs_8h_source.html">decision_engine_dfs.h</a>.</p> </div> </div> <hr/><h2>Member Function Documentation</h2> <a class="anchor" id="af7db0332174c8495ccf28d04def2ecd1"></a><!-- doxytag: member="CVC3::DecisionEngineDFS::isBetter" ref="af7db0332174c8495ccf28d04def2ecd1" args="(const Expr &e1, const Expr &e2)" --> <div class="memitem"> <div class="memproto"> <table class="memname"> <tr> <td class="memname">bool DecisionEngineDFS::isBetter </td> <td>(</td> <td class="paramtype">const <a class="el" href="classCVC3_1_1Expr.html">Expr</a> & </td> <td class="paramname"><em>e1</em>, </td> </tr> <tr> <td class="paramkey"></td> <td></td> <td class="paramtype">const <a class="el" href="classCVC3_1_1Expr.html">Expr</a> & </td> <td class="paramname"><em>e2</em> </td> </tr> <tr> <td></td> <td>)</td> <td></td><td><code> [protected, virtual]</code></td> </tr> </table> </div> <div class="memdoc"> <p>Implements <a class="el" href="group__DE.html#gaaa431eec1b04f02c8a7573d34616158b">CVC3::DecisionEngine</a>.</p> <p>Definition at line <a class="el" href="decision__engine__dfs_8cpp_source.html#l00032">32</a> of file <a class="el" href="decision__engine__dfs_8cpp_source.html">decision_engine_dfs.cpp</a>.</p> </div> </div> <a class="anchor" id="afbb4011e6c9724af1fda70a63687f4d7"></a><!-- doxytag: member="CVC3::DecisionEngineDFS::findSplitter" ref="afbb4011e6c9724af1fda70a63687f4d7" args="(const Expr &e)" --> <div class="memitem"> <div class="memproto"> <table class="memname"> <tr> <td class="memname"><a class="el" href="classCVC3_1_1Expr.html">Expr</a> DecisionEngineDFS::findSplitter </td> <td>(</td> <td class="paramtype">const <a class="el" href="classCVC3_1_1Expr.html">Expr</a> & </td> <td class="paramname"><em>e</em></td><td>)</td> <td><code> [virtual]</code></td> </tr> </table> </div> <div class="memdoc"> <p>Find the next splitter. </p> <dl class="return"><dt><b>Returns:</b></dt><dd>Null <a class="el" href="classCVC3_1_1Expr.html" title="Data structure of expressions in CVC3.">Expr</a> if no splitter is found.</dd></dl> <p>Function: <a class="el" href="classCVC3_1_1DecisionEngineDFS.html#afbb4011e6c9724af1fda70a63687f4d7" title="Find the next splitter.">DecisionEngineDFS::findSplitter</a></p> <p>Author: Clark Barrett</p> <p>Created: Sun Jul 13 22:53:18 2003</p> <p>Main function to choose the next splitter. </p> <dl class="return"><dt><b>Returns:</b></dt><dd>NULL if all known splitters are assigned. </dd></dl> <p>Implements <a class="el" href="group__DE.html#ga6f191a7f4edb645e8df7c1f005a50bf8">CVC3::DecisionEngine</a>.</p> <p>Definition at line <a class="el" href="decision__engine__dfs_8cpp_source.html#l00067">67</a> of file <a class="el" href="decision__engine__dfs_8cpp_source.html">decision_engine_dfs.cpp</a>.</p> <p>References <a class="el" href="expr__map_8h_source.html#l00175">CVC3::ExprMap< Data >::clear()</a>, <a class="el" href="decision__engine_8h_source.html#l00054">CVC3::DecisionEngine::d_visited</a>, <a class="el" href="decision__engine_8cpp_source.html#l00055">CVC3::DecisionEngine::findSplitterRec()</a>, <a class="el" href="debug_8h_source.html#l00406">IF_DEBUG</a>, <a class="el" href="expr_8h_source.html#l01223">CVC3::Expr::isNull()</a>, and <a class="el" href="kinds_8h_source.html#l00099">TRACE</a>.</p> </div> </div> <a class="anchor" id="a3ebbe142c86aa4d303e5de0610309d1c"></a><!-- doxytag: member="CVC3::DecisionEngineDFS::goalSatisfied" ref="a3ebbe142c86aa4d303e5de0610309d1c" args="()" --> <div class="memitem"> <div class="memproto"> <table class="memname"> <tr> <td class="memname">void DecisionEngineDFS::goalSatisfied </td> <td>(</td> <td class="paramname"></td><td>)</td> <td><code> [virtual]</code></td> </tr> </table> </div> <div class="memdoc"> <p>Search should call this when it derives 'false'. </p> <p>Implements <a class="el" href="group__DE.html#ga7910d09d94bd27c02f53a3f7e0a9af00">CVC3::DecisionEngine</a>.</p> <p>Definition at line <a class="el" href="decision__engine__dfs_8cpp_source.html#l00088">88</a> of file <a class="el" href="decision__engine__dfs_8cpp_source.html">decision_engine_dfs.cpp</a>.</p> </div> </div> <hr/>The documentation for this class was generated from the following files:<ul> <li><a class="el" href="decision__engine__dfs_8h_source.html">decision_engine_dfs.h</a></li> <li><a class="el" href="decision__engine__dfs_8cpp_source.html">decision_engine_dfs.cpp</a></li> </ul> </div> <hr class="footer"/><address class="footer"><small>Generated on Wed Sep 7 2011 for CVC3 by  <a href="http://www.doxygen.org/index.html"> <img class="footer" src="doxygen.png" alt="doxygen"/></a> 1.7.4 </small></address> </body> </html>