Sophie

Sophie

distrib > PLD > th > x86_64 > by-pkgid > 9f869ff92bf81fc4b13902b2b85811f8 > files > 510

cvc3-doc-2.4.1-1.noarch.rpm

<!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"/>
<meta http-equiv="X-UA-Compatible" content="IE=9"/>
<title>CVC3: CVC3::SearchEngineFast Class Reference</title>
<link href="tabs.css" rel="stylesheet" type="text/css"/>
<script type="text/javascript" src="jquery.js"></script>
<script type="text/javascript" src="dynsections.js"></script>
<link href="doxygen.css" rel="stylesheet" type="text/css" />
</head>
<body>
<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
<div id="titlearea">
<table cellspacing="0" cellpadding="0">
 <tbody>
 <tr style="height: 56px;">
  <td style="padding-left: 0.5em;">
   <div id="projectname">CVC3
   </div>
  </td>
 </tr>
 </tbody>
</table>
</div>
<!-- end header part -->
<!-- Generated by Doxygen 1.8.2 -->
  <div id="navrow1" class="tabs">
    <ul class="tablist">
      <li><a href="index.html"><span>Main&#160;Page</span></a></li>
      <li><a href="pages.html"><span>Related&#160;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&#160;List</span></a></li>
      <li><a href="classes.html"><span>Class&#160;Index</span></a></li>
      <li><a href="inherits.html"><span>Class&#160;Hierarchy</span></a></li>
      <li><a href="functions.html"><span>Class&#160;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_1SearchEngineFast.html">SearchEngineFast</a></li>  </ul>
</div>
</div><!-- top -->
<div class="header">
  <div class="summary">
<a href="#nested-classes">Classes</a> &#124;
<a href="#pub-methods">Public Member Functions</a> &#124;
<a href="#pri-methods">Private Member Functions</a> &#124;
<a href="#pri-attribs">Private Attributes</a> &#124;
<a href="#friends">Friends</a> &#124;
<a href="classCVC3_1_1SearchEngineFast-members.html">List of all members</a>  </div>
  <div class="headertitle">
<div class="title">CVC3::SearchEngineFast Class Reference<div class="ingroups"><a class="el" href="group__SE__Fast.html">Fast Search Engine</a></div></div>  </div>
</div><!--header-->
<div class="contents">

<p>Implementation of a faster search engine, using newer techniques.  
 <a href="classCVC3_1_1SearchEngineFast.html#details">More...</a></p>

<p><code>#include &lt;<a class="el" href="search__fast_8h_source.html">search_fast.h</a>&gt;</code></p>

<p>Inherits <a class="el" href="classCVC3_1_1SearchImplBase.html">CVC3::SearchImplBase</a>.</p>
<div class="dynheader">
Collaboration diagram for CVC3::SearchEngineFast:</div>
<div class="dyncontent">
<div class="center"><img src="classCVC3_1_1SearchEngineFast__coll__graph.gif" border="0" usemap="#CVC3_1_1SearchEngineFast_coll__map" alt="Collaboration graph"/></div>
<map name="CVC3_1_1SearchEngineFast_coll__map" id="CVC3_1_1SearchEngineFast_coll__map">
</map>
</div>
<table class="memberdecls">
<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="nested-classes"></a>
Classes</h2></td></tr>
<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">class &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classCVC3_1_1SearchEngineFast_1_1ConflictClauseManager.html">ConflictClauseManager</a></td></tr>
<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
</table><table class="memberdecls">
<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="pub-methods"></a>
Public Member Functions</h2></td></tr>
<tr class="memitem:ga8869c248ac69ea02656c95b40c99ed24"><td class="memItemLeft" align="right" valign="top">&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__SE__Fast.html#ga8869c248ac69ea02656c95b40c99ed24">SearchEngineFast</a> (<a class="el" href="classCVC3_1_1TheoryCore.html">TheoryCore</a> *core)</td></tr>
<tr class="memdesc:ga8869c248ac69ea02656c95b40c99ed24"><td class="mdescLeft">&#160;</td><td class="mdescRight">The main Constructor.  <a href="group__SE__Fast.html#ga8869c248ac69ea02656c95b40c99ed24"></a><br/></td></tr>
<tr class="separator:ga8869c248ac69ea02656c95b40c99ed24"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ga8f8c0138aa4f31355dad949f604e3927"><td class="memItemLeft" align="right" valign="top">virtual&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__SE__Fast.html#ga8f8c0138aa4f31355dad949f604e3927">~SearchEngineFast</a> ()</td></tr>
<tr class="memdesc:ga8f8c0138aa4f31355dad949f604e3927"><td class="mdescLeft">&#160;</td><td class="mdescRight">Destructor.  <a href="group__SE__Fast.html#ga8f8c0138aa4f31355dad949f604e3927"></a><br/></td></tr>
<tr class="separator:ga8f8c0138aa4f31355dad949f604e3927"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ga3f564001c310c9e4ff519da68f8ea670"><td class="memItemLeft" align="right" valign="top">const std::string &amp;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__SE__Fast.html#ga3f564001c310c9e4ff519da68f8ea670">getName</a> ()</td></tr>
<tr class="memdesc:ga3f564001c310c9e4ff519da68f8ea670"><td class="mdescLeft">&#160;</td><td class="mdescRight">Name of this search engine.  <a href="group__SE__Fast.html#ga3f564001c310c9e4ff519da68f8ea670"></a><br/></td></tr>
<tr class="separator:ga3f564001c310c9e4ff519da68f8ea670"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ga1db688bc99f93a978079b3d2efd1bd9f"><td class="memItemLeft" align="right" valign="top">virtual <a class="el" href="namespaceCVC3.html#a060d21b3207cc3471e24f8dbcff3498b">QueryResult</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__SE__Fast.html#ga1db688bc99f93a978079b3d2efd1bd9f">checkValidInternal</a> (const <a class="el" href="classCVC3_1_1Expr.html">Expr</a> &amp;e)</td></tr>
<tr class="memdesc:ga1db688bc99f93a978079b3d2efd1bd9f"><td class="mdescLeft">&#160;</td><td class="mdescRight">Implementation of the API call.  <a href="group__SE__Fast.html#ga1db688bc99f93a978079b3d2efd1bd9f"></a><br/></td></tr>
<tr class="separator:ga1db688bc99f93a978079b3d2efd1bd9f"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ga99dd1f1c52ecae319bd0b5a3b689a31d"><td class="memItemLeft" align="right" valign="top">virtual <a class="el" href="namespaceCVC3.html#a060d21b3207cc3471e24f8dbcff3498b">QueryResult</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__SE__Fast.html#ga99dd1f1c52ecae319bd0b5a3b689a31d">restartInternal</a> (const <a class="el" href="classCVC3_1_1Expr.html">Expr</a> &amp;e)</td></tr>
<tr class="memdesc:ga99dd1f1c52ecae319bd0b5a3b689a31d"><td class="mdescLeft">&#160;</td><td class="mdescRight">Reruns last check with e as an additional assumption.  <a href="group__SE__Fast.html#ga99dd1f1c52ecae319bd0b5a3b689a31d"></a><br/></td></tr>
<tr class="separator:ga99dd1f1c52ecae319bd0b5a3b689a31d"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ga104e5e0abacb4c9492b0cb818b7d968a"><td class="memItemLeft" align="right" valign="top">virtual void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__SE__Fast.html#ga104e5e0abacb4c9492b0cb818b7d968a">getCounterExample</a> (std::vector&lt; <a class="el" href="classCVC3_1_1Expr.html">Expr</a> &gt; &amp;assertions)</td></tr>
<tr class="memdesc:ga104e5e0abacb4c9492b0cb818b7d968a"><td class="mdescLeft">&#160;</td><td class="mdescRight">Redefine the counterexample generation.  <a href="group__SE__Fast.html#ga104e5e0abacb4c9492b0cb818b7d968a"></a><br/></td></tr>
<tr class="separator:ga104e5e0abacb4c9492b0cb818b7d968a"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:gaef3113afb8dc9ea1b06217ab77f5d713"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__SE__Fast.html#gaef3113afb8dc9ea1b06217ab77f5d713">addLiteralFact</a> (const <a class="el" href="classCVC3_1_1Theorem.html">Theorem</a> &amp;thm)</td></tr>
<tr class="memdesc:gaef3113afb8dc9ea1b06217ab77f5d713"><td class="mdescLeft">&#160;</td><td class="mdescRight">Notify the search engine about a new literal fact.  <a href="group__SE__Fast.html#gaef3113afb8dc9ea1b06217ab77f5d713"></a><br/></td></tr>
<tr class="separator:gaef3113afb8dc9ea1b06217ab77f5d713"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ga03501a968c3c7122a999b1f57d6640a0"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__SE__Fast.html#ga03501a968c3c7122a999b1f57d6640a0">addNonLiteralFact</a> (const <a class="el" href="classCVC3_1_1Theorem.html">Theorem</a> &amp;thm)</td></tr>
<tr class="memdesc:ga03501a968c3c7122a999b1f57d6640a0"><td class="mdescLeft">&#160;</td><td class="mdescRight">Notify the search engine about a new non-literal fact.  <a href="group__SE__Fast.html#ga03501a968c3c7122a999b1f57d6640a0"></a><br/></td></tr>
<tr class="separator:ga03501a968c3c7122a999b1f57d6640a0"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:gaf54422149559aa048f32723a3dc6fcce"><td class="memItemLeft" align="right" valign="top">virtual <a class="el" href="classCVC3_1_1Theorem.html">Theorem</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__SE__Fast.html#gaf54422149559aa048f32723a3dc6fcce">newIntAssumption</a> (const <a class="el" href="classCVC3_1_1Expr.html">Expr</a> &amp;e)</td></tr>
<tr class="memdesc:gaf54422149559aa048f32723a3dc6fcce"><td class="mdescLeft">&#160;</td><td class="mdescRight">Redefine <a class="el" href="group__SE__Fast.html#gaf54422149559aa048f32723a3dc6fcce" title="Redefine newIntAssumption(): we need to add the new theorem to the appropriate Literal.">newIntAssumption()</a>: we need to add the new theorem to the appropriate <a class="el" href="classCVC3_1_1Literal.html">Literal</a>.  <a href="group__SE__Fast.html#gaf54422149559aa048f32723a3dc6fcce"></a><br/></td></tr>
<tr class="separator:gaf54422149559aa048f32723a3dc6fcce"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ga4b55b5f49d921ca4b63f874d8404c4d5"><td class="memItemLeft" align="right" valign="top">virtual bool&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__SE__Fast.html#ga4b55b5f49d921ca4b63f874d8404c4d5">isAssumption</a> (const <a class="el" href="classCVC3_1_1Expr.html">Expr</a> &amp;e)</td></tr>
<tr class="memdesc:ga4b55b5f49d921ca4b63f874d8404c4d5"><td class="mdescLeft">&#160;</td><td class="mdescRight">Check if the formula has been assumed.  <a href="group__SE__Fast.html#ga4b55b5f49d921ca4b63f874d8404c4d5"></a><br/></td></tr>
<tr class="separator:ga4b55b5f49d921ca4b63f874d8404c4d5"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ga40b361c2f9374c541282feca1e237dba"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__SE__Fast.html#ga40b361c2f9374c541282feca1e237dba">addSplitter</a> (const <a class="el" href="classCVC3_1_1Expr.html">Expr</a> &amp;e, int priority)</td></tr>
<tr class="memdesc:ga40b361c2f9374c541282feca1e237dba"><td class="mdescLeft">&#160;</td><td class="mdescRight">Suggest a splitter to the <a class="el" href="classCVC3_1_1SearchEngine.html" title="API to to a generic proof search engine.">SearchEngine</a>.  <a href="group__SE__Fast.html#ga40b361c2f9374c541282feca1e237dba"></a><br/></td></tr>
<tr class="separator:ga40b361c2f9374c541282feca1e237dba"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="inherit_header pub_methods_classCVC3_1_1SearchImplBase"><td colspan="2" onclick="javascript:toggleInherit('pub_methods_classCVC3_1_1SearchImplBase')"><img src="closed.png" alt="-"/>&#160;Public Member Functions inherited from <a class="el" href="classCVC3_1_1SearchImplBase.html">CVC3::SearchImplBase</a></td></tr>
<tr class="memitem:ga12db60dd52e1223d009f6b51b654f70e inherit pub_methods_classCVC3_1_1SearchImplBase"><td class="memItemLeft" align="right" valign="top">int&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__SE.html#ga12db60dd52e1223d009f6b51b654f70e">getBottomScope</a> ()</td></tr>
<tr class="separator:ga12db60dd52e1223d009f6b51b654f70e inherit pub_methods_classCVC3_1_1SearchImplBase"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ga9babda9b0bcd226dd4d0a736cd433893 inherit pub_methods_classCVC3_1_1SearchImplBase"><td class="memItemLeft" align="right" valign="top">bool&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__SE.html#ga9babda9b0bcd226dd4d0a736cd433893">isClause</a> (const <a class="el" href="classCVC3_1_1Expr.html">Expr</a> &amp;e)</td></tr>
<tr class="memdesc:ga9babda9b0bcd226dd4d0a736cd433893 inherit pub_methods_classCVC3_1_1SearchImplBase"><td class="mdescLeft">&#160;</td><td class="mdescRight">Check if e is a clause (a literal, or a disjunction of literals)  <a href="group__SE.html#ga9babda9b0bcd226dd4d0a736cd433893"></a><br/></td></tr>
<tr class="separator:ga9babda9b0bcd226dd4d0a736cd433893 inherit pub_methods_classCVC3_1_1SearchImplBase"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ga9db77121699fbbdbff209014b8ab26c3 inherit pub_methods_classCVC3_1_1SearchImplBase"><td class="memItemLeft" align="right" valign="top">bool&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__SE.html#ga9db77121699fbbdbff209014b8ab26c3">isPropClause</a> (const <a class="el" href="classCVC3_1_1Expr.html">Expr</a> &amp;e)</td></tr>
<tr class="memdesc:ga9db77121699fbbdbff209014b8ab26c3 inherit pub_methods_classCVC3_1_1SearchImplBase"><td class="mdescLeft">&#160;</td><td class="mdescRight">Check if e is a propositional clause.  <a href="group__SE.html#ga9db77121699fbbdbff209014b8ab26c3"></a><br/></td></tr>
<tr class="separator:ga9db77121699fbbdbff209014b8ab26c3 inherit pub_methods_classCVC3_1_1SearchImplBase"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ga92018736294ba073bc5db887467944ad inherit pub_methods_classCVC3_1_1SearchImplBase"><td class="memItemLeft" align="right" valign="top">bool&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__SE.html#ga92018736294ba073bc5db887467944ad">isCNFVar</a> (const <a class="el" href="classCVC3_1_1Expr.html">Expr</a> &amp;e)</td></tr>
<tr class="memdesc:ga92018736294ba073bc5db887467944ad inherit pub_methods_classCVC3_1_1SearchImplBase"><td class="mdescLeft">&#160;</td><td class="mdescRight">Check whether e is a fresh variable introduced by the CNF converter.  <a href="group__SE.html#ga92018736294ba073bc5db887467944ad"></a><br/></td></tr>
<tr class="separator:ga92018736294ba073bc5db887467944ad inherit pub_methods_classCVC3_1_1SearchImplBase"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:gaed4079f44a18e496b87366ce65b20d99 inherit pub_methods_classCVC3_1_1SearchImplBase"><td class="memItemLeft" align="right" valign="top">bool&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__SE.html#gaed4079f44a18e496b87366ce65b20d99">isGoodSplitter</a> (const <a class="el" href="classCVC3_1_1Expr.html">Expr</a> &amp;e)</td></tr>
<tr class="memdesc:gaed4079f44a18e496b87366ce65b20d99 inherit pub_methods_classCVC3_1_1SearchImplBase"><td class="mdescLeft">&#160;</td><td class="mdescRight">Check if a splitter is required for completeness.  <a href="group__SE.html#gaed4079f44a18e496b87366ce65b20d99"></a><br/></td></tr>
<tr class="separator:gaed4079f44a18e496b87366ce65b20d99 inherit pub_methods_classCVC3_1_1SearchImplBase"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:gaa6e44780a3c5e714f4fd5d8ee41bb1fb inherit pub_methods_classCVC3_1_1SearchImplBase"><td class="memItemLeft" align="right" valign="top">&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__SE.html#gaa6e44780a3c5e714f4fd5d8ee41bb1fb">SearchImplBase</a> (<a class="el" href="classCVC3_1_1TheoryCore.html">TheoryCore</a> *core)</td></tr>
<tr class="memdesc:gaa6e44780a3c5e714f4fd5d8ee41bb1fb inherit pub_methods_classCVC3_1_1SearchImplBase"><td class="mdescLeft">&#160;</td><td class="mdescRight">Constructor.  <a href="group__SE.html#gaa6e44780a3c5e714f4fd5d8ee41bb1fb"></a><br/></td></tr>
<tr class="separator:gaa6e44780a3c5e714f4fd5d8ee41bb1fb inherit pub_methods_classCVC3_1_1SearchImplBase"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ga139d4116c2b14d5357f2696dc8f29cac inherit pub_methods_classCVC3_1_1SearchImplBase"><td class="memItemLeft" align="right" valign="top">virtual&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__SE.html#ga139d4116c2b14d5357f2696dc8f29cac">~SearchImplBase</a> ()</td></tr>
<tr class="memdesc:ga139d4116c2b14d5357f2696dc8f29cac inherit pub_methods_classCVC3_1_1SearchImplBase"><td class="mdescLeft">&#160;</td><td class="mdescRight">Destructor.  <a href="group__SE.html#ga139d4116c2b14d5357f2696dc8f29cac"></a><br/></td></tr>
<tr class="separator:ga139d4116c2b14d5357f2696dc8f29cac inherit pub_methods_classCVC3_1_1SearchImplBase"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:gac4e5351fec1964bf7571d67e90a1538d inherit pub_methods_classCVC3_1_1SearchImplBase"><td class="memItemLeft" align="right" valign="top">virtual void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__SE.html#gac4e5351fec1964bf7571d67e90a1538d">registerAtom</a> (const <a class="el" href="classCVC3_1_1Expr.html">Expr</a> &amp;e)</td></tr>
<tr class="memdesc:gac4e5351fec1964bf7571d67e90a1538d inherit pub_methods_classCVC3_1_1SearchImplBase"><td class="mdescLeft">&#160;</td><td class="mdescRight">Register an atomic formula of interest.  <a href="group__SE.html#gac4e5351fec1964bf7571d67e90a1538d"></a><br/></td></tr>
<tr class="separator:gac4e5351fec1964bf7571d67e90a1538d inherit pub_methods_classCVC3_1_1SearchImplBase"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ga65ca9e33c2ac0807f0ef680415457c45 inherit pub_methods_classCVC3_1_1SearchImplBase"><td class="memItemLeft" align="right" valign="top">virtual <a class="el" href="classCVC3_1_1Theorem.html">Theorem</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__SE.html#ga65ca9e33c2ac0807f0ef680415457c45">getImpliedLiteral</a> ()</td></tr>
<tr class="memdesc:ga65ca9e33c2ac0807f0ef680415457c45 inherit pub_methods_classCVC3_1_1SearchImplBase"><td class="mdescLeft">&#160;</td><td class="mdescRight">Return next literal implied by last assertion. Null <a class="el" href="classCVC3_1_1Expr.html" title="Data structure of expressions in CVC3.">Expr</a> if none.  <a href="group__SE.html#ga65ca9e33c2ac0807f0ef680415457c45"></a><br/></td></tr>
<tr class="separator:ga65ca9e33c2ac0807f0ef680415457c45 inherit pub_methods_classCVC3_1_1SearchImplBase"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:gae987ab9ab6129f83efb0b5649cc2003c inherit pub_methods_classCVC3_1_1SearchImplBase"><td class="memItemLeft" align="right" valign="top">virtual void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__SE.html#gae987ab9ab6129f83efb0b5649cc2003c">push</a> ()</td></tr>
<tr class="memdesc:gae987ab9ab6129f83efb0b5649cc2003c inherit pub_methods_classCVC3_1_1SearchImplBase"><td class="mdescLeft">&#160;</td><td class="mdescRight">Push a checkpoint.  <a href="group__SE.html#gae987ab9ab6129f83efb0b5649cc2003c"></a><br/></td></tr>
<tr class="separator:gae987ab9ab6129f83efb0b5649cc2003c inherit pub_methods_classCVC3_1_1SearchImplBase"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ga84ceb5e9dcc4e57c1f48f77f4b2f8db5 inherit pub_methods_classCVC3_1_1SearchImplBase"><td class="memItemLeft" align="right" valign="top">virtual void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__SE.html#ga84ceb5e9dcc4e57c1f48f77f4b2f8db5">pop</a> ()</td></tr>
<tr class="memdesc:ga84ceb5e9dcc4e57c1f48f77f4b2f8db5 inherit pub_methods_classCVC3_1_1SearchImplBase"><td class="mdescLeft">&#160;</td><td class="mdescRight">Restore last checkpoint.  <a href="group__SE.html#ga84ceb5e9dcc4e57c1f48f77f4b2f8db5"></a><br/></td></tr>
<tr class="separator:ga84ceb5e9dcc4e57c1f48f77f4b2f8db5 inherit pub_methods_classCVC3_1_1SearchImplBase"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ga83d82b8cf43e9dc8240e762b180f6343 inherit pub_methods_classCVC3_1_1SearchImplBase"><td class="memItemLeft" align="right" valign="top">virtual <a class="el" href="namespaceCVC3.html#a060d21b3207cc3471e24f8dbcff3498b">QueryResult</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__SE.html#ga83d82b8cf43e9dc8240e762b180f6343">checkValid</a> (const <a class="el" href="classCVC3_1_1Expr.html">Expr</a> &amp;e, <a class="el" href="classCVC3_1_1Theorem.html">Theorem</a> &amp;result)</td></tr>
<tr class="memdesc:ga83d82b8cf43e9dc8240e762b180f6343 inherit pub_methods_classCVC3_1_1SearchImplBase"><td class="mdescLeft">&#160;</td><td class="mdescRight">Similar to <a class="el" href="group__SE.html#ga1e6282534845cfe93f245d9983d58761" title="Checks the validity of a formula in the current context.">checkValidInternal()</a>, only returns Theorem(e) or Null.  <a href="group__SE.html#ga83d82b8cf43e9dc8240e762b180f6343"></a><br/></td></tr>
<tr class="separator:ga83d82b8cf43e9dc8240e762b180f6343 inherit pub_methods_classCVC3_1_1SearchImplBase"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:gad4a8edbe5a6520fc9f564ec1c65d4729 inherit pub_methods_classCVC3_1_1SearchImplBase"><td class="memItemLeft" align="right" valign="top">virtual <a class="el" href="namespaceCVC3.html#a060d21b3207cc3471e24f8dbcff3498b">QueryResult</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__SE.html#gad4a8edbe5a6520fc9f564ec1c65d4729">restart</a> (const <a class="el" href="classCVC3_1_1Expr.html">Expr</a> &amp;e, <a class="el" href="classCVC3_1_1Theorem.html">Theorem</a> &amp;result)</td></tr>
<tr class="memdesc:gad4a8edbe5a6520fc9f564ec1c65d4729 inherit pub_methods_classCVC3_1_1SearchImplBase"><td class="mdescLeft">&#160;</td><td class="mdescRight">Reruns last check with e as an additional assumption.  <a href="group__SE.html#gad4a8edbe5a6520fc9f564ec1c65d4729"></a><br/></td></tr>
<tr class="separator:gad4a8edbe5a6520fc9f564ec1c65d4729 inherit pub_methods_classCVC3_1_1SearchImplBase"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ga7d62893d0d19ed50cc1f616a92d536c0 inherit pub_methods_classCVC3_1_1SearchImplBase"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__SE.html#ga7d62893d0d19ed50cc1f616a92d536c0">returnFromCheck</a> ()</td></tr>
<tr class="memdesc:ga7d62893d0d19ed50cc1f616a92d536c0 inherit pub_methods_classCVC3_1_1SearchImplBase"><td class="mdescLeft">&#160;</td><td class="mdescRight">Returns to context immediately before last call to checkValid.  <a href="group__SE.html#ga7d62893d0d19ed50cc1f616a92d536c0"></a><br/></td></tr>
<tr class="separator:ga7d62893d0d19ed50cc1f616a92d536c0 inherit pub_methods_classCVC3_1_1SearchImplBase"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ga95428fe99c7a85e5e90ba6b2dce0e024 inherit pub_methods_classCVC3_1_1SearchImplBase"><td class="memItemLeft" align="right" valign="top">virtual <a class="el" href="classCVC3_1_1Theorem.html">Theorem</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__SE.html#ga95428fe99c7a85e5e90ba6b2dce0e024">lastThm</a> ()</td></tr>
<tr class="memdesc:ga95428fe99c7a85e5e90ba6b2dce0e024 inherit pub_methods_classCVC3_1_1SearchImplBase"><td class="mdescLeft">&#160;</td><td class="mdescRight">Returns the result of the most recent valid theorem.  <a href="group__SE.html#ga95428fe99c7a85e5e90ba6b2dce0e024"></a><br/></td></tr>
<tr class="separator:ga95428fe99c7a85e5e90ba6b2dce0e024 inherit pub_methods_classCVC3_1_1SearchImplBase"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:gaf46a82b16f76c9e97cfe252d4398eac7 inherit pub_methods_classCVC3_1_1SearchImplBase"><td class="memItemLeft" align="right" valign="top"><a class="el" href="classCVC3_1_1Theorem.html">Theorem</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__SE.html#gaf46a82b16f76c9e97cfe252d4398eac7">newUserAssumption</a> (const <a class="el" href="classCVC3_1_1Expr.html">Expr</a> &amp;e)</td></tr>
<tr class="memdesc:gaf46a82b16f76c9e97cfe252d4398eac7 inherit pub_methods_classCVC3_1_1SearchImplBase"><td class="mdescLeft">&#160;</td><td class="mdescRight">Generate and add a new assertion to the set of assertions in the current context. This should only be used by class <a class="el" href="classCVC3_1_1VCL.html">VCL</a> in assertFormula().  <a href="group__SE.html#gaf46a82b16f76c9e97cfe252d4398eac7"></a><br/></td></tr>
<tr class="separator:gaf46a82b16f76c9e97cfe252d4398eac7 inherit pub_methods_classCVC3_1_1SearchImplBase"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:gab6852f32844435f73f86665c40d2fda8 inherit pub_methods_classCVC3_1_1SearchImplBase"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__SE.html#gab6852f32844435f73f86665c40d2fda8">newIntAssumption</a> (const <a class="el" href="classCVC3_1_1Theorem.html">Theorem</a> &amp;thm)</td></tr>
<tr class="memdesc:gab6852f32844435f73f86665c40d2fda8 inherit pub_methods_classCVC3_1_1SearchImplBase"><td class="mdescLeft">&#160;</td><td class="mdescRight">Helper for above function.  <a href="group__SE.html#gab6852f32844435f73f86665c40d2fda8"></a><br/></td></tr>
<tr class="separator:gab6852f32844435f73f86665c40d2fda8 inherit pub_methods_classCVC3_1_1SearchImplBase"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:gab730f3f048637996f532f77af932fe55 inherit pub_methods_classCVC3_1_1SearchImplBase"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__SE.html#gab730f3f048637996f532f77af932fe55">getUserAssumptions</a> (std::vector&lt; <a class="el" href="classCVC3_1_1Expr.html">Expr</a> &gt; &amp;assumptions)</td></tr>
<tr class="memdesc:gab730f3f048637996f532f77af932fe55 inherit pub_methods_classCVC3_1_1SearchImplBase"><td class="mdescLeft">&#160;</td><td class="mdescRight">Get all assumptions made in this and all previous contexts.  <a href="group__SE.html#gab730f3f048637996f532f77af932fe55"></a><br/></td></tr>
<tr class="separator:gab730f3f048637996f532f77af932fe55 inherit pub_methods_classCVC3_1_1SearchImplBase"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:gae65e0921e9ef2b475242b1a284a413ad inherit pub_methods_classCVC3_1_1SearchImplBase"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__SE.html#gae65e0921e9ef2b475242b1a284a413ad">getInternalAssumptions</a> (std::vector&lt; <a class="el" href="classCVC3_1_1Expr.html">Expr</a> &gt; &amp;assumptions)</td></tr>
<tr class="memdesc:gae65e0921e9ef2b475242b1a284a413ad inherit pub_methods_classCVC3_1_1SearchImplBase"><td class="mdescLeft">&#160;</td><td class="mdescRight">Get assumptions made internally in this and all previous contexts.  <a href="group__SE.html#gae65e0921e9ef2b475242b1a284a413ad"></a><br/></td></tr>
<tr class="separator:gae65e0921e9ef2b475242b1a284a413ad inherit pub_methods_classCVC3_1_1SearchImplBase"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:gadadf46fa5200744c9f30ca548080d35d inherit pub_methods_classCVC3_1_1SearchImplBase"><td class="memItemLeft" align="right" valign="top">virtual void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__SE.html#gadadf46fa5200744c9f30ca548080d35d">getAssumptions</a> (std::vector&lt; <a class="el" href="classCVC3_1_1Expr.html">Expr</a> &gt; &amp;assumptions)</td></tr>
<tr class="memdesc:gadadf46fa5200744c9f30ca548080d35d inherit pub_methods_classCVC3_1_1SearchImplBase"><td class="mdescLeft">&#160;</td><td class="mdescRight">Get all assumptions made in this and all previous contexts.  <a href="group__SE.html#gadadf46fa5200744c9f30ca548080d35d"></a><br/></td></tr>
<tr class="separator:gadadf46fa5200744c9f30ca548080d35d inherit pub_methods_classCVC3_1_1SearchImplBase"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:gac6e807418fb26dee354f7f934eb432ba inherit pub_methods_classCVC3_1_1SearchImplBase"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__SE.html#gac6e807418fb26dee354f7f934eb432ba">addFact</a> (const <a class="el" href="classCVC3_1_1Theorem.html">Theorem</a> &amp;thm)</td></tr>
<tr class="memdesc:gac6e807418fb26dee354f7f934eb432ba inherit pub_methods_classCVC3_1_1SearchImplBase"><td class="mdescLeft">&#160;</td><td class="mdescRight">Add a new fact to the search engine from the core.  <a href="group__SE.html#gac6e807418fb26dee354f7f934eb432ba"></a><br/></td></tr>
<tr class="separator:gac6e807418fb26dee354f7f934eb432ba inherit pub_methods_classCVC3_1_1SearchImplBase"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:gacf93ae1a488573c6d34dee7721007351 inherit pub_methods_classCVC3_1_1SearchImplBase"><td class="memItemLeft" align="right" valign="top">virtual void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__SE.html#gacf93ae1a488573c6d34dee7721007351">getCounterExample</a> (std::vector&lt; <a class="el" href="classCVC3_1_1Expr.html">Expr</a> &gt; &amp;assertions, bool inOrder=true)</td></tr>
<tr class="memdesc:gacf93ae1a488573c6d34dee7721007351 inherit pub_methods_classCVC3_1_1SearchImplBase"><td class="mdescLeft">&#160;</td><td class="mdescRight">Will return the set of assertions which make the queried formula false.  <a href="group__SE.html#gacf93ae1a488573c6d34dee7721007351"></a><br/></td></tr>
<tr class="separator:gacf93ae1a488573c6d34dee7721007351 inherit pub_methods_classCVC3_1_1SearchImplBase"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:gaf90e8ae5cd67dc6c43787a9d3ebdca53 inherit pub_methods_classCVC3_1_1SearchImplBase"><td class="memItemLeft" align="right" valign="top">virtual <a class="el" href="classCVC3_1_1Proof.html">Proof</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__SE.html#gaf90e8ae5cd67dc6c43787a9d3ebdca53">getProof</a> ()</td></tr>
<tr class="memdesc:gaf90e8ae5cd67dc6c43787a9d3ebdca53 inherit pub_methods_classCVC3_1_1SearchImplBase"><td class="mdescLeft">&#160;</td><td class="mdescRight">Returns the proof term for the last proven query.  <a href="group__SE.html#gaf90e8ae5cd67dc6c43787a9d3ebdca53"></a><br/></td></tr>
<tr class="separator:gaf90e8ae5cd67dc6c43787a9d3ebdca53 inherit pub_methods_classCVC3_1_1SearchImplBase"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ga24dc510f27c40d8044f461308bcdb62d inherit pub_methods_classCVC3_1_1SearchImplBase"><td class="memItemLeft" align="right" valign="top">virtual const <a class="el" href="classCVC3_1_1Assumptions.html">Assumptions</a> &amp;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__SE.html#ga24dc510f27c40d8044f461308bcdb62d">getAssumptionsUsed</a> ()</td></tr>
<tr class="memdesc:ga24dc510f27c40d8044f461308bcdb62d inherit pub_methods_classCVC3_1_1SearchImplBase"><td class="mdescLeft">&#160;</td><td class="mdescRight">Returns the set of assumptions used in the proof. It should be a subset of <a class="el" href="group__SE.html#gadadf46fa5200744c9f30ca548080d35d" title="Get all assumptions made in this and all previous contexts.">getAssumptions()</a>.  <a href="group__SE.html#ga24dc510f27c40d8044f461308bcdb62d"></a><br/></td></tr>
<tr class="separator:ga24dc510f27c40d8044f461308bcdb62d inherit pub_methods_classCVC3_1_1SearchImplBase"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ga0d509e38a03048dcbdb9e28f3f5da724 inherit pub_methods_classCVC3_1_1SearchImplBase"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__SE.html#ga0d509e38a03048dcbdb9e28f3f5da724">processResult</a> (const <a class="el" href="classCVC3_1_1Theorem.html">Theorem</a> &amp;res, const <a class="el" href="classCVC3_1_1Expr.html">Expr</a> &amp;e)</td></tr>
<tr class="memdesc:ga0d509e38a03048dcbdb9e28f3f5da724 inherit pub_methods_classCVC3_1_1SearchImplBase"><td class="mdescLeft">&#160;</td><td class="mdescRight">Process result of checkValid.  <a href="group__SE.html#ga0d509e38a03048dcbdb9e28f3f5da724"></a><br/></td></tr>
<tr class="separator:ga0d509e38a03048dcbdb9e28f3f5da724 inherit pub_methods_classCVC3_1_1SearchImplBase"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:gadf867c70d67d05d72a11895a2cc13971 inherit pub_methods_classCVC3_1_1SearchImplBase"><td class="memItemLeft" align="right" valign="top">virtual <a class="el" href="namespaceCVC3.html#a9d68f126b86e6fd08b3bc13a511df9bf">FormulaValue</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__SE.html#gadf867c70d67d05d72a11895a2cc13971">getValue</a> (const <a class="el" href="classCVC3_1_1Expr.html">CVC3::Expr</a> &amp;e)</td></tr>
<tr class="separator:gadf867c70d67d05d72a11895a2cc13971 inherit pub_methods_classCVC3_1_1SearchImplBase"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="inherit_header pub_methods_classCVC3_1_1SearchEngine"><td colspan="2" onclick="javascript:toggleInherit('pub_methods_classCVC3_1_1SearchEngine')"><img src="closed.png" alt="-"/>&#160;Public Member Functions inherited from <a class="el" href="classCVC3_1_1SearchEngine.html">CVC3::SearchEngine</a></td></tr>
<tr class="memitem:ga2763859e03e0a91877d91e20a3d26a7a inherit pub_methods_classCVC3_1_1SearchEngine"><td class="memItemLeft" align="right" valign="top">&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__SE.html#ga2763859e03e0a91877d91e20a3d26a7a">SearchEngine</a> (<a class="el" href="classCVC3_1_1TheoryCore.html">TheoryCore</a> *core)</td></tr>
<tr class="memdesc:ga2763859e03e0a91877d91e20a3d26a7a inherit pub_methods_classCVC3_1_1SearchEngine"><td class="mdescLeft">&#160;</td><td class="mdescRight">Constructor.  <a href="group__SE.html#ga2763859e03e0a91877d91e20a3d26a7a"></a><br/></td></tr>
<tr class="separator:ga2763859e03e0a91877d91e20a3d26a7a inherit pub_methods_classCVC3_1_1SearchEngine"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ga863ab87efd742b9a8f20b87774ab570f inherit pub_methods_classCVC3_1_1SearchEngine"><td class="memItemLeft" align="right" valign="top">virtual&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__SE.html#ga863ab87efd742b9a8f20b87774ab570f">~SearchEngine</a> ()</td></tr>
<tr class="memdesc:ga863ab87efd742b9a8f20b87774ab570f inherit pub_methods_classCVC3_1_1SearchEngine"><td class="mdescLeft">&#160;</td><td class="mdescRight">Destructor.  <a href="group__SE.html#ga863ab87efd742b9a8f20b87774ab570f"></a><br/></td></tr>
<tr class="separator:ga863ab87efd742b9a8f20b87774ab570f inherit pub_methods_classCVC3_1_1SearchEngine"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ga09d347bd55d59dc8f1d2f711df0d1c4c inherit pub_methods_classCVC3_1_1SearchEngine"><td class="memItemLeft" align="right" valign="top"><a class="el" href="classCVC3_1_1CommonProofRules.html">CommonProofRules</a> *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__SE.html#ga09d347bd55d59dc8f1d2f711df0d1c4c">getCommonRules</a> ()</td></tr>
<tr class="memdesc:ga09d347bd55d59dc8f1d2f711df0d1c4c inherit pub_methods_classCVC3_1_1SearchEngine"><td class="mdescLeft">&#160;</td><td class="mdescRight">Accessor for common rules.  <a href="group__SE.html#ga09d347bd55d59dc8f1d2f711df0d1c4c"></a><br/></td></tr>
<tr class="separator:ga09d347bd55d59dc8f1d2f711df0d1c4c inherit pub_methods_classCVC3_1_1SearchEngine"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ga895a3150e972fb79a7a3ab26100dd31e inherit pub_methods_classCVC3_1_1SearchEngine"><td class="memItemLeft" align="right" valign="top"><a class="el" href="classCVC3_1_1TheoryCore.html">TheoryCore</a> *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__SE.html#ga895a3150e972fb79a7a3ab26100dd31e">theoryCore</a> ()</td></tr>
<tr class="memdesc:ga895a3150e972fb79a7a3ab26100dd31e inherit pub_methods_classCVC3_1_1SearchEngine"><td class="mdescLeft">&#160;</td><td class="mdescRight">Accessor for <a class="el" href="classCVC3_1_1TheoryCore.html" title="This theory handles the built-in logical connectives plus equality. It also handles the registration ...">TheoryCore</a>.  <a href="group__SE.html#ga895a3150e972fb79a7a3ab26100dd31e"></a><br/></td></tr>
<tr class="separator:ga895a3150e972fb79a7a3ab26100dd31e inherit pub_methods_classCVC3_1_1SearchEngine"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:gae2a1cd46200160ac5855d7cd5f65517c inherit pub_methods_classCVC3_1_1SearchEngine"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__SE.html#gae2a1cd46200160ac5855d7cd5f65517c">getConcreteModel</a> (<a class="el" href="classCVC3_1_1ExprMap.html">ExprMap</a>&lt; <a class="el" href="classCVC3_1_1Expr.html">Expr</a> &gt; &amp;m)</td></tr>
<tr class="memdesc:gae2a1cd46200160ac5855d7cd5f65517c inherit pub_methods_classCVC3_1_1SearchEngine"><td class="mdescLeft">&#160;</td><td class="mdescRight">Build a concrete Model (assign values to variables), should only be called after a query which returns INVALID.  <a href="group__SE.html#gae2a1cd46200160ac5855d7cd5f65517c"></a><br/></td></tr>
<tr class="separator:gae2a1cd46200160ac5855d7cd5f65517c inherit pub_methods_classCVC3_1_1SearchEngine"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ga44f1c2fefc202249cd2cda55d7712bdf inherit pub_methods_classCVC3_1_1SearchEngine"><td class="memItemLeft" align="right" valign="top">bool&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__SE.html#ga44f1c2fefc202249cd2cda55d7712bdf">tryModelGeneration</a> (<a class="el" href="classCVC3_1_1Theorem.html">Theorem</a> &amp;thm)</td></tr>
<tr class="memdesc:ga44f1c2fefc202249cd2cda55d7712bdf inherit pub_methods_classCVC3_1_1SearchEngine"><td class="mdescLeft">&#160;</td><td class="mdescRight">Try to build a concrete Model (assign values to variables), should only be called after a query which returns UNKNOWN. Returns a theorem if inconsistent.  <a href="group__SE.html#ga44f1c2fefc202249cd2cda55d7712bdf"></a><br/></td></tr>
<tr class="separator:ga44f1c2fefc202249cd2cda55d7712bdf inherit pub_methods_classCVC3_1_1SearchEngine"><td class="memSeparator" colspan="2">&#160;</td></tr>
</table><table class="memberdecls">
<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="pri-methods"></a>
Private Member Functions</h2></td></tr>
<tr class="memitem:ga8f4353c8f8c65ed00806861471bd857f"><td class="memItemLeft" align="right" valign="top">std::vector&lt; std::pair&lt; <a class="el" href="classCVC3_1_1Clause.html">Clause</a>, <br class="typebreak"/>
int &gt; &gt; &amp;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__SE__Fast.html#ga8f4353c8f8c65ed00806861471bd857f">wp</a> (const <a class="el" href="classCVC3_1_1Literal.html">Literal</a> &amp;literal)</td></tr>
<tr class="memdesc:ga8f4353c8f8c65ed00806861471bd857f"><td class="mdescLeft">&#160;</td><td class="mdescRight">Return a ref to the vector of watched literals. If no such vector exists, create it.  <a href="group__SE__Fast.html#ga8f4353c8f8c65ed00806861471bd857f"></a><br/></td></tr>
<tr class="separator:ga8f4353c8f8c65ed00806861471bd857f"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:gac68652e5ed46a097f846ba9a86fcd630"><td class="memItemLeft" align="right" valign="top"><a class="el" href="namespaceCVC3.html#a060d21b3207cc3471e24f8dbcff3498b">QueryResult</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__SE__Fast.html#gac68652e5ed46a097f846ba9a86fcd630">checkSAT</a> ()</td></tr>
<tr class="separator:gac68652e5ed46a097f846ba9a86fcd630"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ga6d05128f71cc4e239030fe0434cda727"><td class="memItemLeft" align="right" valign="top">bool&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__SE__Fast.html#ga6d05128f71cc4e239030fe0434cda727">split</a> ()</td></tr>
<tr class="memdesc:ga6d05128f71cc4e239030fe0434cda727"><td class="mdescLeft">&#160;</td><td class="mdescRight">Choose a splitter.  <a href="group__SE__Fast.html#ga6d05128f71cc4e239030fe0434cda727"></a><br/></td></tr>
<tr class="separator:ga6d05128f71cc4e239030fe0434cda727"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ga711544b769f4c0a5713df247de927019"><td class="memItemLeft" align="right" valign="top"><a class="el" href="classCVC3_1_1Expr.html">Expr</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__SE__Fast.html#ga711544b769f4c0a5713df247de927019">findSplitter</a> ()</td></tr>
<tr class="memdesc:ga711544b769f4c0a5713df247de927019"><td class="mdescLeft">&#160;</td><td class="mdescRight">Returns a splitter.  <a href="group__SE__Fast.html#ga711544b769f4c0a5713df247de927019"></a><br/></td></tr>
<tr class="separator:ga711544b769f4c0a5713df247de927019"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:gadf72861b6482f6c585f3199d1436f7be"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__SE__Fast.html#gadf72861b6482f6c585f3199d1436f7be">clearLiterals</a> ()</td></tr>
<tr class="memdesc:gadf72861b6482f6c585f3199d1436f7be"><td class="mdescLeft">&#160;</td><td class="mdescRight">Clear the list of asserted literals (d_literals)  <a href="group__SE__Fast.html#gadf72861b6482f6c585f3199d1436f7be"></a><br/></td></tr>
<tr class="separator:gadf72861b6482f6c585f3199d1436f7be"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ga7311848b70f91fad18ca95b7347749cb"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__SE__Fast.html#ga7311848b70f91fad18ca95b7347749cb">updateLitScores</a> (bool firstTime)</td></tr>
<tr class="separator:ga7311848b70f91fad18ca95b7347749cb"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ga775b06e155128cc8817f254bc293c6c6"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__SE__Fast.html#ga775b06e155128cc8817f254bc293c6c6">updateLitCounts</a> (const <a class="el" href="classCVC3_1_1Clause.html">Clause</a> &amp;c)</td></tr>
<tr class="memdesc:ga775b06e155128cc8817f254bc293c6c6"><td class="mdescLeft">&#160;</td><td class="mdescRight">Add the literals of a new clause to d_litsByScores.  <a href="group__SE__Fast.html#ga775b06e155128cc8817f254bc293c6c6"></a><br/></td></tr>
<tr class="separator:ga775b06e155128cc8817f254bc293c6c6"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:gac6d49471ba5c76fffc7581e01e423218"><td class="memItemLeft" align="right" valign="top">bool&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__SE__Fast.html#gac6d49471ba5c76fffc7581e01e423218">bcp</a> ()</td></tr>
<tr class="memdesc:gac6d49471ba5c76fffc7581e01e423218"><td class="mdescLeft">&#160;</td><td class="mdescRight">Boolean constraint propagation.  <a href="group__SE__Fast.html#gac6d49471ba5c76fffc7581e01e423218"></a><br/></td></tr>
<tr class="separator:gac6d49471ba5c76fffc7581e01e423218"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ga4490cc372993398612e7556e14222ff3"><td class="memItemLeft" align="right" valign="top">bool&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__SE__Fast.html#ga4490cc372993398612e7556e14222ff3">fixConflict</a> ()</td></tr>
<tr class="memdesc:ga4490cc372993398612e7556e14222ff3"><td class="mdescLeft">&#160;</td><td class="mdescRight">Determines backtracking level and adds conflict clauses.  <a href="group__SE__Fast.html#ga4490cc372993398612e7556e14222ff3"></a><br/></td></tr>
<tr class="separator:ga4490cc372993398612e7556e14222ff3"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:gaf7daf6eac739438b5b25175bc7d63a71"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__SE__Fast.html#gaf7daf6eac739438b5b25175bc7d63a71">assertAssumptions</a> ()</td></tr>
<tr class="memdesc:gaf7daf6eac739438b5b25175bc7d63a71"><td class="mdescLeft">&#160;</td><td class="mdescRight">FIXME: document this.  <a href="group__SE__Fast.html#gaf7daf6eac739438b5b25175bc7d63a71"></a><br/></td></tr>
<tr class="separator:gaf7daf6eac739438b5b25175bc7d63a71"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ga2c71aa94289db9ece678963617660640"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__SE__Fast.html#ga2c71aa94289db9ece678963617660640">enqueueFact</a> (const <a class="el" href="classCVC3_1_1Theorem.html">Theorem</a> &amp;thm)</td></tr>
<tr class="memdesc:ga2c71aa94289db9ece678963617660640"><td class="mdescLeft">&#160;</td><td class="mdescRight">Queue up a fact to assert to the DPs later.  <a href="group__SE__Fast.html#ga2c71aa94289db9ece678963617660640"></a><br/></td></tr>
<tr class="separator:ga2c71aa94289db9ece678963617660640"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ga33ff53b3eeb9811b1510fffd3cdcf234"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__SE__Fast.html#ga33ff53b3eeb9811b1510fffd3cdcf234">setInconsistent</a> (const <a class="el" href="classCVC3_1_1Theorem.html">Theorem</a> &amp;thm)</td></tr>
<tr class="memdesc:ga33ff53b3eeb9811b1510fffd3cdcf234"><td class="mdescLeft">&#160;</td><td class="mdescRight">Set the context inconsistent. Takes Theorem(FALSE).  <a href="group__SE__Fast.html#ga33ff53b3eeb9811b1510fffd3cdcf234"></a><br/></td></tr>
<tr class="separator:ga33ff53b3eeb9811b1510fffd3cdcf234"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ga6d190905fefb2a36650306e5b577dd9a"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__SE__Fast.html#ga6d190905fefb2a36650306e5b577dd9a">commitFacts</a> ()</td></tr>
<tr class="memdesc:ga6d190905fefb2a36650306e5b577dd9a"><td class="mdescLeft">&#160;</td><td class="mdescRight">Commit all the enqueued facts to the DPs.  <a href="group__SE__Fast.html#ga6d190905fefb2a36650306e5b577dd9a"></a><br/></td></tr>
<tr class="separator:ga6d190905fefb2a36650306e5b577dd9a"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:gafa7937cc0b7d14c0aafb1f9c20abf011"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__SE__Fast.html#gafa7937cc0b7d14c0aafb1f9c20abf011">clearFacts</a> ()</td></tr>
<tr class="memdesc:gafa7937cc0b7d14c0aafb1f9c20abf011"><td class="mdescLeft">&#160;</td><td class="mdescRight">Clear the local fact queue.  <a href="group__SE__Fast.html#gafa7937cc0b7d14c0aafb1f9c20abf011"></a><br/></td></tr>
<tr class="separator:gafa7937cc0b7d14c0aafb1f9c20abf011"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:gad7548d572241f215212176af0216cb94"><td class="memItemLeft" align="right" valign="top">bool&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__SE__Fast.html#gad7548d572241f215212176af0216cb94">propagate</a> (const <a class="el" href="classCVC3_1_1Clause.html">Clause</a> &amp;c, int idx, bool &amp;wpUpdated)</td></tr>
<tr class="memdesc:gad7548d572241f215212176af0216cb94"><td class="mdescLeft">&#160;</td><td class="mdescRight">Auxiliary function for unit propagation.  <a href="group__SE__Fast.html#gad7548d572241f215212176af0216cb94"></a><br/></td></tr>
<tr class="separator:gad7548d572241f215212176af0216cb94"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ga88d524fb175ae8156696cc73cb182ffd"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__SE__Fast.html#ga88d524fb175ae8156696cc73cb182ffd">unitPropagation</a> (const <a class="el" href="classCVC3_1_1Clause.html">Clause</a> &amp;c, unsigned idx)</td></tr>
<tr class="memdesc:ga88d524fb175ae8156696cc73cb182ffd"><td class="mdescLeft">&#160;</td><td class="mdescRight">Do the unit propagation for the clause.  <a href="group__SE__Fast.html#ga88d524fb175ae8156696cc73cb182ffd"></a><br/></td></tr>
<tr class="separator:ga88d524fb175ae8156696cc73cb182ffd"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:gaac9cb2de28ec162fe5ecfe042ad7b101"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__SE__Fast.html#gaac9cb2de28ec162fe5ecfe042ad7b101">analyzeUIPs</a> (const <a class="el" href="classCVC3_1_1Theorem.html">Theorem</a> &amp;falseThm, int conflictScope)</td></tr>
<tr class="memdesc:gaac9cb2de28ec162fe5ecfe042ad7b101"><td class="mdescLeft">&#160;</td><td class="mdescRight">Analyse the conflict, find the UIPs, etc.  <a href="group__SE__Fast.html#gaac9cb2de28ec162fe5ecfe042ad7b101"></a><br/></td></tr>
<tr class="separator:gaac9cb2de28ec162fe5ecfe042ad7b101"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ga6e64b8f0a42bd4b42d22b50b351219c9"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__SE__Fast.html#ga6e64b8f0a42bd4b42d22b50b351219c9">addNewClause</a> (<a class="el" href="classCVC3_1_1Clause.html">Clause</a> &amp;c)</td></tr>
<tr class="memdesc:ga6e64b8f0a42bd4b42d22b50b351219c9"><td class="mdescLeft">&#160;</td><td class="mdescRight">Go through all the clauses and check the watch pointers (for debugging)  <a href="group__SE__Fast.html#ga6e64b8f0a42bd4b42d22b50b351219c9"></a><br/></td></tr>
<tr class="separator:ga6e64b8f0a42bd4b42d22b50b351219c9"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ga2ec0e19a01ac0926b690c50a3206c5a3"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__SE__Fast.html#ga2ec0e19a01ac0926b690c50a3206c5a3">recordFact</a> (const <a class="el" href="classCVC3_1_1Theorem.html">Theorem</a> &amp;thm)</td></tr>
<tr class="memdesc:ga2ec0e19a01ac0926b690c50a3206c5a3"><td class="mdescLeft">&#160;</td><td class="mdescRight">Process a new derived fact (auxiliary function)  <a href="group__SE__Fast.html#ga2ec0e19a01ac0926b690c50a3206c5a3"></a><br/></td></tr>
<tr class="separator:ga2ec0e19a01ac0926b690c50a3206c5a3"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:gab3f2a42375c5b3875ad18acd47ee124d"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__SE__Fast.html#gab3f2a42375c5b3875ad18acd47ee124d">traceConflict</a> (const <a class="el" href="classCVC3_1_1Theorem.html">Theorem</a> &amp;conflictThm)</td></tr>
<tr class="memdesc:gab3f2a42375c5b3875ad18acd47ee124d"><td class="mdescLeft">&#160;</td><td class="mdescRight">First pass in conflict analysis; takes a theorem of FALSE.  <a href="group__SE__Fast.html#gab3f2a42375c5b3875ad18acd47ee124d"></a><br/></td></tr>
<tr class="separator:gab3f2a42375c5b3875ad18acd47ee124d"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:gaac7ba666d67d3d4808642c5c7858db95"><td class="memItemLeft" align="right" valign="top"><a class="el" href="namespaceCVC3.html#a060d21b3207cc3471e24f8dbcff3498b">QueryResult</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__SE__Fast.html#gaac7ba666d67d3d4808642c5c7858db95">checkValidMain</a> (const <a class="el" href="classCVC3_1_1Expr.html">Expr</a> &amp;e2)</td></tr>
<tr class="memdesc:gaac7ba666d67d3d4808642c5c7858db95"><td class="mdescLeft">&#160;</td><td class="mdescRight">Private helper function for checkValid and restart.  <a href="group__SE__Fast.html#gaac7ba666d67d3d4808642c5c7858db95"></a><br/></td></tr>
<tr class="separator:gaac7ba666d67d3d4808642c5c7858db95"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr><td colspan="2"><div class="groupHeader">Processing a Conflict</div></td></tr>
<tr class="memitem:ga2535b1eabb9eb7e7f3a6197dbb377cb4"><td class="memItemLeft" align="right" valign="top"><a class="el" href="classCVC3_1_1Theorem.html">Theorem</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__SE__Fast.html#ga2535b1eabb9eb7e7f3a6197dbb377cb4">processConflict</a> (const <a class="el" href="classCVC3_1_1Literal.html">Literal</a> &amp;l)</td></tr>
<tr class="memdesc:ga2535b1eabb9eb7e7f3a6197dbb377cb4"><td class="mdescLeft">&#160;</td><td class="mdescRight">Take a conflict in the form of <a class="el" href="classCVC3_1_1Literal.html">Literal</a>, or <a class="el" href="classCVC3_1_1Theorem.html">Theorem</a>, and generate all the necessary conflict clauses.  <a href="group__SE__Fast.html#ga2535b1eabb9eb7e7f3a6197dbb377cb4"></a><br/></td></tr>
<tr class="separator:ga2535b1eabb9eb7e7f3a6197dbb377cb4"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ga3a60df36c6707139c0f6662f32270765"><td class="memItemLeft" align="right" valign="top"><a class="el" href="classCVC3_1_1Theorem.html">Theorem</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__SE__Fast.html#ga3a60df36c6707139c0f6662f32270765">processConflict</a> (const <a class="el" href="classCVC3_1_1Theorem.html">Theorem</a> &amp;thm)</td></tr>
<tr class="memdesc:ga3a60df36c6707139c0f6662f32270765"><td class="mdescLeft">&#160;</td><td class="mdescRight">Take a conflict in the form of <a class="el" href="classCVC3_1_1Literal.html">Literal</a>, or <a class="el" href="classCVC3_1_1Theorem.html">Theorem</a>, and generate all the necessary conflict clauses.  <a href="group__SE__Fast.html#ga3a60df36c6707139c0f6662f32270765"></a><br/></td></tr>
<tr class="separator:ga3a60df36c6707139c0f6662f32270765"><td class="memSeparator" colspan="2">&#160;</td></tr>
</table><table class="memberdecls">
<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="pri-attribs"></a>
Private Attributes</h2></td></tr>
<tr class="memitem:ga91ff4e54d0b66c31eb0d2653fad650cb"><td class="memItemLeft" align="right" valign="top">std::string&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__SE__Fast.html#ga91ff4e54d0b66c31eb0d2653fad650cb">d_name</a></td></tr>
<tr class="memdesc:ga91ff4e54d0b66c31eb0d2653fad650cb"><td class="mdescLeft">&#160;</td><td class="mdescRight">Name.  <a href="group__SE__Fast.html#ga91ff4e54d0b66c31eb0d2653fad650cb"></a><br/></td></tr>
<tr class="separator:ga91ff4e54d0b66c31eb0d2653fad650cb"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:gafa042a51f718c312ea7728f175958e35"><td class="memItemLeft" align="right" valign="top"><a class="el" href="classCVC3_1_1DecisionEngine.html">DecisionEngine</a> *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__SE__Fast.html#gafa042a51f718c312ea7728f175958e35">d_decisionEngine</a></td></tr>
<tr class="memdesc:gafa042a51f718c312ea7728f175958e35"><td class="mdescLeft">&#160;</td><td class="mdescRight">Decision Engine.  <a href="group__SE__Fast.html#gafa042a51f718c312ea7728f175958e35"></a><br/></td></tr>
<tr class="separator:gafa042a51f718c312ea7728f175958e35"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ga29e749a0ca7cbe86118a0d72e02e0696"><td class="memItemLeft" align="right" valign="top"><a class="el" href="classCVC3_1_1StatCounter.html">StatCounter</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__SE__Fast.html#ga29e749a0ca7cbe86118a0d72e02e0696">d_unitPropCount</a></td></tr>
<tr class="memdesc:ga29e749a0ca7cbe86118a0d72e02e0696"><td class="mdescLeft">&#160;</td><td class="mdescRight">Total number of unit propagations.  <a href="group__SE__Fast.html#ga29e749a0ca7cbe86118a0d72e02e0696"></a><br/></td></tr>
<tr class="separator:ga29e749a0ca7cbe86118a0d72e02e0696"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ga749d335e3d18b71aa951d37e943fbf50"><td class="memItemLeft" align="right" valign="top"><a class="el" href="classCVC3_1_1StatCounter.html">StatCounter</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__SE__Fast.html#ga749d335e3d18b71aa951d37e943fbf50">d_circuitPropCount</a></td></tr>
<tr class="memdesc:ga749d335e3d18b71aa951d37e943fbf50"><td class="mdescLeft">&#160;</td><td class="mdescRight">Total number of circuit propagations.  <a href="group__SE__Fast.html#ga749d335e3d18b71aa951d37e943fbf50"></a><br/></td></tr>
<tr class="separator:ga749d335e3d18b71aa951d37e943fbf50"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:gaecd7cc2115fe235653a62acf93ccb1e5"><td class="memItemLeft" align="right" valign="top"><a class="el" href="classCVC3_1_1StatCounter.html">StatCounter</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__SE__Fast.html#gaecd7cc2115fe235653a62acf93ccb1e5">d_conflictCount</a></td></tr>
<tr class="memdesc:gaecd7cc2115fe235653a62acf93ccb1e5"><td class="mdescLeft">&#160;</td><td class="mdescRight">Total number of conflicts.  <a href="group__SE__Fast.html#gaecd7cc2115fe235653a62acf93ccb1e5"></a><br/></td></tr>
<tr class="separator:gaecd7cc2115fe235653a62acf93ccb1e5"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ga483cb3c4c889013b03e2c923977d4ae5"><td class="memItemLeft" align="right" valign="top"><a class="el" href="classCVC3_1_1StatCounter.html">StatCounter</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__SE__Fast.html#ga483cb3c4c889013b03e2c923977d4ae5">d_conflictClauseCount</a></td></tr>
<tr class="memdesc:ga483cb3c4c889013b03e2c923977d4ae5"><td class="mdescLeft">&#160;</td><td class="mdescRight">Total number of conflict clauses generated (not all may be active)  <a href="group__SE__Fast.html#ga483cb3c4c889013b03e2c923977d4ae5"></a><br/></td></tr>
<tr class="separator:ga483cb3c4c889013b03e2c923977d4ae5"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:gaa1dd9a29eac4c7da6c669d7888909ca5"><td class="memItemLeft" align="right" valign="top"><a class="el" href="classCVC3_1_1CDList.html">CDList</a>&lt; <a class="el" href="classCVC3_1_1ClauseOwner.html">ClauseOwner</a> &gt;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__SE__Fast.html#gaa1dd9a29eac4c7da6c669d7888909ca5">d_clauses</a></td></tr>
<tr class="memdesc:gaa1dd9a29eac4c7da6c669d7888909ca5"><td class="mdescLeft">&#160;</td><td class="mdescRight">Backtrackable list of clauses.  <a href="group__SE__Fast.html#gaa1dd9a29eac4c7da6c669d7888909ca5"></a><br/></td></tr>
<tr class="separator:gaa1dd9a29eac4c7da6c669d7888909ca5"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:gabe8dbaf4592793c49cd58ff93a897a06"><td class="memItemLeft" align="right" valign="top"><a class="el" href="classCVC3_1_1CDMap.html">CDMap</a>&lt; <a class="el" href="classCVC3_1_1Expr.html">Expr</a>, <a class="el" href="classCVC3_1_1Theorem.html">Theorem</a> &gt;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__SE__Fast.html#gabe8dbaf4592793c49cd58ff93a897a06">d_unreportedLits</a></td></tr>
<tr class="memdesc:gabe8dbaf4592793c49cd58ff93a897a06"><td class="mdescLeft">&#160;</td><td class="mdescRight">Backtrackable set of pending unprocessed literals.  <a href="group__SE__Fast.html#gabe8dbaf4592793c49cd58ff93a897a06"></a><br/></td></tr>
<tr class="separator:gabe8dbaf4592793c49cd58ff93a897a06"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ga8217149b882d328384bd7a04a5e5c5f3"><td class="memItemLeft" align="right" valign="top"><a class="el" href="classCVC3_1_1CDMap.html">CDMap</a>&lt; <a class="el" href="classCVC3_1_1Expr.html">Expr</a>, bool &gt;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__SE__Fast.html#ga8217149b882d328384bd7a04a5e5c5f3">d_unreportedLitsHandled</a></td></tr>
<tr class="separator:ga8217149b882d328384bd7a04a5e5c5f3"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ga07c8e260b60d83042c97453892a15f38"><td class="memItemLeft" align="right" valign="top"><a class="el" href="classCVC3_1_1CDList.html">CDList</a>&lt; <a class="el" href="classCVC3_1_1SmartCDO.html">SmartCDO</a>&lt; <a class="el" href="classCVC3_1_1Theorem.html">Theorem</a> &gt; &gt;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__SE__Fast.html#ga07c8e260b60d83042c97453892a15f38">d_nonLiterals</a></td></tr>
<tr class="memdesc:ga07c8e260b60d83042c97453892a15f38"><td class="mdescLeft">&#160;</td><td class="mdescRight">Backtrackable list of non-literals (non-CNF formulas).  <a href="group__SE__Fast.html#ga07c8e260b60d83042c97453892a15f38"></a><br/></td></tr>
<tr class="separator:ga07c8e260b60d83042c97453892a15f38"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:gae88240871407db238ad8c6a795ba6b91"><td class="memItemLeft" align="right" valign="top"><a class="el" href="classCVC3_1_1CDMap.html">CDMap</a>&lt; <a class="el" href="classCVC3_1_1Expr.html">Expr</a>, <a class="el" href="classCVC3_1_1Theorem.html">Theorem</a> &gt;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__SE__Fast.html#gae88240871407db238ad8c6a795ba6b91">d_nonLiteralsSaved</a></td></tr>
<tr class="memdesc:gae88240871407db238ad8c6a795ba6b91"><td class="mdescLeft">&#160;</td><td class="mdescRight">prevent reprocessing  <a href="group__SE__Fast.html#gae88240871407db238ad8c6a795ba6b91"></a><br/></td></tr>
<tr class="separator:gae88240871407db238ad8c6a795ba6b91"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:gaa8b578a017bcddd578e943add44c2940"><td class="memItemLeft" align="right" valign="top"><a class="el" href="classCVC3_1_1CDO.html">CDO</a>&lt; <a class="el" href="classCVC3_1_1Theorem.html">Theorem</a> &gt;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__SE__Fast.html#gaa8b578a017bcddd578e943add44c2940">d_simplifiedThm</a></td></tr>
<tr class="memdesc:gaa8b578a017bcddd578e943add44c2940"><td class="mdescLeft">&#160;</td><td class="mdescRight"><a class="el" href="classCVC3_1_1Theorem.html">Theorem</a> which records simplification of the last query.  <a href="group__SE__Fast.html#gaa8b578a017bcddd578e943add44c2940"></a><br/></td></tr>
<tr class="separator:gaa8b578a017bcddd578e943add44c2940"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:gae4a9e9926613365979d36e2a98769381"><td class="memItemLeft" align="right" valign="top"><a class="el" href="classCVC3_1_1CDO.html">CDO</a>&lt; unsigned &gt;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__SE__Fast.html#gae4a9e9926613365979d36e2a98769381">d_nonlitQueryStart</a></td></tr>
<tr class="memdesc:gae4a9e9926613365979d36e2a98769381"><td class="mdescLeft">&#160;</td><td class="mdescRight">Size of d_nonLiterals before most recent query.  <a href="group__SE__Fast.html#gae4a9e9926613365979d36e2a98769381"></a><br/></td></tr>
<tr class="separator:gae4a9e9926613365979d36e2a98769381"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ga8472c82be89057f32c68a0f0423215a2"><td class="memItemLeft" align="right" valign="top"><a class="el" href="classCVC3_1_1CDO.html">CDO</a>&lt; unsigned &gt;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__SE__Fast.html#ga8472c82be89057f32c68a0f0423215a2">d_nonlitQueryEnd</a></td></tr>
<tr class="memdesc:ga8472c82be89057f32c68a0f0423215a2"><td class="mdescLeft">&#160;</td><td class="mdescRight">Size of d_nonLiterals after query (not including DP-generated non-literals)  <a href="group__SE__Fast.html#ga8472c82be89057f32c68a0f0423215a2"></a><br/></td></tr>
<tr class="separator:ga8472c82be89057f32c68a0f0423215a2"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ga71a2e31fe2a16420a416b5aeced09455"><td class="memItemLeft" align="right" valign="top"><a class="el" href="classCVC3_1_1CDO.html">CDO</a>&lt; unsigned &gt;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__SE__Fast.html#ga71a2e31fe2a16420a416b5aeced09455">d_clausesQueryStart</a></td></tr>
<tr class="memdesc:ga71a2e31fe2a16420a416b5aeced09455"><td class="mdescLeft">&#160;</td><td class="mdescRight">Size of d_clauses before most recent query.  <a href="group__SE__Fast.html#ga71a2e31fe2a16420a416b5aeced09455"></a><br/></td></tr>
<tr class="separator:ga71a2e31fe2a16420a416b5aeced09455"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ga6dbfd2cd66dee5634f096593f26c47e7"><td class="memItemLeft" align="right" valign="top"><a class="el" href="classCVC3_1_1CDO.html">CDO</a>&lt; unsigned &gt;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__SE__Fast.html#ga6dbfd2cd66dee5634f096593f26c47e7">d_clausesQueryEnd</a></td></tr>
<tr class="memdesc:ga6dbfd2cd66dee5634f096593f26c47e7"><td class="mdescLeft">&#160;</td><td class="mdescRight">Size of d_clauses after query.  <a href="group__SE__Fast.html#ga6dbfd2cd66dee5634f096593f26c47e7"></a><br/></td></tr>
<tr class="separator:ga6dbfd2cd66dee5634f096593f26c47e7"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ga8e96b8f24bd89c190e561f387a4a30ee"><td class="memItemLeft" align="right" valign="top">std::vector&lt; std::deque<br class="typebreak"/>
&lt; <a class="el" href="classCVC3_1_1ClauseOwner.html">ClauseOwner</a> &gt; * &gt;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__SE__Fast.html#ga8e96b8f24bd89c190e561f387a4a30ee">d_conflictClauseStack</a></td></tr>
<tr class="memdesc:ga8e96b8f24bd89c190e561f387a4a30ee"><td class="mdescLeft">&#160;</td><td class="mdescRight">Array of conflict clauses: one deque for each outstanding query.  <a href="group__SE__Fast.html#ga8e96b8f24bd89c190e561f387a4a30ee"></a><br/></td></tr>
<tr class="separator:ga8e96b8f24bd89c190e561f387a4a30ee"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:gad79601e3b2032aee4d23dc4bbd785fc3"><td class="memItemLeft" align="right" valign="top">std::deque&lt; <a class="el" href="classCVC3_1_1ClauseOwner.html">ClauseOwner</a> &gt; *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__SE__Fast.html#gad79601e3b2032aee4d23dc4bbd785fc3">d_conflictClauses</a></td></tr>
<tr class="memdesc:gad79601e3b2032aee4d23dc4bbd785fc3"><td class="mdescLeft">&#160;</td><td class="mdescRight">Reference to top deque of conflict clauses.  <a href="group__SE__Fast.html#gad79601e3b2032aee4d23dc4bbd785fc3"></a><br/></td></tr>
<tr class="separator:gad79601e3b2032aee4d23dc4bbd785fc3"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:gaab577b22f09d51b9b15954b9a529c05d"><td class="memItemLeft" align="right" valign="top"><a class="el" href="classCVC3_1_1SearchEngineFast_1_1ConflictClauseManager.html">ConflictClauseManager</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__SE__Fast.html#gaab577b22f09d51b9b15954b9a529c05d">d_conflictClauseManager</a></td></tr>
<tr class="separator:gaab577b22f09d51b9b15954b9a529c05d"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:gad05f577d00e93fefed74eb0c19015090"><td class="memItemLeft" align="right" valign="top">std::vector&lt; <a class="el" href="classCVC3_1_1Clause.html">Clause</a> &gt;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__SE__Fast.html#gad05f577d00e93fefed74eb0c19015090">d_unitConflictClauses</a></td></tr>
<tr class="memdesc:gad05f577d00e93fefed74eb0c19015090"><td class="mdescLeft">&#160;</td><td class="mdescRight">Unprocessed unit conflict clauses.  <a href="group__SE__Fast.html#gad05f577d00e93fefed74eb0c19015090"></a><br/></td></tr>
<tr class="separator:gad05f577d00e93fefed74eb0c19015090"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:gaa6a69bd3df4bb72abd1e9b0fe868fc0d"><td class="memItemLeft" align="right" valign="top">std::vector&lt; <a class="el" href="classCVC3_1_1Literal.html">Literal</a> &gt;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__SE__Fast.html#gaa6a69bd3df4bb72abd1e9b0fe868fc0d">d_literals</a></td></tr>
<tr class="memdesc:gaa6a69bd3df4bb72abd1e9b0fe868fc0d"><td class="mdescLeft">&#160;</td><td class="mdescRight">Set of literals to be processed by bcp.  <a href="group__SE__Fast.html#gaa6a69bd3df4bb72abd1e9b0fe868fc0d"></a><br/></td></tr>
<tr class="separator:gaa6a69bd3df4bb72abd1e9b0fe868fc0d"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:gaf720bf50e81fc4e2561b587d97ec2839"><td class="memItemLeft" align="right" valign="top"><a class="el" href="classCVC3_1_1CDMap.html">CDMap</a>&lt; <a class="el" href="classCVC3_1_1Expr.html">Expr</a>, <a class="el" href="classCVC3_1_1Literal.html">Literal</a> &gt;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__SE__Fast.html#gaf720bf50e81fc4e2561b587d97ec2839">d_literalSet</a></td></tr>
<tr class="memdesc:gaf720bf50e81fc4e2561b587d97ec2839"><td class="mdescLeft">&#160;</td><td class="mdescRight">Set of asserted literals which may survive accross <a class="el" href="group__SE.html#ga83d82b8cf43e9dc8240e762b180f6343" title="Similar to checkValidInternal(), only returns Theorem(e) or Null.">checkValid()</a> calls.  <a href="group__SE__Fast.html#gaf720bf50e81fc4e2561b587d97ec2839"></a><br/></td></tr>
<tr class="separator:gaf720bf50e81fc4e2561b587d97ec2839"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ga4b05dccebac3de019dc112ab3dffc988"><td class="memItemLeft" align="right" valign="top">std::vector&lt; <a class="el" href="classCVC3_1_1Theorem.html">Theorem</a> &gt;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__SE__Fast.html#ga4b05dccebac3de019dc112ab3dffc988">d_factQueue</a></td></tr>
<tr class="memdesc:ga4b05dccebac3de019dc112ab3dffc988"><td class="mdescLeft">&#160;</td><td class="mdescRight">Queue of derived facts to be sent to DPs.  <a href="group__SE__Fast.html#ga4b05dccebac3de019dc112ab3dffc988"></a><br/></td></tr>
<tr class="separator:ga4b05dccebac3de019dc112ab3dffc988"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:gaa1ea8707c10a13a631402860eff87026"><td class="memItemLeft" align="right" valign="top">bool&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__SE__Fast.html#gaa1ea8707c10a13a631402860eff87026">d_useEnqueueFact</a></td></tr>
<tr class="memdesc:gaa1ea8707c10a13a631402860eff87026"><td class="mdescLeft">&#160;</td><td class="mdescRight">When true, use <a class="el" href="classCVC3_1_1TheoryCore.html#a0ceab59114fc3864bac9a347c61ec444" title="Enqueue a new fact.">TheoryCore::enqueueFact()</a> instead of <a class="el" href="group__SE.html#gac6e807418fb26dee354f7f934eb432ba" title="Add a new fact to the search engine from the core.">addFact()</a> in <a class="el" href="group__SE__Fast.html#ga6d190905fefb2a36650306e5b577dd9a" title="Commit all the enqueued facts to the DPs.">commitFacts()</a>  <a href="group__SE__Fast.html#gaa1ea8707c10a13a631402860eff87026"></a><br/></td></tr>
<tr class="separator:gaa1ea8707c10a13a631402860eff87026"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ga6368ec56b20c12896000e370bbb4a3b6"><td class="memItemLeft" align="right" valign="top">bool&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__SE__Fast.html#ga6368ec56b20c12896000e370bbb4a3b6">d_inCheckSAT</a></td></tr>
<tr class="memdesc:ga6368ec56b20c12896000e370bbb4a3b6"><td class="mdescLeft">&#160;</td><td class="mdescRight">True when <a class="el" href="group__SE__Fast.html#gac68652e5ed46a097f846ba9a86fcd630">checkSAT()</a> is running.  <a href="group__SE__Fast.html#ga6368ec56b20c12896000e370bbb4a3b6"></a><br/></td></tr>
<tr class="separator:ga6368ec56b20c12896000e370bbb4a3b6"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ga0214c0205e48fd792c4d01d3428cd333"><td class="memItemLeft" align="right" valign="top"><a class="el" href="classCVC3_1_1CDList.html">CDList</a>&lt; <a class="el" href="classCVC3_1_1Literal.html">Literal</a> &gt;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__SE__Fast.html#ga0214c0205e48fd792c4d01d3428cd333">d_litsAlive</a></td></tr>
<tr class="memdesc:ga0214c0205e48fd792c4d01d3428cd333"><td class="mdescLeft">&#160;</td><td class="mdescRight">Set of alive literals that shouldn't be garbage-collected.  <a href="group__SE__Fast.html#ga0214c0205e48fd792c4d01d3428cd333"></a><br/></td></tr>
<tr class="separator:ga0214c0205e48fd792c4d01d3428cd333"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ga5db32a771408c468676e407075184b64"><td class="memItemLeft" align="right" valign="top">std::vector&lt; <a class="el" href="classCVC3_1_1Circuit.html">Circuit</a> * &gt;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__SE__Fast.html#ga5db32a771408c468676e407075184b64">d_circuits</a></td></tr>
<tr class="memdesc:ga5db32a771408c468676e407075184b64"><td class="mdescLeft">&#160;</td><td class="mdescRight">Mappings of literals to vectors of pointers to the corresponding watched literals.  <a href="group__SE__Fast.html#ga5db32a771408c468676e407075184b64"></a><br/></td></tr>
<tr class="separator:ga5db32a771408c468676e407075184b64"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ga84bfa366c43221ba288e0a1bd716efc6"><td class="memItemLeft" align="right" valign="top"><a class="el" href="classCVC3_1_1ExprHashMap.html">ExprHashMap</a>&lt; std::vector<br class="typebreak"/>
&lt; <a class="el" href="classCVC3_1_1Circuit.html">Circuit</a> * &gt; &gt;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__SE__Fast.html#ga84bfa366c43221ba288e0a1bd716efc6">d_circuitsByExpr</a></td></tr>
<tr class="separator:ga84bfa366c43221ba288e0a1bd716efc6"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:gab27227ee9e005ab22a9e2a251bc7c6d1"><td class="memItemLeft" align="right" valign="top">int&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__SE__Fast.html#gab27227ee9e005ab22a9e2a251bc7c6d1">d_lastConflictScope</a></td></tr>
<tr class="memdesc:gab27227ee9e005ab22a9e2a251bc7c6d1"><td class="mdescLeft">&#160;</td><td class="mdescRight">The scope of the last conflict.  <a href="group__SE__Fast.html#gab27227ee9e005ab22a9e2a251bc7c6d1"></a><br/></td></tr>
<tr class="separator:gab27227ee9e005ab22a9e2a251bc7c6d1"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ga46e91bb5d782794c6dca6abaa99dc4f9"><td class="memItemLeft" align="right" valign="top"><a class="el" href="classCVC3_1_1Clause.html">Clause</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__SE__Fast.html#ga46e91bb5d782794c6dca6abaa99dc4f9">d_lastConflictClause</a></td></tr>
<tr class="memdesc:ga46e91bb5d782794c6dca6abaa99dc4f9"><td class="mdescLeft">&#160;</td><td class="mdescRight">The last conflict clause (for <a class="el" href="group__SE__Fast.html#gac68652e5ed46a097f846ba9a86fcd630">checkSAT()</a>). May be Null.  <a href="group__SE__Fast.html#ga46e91bb5d782794c6dca6abaa99dc4f9"></a><br/></td></tr>
<tr class="separator:ga46e91bb5d782794c6dca6abaa99dc4f9"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:gae961b4fb4bb059a1d867447fc487aaee"><td class="memItemLeft" align="right" valign="top"><a class="el" href="classCVC3_1_1Theorem.html">Theorem</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__SE__Fast.html#gae961b4fb4bb059a1d867447fc487aaee">d_conflictTheorem</a></td></tr>
<tr class="memdesc:gae961b4fb4bb059a1d867447fc487aaee"><td class="mdescLeft">&#160;</td><td class="mdescRight">Theorem(FALSE) which generated a conflict.  <a href="group__SE__Fast.html#gae961b4fb4bb059a1d867447fc487aaee"></a><br/></td></tr>
<tr class="separator:gae961b4fb4bb059a1d867447fc487aaee"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:gad80c2b69b88a04c8c78309859abd3f76"><td class="memItemLeft" align="right" valign="top">unsigned&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__SE__Fast.html#gad80c2b69b88a04c8c78309859abd3f76">d_litsMaxScorePos</a></td></tr>
<tr class="memdesc:gad80c2b69b88a04c8c78309859abd3f76"><td class="mdescLeft">&#160;</td><td class="mdescRight">Position of a literal with max score in d_litsByScores.  <a href="group__SE__Fast.html#gad80c2b69b88a04c8c78309859abd3f76"></a><br/></td></tr>
<tr class="separator:gad80c2b69b88a04c8c78309859abd3f76"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ga57c1c1e58ebd2c1d23a57db97880fbbc"><td class="memItemLeft" align="right" valign="top">std::vector&lt; <a class="el" href="classCVC3_1_1Literal.html">Literal</a> &gt;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__SE__Fast.html#ga57c1c1e58ebd2c1d23a57db97880fbbc">d_litsByScores</a></td></tr>
<tr class="memdesc:ga57c1c1e58ebd2c1d23a57db97880fbbc"><td class="mdescLeft">&#160;</td><td class="mdescRight">Vector of literals sorted by score.  <a href="group__SE__Fast.html#ga57c1c1e58ebd2c1d23a57db97880fbbc"></a><br/></td></tr>
<tr class="separator:ga57c1c1e58ebd2c1d23a57db97880fbbc"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ga52c9c181bcd623a36ab594e0ee16a67e"><td class="memItemLeft" align="right" valign="top">int&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__SE__Fast.html#ga52c9c181bcd623a36ab594e0ee16a67e">d_splitterCount</a></td></tr>
<tr class="memdesc:ga52c9c181bcd623a36ab594e0ee16a67e"><td class="mdescLeft">&#160;</td><td class="mdescRight">Internal splitter counter for delaying <a class="el" href="group__SE__Fast.html#ga7311848b70f91fad18ca95b7347749cb">updateLitScores()</a>  <a href="group__SE__Fast.html#ga52c9c181bcd623a36ab594e0ee16a67e"></a><br/></td></tr>
<tr class="separator:ga52c9c181bcd623a36ab594e0ee16a67e"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ga2d54fdadc1b167dbbb366e37e0b97a58"><td class="memItemLeft" align="right" valign="top">int&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__SE__Fast.html#ga2d54fdadc1b167dbbb366e37e0b97a58">d_litSortCount</a></td></tr>
<tr class="memdesc:ga2d54fdadc1b167dbbb366e37e0b97a58"><td class="mdescLeft">&#160;</td><td class="mdescRight">Internal (decrementing) count of added splitters, to sort d_litByScores.  <a href="group__SE__Fast.html#ga2d54fdadc1b167dbbb366e37e0b97a58"></a><br/></td></tr>
<tr class="separator:ga2d54fdadc1b167dbbb366e37e0b97a58"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ga3877f82445d777c19c60b6ec117335e2"><td class="memItemLeft" align="right" valign="top">const bool&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__SE__Fast.html#ga3877f82445d777c19c60b6ec117335e2">d_berkminFlag</a></td></tr>
<tr class="memdesc:ga3877f82445d777c19c60b6ec117335e2"><td class="mdescLeft">&#160;</td><td class="mdescRight">Flag to switch on/off the berkmin heuristic.  <a href="group__SE__Fast.html#ga3877f82445d777c19c60b6ec117335e2"></a><br/></td></tr>
<tr class="separator:ga3877f82445d777c19c60b6ec117335e2"><td class="memSeparator" colspan="2">&#160;</td></tr>
</table><table class="memberdecls">
<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="friends"></a>
Friends</h2></td></tr>
<tr class="memitem:a120b136c2c9bc1938e0cd2cca80d91e4"><td class="memItemLeft" align="right" valign="top">class&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classCVC3_1_1SearchEngineFast.html#a120b136c2c9bc1938e0cd2cca80d91e4">Circuit</a></td></tr>
<tr class="separator:a120b136c2c9bc1938e0cd2cca80d91e4"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ga771f251de98c5689b33e123d5603722d"><td class="memItemLeft" align="right" valign="top">class&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__SE__Fast.html#ga771f251de98c5689b33e123d5603722d">ConflictClauseManager</a></td></tr>
<tr class="memdesc:ga771f251de98c5689b33e123d5603722d"><td class="mdescLeft">&#160;</td><td class="mdescRight">Helper class for managing conflict clauses.  <a href="group__SE__Fast.html#ga771f251de98c5689b33e123d5603722d"></a><br/></td></tr>
<tr class="separator:ga771f251de98c5689b33e123d5603722d"><td class="memSeparator" colspan="2">&#160;</td></tr>
</table><table class="memberdecls">
<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="inherited"></a>
Additional Inherited Members</h2></td></tr>
<tr class="inherit_header pro_methods_classCVC3_1_1SearchImplBase"><td colspan="2" onclick="javascript:toggleInherit('pro_methods_classCVC3_1_1SearchImplBase')"><img src="closed.png" alt="-"/>&#160;Protected Member Functions inherited from <a class="el" href="classCVC3_1_1SearchImplBase.html">CVC3::SearchImplBase</a></td></tr>
<tr class="memitem:gaf0dbbb1806723760ab8744e96a8c6657 inherit pro_methods_classCVC3_1_1SearchImplBase"><td class="memItemLeft" align="right" valign="top"><a class="el" href="classCVC3_1_1Literal.html">Literal</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__SE.html#gaf0dbbb1806723760ab8744e96a8c6657">newLiteral</a> (const <a class="el" href="classCVC3_1_1Expr.html">Expr</a> &amp;e)</td></tr>
<tr class="memdesc:gaf0dbbb1806723760ab8744e96a8c6657 inherit pro_methods_classCVC3_1_1SearchImplBase"><td class="mdescLeft">&#160;</td><td class="mdescRight">Construct a <a class="el" href="classCVC3_1_1Literal.html">Literal</a> out of an <a class="el" href="classCVC3_1_1Expr.html" title="Data structure of expressions in CVC3.">Expr</a> or return an existing one.  <a href="group__SE.html#gaf0dbbb1806723760ab8744e96a8c6657"></a><br/></td></tr>
<tr class="separator:gaf0dbbb1806723760ab8744e96a8c6657 inherit pro_methods_classCVC3_1_1SearchImplBase"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:gaaa621df0c7e2a2043139e6451eab7072 inherit pro_methods_classCVC3_1_1SearchImplBase"><td class="memItemLeft" align="right" valign="top"><a class="el" href="classCVC3_1_1Theorem.html">Theorem</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__SE.html#gaaa621df0c7e2a2043139e6451eab7072">simplify</a> (const <a class="el" href="classCVC3_1_1Theorem.html">Theorem</a> &amp;e)</td></tr>
<tr class="memdesc:gaaa621df0c7e2a2043139e6451eab7072 inherit pro_methods_classCVC3_1_1SearchImplBase"><td class="mdescLeft">&#160;</td><td class="mdescRight">Our version of simplifier: take Theorem(e), apply simplifier to get <a class="el" href="classCVC3_1_1Theorem.html">Theorem</a>(e==e'), return <a class="el" href="classCVC3_1_1Theorem.html">Theorem</a>(e')  <a href="group__SE.html#gaaa621df0c7e2a2043139e6451eab7072"></a><br/></td></tr>
<tr class="separator:gaaa621df0c7e2a2043139e6451eab7072 inherit pro_methods_classCVC3_1_1SearchImplBase"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:gadebc5b605b4a358789b697e44065a97e inherit pro_methods_classCVC3_1_1SearchImplBase"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__SE.html#gadebc5b605b4a358789b697e44065a97e">addCNFFact</a> (const <a class="el" href="classCVC3_1_1Theorem.html">Theorem</a> &amp;thm, bool fromCore=false)</td></tr>
<tr class="memdesc:gadebc5b605b4a358789b697e44065a97e inherit pro_methods_classCVC3_1_1SearchImplBase"><td class="mdescLeft">&#160;</td><td class="mdescRight">Add a new fact to the search engine bypassing CNF converter.  <a href="group__SE.html#gadebc5b605b4a358789b697e44065a97e"></a><br/></td></tr>
<tr class="separator:gadebc5b605b4a358789b697e44065a97e inherit pro_methods_classCVC3_1_1SearchImplBase"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:gab267d9f29c30c8e26b5c7bcc4d15306a inherit pro_methods_classCVC3_1_1SearchImplBase"><td class="memItemLeft" align="right" valign="top">int&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__SE.html#gab267d9f29c30c8e26b5c7bcc4d15306a">scopeLevel</a> ()</td></tr>
<tr class="memdesc:gab267d9f29c30c8e26b5c7bcc4d15306a inherit pro_methods_classCVC3_1_1SearchImplBase"><td class="mdescLeft">&#160;</td><td class="mdescRight">Return the current scope level (for convenience)  <a href="group__SE.html#gab267d9f29c30c8e26b5c7bcc4d15306a"></a><br/></td></tr>
<tr class="separator:gab267d9f29c30c8e26b5c7bcc4d15306a inherit pro_methods_classCVC3_1_1SearchImplBase"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="inherit_header pro_attribs_classCVC3_1_1SearchImplBase"><td colspan="2" onclick="javascript:toggleInherit('pro_attribs_classCVC3_1_1SearchImplBase')"><img src="closed.png" alt="-"/>&#160;Protected Attributes inherited from <a class="el" href="classCVC3_1_1SearchImplBase.html">CVC3::SearchImplBase</a></td></tr>
<tr class="memitem:ga626a0fe24f363d007d729e16d13349e5 inherit pro_attribs_classCVC3_1_1SearchImplBase"><td class="memItemLeft" align="right" valign="top"><a class="el" href="classCVC3_1_1VariableManager.html">VariableManager</a> *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__SE.html#ga626a0fe24f363d007d729e16d13349e5">d_vm</a></td></tr>
<tr class="memdesc:ga626a0fe24f363d007d729e16d13349e5 inherit pro_attribs_classCVC3_1_1SearchImplBase"><td class="mdescLeft">&#160;</td><td class="mdescRight"><a class="el" href="classCVC3_1_1Variable.html">Variable</a> manager for classes <a class="el" href="classCVC3_1_1Variable.html">Variable</a> and <a class="el" href="classCVC3_1_1Literal.html">Literal</a>.  <a href="group__SE.html#ga626a0fe24f363d007d729e16d13349e5"></a><br/></td></tr>
<tr class="separator:ga626a0fe24f363d007d729e16d13349e5 inherit pro_attribs_classCVC3_1_1SearchImplBase"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ga640e08e2b051e08f2abdd4111b9a2e71 inherit pro_attribs_classCVC3_1_1SearchImplBase"><td class="memItemLeft" align="right" valign="top"><a class="el" href="classCVC3_1_1CDO.html">CDO</a>&lt; int &gt;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__SE.html#ga640e08e2b051e08f2abdd4111b9a2e71">d_bottomScope</a></td></tr>
<tr class="memdesc:ga640e08e2b051e08f2abdd4111b9a2e71 inherit pro_attribs_classCVC3_1_1SearchImplBase"><td class="mdescLeft">&#160;</td><td class="mdescRight">The bottom-most scope for the current call to checkSAT (where conflict clauses are still valid).  <a href="group__SE.html#ga640e08e2b051e08f2abdd4111b9a2e71"></a><br/></td></tr>
<tr class="separator:ga640e08e2b051e08f2abdd4111b9a2e71 inherit pro_attribs_classCVC3_1_1SearchImplBase"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ga02f72989536076eab8c55e452a6662d9 inherit pro_attribs_classCVC3_1_1SearchImplBase"><td class="memItemLeft" align="right" valign="top"><a class="el" href="classCVC3_1_1TheoryCore_1_1CoreSatAPI.html">TheoryCore::CoreSatAPI</a> *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__SE.html#ga02f72989536076eab8c55e452a6662d9">d_coreSatAPI_implBase</a></td></tr>
<tr class="separator:ga02f72989536076eab8c55e452a6662d9 inherit pro_attribs_classCVC3_1_1SearchImplBase"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ga8ea9b2ab9f50d3ddf595595b1f3d7974 inherit pro_attribs_classCVC3_1_1SearchImplBase"><td class="memItemLeft" align="right" valign="top"><a class="el" href="classCVC3_1_1CDList.html">CDList</a>&lt; <a class="el" href="classCVC3_1_1SearchImplBase_1_1Splitter.html">Splitter</a> &gt;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__SE.html#ga8ea9b2ab9f50d3ddf595595b1f3d7974">d_dpSplitters</a></td></tr>
<tr class="memdesc:ga8ea9b2ab9f50d3ddf595595b1f3d7974 inherit pro_attribs_classCVC3_1_1SearchImplBase"><td class="mdescLeft">&#160;</td><td class="mdescRight">Backtracking ordered set of DP-suggested splitters.  <a href="group__SE.html#ga8ea9b2ab9f50d3ddf595595b1f3d7974"></a><br/></td></tr>
<tr class="separator:ga8ea9b2ab9f50d3ddf595595b1f3d7974 inherit pro_attribs_classCVC3_1_1SearchImplBase"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ga88ba664573602ecfca1d6eadc14a30af inherit pro_attribs_classCVC3_1_1SearchImplBase"><td class="memItemLeft" align="right" valign="top"><a class="el" href="classCVC3_1_1Theorem.html">Theorem</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__SE.html#ga88ba664573602ecfca1d6eadc14a30af">d_lastValid</a></td></tr>
<tr class="memdesc:ga88ba664573602ecfca1d6eadc14a30af inherit pro_attribs_classCVC3_1_1SearchImplBase"><td class="mdescLeft">&#160;</td><td class="mdescRight"><a class="el" href="classCVC3_1_1Theorem.html">Theorem</a> from the last successful checkValid call. It is used by getProof and getAssumptions.  <a href="group__SE.html#ga88ba664573602ecfca1d6eadc14a30af"></a><br/></td></tr>
<tr class="separator:ga88ba664573602ecfca1d6eadc14a30af inherit pro_attribs_classCVC3_1_1SearchImplBase"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:gaf6841e86841006b6917d46664de64d21 inherit pro_attribs_classCVC3_1_1SearchImplBase"><td class="memItemLeft" align="right" valign="top"><a class="el" href="classCVC3_1_1ExprHashMap.html">ExprHashMap</a>&lt; bool &gt;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__SE.html#gaf6841e86841006b6917d46664de64d21">d_lastCounterExample</a></td></tr>
<tr class="memdesc:gaf6841e86841006b6917d46664de64d21 inherit pro_attribs_classCVC3_1_1SearchImplBase"><td class="mdescLeft">&#160;</td><td class="mdescRight"><a class="el" href="classCVC3_1_1Assumptions.html">Assumptions</a> from the last unsuccessful checkValid call. These are used by getCounterExample.  <a href="group__SE.html#gaf6841e86841006b6917d46664de64d21"></a><br/></td></tr>
<tr class="separator:gaf6841e86841006b6917d46664de64d21 inherit pro_attribs_classCVC3_1_1SearchImplBase"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ga83dfe2d2d85bacf5e4aa10c0320a140b inherit pro_attribs_classCVC3_1_1SearchImplBase"><td class="memItemLeft" align="right" valign="top"><a class="el" href="classCVC3_1_1CDMap.html">CDMap</a>&lt; <a class="el" href="classCVC3_1_1Expr.html">Expr</a>, <a class="el" href="classCVC3_1_1Theorem.html">Theorem</a> &gt;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__SE.html#ga83dfe2d2d85bacf5e4aa10c0320a140b">d_assumptions</a></td></tr>
<tr class="memdesc:ga83dfe2d2d85bacf5e4aa10c0320a140b inherit pro_attribs_classCVC3_1_1SearchImplBase"><td class="mdescLeft">&#160;</td><td class="mdescRight">Maintain the list of current assumptions (user asserts and splitters) for <a class="el" href="group__SE.html#gadadf46fa5200744c9f30ca548080d35d" title="Get all assumptions made in this and all previous contexts.">getAssumptions()</a>.  <a href="group__SE.html#ga83dfe2d2d85bacf5e4aa10c0320a140b"></a><br/></td></tr>
<tr class="separator:ga83dfe2d2d85bacf5e4aa10c0320a140b inherit pro_attribs_classCVC3_1_1SearchImplBase"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:gab60a7d204ed01875c98629e874575cd6 inherit pro_attribs_classCVC3_1_1SearchImplBase"><td class="memItemLeft" align="right" valign="top"><a class="el" href="classCVC3_1_1CDMap.html">CDMap</a>&lt; <a class="el" href="classCVC3_1_1Expr.html">Expr</a>, <a class="el" href="classCVC3_1_1Theorem.html">Theorem</a> &gt;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__SE.html#gab60a7d204ed01875c98629e874575cd6">d_cnfCache</a></td></tr>
<tr class="memdesc:gab60a7d204ed01875c98629e874575cd6 inherit pro_attribs_classCVC3_1_1SearchImplBase"><td class="mdescLeft">&#160;</td><td class="mdescRight">Backtracking cache for the CNF generator.  <a href="group__SE.html#gab60a7d204ed01875c98629e874575cd6"></a><br/></td></tr>
<tr class="separator:gab60a7d204ed01875c98629e874575cd6 inherit pro_attribs_classCVC3_1_1SearchImplBase"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ga1c64a37d94b4cadedce29f3e4b98a3af inherit pro_attribs_classCVC3_1_1SearchImplBase"><td class="memItemLeft" align="right" valign="top"><a class="el" href="classCVC3_1_1CDMap.html">CDMap</a>&lt; <a class="el" href="classCVC3_1_1Expr.html">Expr</a>, bool &gt;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__SE.html#ga1c64a37d94b4cadedce29f3e4b98a3af">d_cnfVars</a></td></tr>
<tr class="memdesc:ga1c64a37d94b4cadedce29f3e4b98a3af inherit pro_attribs_classCVC3_1_1SearchImplBase"><td class="mdescLeft">&#160;</td><td class="mdescRight">Backtracking set of new variables generated by CNF translator.  <a href="group__SE.html#ga1c64a37d94b4cadedce29f3e4b98a3af"></a><br/></td></tr>
<tr class="separator:ga1c64a37d94b4cadedce29f3e4b98a3af inherit pro_attribs_classCVC3_1_1SearchImplBase"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:gae3b8b3cfd965e7d5138320d26808767a inherit pro_attribs_classCVC3_1_1SearchImplBase"><td class="memItemLeft" align="right" valign="top">const bool *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__SE.html#gae3b8b3cfd965e7d5138320d26808767a">d_cnfOption</a></td></tr>
<tr class="memdesc:gae3b8b3cfd965e7d5138320d26808767a inherit pro_attribs_classCVC3_1_1SearchImplBase"><td class="mdescLeft">&#160;</td><td class="mdescRight">Command line flag whether to convert to CNF.  <a href="group__SE.html#gae3b8b3cfd965e7d5138320d26808767a"></a><br/></td></tr>
<tr class="separator:gae3b8b3cfd965e7d5138320d26808767a inherit pro_attribs_classCVC3_1_1SearchImplBase"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:gaa28d7e60bbe1df69ffb304f939b984b7 inherit pro_attribs_classCVC3_1_1SearchImplBase"><td class="memItemLeft" align="right" valign="top">const bool *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__SE.html#gaa28d7e60bbe1df69ffb304f939b984b7">d_ifLiftOption</a></td></tr>
<tr class="memdesc:gaa28d7e60bbe1df69ffb304f939b984b7 inherit pro_attribs_classCVC3_1_1SearchImplBase"><td class="mdescLeft">&#160;</td><td class="mdescRight">Flag: whether to convert term ITEs into CNF.  <a href="group__SE.html#gaa28d7e60bbe1df69ffb304f939b984b7"></a><br/></td></tr>
<tr class="separator:gaa28d7e60bbe1df69ffb304f939b984b7 inherit pro_attribs_classCVC3_1_1SearchImplBase"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:gafc2c782e4f24b55c8af7cb0189d281d8 inherit pro_attribs_classCVC3_1_1SearchImplBase"><td class="memItemLeft" align="right" valign="top">const bool *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__SE.html#gafc2c782e4f24b55c8af7cb0189d281d8">d_ignoreCnfVarsOption</a></td></tr>
<tr class="memdesc:gafc2c782e4f24b55c8af7cb0189d281d8 inherit pro_attribs_classCVC3_1_1SearchImplBase"><td class="mdescLeft">&#160;</td><td class="mdescRight">Flag: ignore auxiliary CNF variables when searching for a splitter.  <a href="group__SE.html#gafc2c782e4f24b55c8af7cb0189d281d8"></a><br/></td></tr>
<tr class="separator:gafc2c782e4f24b55c8af7cb0189d281d8 inherit pro_attribs_classCVC3_1_1SearchImplBase"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ga2287fd23d4250cc74db446983b2c3274 inherit pro_attribs_classCVC3_1_1SearchImplBase"><td class="memItemLeft" align="right" valign="top">const bool *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__SE.html#ga2287fd23d4250cc74db446983b2c3274">d_origFormulaOption</a></td></tr>
<tr class="memdesc:ga2287fd23d4250cc74db446983b2c3274 inherit pro_attribs_classCVC3_1_1SearchImplBase"><td class="mdescLeft">&#160;</td><td class="mdescRight">Flag: Preserve the original formula with +cnf (for splitter heuristics)  <a href="group__SE.html#ga2287fd23d4250cc74db446983b2c3274"></a><br/></td></tr>
<tr class="separator:ga2287fd23d4250cc74db446983b2c3274 inherit pro_attribs_classCVC3_1_1SearchImplBase"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ga9dc16eb11f046d9a615aff3018957c6d inherit pro_attribs_classCVC3_1_1SearchImplBase"><td class="memItemLeft" align="right" valign="top"><a class="el" href="classCVC3_1_1CDMap.html">CDMap</a>&lt; <a class="el" href="classCVC3_1_1Expr.html">Expr</a>, bool &gt;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__SE.html#ga9dc16eb11f046d9a615aff3018957c6d">d_enqueueCNFCache</a></td></tr>
<tr class="memdesc:ga9dc16eb11f046d9a615aff3018957c6d inherit pro_attribs_classCVC3_1_1SearchImplBase"><td class="mdescLeft">&#160;</td><td class="mdescRight">Cache for <a class="el" href="group__SE.html#ga4bcd481c70362c589aa7e712a8cc746d" title="Translate theta to CNF and enqueue the new clauses.">enqueueCNF()</a>  <a href="group__SE.html#ga9dc16eb11f046d9a615aff3018957c6d"></a><br/></td></tr>
<tr class="separator:ga9dc16eb11f046d9a615aff3018957c6d inherit pro_attribs_classCVC3_1_1SearchImplBase"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ga401319b3ede7162504e979aaf2119deb inherit pro_attribs_classCVC3_1_1SearchImplBase"><td class="memItemLeft" align="right" valign="top"><a class="el" href="classCVC3_1_1CDMap.html">CDMap</a>&lt; <a class="el" href="classCVC3_1_1Expr.html">Expr</a>, bool &gt;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__SE.html#ga401319b3ede7162504e979aaf2119deb">d_applyCNFRulesCache</a></td></tr>
<tr class="memdesc:ga401319b3ede7162504e979aaf2119deb inherit pro_attribs_classCVC3_1_1SearchImplBase"><td class="mdescLeft">&#160;</td><td class="mdescRight">Cache for <a class="el" href="group__SE.html#gaa7bf3c385bae481d4ea35179e818a09a" title="FIXME: write a comment.">applyCNFRules()</a>  <a href="group__SE.html#ga401319b3ede7162504e979aaf2119deb"></a><br/></td></tr>
<tr class="separator:ga401319b3ede7162504e979aaf2119deb inherit pro_attribs_classCVC3_1_1SearchImplBase"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ga0c829909b9e3ab2b59ba40e681905c4b inherit pro_attribs_classCVC3_1_1SearchImplBase"><td class="memItemLeft" align="right" valign="top"><a class="el" href="classCVC3_1_1CDMap.html">CDMap</a>&lt; <a class="el" href="classCVC3_1_1Expr.html">Expr</a>, <a class="el" href="classCVC3_1_1Theorem.html">Theorem</a> &gt;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__SE.html#ga0c829909b9e3ab2b59ba40e681905c4b">d_replaceITECache</a></td></tr>
<tr class="memdesc:ga0c829909b9e3ab2b59ba40e681905c4b inherit pro_attribs_classCVC3_1_1SearchImplBase"><td class="mdescLeft">&#160;</td><td class="mdescRight">Cache for <a class="el" href="group__SE.html#ga687e32d21d7fe7e4b26873ae86a47ae5" title="Replaces ITE subexpressions in e with variables.">replaceITE()</a>  <a href="group__SE.html#ga0c829909b9e3ab2b59ba40e681905c4b"></a><br/></td></tr>
<tr class="separator:ga0c829909b9e3ab2b59ba40e681905c4b inherit pro_attribs_classCVC3_1_1SearchImplBase"><td class="memSeparator" colspan="2">&#160;</td></tr>
</table>
<a name="details" id="details"></a><h2 class="groupheader">Detailed Description</h2>
<div class="textblock"><p>Implementation of a faster search engine, using newer techniques. </p>
<p>This search engine is engineered for greater speed. It seeks to eliminate the use of recursion, and instead replace it with iterative procedures that have cleanly defined invariants. This will hopefully not only eliminate bugs or inefficiencies that have been difficult to track down in the default version, but it should also make it easier to trace, read, and understand. It strives to be in line with the most modern <a class="el" href="namespaceSAT.html">SAT</a> techniques.</p>
<p>There are three other significant changes.</p>
<p>One, we want to improve the performance on heavily non-CNF problems. Unlike the older CVC, <a class="el" href="namespaceCVC3.html">CVC3</a> does not expand problems into CNF and solve, but rather uses decision procedures to effect the same thing, but often much more slowly. This search engine will leverage off knowledge gained from the DPs in the form of conflict clauses as much as possible.</p>
<p>Two, the solver has traditionally had a difficult time getting started on non-CNF problems. Modern satsolvers also have this problem, and so they employ "restarts" to try solving the problem again after gaining more knowledge about the problem at hand. This allows a more accurate choice of splitters, and in the case of non-CNF problems, the solver can immediately leverage off CNF conflict clauses that were not initially available.</p>
<p>Third, this code is specifically designed to deal with the new dependency tracking. Lazy maps will be eliminated in favor implicit conflict graphs, reducing computation time in two different ways. </p>

<p>Definition at line <a class="el" href="search__fast_8h_source.html#l00086">86</a> of file <a class="el" href="search__fast_8h_source.html">search_fast.h</a>.</p>
</div><h2 class="groupheader">Friends And Related Function Documentation</h2>
<a class="anchor" id="a120b136c2c9bc1938e0cd2cca80d91e4"></a>
<div class="memitem">
<div class="memproto">
<table class="mlabels">
  <tr>
  <td class="mlabels-left">
      <table class="memname">
        <tr>
          <td class="memname">friend class <a class="el" href="classCVC3_1_1Circuit.html">Circuit</a></td>
        </tr>
      </table>
  </td>
  <td class="mlabels-right">
<span class="mlabels"><span class="mlabel">friend</span></span>  </td>
  </tr>
</table>
</div><div class="memdoc">

<p>Definition at line <a class="el" href="search__fast_8h_source.html#l00088">88</a> of file <a class="el" href="search__fast_8h_source.html">search_fast.h</a>.</p>

<p>Referenced by <a class="el" href="search__fast_8cpp_source.html#l01445">addNonLiteralFact()</a>.</p>

</div>
</div>
<hr/>The documentation for this class was generated from the following files:<ul>
<li><a class="el" href="search__fast_8h_source.html">search_fast.h</a></li>
<li><a class="el" href="search__fast_8cpp_source.html">search_fast.cpp</a></li>
</ul>
</div><!-- contents -->
<!-- start footer part -->
<hr class="footer"/><address class="footer"><small>
Generated on Thu May 16 2013 13:25:18 for CVC3 by &#160;<a href="http://www.doxygen.org/index.html">
<img class="footer" src="doxygen.png" alt="doxygen"/>
</a> 1.8.2
</small></address>
</body>
</html>