#include <theorem.h>
Author: Sergey Berezin
Created: Tue Nov 4 17:57:07 2003
Implements the 3-valued theorem used for the user assertions and the result of query. It is simply a wrapper around class Theorem, but has a different semantic meaning: the formula may have partial functions and has the Kleene's 3-valued interpretation. The fact that a Theorem3 value is derived means that the TCCs for the formula and all of its assumptions are valid in the current context, and the proofs of TCCs contribute to the set of assumptions.
Definition at line 308 of file theorem.h.
CVC3::Theorem3::Theorem3 | ( | TheoremManager * | tm, | |
const Expr & | thm, | |||
const Assumptions & | assump, | |||
const Proof & | pf, | |||
bool | isAssump = false , |
|||
int | scope = -1 | |||
) | [inline, private] |
CVC3::Theorem3::Theorem3 | ( | TheoremManager * | tm, | |
const Expr & | lhs, | |||
const Expr & | rhs, | |||
const Assumptions & | assump, | |||
const Proof & | pf | |||
) | [inline, private] |
void CVC3::Theorem3::printDebug | ( | ) | const [inline] |
bool CVC3::Theorem3::isNull | ( | ) | const [inline] |
Definition at line 351 of file theorem.h.
References d_thm, and CVC3::Theorem::isNull().
Referenced by CVC3::VCL::getAssumptionsTCC(), CVC3::VCL::getClosure(), CVC3::VCL::getProof(), CVC3::VCL::getProofClosure(), CVC3::VCL::getProofQuery(), and CVC3::VCL::incomplete().
bool CVC3::Theorem3::isRewrite | ( | ) | const [inline] |
bool CVC3::Theorem3::isAssump | ( | ) | const [inline] |
Expr CVC3::Theorem3::getExpr | ( | ) | const [inline] |
Definition at line 358 of file theorem.h.
References d_thm, and CVC3::Theorem::getExpr().
Referenced by CVC3::VCL::getClosure(), CVC3::VCL::getProofQuery(), and CVC3::CommonTheoremProducer::implIntro3().
const Expr& CVC3::Theorem3::getLHS | ( | ) | const [inline] |
const Expr& CVC3::Theorem3::getRHS | ( | ) | const [inline] |
const Assumptions& CVC3::Theorem3::getAssumptionsRef | ( | ) | const [inline] |
Definition at line 365 of file theorem.h.
References d_thm, and CVC3::Theorem::getAssumptionsRef().
Referenced by CVC3::VCL::deriveClosure(), and CVC3::CommonTheoremProducer::implIntro3().
Proof CVC3::Theorem3::getProof | ( | ) | const [inline] |
Definition at line 370 of file theorem.h.
References d_thm, and CVC3::Theorem::getProof().
Referenced by CVC3::VCL::getProofClosure(), and CVC3::CommonTheoremProducer::implIntro3().
int CVC3::Theorem3::getScope | ( | ) | const [inline] |
bool CVC3::Theorem3::withProof | ( | ) | const [inline] |
bool CVC3::Theorem3::withAssumptions | ( | ) | const [inline] |
void CVC3::Theorem3::printx | ( | ) | const [inline] |
void CVC3::Theorem3::print | ( | ) | const [inline] |
bool CVC3::Theorem3::isAbsLiteral | ( | ) | const [inline] |
Check if the theorem is a literal.
Definition at line 388 of file theorem.h.
References d_thm, and CVC3::Theorem::isAbsLiteral().
friend class TheoremProducer [friend] |
std::ostream& operator<< | ( | std::ostream & | os, | |
const Theorem3 & | t | |||
) | [friend] |
Theorem CVC3::Theorem3::d_thm [private] |
Definition at line 314 of file theorem.h.
Referenced by getAssumptionsRef(), getExpr(), getLHS(), getProof(), getRHS(), getScope(), isAbsLiteral(), isAssump(), isNull(), isRewrite(), print(), printDebug(), printx(), withAssumptions(), and withProof().