diff options
author | Andrew Reynolds <andrew.j.reynolds@gmail.com> | 2012-08-31 16:48:20 +0000 |
---|---|---|
committer | Andrew Reynolds <andrew.j.reynolds@gmail.com> | 2012-08-31 16:48:20 +0000 |
commit | 3c4935c7c0c6774588af94c82307a960e58a1154 (patch) | |
tree | e518c60ec182e91300fe53293c42cd4b85e49d29 /src/theory/quantifiers/modes.cpp | |
parent | ec9e426df607f13e5a0c0f52fbc6ed5dbb79fdf9 (diff) |
merge from fmf-devel branch. more updates to models: now with collectModelInfo with fullModel argument, most theory-specific implementation out of the model class, model printer relegated to printer classes. Also updates to finite mode finding, modifications to datatypes making them compatible with theory combination, support for theory-specific handling of user attributes, refactoring of uf models
Diffstat (limited to 'src/theory/quantifiers/modes.cpp')
-rw-r--r-- | src/theory/quantifiers/modes.cpp | 83 |
1 files changed, 83 insertions, 0 deletions
diff --git a/src/theory/quantifiers/modes.cpp b/src/theory/quantifiers/modes.cpp new file mode 100644 index 000000000..b6786d9f0 --- /dev/null +++ b/src/theory/quantifiers/modes.cpp @@ -0,0 +1,83 @@ +/********************* */ +/*! \file inst_when_mode.cpp + ** \verbatim + ** Original author: mdeters + ** Major contributors: ajreynol + ** Minor contributors (to current version): none + ** This file is part of the CVC4 prototype. + ** Copyright (c) 2009-2012 The Analysis of Computer Systems Group (ACSys) + ** Courant Institute of Mathematical Sciences + ** New York University + ** See the file COPYING in the top-level source directory for licensing + ** information.\endverbatim + ** + ** \brief [[ Add one-line brief description here ]] + ** + ** [[ Add lengthier description here ]] + ** \todo document this file + **/ + +#include <iostream> +#include "theory/quantifiers/modes.h" + +namespace CVC4 { + +std::ostream& operator<<(std::ostream& out, theory::quantifiers::InstWhenMode mode) { + switch(mode) { + case theory::quantifiers::INST_WHEN_PRE_FULL: + out << "INST_WHEN_PRE_FULL"; + break; + case theory::quantifiers::INST_WHEN_FULL: + out << "INST_WHEN_FULL"; + break; + case theory::quantifiers::INST_WHEN_FULL_LAST_CALL: + out << "INST_WHEN_FULL_LAST_CALL"; + break; + case theory::quantifiers::INST_WHEN_LAST_CALL: + out << "INST_WHEN_LAST_CALL"; + break; + default: + out << "InstWhenMode!UNKNOWN"; + } + + return out; +} + +std::ostream& operator<<(std::ostream& out, theory::quantifiers::LiteralMatchMode mode) { + switch(mode) { + case theory::quantifiers::LITERAL_MATCH_NONE: + out << "LITERAL_MATCH_NONE"; + break; + case theory::quantifiers::LITERAL_MATCH_PREDICATE: + out << "LITERAL_MATCH_PREDICATE"; + break; + case theory::quantifiers::LITERAL_MATCH_EQUALITY: + out << "LITERAL_MATCH_EQUALITY"; + break; + default: + out << "LiteralMatchMode!UNKNOWN"; + } + + return out; +} + +std::ostream& operator<<(std::ostream& out, theory::quantifiers::AxiomInstMode mode) { + switch(mode) { + case theory::quantifiers::AXIOM_INST_MODE_DEFAULT: + out << "AXIOM_INST_MODE_DEFAULT"; + break; + case theory::quantifiers::AXIOM_INST_MODE_TRUST: + out << "AXIOM_INST_MODE_TRUST"; + break; + case theory::quantifiers::AXIOM_INST_MODE_PRIORITY: + out << "AXIOM_INST_MODE_PRIORITY"; + break; + default: + out << "AxiomInstMode!UNKNOWN"; + } + + return out; +} + +}/* CVC4 namespace */ + |