#include <vcl.h>
Inheritance diagram for CVCL::VCL:
Definition at line 58 of file vcl.h.
|
Construct the closure "|-_3 Gamma => phi" of thm = "Gamma |-_3 phi".
Definition at line 246 of file vcl.cpp. References CVCL::Assumptions::begin(), d_theoryCore, CVCL::Assumptions::empty(), CVCL::Assumptions::end(), CVCL::Theorem3::getAssumptions(), getAssumptionsRec(), getFlags(), and CVCL::TheoryCore::implIntro3(). Referenced by getClosure(), and getProofClosure(). |
|
Recursive assumption graph traversal to find user assumptions. If an assumption has a TCC, traverse the proof of TCC and add its assumptions to the set recursively. Referenced by deriveClosure(). |
|
Get set of user assertions from the set of assumptions.
|
|
Return the set of command-line flags. The flags are returned by reference, and if modified, will have an immediate effect on the subsequent commands. Note that not all flags will have such an effect; some flags are used only at initialization time (like "sat"), and therefore, will not take effect if modified after ValidityChecker is created. Implements CVCL::ValidityChecker. Definition at line 171 of file vcl.h. References d_flags. Referenced by assertFormula(), deriveClosure(), query(), simplify(), and simplifyThm(). |
|
Force reprocessing of all flags.
Implements CVCL::ValidityChecker. Definition at line 661 of file vcl.cpp. References d_flags, d_se, CVCL::SearchEngine::getName(), and CVCL::CLFlags::setFlag(). |
|
Create type BOOLEAN.
Implements CVCL::ValidityChecker. |
|
Create type REAL.
Implements CVCL::ValidityChecker. Definition at line 689 of file vcl.cpp. References d_theoryArith, and CVCL::TheoryArith::realType(). |
|
Create type INT.
Implements CVCL::ValidityChecker. Definition at line 695 of file vcl.cpp. References d_theoryArith, and CVCL::TheoryArith::intType(). |
|
Create a subrange type [l..r]. l and r can be Null; l=Null represents minus infinity, r=Null is plus infinity. Implements CVCL::ValidityChecker. Definition at line 700 of file vcl.cpp. References d_theoryArith, and CVCL::TheoryArith::subrangeType(). |
|
Creates a subtype defined by the given predicate.
Implements CVCL::ValidityChecker. Definition at line 705 of file vcl.cpp. References d_cm, forallExpr(), CVCL::Expr::getBody(), CVCL::Expr::getType(), CVCL::Expr::getVars(), CVCL::Type::isBool(), CVCL::Type::isFunction(), CVCL::Expr::isLambda(), CVCL::ContextManager::popto(), CVCL::ContextManager::push(), query(), scopeLevel(), simplify(), CVCL::SUBTYPE, CVCL::Expr::toString(), and CVCL::Type::toString(). |
|
2-element tuple
Implements CVCL::ValidityChecker. Definition at line 745 of file vcl.cpp. References d_theoryRecords, and CVCL::TheoryRecords::tupleType(). |
|
3-element tuple
Implements CVCL::ValidityChecker. Definition at line 754 of file vcl.cpp. References d_theoryRecords, and CVCL::TheoryRecords::tupleType(). |
|
n-element tuple (from a vector of types)
Implements CVCL::ValidityChecker. |
|
1-element record
Implements CVCL::ValidityChecker. |
|
2-element record Fields will be sorted automatically Implements CVCL::ValidityChecker. |
|
3-element record Fields will be sorted automatically Implements CVCL::ValidityChecker. |
|
n-element record (fields and types must be of the same length) Fields will be sorted automatically Implements CVCL::ValidityChecker. |
|
Single datatype, single constructor. The types are either type exressions (obtained from a type with getExpr()) or string expressions containing the name of (one of) the dataType(s) being defined. Implements CVCL::ValidityChecker. |
|
Single datatype, multiple constructors. The types are either type exressions (obtained from a type with getExpr()) or string expressions containing the name of (one of) the dataType(s) being defined. Implements CVCL::ValidityChecker. |
|
Multiple datatypes. The types are either type exressions (obtained from a type with getExpr()) or string expressions containing the name of (one of) the dataType(s) being defined. Implements CVCL::ValidityChecker. |
|
Create an array type (ARRAY typeIndex OF typeData).
Implements CVCL::ValidityChecker. Definition at line 860 of file vcl.cpp. References CVCL::arrayType(). |
|
Create a function type typeDom -> typeRan.
Implements CVCL::ValidityChecker. Definition at line 866 of file vcl.cpp. References CVCL::Type::funType(). |
|
Create a function type (t1,t2,...,tn) -> typeRan.
Implements CVCL::ValidityChecker. |
|
Create named user-defined uninterpreted type.
Implements CVCL::ValidityChecker. |
|
Create named user-defined interpreted type (type abbreviation).
Implements CVCL::ValidityChecker. |
|
Lookup a user-defined (uninterpreted) type by name.
Implements CVCL::ValidityChecker. |
|
Return the ExprManager.
Implements CVCL::ValidityChecker. Definition at line 210 of file vcl.h. References d_em. |
|
Create a variable with a given name and type.
Implements CVCL::ValidityChecker. Referenced by CVCL::TheoryArith::TheoryArith(). |
|
Create a variable with a given name, type, and value.
Implements CVCL::ValidityChecker. |
|
Create a bound variable with a given name, unique ID (uid) and type.
Implements CVCL::ValidityChecker. |
|
Get the variable associated with a name, and its type.
Implements CVCL::ValidityChecker. |
|
Get the type of the Expr.
Implements CVCL::ValidityChecker. Definition at line 974 of file vcl.cpp. References CVCL::Expr::getType(). |
|
Get the largest supertype of the Expr.
Implements CVCL::ValidityChecker. |
|
Get the largest supertype of the Type.
Implements CVCL::ValidityChecker. |
|
Get the subtype predicate.
Implements CVCL::ValidityChecker. |
|
Create a string Expr.
Implements CVCL::ValidityChecker. |
|
Create an ID Expr.
Implements CVCL::ValidityChecker. |
|
Create a list Expr. Intermediate representation for DP-specific expressions. Normally, the first element of the list is a string Expr representing an operator, and the rest of the list are the arguments. For example, kids.push_back(vc->stringExpr("PLUS")); kids.push_back(x); // x and y are previously created Exprs kids.push_back(y); Expr lst = vc->listExpr(kids); Or, alternatively (using its overloaded version): Expr lst = vc->listExpr("PLUS", x, y); or vector<Expr> summands; summands.push_back(x); summands.push_back(y); ... Expr lst = vc->listExpr("PLUS", summands); Implements CVCL::ValidityChecker. |
|
Overloaded version of listExpr with one argument.
Implements CVCL::ValidityChecker. Definition at line 1013 of file vcl.cpp. References CVCL::RAW_LIST. |
|
Overloaded version of listExpr with two arguments.
Implements CVCL::ValidityChecker. Definition at line 1018 of file vcl.cpp. References CVCL::RAW_LIST. |
|
Overloaded version of listExpr with three arguments.
Implements CVCL::ValidityChecker. Definition at line 1023 of file vcl.cpp. References CVCL::RAW_LIST. |
|
Overloaded version of listExpr with string operator and many arguments.
Implements CVCL::ValidityChecker. |
|
Overloaded version of listExpr with string operator and one argument.
Implements CVCL::ValidityChecker. |
|
Overloaded version of listExpr with string operator and two arguments.
Implements CVCL::ValidityChecker. |
|
Overloaded version of listExpr with string operator and three arguments.
Implements CVCL::ValidityChecker. |
|
Prints e to the standard output.
Implements CVCL::ValidityChecker. Definition at line 1058 of file vcl.cpp. Referenced by query(). |
|
Prints e to the given ostream.
Implements CVCL::ValidityChecker. |
|
Parse an expression using a Theory-specific parser.
Implements CVCL::ValidityChecker. |
|
Parse a type expression using a Theory-specific parser.
Implements CVCL::ValidityChecker. |
|
Import the Expr from another instance of ValidityChecker. When expressions need to be passed among several instances of ValidityChecker, they need to be explicitly imported into the corresponding instance using this method. The return result is an identical expression that belongs to the current instance of ValidityChecker, and can be safely used as part of more complex expressions from the same instance. Implements CVCL::ValidityChecker. Definition at line 1089 of file vcl.cpp. References d_em, and CVCL::ExprManager::rebuild(). |
|
Import the Type from another instance of ValidityChecker.
Implements CVCL::ValidityChecker. Definition at line 1095 of file vcl.cpp. References d_em, CVCL::Type::getExpr(), and CVCL::ExprManager::rebuild(). |
|
Return TRUE Expr.
Implements CVCL::ValidityChecker. Definition at line 1101 of file vcl.cpp. References d_em, and CVCL::ExprManager::trueExpr(). |
|
Return FALSE Expr.
Implements CVCL::ValidityChecker. Definition at line 1107 of file vcl.cpp. References d_em, and CVCL::ExprManager::falseExpr(). Referenced by checkContinue(). |
|
Create negation.
Implements CVCL::ValidityChecker. |
|
Create 2-element conjunction.
Implements CVCL::ValidityChecker. Definition at line 1119 of file vcl.cpp. Referenced by checkContinue(). |
|
Create n-element conjunction.
Implements CVCL::ValidityChecker. |
|
Create 2-element disjunction.
Implements CVCL::ValidityChecker. |
|
Create n-element disjunction.
Implements CVCL::ValidityChecker. |
|
Create Boolean implication.
Implements CVCL::ValidityChecker. Definition at line 1147 of file vcl.cpp. References CVCL::Expr::impExpr(). |
|
Create left IFF right (boolean equivalence).
Implements CVCL::ValidityChecker. Definition at line 1153 of file vcl.cpp. References CVCL::Expr::iffExpr(). |
|
Create an equality expression. The two children must have the same type, and cannot be of type Boolean. Implements CVCL::ValidityChecker. Definition at line 1159 of file vcl.cpp. References CVCL::Expr::eqExpr(). |
|
Create IF ifpart THEN thenpart ELSE elsepart ENDIF.
Implements CVCL::ValidityChecker. Definition at line 1165 of file vcl.cpp. References CVCL::Expr::iteExpr(). |
|
Create a named uninterpreted function with a given type.
Implements CVCL::ValidityChecker. |
|
Create a named user-defined function with a given type.
Implements CVCL::ValidityChecker. |
|
Unary function application (op must be of function type).
Implements CVCL::ValidityChecker. |
|
Binary function application (op must be of function type).
Implements CVCL::ValidityChecker. |
|
Ternary function application (op must be of function type).
Implements CVCL::ValidityChecker. |
|
n-ary function application (op must be of function type)
Implements CVCL::ValidityChecker. |
|
Create a rational number with numerator n and denominator d.
Implements CVCL::ValidityChecker. Definition at line 1252 of file vcl.cpp. References d_em, and CVCL::ExprManager::newRatExpr(). Referenced by popto(), and poptoScope(). |
|
Create a rational number with numerator n and denominator d. Here n and d are given as strings. They are converted to arbitrary-precision integers according to the given base. Implements CVCL::ValidityChecker. |
|
Create a rational from a single string.
Implements CVCL::ValidityChecker. |
|
Unary minus.
Implements CVCL::ValidityChecker. |
|
Create 2-element sum (left + right).
Implements CVCL::ValidityChecker. |
|
Make a difference (left - right).
Implements CVCL::ValidityChecker. |
|
Create a product (left * right).
Implements CVCL::ValidityChecker. |
|
Create a power expression (x ^ n); n must be integer.
Implements CVCL::ValidityChecker. Definition at line 1295 of file vcl.cpp. References CVCL::powExpr(). |
|
Create expression x / y.
Implements CVCL::ValidityChecker. Definition at line 1301 of file vcl.cpp. References CVCL::divideExpr(). |
|
Create (left < right).
Implements CVCL::ValidityChecker. Definition at line 1307 of file vcl.cpp. References CVCL::ltExpr(). |
|
Create (left <= right).
Implements CVCL::ValidityChecker. Definition at line 1313 of file vcl.cpp. References CVCL::leExpr(). |
|
Create (left > right).
Implements CVCL::ValidityChecker. Definition at line 1319 of file vcl.cpp. References CVCL::gtExpr(). |
|
Create (left >= right).
Implements CVCL::ValidityChecker. Definition at line 1325 of file vcl.cpp. References CVCL::geExpr(). |
|
Create a 1-element record value (# field := expr #). Fields will be sorted automatically Implements CVCL::ValidityChecker. |
|
Create a 2-element record value (# field0 := expr0, field1 := expr1 #). Fields will be sorted automatically Implements CVCL::ValidityChecker. |
|
Create a 3-element record value (# field_i := expr_i #). Fields will be sorted automatically Implements CVCL::ValidityChecker. |
|
Create an n-element record value (# field_i := expr_i #).
Implements CVCL::ValidityChecker. |
|
Create record.field (field selection). Create an expression representing the selection of a field from a record. Implements CVCL::ValidityChecker. |
|
Record update; equivalent to "record WITH .field := newValue". Notice the `.' before field in the presentation language (and the comment above); this is to distinguish it from datatype update. Implements CVCL::ValidityChecker. |
|
Create an expression array[index] (array access). Create an expression for the value of array at the given index Implements CVCL::ValidityChecker. Definition at line 1398 of file vcl.cpp. References CVCL::READ. |
|
Array update; equivalent to "array WITH index := newValue".
Implements CVCL::ValidityChecker. Definition at line 1404 of file vcl.cpp. References CVCL::WRITE. |
|
Tuple expression.
Implements CVCL::ValidityChecker. |
|
Tuple select; equivalent to "tuple.n", where n is an numeral (e.g. tup.5).
Implements CVCL::ValidityChecker. Definition at line 1416 of file vcl.cpp. References d_theoryRecords, and CVCL::TheoryRecords::tupleSelect(). |
|
Tuple update; equivalent to "tuple WITH index := newValue".
Implements CVCL::ValidityChecker. Definition at line 1422 of file vcl.cpp. References d_theoryRecords, and CVCL::TheoryRecords::tupleUpdate(). |
|
Datatype constructor expression.
Implements CVCL::ValidityChecker. |
|
Datatype selector expression.
Implements CVCL::ValidityChecker. |
|
Datatype tester expression.
Implements CVCL::ValidityChecker. |
|
Universal quantifier.
Implements CVCL::ValidityChecker. Referenced by subtypeType(). |
|
Existential quantifier.
Implements CVCL::ValidityChecker. |
|
Lambda-expression.
Implements CVCL::ValidityChecker. |
|
Symbolic simulation expression.
Implements CVCL::ValidityChecker. |
|
Set the resource limit (0==unlimited, 1==exhausted). Currently, the limit is the total number of processed facts. Implements CVCL::ValidityChecker. |
|
Assert a new formula in the current context. This creates the assumption e |- e. The formula must have Boolean type. Implements CVCL::ValidityChecker. Definition at line 1479 of file vcl.cpp. References CVCL::ASSERT, CVCL::SearchEngine::checkValid(), CVCL::CDMap< Key, Data, HashFcn >::count(), d_cm, d_dump, d_em, d_lastQueryTCC, d_nextIdx, d_osdump, d_se, d_translate, d_userAssertions, getFlags(), CVCL::ExprManager::getOutputLang(), CVCL::Expr::getType(), CVCL::Type::isBool(), CVCL::Theorem::isNull(), CVCL::SearchEngine::newUserAssumption(), CVCL::ContextManager::popto(), CVCL::ContextManager::push(), scopeLevel(), simplify(), CVCL::SMTLIB_LANG, CVCL::Expr::toString(), CVCL::Type::toString(), and CVCL::TRACE. |
|
Register an atomic formula of interest. Registered atoms are tracked by the decision procedures. If one of them is deduced to be true or false, it is added to a list of implied literals. Implied literals can be retrieved with the getImpliedLiteral function Implements CVCL::ValidityChecker. Definition at line 1534 of file vcl.cpp. References d_se, and CVCL::SearchEngine::registerAtom(). |
|
Return next literal implied by last assertion. Null Expr if none. Returned literals are either registered atomic formulas or their negation Implements CVCL::ValidityChecker. Definition at line 1541 of file vcl.cpp. References d_se, CVCL::Theorem::getExpr(), CVCL::SearchEngine::getImpliedLiteral(), and CVCL::Theorem::isNull(). |
|
Simplify e with respect to the current context.
Implements CVCL::ValidityChecker. Definition at line 1550 of file vcl.cpp. References getFlags(), CVCL::Theorem::getRHS(), CVCL::Theorem3::getRHS(), simplifyThm(), and simplifyThm2(). Referenced by assertFormula(), and subtypeType(). |
|
Simplify e into e', and return the Theorem3 object for e = e'. This function must be called only when +tcc flag is set. The resulting Theorem3 (a 3-valued theorem object) can be used to extract the simplified expression and the proof of its equivalence to the origital expression: thm.getExpr() [to get e=e'], thm.getRHS() [to get just e'], and thm.getProof() [to get a Proof object]. Implements CVCL::ValidityChecker. Definition at line 1559 of file vcl.cpp. References CVCL::SearchEngine::checkValid(), d_cm, d_lastQueryTCC, d_se, CVCL::Theorem::getExpr(), getFlags(), CVCL::Theorem::getRHS(), CVCL::Expr::getType(), CVCL::Theorem::isNull(), CVCL::ContextManager::popto(), CVCL::ContextManager::push(), scopeLevel(), CVCL::Expr::toString(), and CVCL::TRANSFORM. Referenced by simplify(). |
|
Simpfy e, ignoring TCCs (assumes total interpretation).
Implements CVCL::ValidityChecker. Definition at line 1606 of file vcl.cpp. References CVCL::Theorem::getRHS(), and CVCL::Expr::getType(). Referenced by simplify(). |
|
Dump all variables in e.
Implements CVCL::ValidityChecker. Definition at line 1621 of file vcl.cpp. References CVCL::Expr::arity(), d_vars, CVCL::Expr::getKind(), CVCL::Expr::getType(), CVCL::Type::toString(), CVCL::Expr::toString(), and CVCL::UCONST. Referenced by query(). |
|
Check validity of e in the current context. If the result is true, then the resulting context is the same as the starting context. If the result is false, then the resulting context is a context in which e is false. e must have Boolean type.
Implements CVCL::ValidityChecker. Definition at line 1648 of file vcl.cpp. References CVCL::SearchEngine::checkValid(), d_cm, d_dump, d_em, d_lastClosure, d_lastQuery, d_lastQueryTCC, d_osdump, d_osdumpTranslate, d_se, d_translate, d_translator, getFlags(), CVCL::ExprManager::getOutputLang(), CVCL::Expr::getType(), incomplete(), CVCL::Type::isBool(), CVCL::Theorem::isNull(), CVCL::Expr::negate(), CVCL::ContextManager::popto(), CVCL::Translator::preprocess(), printExpr(), printV(), CVCL::ContextManager::push(), CVCL::QUERY, scopeLevel(), CVCL::SMTLIB_LANG, CVCL::Expr::toString(), CVCL::Type::toString(), and CVCL::TRACE. Referenced by checkUnsat(), and subtypeType(). |
|
Check satisfiability of the expr in the current context. Returns false if the context is satisfiable and true if it is unsatisfiable. Note that this is equivalent to QUERY !e Implements CVCL::ValidityChecker. Definition at line 1731 of file vcl.cpp. References CVCL::Expr::negate(), and query(). |
|
Get the next model. This method should only be called after a query which returns false. Returns false if another counterexample is found, true otherwise. Implements CVCL::ValidityChecker. Definition at line 1737 of file vcl.cpp. References andExpr(), CVCL::CONTINUE, d_dump, d_em, d_osdump, d_se, falseExpr(), CVCL::SearchEngine::getCounterExample(), CVCL::Theorem::isNull(), CVCL::ExprManager::newLeafExpr(), and CVCL::SearchEngine::restart(). |
|
Restart the most recent query with e as an additional assertion. This method should only be called after a query which returns false. Returns true if the resulting query is valid and false otherwise. Implements CVCL::ValidityChecker. Definition at line 1753 of file vcl.cpp. References d_dump, d_osdump, d_se, CVCL::Theorem::isNull(), CVCL::SearchEngine::restart(), and CVCL::RESTART. |
|
Returns to context immediately before last invalid query. This method should only be called after a query which returns false. Implements CVCL::ValidityChecker. Definition at line 1762 of file vcl.cpp. References d_se, and CVCL::SearchEngine::returnFromCheck(). |
|
Get assumptions made by the user in this and all previous contexts. User assumptions are created either by calls to assertFormula or by a call to query. In the latter case, the negated query is added as an assumption.
Implements CVCL::ValidityChecker. |
|
Get assumptions made internally in this and all previous contexts. Internal assumptions are literals assumed by the sat solver.
Implements CVCL::ValidityChecker. |
|
Get all assumptions made in this and all previous contexts.
Implements CVCL::ValidityChecker. |
|
Returns the set of assumptions used in the proof of queried formula. It returns a subset of getAssumptions(). If the last query was false or there has not yet been a query, it does nothing.
Implements CVCL::ValidityChecker. |
|
Return the internal assumptions that make the queried formula false. This method should only be called after a query which returns false. It will try to return the simplest possible subset of the internal assumptions sufficient to make the queried expression false.
Implements CVCL::ValidityChecker. |
|
Will assign concrete values to all user created variables. This function should only be called after a query which return false. Implements CVCL::ValidityChecker. Definition at line 1812 of file vcl.cpp. References CVCL::COUNTERMODEL, d_dump, d_em, d_osdump, d_se, CVCL::SearchEngine::getConcreteModel(), and CVCL::ExprManager::newLeafExpr(). |
|
Returns true if the current context is inconsistent. Also returns a minimal set of assertions used to determine the inconsistency.
Implements CVCL::ValidityChecker. |
|
Returns true if the invalid result from last query() is imprecise. Some decision procedures in CVC Lite are incomplete (quantifier elimination, non-linear arithmetic, etc.). If any incomplete features were used during the last query(), and the result is "invalid" (query() returns false), then this result is inconclusive. It means that the system gave up the search for contradiction at some point. Implements CVCL::ValidityChecker. Definition at line 1834 of file vcl.cpp. References d_lastQuery, and CVCL::Theorem3::isNull(). Referenced by query(). |
|
Returns true if the invalid result from last query() is imprecise.
Implements CVCL::ValidityChecker. |
|
Returns the proof term for the last proven query. If there has not been a successful query, it should return a NULL proof Implements CVCL::ValidityChecker. Definition at line 1848 of file vcl.cpp. References d_dump, d_em, d_lastQuery, d_osdump, d_se, CVCL::DUMP_PROOF, CVCL::SearchEngine::getProof(), CVCL::Theorem3::isNull(), and CVCL::ExprManager::newLeafExpr(). |
|
Returns the TCC of the last assumption or query. Returns Null if no assumptions or queries were performed. Implements CVCL::ValidityChecker. Definition at line 1862 of file vcl.cpp. References d_dump, d_em, d_lastQueryTCC, d_osdump, CVCL::DUMP_TCC, CVCL::Theorem::getExpr(), CVCL::Theorem::isNull(), and CVCL::ExprManager::newLeafExpr(). |
|
Return the set of assumptions used in the proof of the last TCC.
Implements CVCL::ValidityChecker. |
|
Returns the proof of TCC of the last assumption or query. Returns Null if no assumptions or queries were performed. Implements CVCL::ValidityChecker. Definition at line 1885 of file vcl.cpp. References d_dump, d_em, d_lastQueryTCC, d_osdump, CVCL::DUMP_TCC_PROOF, CVCL::Theorem::getProof(), CVCL::Theorem::isNull(), and CVCL::ExprManager::newLeafExpr(). |
|
After successful query, return its closure |- Gamma => phi. Turn a valid query Gamma |- phi into an implication |- Gamma => phi. Returns Null if last query was invalid. Implements CVCL::ValidityChecker. Definition at line 1895 of file vcl.cpp. References d_dump, d_em, d_lastClosure, d_lastQuery, d_osdump, deriveClosure(), CVCL::DUMP_CLOSURE, CVCL::Theorem3::getExpr(), CVCL::Theorem3::isNull(), and CVCL::ExprManager::newLeafExpr(). |
|
Construct a proof of the query closure |- Gamma => phi. Returns Null if last query was Invalid. Implements CVCL::ValidityChecker. Definition at line 1909 of file vcl.cpp. References d_dump, d_em, d_lastClosure, d_lastQuery, d_osdump, deriveClosure(), CVCL::DUMP_CLOSURE_PROOF, CVCL::Theorem3::getProof(), CVCL::Theorem3::isNull(), and CVCL::ExprManager::newLeafExpr(). |
|
Returns the current stack level. Initial level is 0.
Implements CVCL::ValidityChecker. Definition at line 1923 of file vcl.cpp. References d_scopeStack. Referenced by popto(). |
|
Checkpoint the current context and increase the scope level.
Implements CVCL::ValidityChecker. Definition at line 1929 of file vcl.cpp. References d_cm, d_dump, d_em, d_osdump, d_scopeStack, CVCL::ExprManager::newLeafExpr(), CVCL::ContextManager::push(), CVCL::PUSH, scopeLevel(), and CVCL::TRACE. |
|
Restore the current context to its state at the last checkpoint.
Implements CVCL::ValidityChecker. Definition at line 1942 of file vcl.cpp. References d_cm, d_dump, d_em, d_osdump, d_scopeStack, CVCL::ExprManager::newLeafExpr(), CVCL::POP, CVCL::ContextManager::popto(), and CVCL::TRACE. |
|
Restore the current context to the given stackLevel.
Implements CVCL::ValidityChecker. Definition at line 1957 of file vcl.cpp. References d_cm, d_dump, d_osdump, d_scopeStack, CVCL::ContextManager::popto(), CVCL::POPTO, ratExpr(), and stackLevel(). |
|
Returns the current scope level. Initially, the scope level is 1.
Implements CVCL::ValidityChecker. Definition at line 1974 of file vcl.cpp. References d_cm, and CVCL::ContextManager::scopeLevel(). Referenced by assertFormula(), popScope(), poptoScope(), push(), pushScope(), query(), simplifyThm(), and subtypeType(). |
|
Checkpoint the current context and increase the internal scope level. Do not use unless you know what you're doing!
Implements CVCL::ValidityChecker. Definition at line 1980 of file vcl.cpp. References d_cm, d_dump, d_em, d_flags, d_osdump, IF_DEBUG(), CVCL::ExprManager::newLeafExpr(), CVCL::ContextManager::push(), CVCL::PUSH_SCOPE, and scopeLevel(). |
|
Restore the current context to its state at the last internal checkpoint. Do not use unless you know what you're doing!
Implements CVCL::ValidityChecker. Definition at line 1991 of file vcl.cpp. References d_cm, d_dump, d_em, d_flags, d_osdump, IF_DEBUG(), CVCL::ExprManager::newLeafExpr(), CVCL::ContextManager::pop(), CVCL::POP_SCOPE, and scopeLevel(). |
|
Restore the current context to the given scopeLevel.
Implements CVCL::ValidityChecker. Definition at line 2005 of file vcl.cpp. References d_cm, d_dump, d_flags, d_osdump, IF_DEBUG(), CVCL::ContextManager::popto(), CVCL::POPTO_SCOPE, CVCL::ContextManager::push(), ratExpr(), and scopeLevel(). |
|
Get the current context.
Implements CVCL::ValidityChecker. Definition at line 2020 of file vcl.cpp. References d_cm, and CVCL::ContextManager::getCurrentContext(). |
|
Read and execute the commands from a file given by name ("" means stdin).
Implements CVCL::ValidityChecker. |
|
Read and execute the commands from a stream.
Implements CVCL::ValidityChecker. |
|
Get statistics object.
Implements CVCL::ValidityChecker. Definition at line 346 of file vcl.h. References d_statistics. |
|
Print collected statistics to stdout.
Implements CVCL::ValidityChecker. Definition at line 347 of file vcl.h. References d_statistics, and std::endl(). |
|
Pointers to main system components.
Definition at line 61 of file vcl.h. Referenced by assertFormula(), checkContinue(), falseExpr(), getClosure(), getConcreteModel(), getEM(), getProof(), getProofClosure(), getProofTCC(), getTCC(), importExpr(), importType(), pop(), popScope(), push(), pushScope(), query(), ratExpr(), and trueExpr(). |
|
Definition at line 62 of file vcl.h. Referenced by assertFormula(), getCurrentContext(), pop(), popScope(), popto(), poptoScope(), push(), pushScope(), query(), scopeLevel(), simplifyThm(), and subtypeType(). |
|
|
|
Definition at line 64 of file vcl.h. Referenced by assertFormula(), checkContinue(), getConcreteModel(), getImpliedLiteral(), getProof(), query(), registerAtom(), reprocessFlags(), restart(), returnFromCheck(), and simplifyThm(). |
|
Pointers to theories.
Definition at line 67 of file vcl.h. Referenced by deriveClosure(). |
|
|
|
Definition at line 69 of file vcl.h. Referenced by intType(), realType(), and subrangeType(). |
|
|
|
|
|
Definition at line 72 of file vcl.h. Referenced by tupleSelectExpr(), tupleType(), and tupleUpdateExpr(). |
|
|
|
|
|
|
|
Definition at line 76 of file vcl.h. Referenced by query(). |
|
All theories are stored in this common vector. This includes TheoryCore and TheoryArith. |
|
Command line flags.
Definition at line 83 of file vcl.h. Referenced by getFlags(), popScope(), poptoScope(), pushScope(), and reprocessFlags(). |
|
User-level view of the scope stack.
Definition at line 86 of file vcl.h. Referenced by pop(), popto(), push(), and stackLevel(). |
|
Cache for printV method.
Definition at line 89 of file vcl.h. Referenced by printV(). |
|
Run-time statistics.
Definition at line 92 of file vcl.h. Referenced by getStatistics(), and printStatistics(). |
|
Next index for user assertion.
Definition at line 95 of file vcl.h. Referenced by assertFormula(). |
|
Backtracking map of user assertions.
Definition at line 121 of file vcl.h. Referenced by assertFormula(). |
|
Result of the last query(). Saved for printing assumptions and proofs. Normally it is Theorem3, but query() on a TCC returns a 2-valued Theorem. Definition at line 126 of file vcl.h. Referenced by getClosure(), getProof(), getProofClosure(), incomplete(), and query(). |
|
Result of the last query(e, true) (for a TCC).
Definition at line 129 of file vcl.h. Referenced by assertFormula(), getProofTCC(), getTCC(), query(), and simplifyThm(). |
|
Closure of the last query(e): |- Gamma => e.
Definition at line 132 of file vcl.h. Referenced by getClosure(), getProofClosure(), and query(). |
|
The log file for top-level API calls in the CVCL input language.
Definition at line 135 of file vcl.h. Referenced by assertFormula(), checkContinue(), getClosure(), getConcreteModel(), getProof(), getProofClosure(), getProofTCC(), getTCC(), pop(), popScope(), popto(), poptoScope(), push(), pushScope(), query(), and restart(). |
|
Definition at line 136 of file vcl.h. Referenced by query(). |
|
|
|
|
|
|
|
Definition at line 139 of file vcl.h. Referenced by assertFormula(), and query(). |
|
Definition at line 140 of file vcl.h. Referenced by assertFormula(), checkContinue(), getClosure(), getConcreteModel(), getProof(), getProofClosure(), getProofTCC(), getTCC(), pop(), popScope(), popto(), poptoScope(), push(), pushScope(), query(), and restart(). |
|
|
|
|
|
|