<!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::Circuit 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_1Circuit.html">Circuit</a> </li> </ul> </div> </div> <div class="header"> <div class="summary"> <a href="#pub-methods">Public Member Functions</a> | <a href="#pri-attribs">Private Attributes</a> </div> <div class="headertitle"> <div class="title">CVC3::Circuit Class Reference</div> </div> </div> <div class="contents"> <!-- doxytag: class="CVC3::Circuit" --> <p><code>#include <<a class="el" href="circuit_8h_source.html">circuit.h</a>></code></p> <p><a href="classCVC3_1_1Circuit-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_1Circuit.html#ab011376bb2e6951a4e52176de70c3308">Circuit</a> (<a class="el" href="classCVC3_1_1SearchEngineFast.html">SearchEngineFast</a> *se, const <a class="el" href="classCVC3_1_1Theorem.html">Theorem</a> &thm) <li>bool <a class="el" href="classCVC3_1_1Circuit.html#aa9738000be1318c1a63bb99386dfc283">propagate</a> (<a class="el" href="classCVC3_1_1SearchEngineFast.html">SearchEngineFast</a> *se) </ul> <h2><a name="pri-attribs"></a> Private Attributes</h2> <ul> <li><a class="el" href="classCVC3_1_1Theorem.html">Theorem</a> <a class="el" href="classCVC3_1_1Circuit.html#a221b9dad16d893001704eb3581856130">d_thm</a> <li><a class="el" href="classCVC3_1_1Literal.html">Literal</a> <a class="el" href="classCVC3_1_1Circuit.html#a1425d88328f264152819f65a0a3ced29">d_lits</a> [4] </ul> <hr/><a name="details" id="details"></a><h2>Detailed Description</h2> <div class="textblock"> <p>Definition at line <a class="el" href="circuit_8h_source.html#l00031">31</a> of file <a class="el" href="circuit_8h_source.html">circuit.h</a>.</p> </div><hr/><h2>Constructor & Destructor Documentation</h2> <a class="anchor" id="ab011376bb2e6951a4e52176de70c3308"></a><!-- doxytag: member="CVC3::Circuit::Circuit" ref="ab011376bb2e6951a4e52176de70c3308" args="(SearchEngineFast *se, const Theorem &thm)" --> <div class="memitem"> <div class="memproto"> <table class="memname"> <tr> <td class="memname">CVC3::Circuit::Circuit </td> <td>(</td> <td class="paramtype"><a class="el" href="classCVC3_1_1SearchEngineFast.html">SearchEngineFast</a> * </td> <td class="paramname"><em>se</em>, </td> </tr> <tr> <td class="paramkey"></td> <td></td> <td class="paramtype">const <a class="el" href="classCVC3_1_1Theorem.html">Theorem</a> & </td> <td class="paramname"><em>thm</em> </td> </tr> <tr> <td></td> <td>)</td> <td></td><td></td> </tr> </table> </div> <div class="memdoc"> <p>Definition at line <a class="el" href="circuit_8cpp_source.html#l00028">28</a> of file <a class="el" href="circuit_8cpp_source.html">circuit.cpp</a>.</p> <p>References <a class="el" href="expr_8h_source.html#l01201">CVC3::Expr::arity()</a>, <a class="el" href="search__fast_8h_source.html#l00215">CVC3::SearchEngineFast::d_circuitsByExpr</a>, <a class="el" href="circuit_8h_source.html#l00035">d_lits</a>, <a class="el" href="circuit_8h_source.html#l00034">d_thm</a>, <a class="el" href="search__impl__base_8h_source.html#l00044">CVC3::SearchImplBase::d_vm</a>, <a class="el" href="theorem_8cpp_source.html#l00230">CVC3::Theorem::getExpr()</a>, <a class="el" href="expr_8h_source.html#l00420">CVC3::Expr::isNot()</a>, and <a class="el" href="expr_8h_source.html#l00937">CVC3::Expr::negate()</a>.</p> </div> </div> <hr/><h2>Member Function Documentation</h2> <a class="anchor" id="aa9738000be1318c1a63bb99386dfc283"></a><!-- doxytag: member="CVC3::Circuit::propagate" ref="aa9738000be1318c1a63bb99386dfc283" args="(SearchEngineFast *se)" --> <div class="memitem"> <div class="memproto"> <table class="memname"> <tr> <td class="memname">bool CVC3::Circuit::propagate </td> <td>(</td> <td class="paramtype"><a class="el" href="classCVC3_1_1SearchEngineFast.html">SearchEngineFast</a> * </td> <td class="paramname"><em>se</em></td><td>)</td> <td></td> </tr> </table> </div> <div class="memdoc"> <p>Definition at line <a class="el" href="circuit_8cpp_source.html#l00047">47</a> of file <a class="el" href="circuit_8cpp_source.html">circuit.cpp</a>.</p> <p>References <a class="el" href="theory__core_8cpp_source.html#l03468">CVC3::TheoryCore::addFact()</a>, <a class="el" href="kinds_8h_source.html#l00075">AND_R</a>, <a class="el" href="expr_8h_source.html#l01201">CVC3::Expr::arity()</a>, <a class="el" href="group__SE__Rules.html#gadb878db4f9d24a21b62f50df2713ecca">CVC3::SearchEngineRules::confAndrAF()</a>, <a class="el" href="group__SE__Rules.html#ga09d987f2d81c19d798d7185b125879b6">CVC3::SearchEngineRules::confAndrAT()</a>, <a class="el" href="group__SE__Rules.html#gaef31b1a5f6d6e9f270a1ab28ee361b14">CVC3::SearchEngineRules::confIffr()</a>, <a class="el" href="group__SE__Rules.html#ga771471d7cbb2253bc32f2a8018bd7182">CVC3::SearchEngineRules::confIterIfThen()</a>, <a class="el" href="group__SE__Rules.html#gaae491d08949a1ec57981526c8e960119">CVC3::SearchEngineRules::confIterThenElse()</a>, <a class="el" href="search__fast_8h_source.html#l00101">CVC3::SearchEngineFast::d_circuitPropCount</a>, <a class="el" href="search__fast_8h_source.html#l00229">CVC3::SearchEngineFast::d_conflictTheorem</a>, <a class="el" href="search_8h_source.html#l00058">CVC3::SearchEngine::d_core</a>, <a class="el" href="search__fast_8h_source.html#l00176">CVC3::SearchEngineFast::d_literals</a>, <a class="el" href="circuit_8h_source.html#l00035">d_lits</a>, <a class="el" href="search_8h_source.html#l00064">CVC3::SearchEngine::d_rules</a>, <a class="el" href="circuit_8h_source.html#l00034">d_thm</a>, <a class="el" href="debug_8h_source.html#l00408">DebugAssert</a>, <a class="el" href="theorem_8cpp_source.html#l00230">CVC3::Theorem::getExpr()</a>, <a class="el" href="expr_8h_source.html#l01168">CVC3::Expr::getKind()</a>, <a class="el" href="variable_8h_source.html#l00159">CVC3::Literal::getTheorem()</a>, <a class="el" href="variable_8h_source.html#l00144">CVC3::Literal::getValue()</a>, <a class="el" href="kinds_8h_source.html#l00076">IFF_R</a>, <a class="el" href="theorem_8h_source.html#l00164">CVC3::Theorem::isNull()</a>, <a class="el" href="kinds_8h_source.html#l00077">ITE_R</a>, <a class="el" href="search__impl__base_8h_source.html#l00120">CVC3::SearchImplBase::newLiteral()</a>, <a class="el" href="group__SE__Rules.html#gaf5a18f8bcdc2f71632f05bcfe0bc533e">CVC3::SearchEngineRules::propAndrAF()</a>, <a class="el" href="group__SE__Rules.html#gac7998bdcac234b0f3dc202d44b49c69c">CVC3::SearchEngineRules::propAndrAT()</a>, <a class="el" href="group__SE__Rules.html#ga8c8fc73c8b0413f5ca3fa7d72e687f5b">CVC3::SearchEngineRules::propAndrLF()</a>, <a class="el" href="group__SE__Rules.html#gad0150b04c296a6b8e05579c1dbd365f8">CVC3::SearchEngineRules::propAndrLRT()</a>, <a class="el" href="group__SE__Rules.html#ga1158c41e7b7ed199271391d4404ce1b2">CVC3::SearchEngineRules::propAndrRF()</a>, <a class="el" href="group__SE__Rules.html#ga9bc3e3eab4b1fe4fb2c0a0172ca25ee9">CVC3::SearchEngineRules::propIffr()</a>, <a class="el" href="group__SE__Rules.html#gad35217bbc9f4a27b4d23af173e9ea2c7">CVC3::SearchEngineRules::propIterIfThen()</a>, <a class="el" href="group__SE__Rules.html#ga979ad08269cd2799993628eaaccc146f">CVC3::SearchEngineRules::propIterIte()</a>, <a class="el" href="group__SE__Rules.html#gab7b07d3b350b2cc7f3f596233abb54ea">CVC3::SearchEngineRules::propIterThen()</a>, <a class="el" href="search__fast_8cpp_source.html#l00549">CVC3::SearchEngineFast::recordFact()</a>, <a class="el" href="circuit_8cpp_source.html#l00044">vals3</a>, and <a class="el" href="circuit_8cpp_source.html#l00045">vals4</a>.</p> </div> </div> <hr/><h2>Member Data Documentation</h2> <a class="anchor" id="a221b9dad16d893001704eb3581856130"></a><!-- doxytag: member="CVC3::Circuit::d_thm" ref="a221b9dad16d893001704eb3581856130" args="" --> <div class="memitem"> <div class="memproto"> <table class="memname"> <tr> <td class="memname"><a class="el" href="classCVC3_1_1Theorem.html">Theorem</a> <a class="el" href="classCVC3_1_1Circuit.html#a221b9dad16d893001704eb3581856130">CVC3::Circuit::d_thm</a><code> [private]</code></td> </tr> </table> </div> <div class="memdoc"> <p>Definition at line <a class="el" href="circuit_8h_source.html#l00034">34</a> of file <a class="el" href="circuit_8h_source.html">circuit.h</a>.</p> <p>Referenced by <a class="el" href="circuit_8cpp_source.html#l00028">Circuit()</a>, and <a class="el" href="circuit_8cpp_source.html#l00047">propagate()</a>.</p> </div> </div> <a class="anchor" id="a1425d88328f264152819f65a0a3ced29"></a><!-- doxytag: member="CVC3::Circuit::d_lits" ref="a1425d88328f264152819f65a0a3ced29" args="[4]" --> <div class="memitem"> <div class="memproto"> <table class="memname"> <tr> <td class="memname"><a class="el" href="classCVC3_1_1Literal.html">Literal</a> <a class="el" href="classCVC3_1_1Circuit.html#a1425d88328f264152819f65a0a3ced29">CVC3::Circuit::d_lits</a>[4]<code> [private]</code></td> </tr> </table> </div> <div class="memdoc"> <p>Definition at line <a class="el" href="circuit_8h_source.html#l00035">35</a> of file <a class="el" href="circuit_8h_source.html">circuit.h</a>.</p> <p>Referenced by <a class="el" href="circuit_8cpp_source.html#l00028">Circuit()</a>, and <a class="el" href="circuit_8cpp_source.html#l00047">propagate()</a>.</p> </div> </div> <hr/>The documentation for this class was generated from the following files:<ul> <li><a class="el" href="circuit_8h_source.html">circuit.h</a></li> <li><a class="el" href="circuit_8cpp_source.html">circuit.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>