Sophie

Sophie

distrib > Fedora > 15 > i386 > by-pkgid > 583ffa4ba069126c3ba0bc565dc0485a > files > 430

cvc3-doc-2.4.1-1.fc15.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"/>
<title>CVC3: CVC3::SearchEngineRules Class Reference</title>
<link href="tabs.css" rel="stylesheet" type="text/css"/>
<link href="doxygen.css" rel="stylesheet" type="text/css"/>
</head>
<body>
<!-- Generated by Doxygen 1.7.4 -->
<div id="top">
<div id="titlearea">
<table cellspacing="0" cellpadding="0">
 <tbody>
 <tr style="height: 56px;">
  <td style="padding-left: 0.5em;">
   <div id="projectname">CVC3&#160;<span id="projectnumber">2.4.1</span></div>
  </td>
 </tr>
 </tbody>
</table>
</div>
  <div id="navrow1" class="tabs">
    <ul class="tablist">
      <li><a href="index.html"><span>Main&#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="hierarchy.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_1SearchEngineRules.html">SearchEngineRules</a>      </li>
    </ul>
  </div>
</div>
<div class="header">
  <div class="summary">
<a href="#pub-methods">Public Member Functions</a>  </div>
  <div class="headertitle">
<div class="title">CVC3::SearchEngineRules Class Reference<div class="ingroups"><a class="el" href="group__SE__Rules.html">Proof Rules for the Search Engines</a></div></div>  </div>
</div>
<div class="contents">
<!-- doxytag: class="CVC3::SearchEngineRules" -->
<p>API to the proof rules for the Search Engines.  
 <a href="classCVC3_1_1SearchEngineRules.html#details">More...</a></p>

<p><code>#include &lt;<a class="el" href="search__rules_8h_source.html">search_rules.h</a>&gt;</code></p>
<div class="dynheader">
Inheritance diagram for CVC3::SearchEngineRules:</div>
<div class="dyncontent">
 <div class="center">
  <img src="classCVC3_1_1SearchEngineRules.png" usemap="#CVC3::SearchEngineRules_map" alt=""/>
  <map id="CVC3::SearchEngineRules_map" name="CVC3::SearchEngineRules_map">
<area href="classCVC3_1_1SearchEngineTheoremProducer.html" alt="CVC3::SearchEngineTheoremProducer" shape="rect" coords="0,56,234,80"/>
</map>
 </div></div>

<p><a href="classCVC3_1_1SearchEngineRules-members.html">List of all members.</a></p>
<h2><a name="pub-methods"></a>
Public Member Functions</h2>
<ul>
<li>virtual <a class="el" href="group__SE__Rules.html#gae48ac99bc858fb09857649a89af81f43">~SearchEngineRules</a> ()
<dl class="el"><dd class="mdescRight">Destructor.  <a href="group__SE__Rules.html#gae48ac99bc858fb09857649a89af81f43"></a><br/></dl><li>virtual <a class="el" href="classCVC3_1_1Theorem.html">Theorem</a> <a class="el" href="group__SE__Rules.html#ga3ddf95924d2ff2efb59e84dc78a19821">eliminateSkolemAxioms</a> (const <a class="el" href="classCVC3_1_1Theorem.html">Theorem</a> &amp;tFalse, const std::vector&lt; <a class="el" href="classCVC3_1_1Theorem.html">Theorem</a> &gt; &amp;delta)=0
<li>virtual <a class="el" href="classCVC3_1_1Theorem.html">Theorem</a> <a class="el" href="group__SE__Rules.html#ga64c9fb7058e52c324ce76f15fcea37e2">proofByContradiction</a> (const <a class="el" href="classCVC3_1_1Expr.html">Expr</a> &amp;a, const <a class="el" href="classCVC3_1_1Theorem.html">Theorem</a> &amp;pfFalse)=0
<dl class="el"><dd class="mdescRight"><a class="el" href="classCVC3_1_1Proof.html">Proof</a> by contradiction: </p>
<p class="formulaDsp">
<img class="formulaDsp" alt="\[\frac{\Gamma, \neg A \vdash\mathrm{FALSE}}{\Gamma \vdash A}\]" src="form_293.png"/>
</p>
<p>.  <a href="group__SE__Rules.html#ga64c9fb7058e52c324ce76f15fcea37e2"></a><br/></dl><li>virtual <a class="el" href="classCVC3_1_1Theorem.html">Theorem</a> <a class="el" href="group__SE__Rules.html#ga846c2bdc33f6ff2080e76637ea618626">negIntro</a> (const <a class="el" href="classCVC3_1_1Expr.html">Expr</a> &amp;not_a, const <a class="el" href="classCVC3_1_1Theorem.html">Theorem</a> &amp;pfFalse)=0
<dl class="el"><dd class="mdescRight">Negation introduction: </p>
<p class="formulaDsp">
<img class="formulaDsp" alt="\[\frac{\Gamma, A \vdash\mathrm{FALSE}}{\Gamma\vdash\neg A}\]" src="form_296.png"/>
</p>
<p>.  <a href="group__SE__Rules.html#ga846c2bdc33f6ff2080e76637ea618626"></a><br/></dl><li>virtual <a class="el" href="classCVC3_1_1Theorem.html">Theorem</a> <a class="el" href="group__SE__Rules.html#ga7db620d19846bd5947321a8d6f9e7da4">caseSplit</a> (const <a class="el" href="classCVC3_1_1Expr.html">Expr</a> &amp;a, const <a class="el" href="classCVC3_1_1Theorem.html">Theorem</a> &amp;a_proves_c, const <a class="el" href="classCVC3_1_1Theorem.html">Theorem</a> &amp;not_a_proves_c)=0
<dl class="el"><dd class="mdescRight">Case split: </p>
<p class="formulaDsp">
<img class="formulaDsp" alt="\[\frac{\Gamma_1, A\vdash C \quad \Gamma_2, \neg A\vdash C} {\Gamma_1\cup\Gamma_2\vdash C}\]" src="form_298.png"/>
</p>
<p>.  <a href="group__SE__Rules.html#ga7db620d19846bd5947321a8d6f9e7da4"></a><br/></dl><li>virtual <a class="el" href="classCVC3_1_1Theorem.html">Theorem</a> <a class="el" href="group__SE__Rules.html#ga03be39f8ffe84a1bcc09bba60f45245c">conflictClause</a> (const <a class="el" href="classCVC3_1_1Theorem.html">Theorem</a> &amp;thm, const std::vector&lt; <a class="el" href="classCVC3_1_1Theorem.html">Theorem</a> &gt; &amp;lits, const std::vector&lt; <a class="el" href="classCVC3_1_1Theorem.html">Theorem</a> &gt; &amp;gamma)=0
<dl class="el"><dd class="mdescRight">Conflict clause rule: </p>
<p class="formulaDsp">
<img class="formulaDsp" alt="\[\frac{\Gamma,A_1,\ldots,A_n\vdash\mathrm{FALSE}} {\Gamma\vdash\neg A_1\vee\cdots\vee \neg A_n}\]" src="form_301.png"/>
</p>
<p>.  <a href="group__SE__Rules.html#ga03be39f8ffe84a1bcc09bba60f45245c"></a><br/></dl><li>virtual <a class="el" href="classCVC3_1_1Theorem.html">Theorem</a> <a class="el" href="group__SE__Rules.html#gac1ef0687c058a3d4bd1d9ed88cd27abe">cutRule</a> (const std::vector&lt; <a class="el" href="classCVC3_1_1Theorem.html">Theorem</a> &gt; &amp;thmsA, const <a class="el" href="classCVC3_1_1Theorem.html">Theorem</a> &amp;as_prove_b)=0
<dl class="el"><dd class="mdescRight">Cut rule: </p>
<p class="formulaDsp">
<img class="formulaDsp" alt="\[\frac{\Gamma_1\vdash A_1\quad\cdots\quad\Gamma_n\vdash A_n \quad \Gamma', A_1,\ldots,A_n\vdash B} {\bigcup_{i=1}^n\Gamma_i\cup\Gamma'\vdash B}\]" src="form_303.png"/>
</p>
<p>.  <a href="group__SE__Rules.html#gac1ef0687c058a3d4bd1d9ed88cd27abe"></a><br/></dl><li>virtual <a class="el" href="classCVC3_1_1Theorem.html">Theorem</a> <a class="el" href="group__SE__Rules.html#gae7221bb8b77313a9b53a4beca9cc0aa0">unitProp</a> (const std::vector&lt; <a class="el" href="classCVC3_1_1Theorem.html">Theorem</a> &gt; &amp;thms, const <a class="el" href="classCVC3_1_1Theorem.html">Theorem</a> &amp;clause, unsigned i)=0
<dl class="el"><dd class="mdescRight">Unit propagation rule: </p>
<p class="formulaDsp">
<img class="formulaDsp" alt="\[\frac{\Gamma_j\vdash\neg A_j\mbox{ for }j\in[1\ldots n]-\{i\} \quad \Gamma\vdash A_1\vee\cdots\vee A_n} {\bigcup_{j\in[1\ldots n]-\{i\}}\Gamma_j\cup\Gamma\vdash A_i}\]" src="form_306.png"/>
</p>
<p>.  <a href="group__SE__Rules.html#gae7221bb8b77313a9b53a4beca9cc0aa0"></a><br/></dl><li>virtual <a class="el" href="classCVC3_1_1Theorem.html">Theorem</a> <a class="el" href="group__SE__Rules.html#ga9c74425b4471d411f58f16781951c441">conflictRule</a> (const std::vector&lt; <a class="el" href="classCVC3_1_1Theorem.html">Theorem</a> &gt; &amp;thms, const <a class="el" href="classCVC3_1_1Theorem.html">Theorem</a> &amp;clause)=0
<dl class="el"><dd class="mdescRight">"Conflict" rule (all literals in a clause become FALSE) </p>
<p class="formulaDsp">
<img class="formulaDsp" alt="\[\frac{\Gamma_j\vdash\neg A_j\mbox{ for }j\in[1\ldots n] \quad \Gamma\vdash A_1\vee\cdots\vee A_n} {\bigcup_{j\in[1\ldots n]}\Gamma_j\cup\Gamma \vdash\mathrm{FALSE}}\]" src="form_309.png"/>
</p>
  <a href="group__SE__Rules.html#ga9c74425b4471d411f58f16781951c441"></a><br/></dl><li>virtual <a class="el" href="classCVC3_1_1Theorem.html">Theorem</a> <a class="el" href="group__SE__Rules.html#gaf5a18f8bcdc2f71632f05bcfe0bc533e">propAndrAF</a> (const <a class="el" href="classCVC3_1_1Theorem.html">Theorem</a> &amp;andr_th, bool left, const <a class="el" href="classCVC3_1_1Theorem.html">Theorem</a> &amp;b_th)=0
<li>virtual <a class="el" href="classCVC3_1_1Theorem.html">Theorem</a> <a class="el" href="group__SE__Rules.html#gac7998bdcac234b0f3dc202d44b49c69c">propAndrAT</a> (const <a class="el" href="classCVC3_1_1Theorem.html">Theorem</a> &amp;andr_th, const <a class="el" href="classCVC3_1_1Theorem.html">Theorem</a> &amp;l_th, const <a class="el" href="classCVC3_1_1Theorem.html">Theorem</a> &amp;r_th)=0
<li>virtual void <a class="el" href="group__SE__Rules.html#gad0150b04c296a6b8e05579c1dbd365f8">propAndrLRT</a> (const <a class="el" href="classCVC3_1_1Theorem.html">Theorem</a> &amp;andr_th, const <a class="el" href="classCVC3_1_1Theorem.html">Theorem</a> &amp;a_th, <a class="el" href="classCVC3_1_1Theorem.html">Theorem</a> *l_th, <a class="el" href="classCVC3_1_1Theorem.html">Theorem</a> *r_th)=0
<li>virtual <a class="el" href="classCVC3_1_1Theorem.html">Theorem</a> <a class="el" href="group__SE__Rules.html#ga8c8fc73c8b0413f5ca3fa7d72e687f5b">propAndrLF</a> (const <a class="el" href="classCVC3_1_1Theorem.html">Theorem</a> &amp;andr_th, const <a class="el" href="classCVC3_1_1Theorem.html">Theorem</a> &amp;a_th, const <a class="el" href="classCVC3_1_1Theorem.html">Theorem</a> &amp;r_th)=0
<li>virtual <a class="el" href="classCVC3_1_1Theorem.html">Theorem</a> <a class="el" href="group__SE__Rules.html#ga1158c41e7b7ed199271391d4404ce1b2">propAndrRF</a> (const <a class="el" href="classCVC3_1_1Theorem.html">Theorem</a> &amp;andr_th, const <a class="el" href="classCVC3_1_1Theorem.html">Theorem</a> &amp;a_th, const <a class="el" href="classCVC3_1_1Theorem.html">Theorem</a> &amp;l_th)=0
<li>virtual <a class="el" href="classCVC3_1_1Theorem.html">Theorem</a> <a class="el" href="group__SE__Rules.html#ga09d987f2d81c19d798d7185b125879b6">confAndrAT</a> (const <a class="el" href="classCVC3_1_1Theorem.html">Theorem</a> &amp;andr_th, const <a class="el" href="classCVC3_1_1Theorem.html">Theorem</a> &amp;a_th, bool left, const <a class="el" href="classCVC3_1_1Theorem.html">Theorem</a> &amp;b_th)=0
<li>virtual <a class="el" href="classCVC3_1_1Theorem.html">Theorem</a> <a class="el" href="group__SE__Rules.html#gadb878db4f9d24a21b62f50df2713ecca">confAndrAF</a> (const <a class="el" href="classCVC3_1_1Theorem.html">Theorem</a> &amp;andr_th, const <a class="el" href="classCVC3_1_1Theorem.html">Theorem</a> &amp;a_th, const <a class="el" href="classCVC3_1_1Theorem.html">Theorem</a> &amp;l_th, const <a class="el" href="classCVC3_1_1Theorem.html">Theorem</a> &amp;r_th)=0
<li>virtual <a class="el" href="classCVC3_1_1Theorem.html">Theorem</a> <a class="el" href="group__SE__Rules.html#ga9bc3e3eab4b1fe4fb2c0a0172ca25ee9">propIffr</a> (const <a class="el" href="classCVC3_1_1Theorem.html">Theorem</a> &amp;iffr_th, int p, const <a class="el" href="classCVC3_1_1Theorem.html">Theorem</a> &amp;a_th, const <a class="el" href="classCVC3_1_1Theorem.html">Theorem</a> &amp;b_th)=0
<li>virtual <a class="el" href="classCVC3_1_1Theorem.html">Theorem</a> <a class="el" href="group__SE__Rules.html#gaef31b1a5f6d6e9f270a1ab28ee361b14">confIffr</a> (const <a class="el" href="classCVC3_1_1Theorem.html">Theorem</a> &amp;iffr_th, const <a class="el" href="classCVC3_1_1Theorem.html">Theorem</a> &amp;i_th, const <a class="el" href="classCVC3_1_1Theorem.html">Theorem</a> &amp;l_th, const <a class="el" href="classCVC3_1_1Theorem.html">Theorem</a> &amp;r_th)=0
<li>virtual <a class="el" href="classCVC3_1_1Theorem.html">Theorem</a> <a class="el" href="group__SE__Rules.html#ga979ad08269cd2799993628eaaccc146f">propIterIte</a> (const <a class="el" href="classCVC3_1_1Theorem.html">Theorem</a> &amp;iter_th, bool left, const <a class="el" href="classCVC3_1_1Theorem.html">Theorem</a> &amp;if_th, const <a class="el" href="classCVC3_1_1Theorem.html">Theorem</a> &amp;then_th)=0
<li>virtual void <a class="el" href="group__SE__Rules.html#gad35217bbc9f4a27b4d23af173e9ea2c7">propIterIfThen</a> (const <a class="el" href="classCVC3_1_1Theorem.html">Theorem</a> &amp;iter_th, bool left, const <a class="el" href="classCVC3_1_1Theorem.html">Theorem</a> &amp;ite_th, const <a class="el" href="classCVC3_1_1Theorem.html">Theorem</a> &amp;then_th, <a class="el" href="classCVC3_1_1Theorem.html">Theorem</a> *if_th, <a class="el" href="classCVC3_1_1Theorem.html">Theorem</a> *else_th)=0
<li>virtual <a class="el" href="classCVC3_1_1Theorem.html">Theorem</a> <a class="el" href="group__SE__Rules.html#gab7b07d3b350b2cc7f3f596233abb54ea">propIterThen</a> (const <a class="el" href="classCVC3_1_1Theorem.html">Theorem</a> &amp;iter_th, const <a class="el" href="classCVC3_1_1Theorem.html">Theorem</a> &amp;ite_th, const <a class="el" href="classCVC3_1_1Theorem.html">Theorem</a> &amp;if_th)=0
<li>virtual <a class="el" href="classCVC3_1_1Theorem.html">Theorem</a> <a class="el" href="group__SE__Rules.html#gaae491d08949a1ec57981526c8e960119">confIterThenElse</a> (const <a class="el" href="classCVC3_1_1Theorem.html">Theorem</a> &amp;iter_th, const <a class="el" href="classCVC3_1_1Theorem.html">Theorem</a> &amp;ite_th, const <a class="el" href="classCVC3_1_1Theorem.html">Theorem</a> &amp;then_th, const <a class="el" href="classCVC3_1_1Theorem.html">Theorem</a> &amp;else_th)=0
<li>virtual <a class="el" href="classCVC3_1_1Theorem.html">Theorem</a> <a class="el" href="group__SE__Rules.html#ga771471d7cbb2253bc32f2a8018bd7182">confIterIfThen</a> (const <a class="el" href="classCVC3_1_1Theorem.html">Theorem</a> &amp;iter_th, bool left, const <a class="el" href="classCVC3_1_1Theorem.html">Theorem</a> &amp;ite_th, const <a class="el" href="classCVC3_1_1Theorem.html">Theorem</a> &amp;if_th, const <a class="el" href="classCVC3_1_1Theorem.html">Theorem</a> &amp;then_th)=0
<li>virtual <a class="el" href="classCVC3_1_1Theorem.html">Theorem</a> <a class="el" href="group__SE__Rules.html#gab183ff7d1013729d0d3e2dbe28686e3c">andCNFRule</a> (const <a class="el" href="classCVC3_1_1Theorem.html">Theorem</a> &amp;thm)=0
<dl class="el"><dd class="mdescRight">AND(x1,...,xn) &lt;=&gt; v |- CNF[AND(x1,...,xn) &lt;=&gt; v].  <a href="group__SE__Rules.html#gab183ff7d1013729d0d3e2dbe28686e3c"></a><br/></dl><li>virtual <a class="el" href="classCVC3_1_1Theorem.html">Theorem</a> <a class="el" href="group__SE__Rules.html#ga7086aa693d2a3421bc349eca8e9938ba">orCNFRule</a> (const <a class="el" href="classCVC3_1_1Theorem.html">Theorem</a> &amp;thm)=0
<dl class="el"><dd class="mdescRight">OR(x1,...,xn) &lt;=&gt; v |- CNF[OR(x1,...,xn) &lt;=&gt; v].  <a href="group__SE__Rules.html#ga7086aa693d2a3421bc349eca8e9938ba"></a><br/></dl><li>virtual <a class="el" href="classCVC3_1_1Theorem.html">Theorem</a> <a class="el" href="group__SE__Rules.html#ga25f7b95c8ebce2be117d03a1c93d715f">impCNFRule</a> (const <a class="el" href="classCVC3_1_1Theorem.html">Theorem</a> &amp;thm)=0
<dl class="el"><dd class="mdescRight">(x1 =&gt; x2) &lt;=&gt; v |- CNF[(x1 =&gt; x2) &lt;=&gt; v]  <a href="group__SE__Rules.html#ga25f7b95c8ebce2be117d03a1c93d715f"></a><br/></dl><li>virtual <a class="el" href="classCVC3_1_1Theorem.html">Theorem</a> <a class="el" href="group__SE__Rules.html#ga4ab7606744594db9050cb83fe6b73668">iffCNFRule</a> (const <a class="el" href="classCVC3_1_1Theorem.html">Theorem</a> &amp;thm)=0
<dl class="el"><dd class="mdescRight">(x1 &lt;=&gt; x2) &lt;=&gt; v |- CNF[(x1 &lt;=&gt; x2) &lt;=&gt; v]  <a href="group__SE__Rules.html#ga4ab7606744594db9050cb83fe6b73668"></a><br/></dl><li>virtual <a class="el" href="classCVC3_1_1Theorem.html">Theorem</a> <a class="el" href="group__SE__Rules.html#gae9263cbcedf5def99b3c49ee6978497a">iteCNFRule</a> (const <a class="el" href="classCVC3_1_1Theorem.html">Theorem</a> &amp;thm)=0
<dl class="el"><dd class="mdescRight">ITE(c, x1, x2) &lt;=&gt; v |- CNF[ITE(c, x1, x2) &lt;=&gt; v].  <a href="group__SE__Rules.html#gae9263cbcedf5def99b3c49ee6978497a"></a><br/></dl><li>virtual <a class="el" href="classCVC3_1_1Theorem.html">Theorem</a> <a class="el" href="group__SE__Rules.html#ga9b9c0fe62505477b6ec9774c1b5b2494">iteToClauses</a> (const <a class="el" href="classCVC3_1_1Theorem.html">Theorem</a> &amp;ite)=0
<dl class="el"><dd class="mdescRight">ITE(c, f1, f2) |- (NOT c OR f1) AND (c OR f2)  <a href="group__SE__Rules.html#ga9b9c0fe62505477b6ec9774c1b5b2494"></a><br/></dl><li>virtual <a class="el" href="classCVC3_1_1Theorem.html">Theorem</a> <a class="el" href="group__SE__Rules.html#ga356cd5a36ede50921fbaa3bc7e222d4f">iffToClauses</a> (const <a class="el" href="classCVC3_1_1Theorem.html">Theorem</a> &amp;iff)=0
<dl class="el"><dd class="mdescRight">e1 &lt;=&gt; e2 |- (NOT e1 OR e2) AND (e1 OR NOT e2)  <a href="group__SE__Rules.html#ga356cd5a36ede50921fbaa3bc7e222d4f"></a><br/></dl><li>virtual <a class="el" href="classCVC3_1_1Theorem.html">Theorem</a> <a class="el" href="group__SE__Rules.html#ga55daf0bf95530208f5abf9484ded9055">satProof</a> (const <a class="el" href="classCVC3_1_1Expr.html">Expr</a> &amp;queryExpr, const <a class="el" href="classCVC3_1_1Proof.html">Proof</a> &amp;satProof)=0
</ul>
<hr/><a name="details" id="details"></a><h2>Detailed Description</h2>
<div class="textblock"><p>API to the proof rules for the Search Engines. </p>

<p>Definition at line <a class="el" href="search__rules_8h_source.html#l00035">35</a> of file <a class="el" href="search__rules_8h_source.html">search_rules.h</a>.</p>
</div><hr/>The documentation for this class was generated from the following file:<ul>
<li><a class="el" href="search__rules_8h_source.html">search_rules.h</a></li>
</ul>
</div>
<hr class="footer"/><address class="footer"><small>Generated on Wed Sep 7 2011 for CVC3 by&#160;
<a href="http://www.doxygen.org/index.html">
<img class="footer" src="doxygen.png" alt="doxygen"/></a> 1.7.4 </small></address>
</body>
</html>