#include <uf_theorem_producer.h>
Inheritance diagram for CVC3::UFTheoremProducer:
Definition at line 33 of file uf_theorem_producer.h.
CVC3::UFTheoremProducer::UFTheoremProducer | ( | TheoremManager * | tm, | |
TheoryUF * | theoryUF | |||
) | [inline] |
Implements CVC3::UFProofRules.
Definition at line 54 of file uf_theorem_producer.cpp.
References CVC3::Expr::arity(), CHECK_PROOFS, CHECK_SOUND, CLASS_NAME, d_theoryUF, CVC3::Theorem::getAssumptionsRef(), CVC3::Op::getExpr(), CVC3::Theorem::getExpr(), CVC3::Expr::getName(), CVC3::Expr::getOp(), CVC3::Theorem::getProof(), CVC3::Expr::isApply(), CVC3::TheoremProducer::newPf(), CVC3::TheoremProducer::newTheorem(), CVC3::Expr::toString(), CVC3::TheoryUF::transClosureExpr(), and CVC3::TheoremProducer::withProof().
Implements CVC3::UFProofRules.
Definition at line 76 of file uf_theorem_producer.cpp.
References CVC3::Expr::arity(), CHECK_PROOFS, CHECK_SOUND, CLASS_NAME, CVC3::Theorem::getExpr(), CVC3::Expr::getName(), CVC3::Expr::getOp(), CVC3::Expr::getOpExpr(), CVC3::Expr::getOpKind(), CVC3::Theorem::getProof(), CVC3::TheoremProducer::newPf(), CVC3::TheoremProducer::newTheorem(), CVC3::Expr::toString(), CVC3::TRANS_CLOSURE, and CVC3::TheoremProducer::withProof().
Beta reduction: |- (lambda x. f(x))(arg) = f(arg).
Implements CVC3::UFProofRules.
Definition at line 114 of file uf_theorem_producer.cpp.
References CVC3::Expr::arity(), CHECK_PROOFS, CHECK_SOUND, CVC3::Assumptions::emptyAssump(), CVC3::Expr::getKids(), CVC3::Expr::getOpExpr(), CVC3::Expr::getOpKind(), CVC3::Expr::isApply(), CVC3::LAMBDA, CVC3::TheoremProducer::newPf(), CVC3::TheoremProducer::newRWTheorem(), CVC3::Expr::toString(), and CVC3::TheoremProducer::withProof().
Replace LETDECL in the operator with the definition.
Implements CVC3::UFProofRules.
Definition at line 149 of file uf_theorem_producer.cpp.
References CHECK_PROOFS, CHECK_SOUND, CVC3::Assumptions::emptyAssump(), CVC3::Expr::getKids(), CVC3::Expr::getKind(), CVC3::Expr::getOpExpr(), CVC3::Expr::isApply(), CVC3::LETDECL, CVC3::TheoremProducer::newPf(), CVC3::TheoremProducer::newRWTheorem(), CVC3::Expr::toString(), and CVC3::TheoremProducer::withProof().
TheoryUF* CVC3::UFTheoremProducer::d_theoryUF [private] |