CVC3::Translator Class Reference

#include <translator.h>

Collaboration diagram for CVC3::Translator:

Collaboration graph
[legend]

List of all members.

Public Member Functions

Private Member Functions

Private Attributes


Detailed Description

Definition at line 58 of file translator.h.


Constructor & Destructor Documentation

Translator::Translator ( ExprManager em,
const bool &  translate,
const bool &  real2int,
const bool &  convertArith,
const std::string &  convertToDiff,
bool  iteLiftArith,
const std::string &  expResult,
const std::string &  category,
bool  convertArray,
bool  combineAssump,
int  convertToBV 
)

Definition at line 689 of file translator.cpp.

References d_arrayConvertMap.

Translator::~Translator (  ) 

Definition at line 720 of file translator.cpp.

References d_arrayConvertMap.


Member Function Documentation

string Translator::fileToSMTLIBIdentifier ( const std::string &  filename  )  [private]

Definition at line 43 of file translator.cpp.

Referenced by start().

Expr Translator::preprocessRec ( const Expr e,
ExprMap< Expr > &  cache 
) [private]

Definition at line 70 of file translator.cpp.

References CVC3::APPLY, CVC3::Expr::arity(), CVC3::Expr::begin(), CVC3::BVMULT, CVC3::BVPLUS, CVC3::BVSLE, CVC3::BVSLT, CVC3::BVSUB, CVC3::BVUMINUS, d_arrayConvertMap, d_convertArith, d_convertToBV, d_convertToDiff, d_elementType, d_em, d_equalities, d_indexType, d_intConstUsed, d_iteLiftArith, d_langUsed, d_realUsed, d_theoryArith, d_theoryBitvector, d_theoryCore, d_UFIDL_ok, d_unknown, DebugAssert, CVC3::DIFF_ONLY, CVC3::DIVIDE, CVC3::Expr::end(), CVC3::ExprMap< Data >::end(), CVC3::EQ, FatalAssert, CVC3::ExprMap< Data >::find(), CVC3::GE, CVC3::Theory::getBaseType(), CVC3::Expr::getBody(), CVC3::TheoryCore::getFlags(), CVC3::Expr::getKids(), CVC3::Expr::getKind(), CVC3::Expr::getName(), CVC3::Rational::getNumerator(), CVC3::Expr::getOp(), CVC3::Expr::getOpExpr(), CVC3::Expr::getOpKind(), CVC3::Expr::getRational(), CVC3::Expr::getType(), CVC3::Expr::getVars(), CVC3::GT, CVC3::INTDIV, CVC3::TheoryArith::intType(), CVC3::IS_INTEGER, CVC3::TheoryArith::isAtomicArithFormula(), CVC3::Expr::isClosure(), CVC3::isInt(), CVC3::Rational::isInteger(), CVC3::Theory::isLeaf(), CVC3::Expr::isRational(), CVC3::isRational(), CVC3::TheoryArith::isSyntacticRational(), CVC3::Expr::isVar(), CVC3::ITE, CVC3::Expr::iteExpr(), CVC3::LAMBDA, CVC3::LE, CVC3::LINEAR, CVC3::LT, CVC3::MINUS, CVC3::MOD, CVC3::MULT, CVC3::TheoryBitvector::newBitvectorType(), CVC3::ExprManager::newClosureExpr(), CVC3::ExprManager::newRatExpr(), CVC3::Theory::newVar(), CVC3::NONLINEAR, CVC3::NOT, CVC3::NOT_USED, CVC3::PLUS, CVC3::POW, CVC3::pow(), CVC3::RATIONAL_EXPR, CVC3::READ, CVC3::TheoryArith::realType(), CVC3::TheoryArith::rewriteToDiff(), CVC3::Theory::setUsed(), CVC3::TheoryBitvector::signed_newBVConstExpr(), CVC3::TERMS_ONLY, CVC3::Theory::theoryOf(), CVC3::UCONST, CVC3::UMINUS, and CVC3::WRITE.

Referenced by preprocess().

Expr Translator::preprocess ( const Expr e,
ExprMap< Expr > &  cache 
) [private]

Definition at line 540 of file translator.cpp.

References std::endl(), preprocessRec(), and CVC3::Expr::toString().

Referenced by finish().

Expr Translator::preprocess2Rec ( const Expr e,
ExprMap< Expr > &  cache,
Type  desiredType 
) [private]

Expr Translator::preprocess2 ( const Expr e,
ExprMap< Expr > &  cache 
) [private]

Definition at line 664 of file translator.cpp.

References std::endl(), preprocess2Rec(), and CVC3::Expr::toString().

Referenced by finish().

bool Translator::containsArray ( const Expr e  )  [private]

Definition at line 680 of file translator.cpp.

References CVC3::ARRAY, CVC3::Expr::begin(), CVC3::Expr::end(), and CVC3::Expr::getKind().

Referenced by dump().

Expr Translator::processType ( const Expr e  )  [private]

bool Translator::start ( const std::string &  dumpFile  ) 

void Translator::dump ( const Expr e,
bool  dumpOnly = false 
)

bool Translator::dumpAssertion ( const Expr e  ) 

bool Translator::dumpQuery ( const Expr e  ) 

void Translator::dumpQueryResult ( QueryResult  qres  ) 

void Translator::finish (  ) 

void CVC3::Translator::setTheoryCore ( TheoryCore theoryCore  )  [inline]

Definition at line 141 of file translator.h.

References d_theoryCore.

Referenced by CVC3::VCL::init().

void CVC3::Translator::setTheoryUF ( TheoryUF theoryUF  )  [inline]

Definition at line 142 of file translator.h.

References d_theoryUF.

Referenced by CVC3::VCL::init().

void CVC3::Translator::setTheoryArith ( TheoryArith theoryArith  )  [inline]

Definition at line 143 of file translator.h.

References d_theoryArith.

Referenced by CVC3::VCL::init(), and CVC3::VCL::reprocessFlags().

void CVC3::Translator::setTheoryArray ( TheoryArray theoryArray  )  [inline]

Definition at line 144 of file translator.h.

References d_theoryArray.

Referenced by CVC3::VCL::init().

void CVC3::Translator::setTheoryQuant ( TheoryQuant theoryQuant  )  [inline]

Definition at line 145 of file translator.h.

References d_theoryQuant.

Referenced by CVC3::VCL::init().

void CVC3::Translator::setTheoryRecords ( TheoryRecords theoryRecords  )  [inline]

Definition at line 146 of file translator.h.

References d_theoryRecords.

Referenced by CVC3::VCL::init().

void CVC3::Translator::setTheorySimulate ( TheorySimulate theorySimulate  )  [inline]

Definition at line 147 of file translator.h.

References d_theorySimulate.

Referenced by CVC3::VCL::init().

void CVC3::Translator::setTheoryBitvector ( TheoryBitvector theoryBitvector  )  [inline]

Definition at line 148 of file translator.h.

References d_theoryBitvector.

Referenced by CVC3::VCL::init().

void CVC3::Translator::setTheoryDatatype ( TheoryDatatype theoryDatatype  )  [inline]

Definition at line 149 of file translator.h.

References d_theoryDatatype.

Referenced by CVC3::VCL::init().

const string Translator::fixConstName ( const std::string &  s  ) 

bool Translator::printArrayExpr ( ExprStream os,
const Expr e 
)

Expr Translator::zeroVar (  ) 


Member Data Documentation

const bool& CVC3::Translator::d_translate [private]

Definition at line 60 of file translator.h.

Referenced by dump(), dumpAssertion(), dumpQuery(), dumpQueryResult(), finish(), and start().

const bool& CVC3::Translator::d_real2int [private]

Definition at line 61 of file translator.h.

Referenced by processType().

const bool& CVC3::Translator::d_convertArith [private]

Definition at line 62 of file translator.h.

Referenced by preprocessRec().

const std::string& CVC3::Translator::d_convertToDiff [private]

Definition at line 63 of file translator.h.

Referenced by preprocessRec(), and zeroVar().

Definition at line 64 of file translator.h.

Referenced by preprocessRec().

const std::string& CVC3::Translator::d_expResult [private]

Definition at line 65 of file translator.h.

Referenced by finish().

const std::string& CVC3::Translator::d_category [private]

Definition at line 66 of file translator.h.

Referenced by finish().

Definition at line 67 of file translator.h.

Referenced by dump(), finish(), and printArrayExpr().

Definition at line 68 of file translator.h.

Referenced by finish().

std::ostream* CVC3::Translator::d_osdump [private]

The log file for top-level API calls in the CVC3 input language.

Definition at line 71 of file translator.h.

Referenced by dump(), dumpAssertion(), dumpQuery(), dumpQueryResult(), finish(), and start().

std::ofstream CVC3::Translator::d_osdumpFile [private]

Definition at line 72 of file translator.h.

Referenced by finish(), and start().

std::ifstream CVC3::Translator::d_tmpFile [private]

Definition at line 73 of file translator.h.

Referenced by start().

bool CVC3::Translator::d_dump [private]

Definition at line 74 of file translator.h.

Referenced by dump(), and start().

Definition at line 74 of file translator.h.

Referenced by finish(), and start().

Definition at line 76 of file translator.h.

Referenced by finish(), printArrayExpr(), and processType().

Definition at line 76 of file translator.h.

Referenced by printArrayExpr(), and processType().

Definition at line 76 of file translator.h.

Referenced by printArrayExpr(), and processType().

bool CVC3::Translator::d_ax [private]

Definition at line 76 of file translator.h.

Referenced by finish(), and processType().

Definition at line 76 of file translator.h.

Referenced by finish(), preprocess2Rec(), preprocessRec(), printArrayExpr(), and processType().

Definition at line 77 of file translator.h.

Referenced by finish(), preprocessRec(), and processType().

Definition at line 78 of file translator.h.

Referenced by finish(), and processType().

Definition at line 79 of file translator.h.

Referenced by finish(), and preprocessRec().

Definition at line 80 of file translator.h.

Referenced by finish(), and preprocessRec().

Definition at line 81 of file translator.h.

Referenced by finish(), and preprocessRec().

Definition at line 82 of file translator.h.

Referenced by finish().

Definition at line 84 of file translator.h.

Referenced by finish(), and zeroVar().

Definition at line 85 of file translator.h.

Referenced by finish(), preprocessRec(), and processType().

Definition at line 87 of file translator.h.

Referenced by finish(), preprocessRec(), processType(), setTheoryCore(), and zeroVar().

Definition at line 88 of file translator.h.

Referenced by finish(), and setTheoryUF().

Definition at line 89 of file translator.h.

Referenced by preprocess2Rec(), preprocessRec(), processType(), setTheoryArith(), and zeroVar().

Definition at line 90 of file translator.h.

Referenced by finish(), and setTheoryArray().

Definition at line 91 of file translator.h.

Referenced by finish(), and setTheoryQuant().

Definition at line 92 of file translator.h.

Referenced by finish(), and setTheoryRecords().

Definition at line 93 of file translator.h.

Referenced by finish(), and setTheorySimulate().

Definition at line 94 of file translator.h.

Referenced by finish(), preprocessRec(), printArrayExpr(), processType(), and setTheoryBitvector().

Definition at line 95 of file translator.h.

Referenced by finish(), and setTheoryDatatype().

std::vector<Expr> CVC3::Translator::d_dumpExprs [private]

Definition at line 97 of file translator.h.

Referenced by dump(), dumpAssertion(), dumpQuery(), and finish().

std::map<std::string, Type>* CVC3::Translator::d_arrayConvertMap [private]

Definition at line 99 of file translator.h.

Referenced by finish(), preprocessRec(), Translator(), and ~Translator().

Definition at line 100 of file translator.h.

Referenced by finish(), and preprocessRec().

Definition at line 101 of file translator.h.

Referenced by finish(), preprocessRec(), and processType().

Definition at line 102 of file translator.h.

Referenced by finish(), and processType().

std::vector<Expr> CVC3::Translator::d_equalities [private]

Definition at line 103 of file translator.h.

Referenced by finish(), and preprocessRec().


The documentation for this class was generated from the following files:

Generated on Thu Oct 15 22:23:33 2009 for CVC3 by  doxygen 1.5.8