diff options
author | Aina Niemetz <aina.niemetz@gmail.com> | 2021-04-01 09:56:14 -0700 |
---|---|---|
committer | GitHub <noreply@github.com> | 2021-04-01 16:56:14 +0000 |
commit | 05a53a2ac405bcd18a84024247145f161809c3b0 (patch) | |
tree | 34241c0a82f79d717ddbfbb0c294f9a09c7edb0c /src/api | |
parent | afaf4413775ff7d6054a5893f1397ad908e0773c (diff) |
Rename namespace CVC5 to cvc5. (#6258)
Diffstat (limited to 'src/api')
-rw-r--r-- | src/api/checks.h | 4 | ||||
-rw-r--r-- | src/api/cvc4cpp.cpp | 1456 | ||||
-rw-r--r-- | src/api/cvc4cpp.h | 134 | ||||
-rw-r--r-- | src/api/cvc4cppkind.h | 6 | ||||
-rw-r--r-- | src/api/python/cvc4.pxd | 4 | ||||
-rw-r--r-- | src/api/python/genkinds.py.in | 4 |
6 files changed, 804 insertions, 804 deletions
diff --git a/src/api/checks.h b/src/api/checks.h index 4686c0694..175388bf4 100644 --- a/src/api/checks.h +++ b/src/api/checks.h @@ -528,7 +528,7 @@ namespace api { this == bv.d_solver, "bound variable", bound_vars, i) \ << "a term associated with this solver object"; \ CVC4_API_ARG_AT_INDEX_CHECK_EXPECTED( \ - bv.d_node->getKind() == CVC5::Kind::BOUND_VARIABLE, \ + bv.d_node->getKind() == cvc5::Kind::BOUND_VARIABLE, \ "bound variable", \ bound_vars, \ i) \ @@ -560,7 +560,7 @@ namespace api { this == bv.d_solver, "bound variable", bound_vars, i) \ << "a term associated with this solver object"; \ CVC4_API_ARG_AT_INDEX_CHECK_EXPECTED( \ - bv.d_node->getKind() == CVC5::Kind::BOUND_VARIABLE, \ + bv.d_node->getKind() == cvc5::Kind::BOUND_VARIABLE, \ "bound variable", \ bound_vars, \ i) \ diff --git a/src/api/cvc4cpp.cpp b/src/api/cvc4cpp.cpp index 1c1b6b28c..9e55cdaf0 100644 --- a/src/api/cvc4cpp.cpp +++ b/src/api/cvc4cpp.cpp @@ -64,7 +64,7 @@ #include "util/stats_histogram.h" #include "util/utility.h" -namespace CVC5 { +namespace cvc5 { namespace api { /* -------------------------------------------------------------------------- */ @@ -87,570 +87,570 @@ struct Statistics /* -------------------------------------------------------------------------- */ /* Mapping from external (API) kind to internal kind. */ -const static std::unordered_map<Kind, CVC5::Kind, KindHashFunction> s_kinds{ - {INTERNAL_KIND, CVC5::Kind::UNDEFINED_KIND}, - {UNDEFINED_KIND, CVC5::Kind::UNDEFINED_KIND}, - {NULL_EXPR, CVC5::Kind::NULL_EXPR}, +const static std::unordered_map<Kind, cvc5::Kind, KindHashFunction> s_kinds{ + {INTERNAL_KIND, cvc5::Kind::UNDEFINED_KIND}, + {UNDEFINED_KIND, cvc5::Kind::UNDEFINED_KIND}, + {NULL_EXPR, cvc5::Kind::NULL_EXPR}, /* Builtin ------------------------------------------------------------- */ - {UNINTERPRETED_CONSTANT, CVC5::Kind::UNINTERPRETED_CONSTANT}, - {ABSTRACT_VALUE, CVC5::Kind::ABSTRACT_VALUE}, - {EQUAL, CVC5::Kind::EQUAL}, - {DISTINCT, CVC5::Kind::DISTINCT}, - {CONSTANT, CVC5::Kind::VARIABLE}, - {VARIABLE, CVC5::Kind::BOUND_VARIABLE}, - {SEXPR, CVC5::Kind::SEXPR}, - {LAMBDA, CVC5::Kind::LAMBDA}, - {WITNESS, CVC5::Kind::WITNESS}, + {UNINTERPRETED_CONSTANT, cvc5::Kind::UNINTERPRETED_CONSTANT}, + {ABSTRACT_VALUE, cvc5::Kind::ABSTRACT_VALUE}, + {EQUAL, cvc5::Kind::EQUAL}, + {DISTINCT, cvc5::Kind::DISTINCT}, + {CONSTANT, cvc5::Kind::VARIABLE}, + {VARIABLE, cvc5::Kind::BOUND_VARIABLE}, + {SEXPR, cvc5::Kind::SEXPR}, + {LAMBDA, cvc5::Kind::LAMBDA}, + {WITNESS, cvc5::Kind::WITNESS}, /* Boolean ------------------------------------------------------------- */ - {CONST_BOOLEAN, CVC5::Kind::CONST_BOOLEAN}, - {NOT, CVC5::Kind::NOT}, - {AND, CVC5::Kind::AND}, - {IMPLIES, CVC5::Kind::IMPLIES}, - {OR, CVC5::Kind::OR}, - {XOR, CVC5::Kind::XOR}, - {ITE, CVC5::Kind::ITE}, - {MATCH, CVC5::Kind::MATCH}, - {MATCH_CASE, CVC5::Kind::MATCH_CASE}, - {MATCH_BIND_CASE, CVC5::Kind::MATCH_BIND_CASE}, + {CONST_BOOLEAN, cvc5::Kind::CONST_BOOLEAN}, + {NOT, cvc5::Kind::NOT}, + {AND, cvc5::Kind::AND}, + {IMPLIES, cvc5::Kind::IMPLIES}, + {OR, cvc5::Kind::OR}, + {XOR, cvc5::Kind::XOR}, + {ITE, cvc5::Kind::ITE}, + {MATCH, cvc5::Kind::MATCH}, + {MATCH_CASE, cvc5::Kind::MATCH_CASE}, + {MATCH_BIND_CASE, cvc5::Kind::MATCH_BIND_CASE}, /* UF ------------------------------------------------------------------ */ - {APPLY_UF, CVC5::Kind::APPLY_UF}, - {CARDINALITY_CONSTRAINT, CVC5::Kind::CARDINALITY_CONSTRAINT}, - {CARDINALITY_VALUE, CVC5::Kind::CARDINALITY_VALUE}, - {HO_APPLY, CVC5::Kind::HO_APPLY}, + {APPLY_UF, cvc5::Kind::APPLY_UF}, + {CARDINALITY_CONSTRAINT, cvc5::Kind::CARDINALITY_CONSTRAINT}, + {CARDINALITY_VALUE, cvc5::Kind::CARDINALITY_VALUE}, + {HO_APPLY, cvc5::Kind::HO_APPLY}, /* Arithmetic ---------------------------------------------------------- */ - {PLUS, CVC5::Kind::PLUS}, - {MULT, CVC5::Kind::MULT}, - {IAND, CVC5::Kind::IAND}, - {MINUS, CVC5::Kind::MINUS}, - {UMINUS, CVC5::Kind::UMINUS}, - {DIVISION, CVC5::Kind::DIVISION}, - {INTS_DIVISION, CVC5::Kind::INTS_DIVISION}, - {INTS_MODULUS, CVC5::Kind::INTS_MODULUS}, - {ABS, CVC5::Kind::ABS}, - {DIVISIBLE, CVC5::Kind::DIVISIBLE}, - {POW, CVC5::Kind::POW}, - {EXPONENTIAL, CVC5::Kind::EXPONENTIAL}, - {SINE, CVC5::Kind::SINE}, - {COSINE, CVC5::Kind::COSINE}, - {TANGENT, CVC5::Kind::TANGENT}, - {COSECANT, CVC5::Kind::COSECANT}, - {SECANT, CVC5::Kind::SECANT}, - {COTANGENT, CVC5::Kind::COTANGENT}, - {ARCSINE, CVC5::Kind::ARCSINE}, - {ARCCOSINE, CVC5::Kind::ARCCOSINE}, - {ARCTANGENT, CVC5::Kind::ARCTANGENT}, - {ARCCOSECANT, CVC5::Kind::ARCCOSECANT}, - {ARCSECANT, CVC5::Kind::ARCSECANT}, - {ARCCOTANGENT, CVC5::Kind::ARCCOTANGENT}, - {SQRT, CVC5::Kind::SQRT}, - {CONST_RATIONAL, CVC5::Kind::CONST_RATIONAL}, - {LT, CVC5::Kind::LT}, - {LEQ, CVC5::Kind::LEQ}, - {GT, CVC5::Kind::GT}, - {GEQ, CVC5::Kind::GEQ}, - {IS_INTEGER, CVC5::Kind::IS_INTEGER}, - {TO_INTEGER, CVC5::Kind::TO_INTEGER}, - {TO_REAL, CVC5::Kind::TO_REAL}, - {PI, CVC5::Kind::PI}, + {PLUS, cvc5::Kind::PLUS}, + {MULT, cvc5::Kind::MULT}, + {IAND, cvc5::Kind::IAND}, + {MINUS, cvc5::Kind::MINUS}, + {UMINUS, cvc5::Kind::UMINUS}, + {DIVISION, cvc5::Kind::DIVISION}, + {INTS_DIVISION, cvc5::Kind::INTS_DIVISION}, + {INTS_MODULUS, cvc5::Kind::INTS_MODULUS}, + {ABS, cvc5::Kind::ABS}, + {DIVISIBLE, cvc5::Kind::DIVISIBLE}, + {POW, cvc5::Kind::POW}, + {EXPONENTIAL, cvc5::Kind::EXPONENTIAL}, + {SINE, cvc5::Kind::SINE}, + {COSINE, cvc5::Kind::COSINE}, + {TANGENT, cvc5::Kind::TANGENT}, + {COSECANT, cvc5::Kind::COSECANT}, + {SECANT, cvc5::Kind::SECANT}, + {COTANGENT, cvc5::Kind::COTANGENT}, + {ARCSINE, cvc5::Kind::ARCSINE}, + {ARCCOSINE, cvc5::Kind::ARCCOSINE}, + {ARCTANGENT, cvc5::Kind::ARCTANGENT}, + {ARCCOSECANT, cvc5::Kind::ARCCOSECANT}, + {ARCSECANT, cvc5::Kind::ARCSECANT}, + {ARCCOTANGENT, cvc5::Kind::ARCCOTANGENT}, + {SQRT, cvc5::Kind::SQRT}, + {CONST_RATIONAL, cvc5::Kind::CONST_RATIONAL}, + {LT, cvc5::Kind::LT}, + {LEQ, cvc5::Kind::LEQ}, + {GT, cvc5::Kind::GT}, + {GEQ, cvc5::Kind::GEQ}, + {IS_INTEGER, cvc5::Kind::IS_INTEGER}, + {TO_INTEGER, cvc5::Kind::TO_INTEGER}, + {TO_REAL, cvc5::Kind::TO_REAL}, + {PI, cvc5::Kind::PI}, /* BV ------------------------------------------------------------------ */ - {CONST_BITVECTOR, CVC5::Kind::CONST_BITVECTOR}, - {BITVECTOR_CONCAT, CVC5::Kind::BITVECTOR_CONCAT}, - {BITVECTOR_AND, CVC5::Kind::BITVECTOR_AND}, - {BITVECTOR_OR, CVC5::Kind::BITVECTOR_OR}, - {BITVECTOR_XOR, CVC5::Kind::BITVECTOR_XOR}, - {BITVECTOR_NOT, CVC5::Kind::BITVECTOR_NOT}, - {BITVECTOR_NAND, CVC5::Kind::BITVECTOR_NAND}, - {BITVECTOR_NOR, CVC5::Kind::BITVECTOR_NOR}, - {BITVECTOR_XNOR, CVC5::Kind::BITVECTOR_XNOR}, - {BITVECTOR_COMP, CVC5::Kind::BITVECTOR_COMP}, - {BITVECTOR_MULT, CVC5::Kind::BITVECTOR_MULT}, - {BITVECTOR_PLUS, CVC5::Kind::BITVECTOR_PLUS}, - {BITVECTOR_SUB, CVC5::Kind::BITVECTOR_SUB}, - {BITVECTOR_NEG, CVC5::Kind::BITVECTOR_NEG}, - {BITVECTOR_UDIV, CVC5::Kind::BITVECTOR_UDIV}, - {BITVECTOR_UREM, CVC5::Kind::BITVECTOR_UREM}, - {BITVECTOR_SDIV, CVC5::Kind::BITVECTOR_SDIV}, - {BITVECTOR_SREM, CVC5::Kind::BITVECTOR_SREM}, - {BITVECTOR_SMOD, CVC5::Kind::BITVECTOR_SMOD}, - {BITVECTOR_SHL, CVC5::Kind::BITVECTOR_SHL}, - {BITVECTOR_LSHR, CVC5::Kind::BITVECTOR_LSHR}, - {BITVECTOR_ASHR, CVC5::Kind::BITVECTOR_ASHR}, - {BITVECTOR_ULT, CVC5::Kind::BITVECTOR_ULT}, - {BITVECTOR_ULE, CVC5::Kind::BITVECTOR_ULE}, - {BITVECTOR_UGT, CVC5::Kind::BITVECTOR_UGT}, - {BITVECTOR_UGE, CVC5::Kind::BITVECTOR_UGE}, - {BITVECTOR_SLT, CVC5::Kind::BITVECTOR_SLT}, - {BITVECTOR_SLE, CVC5::Kind::BITVECTOR_SLE}, - {BITVECTOR_SGT, CVC5::Kind::BITVECTOR_SGT}, - {BITVECTOR_SGE, CVC5::Kind::BITVECTOR_SGE}, - {BITVECTOR_ULTBV, CVC5::Kind::BITVECTOR_ULTBV}, - {BITVECTOR_SLTBV, CVC5::Kind::BITVECTOR_SLTBV}, - {BITVECTOR_ITE, CVC5::Kind::BITVECTOR_ITE}, - {BITVECTOR_REDOR, CVC5::Kind::BITVECTOR_REDOR}, - {BITVECTOR_REDAND, CVC5::Kind::BITVECTOR_REDAND}, - {BITVECTOR_EXTRACT, CVC5::Kind::BITVECTOR_EXTRACT}, - {BITVECTOR_REPEAT, CVC5::Kind::BITVECTOR_REPEAT}, - {BITVECTOR_ZERO_EXTEND, CVC5::Kind::BITVECTOR_ZERO_EXTEND}, - {BITVECTOR_SIGN_EXTEND, CVC5::Kind::BITVECTOR_SIGN_EXTEND}, - {BITVECTOR_ROTATE_LEFT, CVC5::Kind::BITVECTOR_ROTATE_LEFT}, - {BITVECTOR_ROTATE_RIGHT, CVC5::Kind::BITVECTOR_ROTATE_RIGHT}, - {INT_TO_BITVECTOR, CVC5::Kind::INT_TO_BITVECTOR}, - {BITVECTOR_TO_NAT, CVC5::Kind::BITVECTOR_TO_NAT}, + {CONST_BITVECTOR, cvc5::Kind::CONST_BITVECTOR}, + {BITVECTOR_CONCAT, cvc5::Kind::BITVECTOR_CONCAT}, + {BITVECTOR_AND, cvc5::Kind::BITVECTOR_AND}, + {BITVECTOR_OR, cvc5::Kind::BITVECTOR_OR}, + {BITVECTOR_XOR, cvc5::Kind::BITVECTOR_XOR}, + {BITVECTOR_NOT, cvc5::Kind::BITVECTOR_NOT}, + {BITVECTOR_NAND, cvc5::Kind::BITVECTOR_NAND}, + {BITVECTOR_NOR, cvc5::Kind::BITVECTOR_NOR}, + {BITVECTOR_XNOR, cvc5::Kind::BITVECTOR_XNOR}, + {BITVECTOR_COMP, cvc5::Kind::BITVECTOR_COMP}, + {BITVECTOR_MULT, cvc5::Kind::BITVECTOR_MULT}, + {BITVECTOR_PLUS, cvc5::Kind::BITVECTOR_PLUS}, + {BITVECTOR_SUB, cvc5::Kind::BITVECTOR_SUB}, + {BITVECTOR_NEG, cvc5::Kind::BITVECTOR_NEG}, + {BITVECTOR_UDIV, cvc5::Kind::BITVECTOR_UDIV}, + {BITVECTOR_UREM, cvc5::Kind::BITVECTOR_UREM}, + {BITVECTOR_SDIV, cvc5::Kind::BITVECTOR_SDIV}, + {BITVECTOR_SREM, cvc5::Kind::BITVECTOR_SREM}, + {BITVECTOR_SMOD, cvc5::Kind::BITVECTOR_SMOD}, + {BITVECTOR_SHL, cvc5::Kind::BITVECTOR_SHL}, + {BITVECTOR_LSHR, cvc5::Kind::BITVECTOR_LSHR}, + {BITVECTOR_ASHR, cvc5::Kind::BITVECTOR_ASHR}, + {BITVECTOR_ULT, cvc5::Kind::BITVECTOR_ULT}, + {BITVECTOR_ULE, cvc5::Kind::BITVECTOR_ULE}, + {BITVECTOR_UGT, cvc5::Kind::BITVECTOR_UGT}, + {BITVECTOR_UGE, cvc5::Kind::BITVECTOR_UGE}, + {BITVECTOR_SLT, cvc5::Kind::BITVECTOR_SLT}, + {BITVECTOR_SLE, cvc5::Kind::BITVECTOR_SLE}, + {BITVECTOR_SGT, cvc5::Kind::BITVECTOR_SGT}, + {BITVECTOR_SGE, cvc5::Kind::BITVECTOR_SGE}, + {BITVECTOR_ULTBV, cvc5::Kind::BITVECTOR_ULTBV}, + {BITVECTOR_SLTBV, cvc5::Kind::BITVECTOR_SLTBV}, + {BITVECTOR_ITE, cvc5::Kind::BITVECTOR_ITE}, + {BITVECTOR_REDOR, cvc5::Kind::BITVECTOR_REDOR}, + {BITVECTOR_REDAND, cvc5::Kind::BITVECTOR_REDAND}, + {BITVECTOR_EXTRACT, cvc5::Kind::BITVECTOR_EXTRACT}, + {BITVECTOR_REPEAT, cvc5::Kind::BITVECTOR_REPEAT}, + {BITVECTOR_ZERO_EXTEND, cvc5::Kind::BITVECTOR_ZERO_EXTEND}, + {BITVECTOR_SIGN_EXTEND, cvc5::Kind::BITVECTOR_SIGN_EXTEND}, + {BITVECTOR_ROTATE_LEFT, cvc5::Kind::BITVECTOR_ROTATE_LEFT}, + {BITVECTOR_ROTATE_RIGHT, cvc5::Kind::BITVECTOR_ROTATE_RIGHT}, + {INT_TO_BITVECTOR, cvc5::Kind::INT_TO_BITVECTOR}, + {BITVECTOR_TO_NAT, cvc5::Kind::BITVECTOR_TO_NAT}, /* FP ------------------------------------------------------------------ */ - {CONST_FLOATINGPOINT, CVC5::Kind::CONST_FLOATINGPOINT}, - {CONST_ROUNDINGMODE, CVC5::Kind::CONST_ROUNDINGMODE}, - {FLOATINGPOINT_FP, CVC5::Kind::FLOATINGPOINT_FP}, - {FLOATINGPOINT_EQ, CVC5::Kind::FLOATINGPOINT_EQ}, - {FLOATINGPOINT_ABS, CVC5::Kind::FLOATINGPOINT_ABS}, - {FLOATINGPOINT_NEG, CVC5::Kind::FLOATINGPOINT_NEG}, - {FLOATINGPOINT_PLUS, CVC5::Kind::FLOATINGPOINT_PLUS}, - {FLOATINGPOINT_SUB, CVC5::Kind::FLOATINGPOINT_SUB}, - {FLOATINGPOINT_MULT, CVC5::Kind::FLOATINGPOINT_MULT}, - {FLOATINGPOINT_DIV, CVC5::Kind::FLOATINGPOINT_DIV}, - {FLOATINGPOINT_FMA, CVC5::Kind::FLOATINGPOINT_FMA}, - {FLOATINGPOINT_SQRT, CVC5::Kind::FLOATINGPOINT_SQRT}, - {FLOATINGPOINT_REM, CVC5::Kind::FLOATINGPOINT_REM}, - {FLOATINGPOINT_RTI, CVC5::Kind::FLOATINGPOINT_RTI}, - {FLOATINGPOINT_MIN, CVC5::Kind::FLOATINGPOINT_MIN}, - {FLOATINGPOINT_MAX, CVC5::Kind::FLOATINGPOINT_MAX}, - {FLOATINGPOINT_LEQ, CVC5::Kind::FLOATINGPOINT_LEQ}, - {FLOATINGPOINT_LT, CVC5::Kind::FLOATINGPOINT_LT}, - {FLOATINGPOINT_GEQ, CVC5::Kind::FLOATINGPOINT_GEQ}, - {FLOATINGPOINT_GT, CVC5::Kind::FLOATINGPOINT_GT}, - {FLOATINGPOINT_ISN, CVC5::Kind::FLOATINGPOINT_ISN}, - {FLOATINGPOINT_ISSN, CVC5::Kind::FLOATINGPOINT_ISSN}, - {FLOATINGPOINT_ISZ, CVC5::Kind::FLOATINGPOINT_ISZ}, - {FLOATINGPOINT_ISINF, CVC5::Kind::FLOATINGPOINT_ISINF}, - {FLOATINGPOINT_ISNAN, CVC5::Kind::FLOATINGPOINT_ISNAN}, - {FLOATINGPOINT_ISNEG, CVC5::Kind::FLOATINGPOINT_ISNEG}, - {FLOATINGPOINT_ISPOS, CVC5::Kind::FLOATINGPOINT_ISPOS}, + {CONST_FLOATINGPOINT, cvc5::Kind::CONST_FLOATINGPOINT}, + {CONST_ROUNDINGMODE, cvc5::Kind::CONST_ROUNDINGMODE}, + {FLOATINGPOINT_FP, cvc5::Kind::FLOATINGPOINT_FP}, + {FLOATINGPOINT_EQ, cvc5::Kind::FLOATINGPOINT_EQ}, + {FLOATINGPOINT_ABS, cvc5::Kind::FLOATINGPOINT_ABS}, + {FLOATINGPOINT_NEG, cvc5::Kind::FLOATINGPOINT_NEG}, + {FLOATINGPOINT_PLUS, cvc5::Kind::FLOATINGPOINT_PLUS}, + {FLOATINGPOINT_SUB, cvc5::Kind::FLOATINGPOINT_SUB}, + {FLOATINGPOINT_MULT, cvc5::Kind::FLOATINGPOINT_MULT}, + {FLOATINGPOINT_DIV, cvc5::Kind::FLOATINGPOINT_DIV}, + {FLOATINGPOINT_FMA, cvc5::Kind::FLOATINGPOINT_FMA}, + {FLOATINGPOINT_SQRT, cvc5::Kind::FLOATINGPOINT_SQRT}, + {FLOATINGPOINT_REM, cvc5::Kind::FLOATINGPOINT_REM}, + {FLOATINGPOINT_RTI, cvc5::Kind::FLOATINGPOINT_RTI}, + {FLOATINGPOINT_MIN, cvc5::Kind::FLOATINGPOINT_MIN}, + {FLOATINGPOINT_MAX, cvc5::Kind::FLOATINGPOINT_MAX}, + {FLOATINGPOINT_LEQ, cvc5::Kind::FLOATINGPOINT_LEQ}, + {FLOATINGPOINT_LT, cvc5::Kind::FLOATINGPOINT_LT}, + {FLOATINGPOINT_GEQ, cvc5::Kind::FLOATINGPOINT_GEQ}, + {FLOATINGPOINT_GT, cvc5::Kind::FLOATINGPOINT_GT}, + {FLOATINGPOINT_ISN, cvc5::Kind::FLOATINGPOINT_ISN}, + {FLOATINGPOINT_ISSN, cvc5::Kind::FLOATINGPOINT_ISSN}, + {FLOATINGPOINT_ISZ, cvc5::Kind::FLOATINGPOINT_ISZ}, + {FLOATINGPOINT_ISINF, cvc5::Kind::FLOATINGPOINT_ISINF}, + {FLOATINGPOINT_ISNAN, cvc5::Kind::FLOATINGPOINT_ISNAN}, + {FLOATINGPOINT_ISNEG, cvc5::Kind::FLOATINGPOINT_ISNEG}, + {FLOATINGPOINT_ISPOS, cvc5::Kind::FLOATINGPOINT_ISPOS}, {FLOATINGPOINT_TO_FP_FLOATINGPOINT, - CVC5::Kind::FLOATINGPOINT_TO_FP_FLOATINGPOINT}, - {FLOATINGPOINT_TO_FP_REAL, CVC5::Kind::FLOATINGPOINT_TO_FP_REAL}, + cvc5::Kind::FLOATINGPOINT_TO_FP_FLOATINGPOINT}, + {FLOATINGPOINT_TO_FP_REAL, cvc5::Kind::FLOATINGPOINT_TO_FP_REAL}, {FLOATINGPOINT_TO_FP_SIGNED_BITVECTOR, - CVC5::Kind::FLOATINGPOINT_TO_FP_SIGNED_BITVECTOR}, + cvc5::Kind::FLOATINGPOINT_TO_FP_SIGNED_BITVECTOR}, {FLOATINGPOINT_TO_FP_UNSIGNED_BITVECTOR, - CVC5::Kind::FLOATINGPOINT_TO_FP_UNSIGNED_BITVECTOR}, - {FLOATINGPOINT_TO_FP_GENERIC, CVC5::Kind::FLOATINGPOINT_TO_FP_GENERIC}, - {FLOATINGPOINT_TO_UBV, CVC5::Kind::FLOATINGPOINT_TO_UBV}, - {FLOATINGPOINT_TO_SBV, CVC5::Kind::FLOATINGPOINT_TO_SBV}, - {FLOATINGPOINT_TO_REAL, CVC5::Kind::FLOATINGPOINT_TO_REAL}, + cvc5::Kind::FLOATINGPOINT_TO_FP_UNSIGNED_BITVECTOR}, + {FLOATINGPOINT_TO_FP_GENERIC, cvc5::Kind::FLOATINGPOINT_TO_FP_GENERIC}, + {FLOATINGPOINT_TO_UBV, cvc5::Kind::FLOATINGPOINT_TO_UBV}, + {FLOATINGPOINT_TO_SBV, cvc5::Kind::FLOATINGPOINT_TO_SBV}, + {FLOATINGPOINT_TO_REAL, cvc5::Kind::FLOATINGPOINT_TO_REAL}, /* Arrays -------------------------------------------------------------- */ - {SELECT, CVC5::Kind::SELECT}, - {STORE, CVC5::Kind::STORE}, - {CONST_ARRAY, CVC5::Kind::STORE_ALL}, - {EQ_RANGE, CVC5::Kind::EQ_RANGE}, + {SELECT, cvc5::Kind::SELECT}, + {STORE, cvc5::Kind::STORE}, + {CONST_ARRAY, cvc5::Kind::STORE_ALL}, + {EQ_RANGE, cvc5::Kind::EQ_RANGE}, /* Datatypes ----------------------------------------------------------- */ - {APPLY_SELECTOR, CVC5::Kind::APPLY_SELECTOR}, - {APPLY_CONSTRUCTOR, CVC5::Kind::APPLY_CONSTRUCTOR}, - {APPLY_TESTER, CVC5::Kind::APPLY_TESTER}, - {TUPLE_UPDATE, CVC5::Kind::TUPLE_UPDATE}, - {RECORD_UPDATE, CVC5::Kind::RECORD_UPDATE}, - {DT_SIZE, CVC5::Kind::DT_SIZE}, - {TUPLE_PROJECT, CVC5::Kind::TUPLE_PROJECT}, + {APPLY_SELECTOR, cvc5::Kind::APPLY_SELECTOR}, + {APPLY_CONSTRUCTOR, cvc5::Kind::APPLY_CONSTRUCTOR}, + {APPLY_TESTER, cvc5::Kind::APPLY_TESTER}, + {TUPLE_UPDATE, cvc5::Kind::TUPLE_UPDATE}, + {RECORD_UPDATE, cvc5::Kind::RECORD_UPDATE}, + {DT_SIZE, cvc5::Kind::DT_SIZE}, + {TUPLE_PROJECT, cvc5::Kind::TUPLE_PROJECT}, /* Separation Logic ---------------------------------------------------- */ - {SEP_NIL, CVC5::Kind::SEP_NIL}, - {SEP_EMP, CVC5::Kind::SEP_EMP}, - {SEP_PTO, CVC5::Kind::SEP_PTO}, - {SEP_STAR, CVC5::Kind::SEP_STAR}, - {SEP_WAND, CVC5::Kind::SEP_WAND}, + {SEP_NIL, cvc5::Kind::SEP_NIL}, + {SEP_EMP, cvc5::Kind::SEP_EMP}, + {SEP_PTO, cvc5::Kind::SEP_PTO}, + {SEP_STAR, cvc5::Kind::SEP_STAR}, + {SEP_WAND, cvc5::Kind::SEP_WAND}, /* Sets ---------------------------------------------------------------- */ - {EMPTYSET, CVC5::Kind::EMPTYSET}, - {UNION, CVC5::Kind::UNION}, - {INTERSECTION, CVC5::Kind::INTERSECTION}, - {SETMINUS, CVC5::Kind::SETMINUS}, - {SUBSET, CVC5::Kind::SUBSET}, - {MEMBER, CVC5::Kind::MEMBER}, - {SINGLETON, CVC5::Kind::SINGLETON}, - {INSERT, CVC5::Kind::INSERT}, - {CARD, CVC5::Kind::CARD}, - {COMPLEMENT, CVC5::Kind::COMPLEMENT}, - {UNIVERSE_SET, CVC5::Kind::UNIVERSE_SET}, - {JOIN, CVC5::Kind::JOIN}, - {PRODUCT, CVC5::Kind::PRODUCT}, - {TRANSPOSE, CVC5::Kind::TRANSPOSE}, - {TCLOSURE, CVC5::Kind::TCLOSURE}, - {JOIN_IMAGE, CVC5::Kind::JOIN_IMAGE}, - {IDEN, CVC5::Kind::IDEN}, - {COMPREHENSION, CVC5::Kind::COMPREHENSION}, - {CHOOSE, CVC5::Kind::CHOOSE}, - {IS_SINGLETON, CVC5::Kind::IS_SINGLETON}, + {EMPTYSET, cvc5::Kind::EMPTYSET}, + {UNION, cvc5::Kind::UNION}, + {INTERSECTION, cvc5::Kind::INTERSECTION}, + {SETMINUS, cvc5::Kind::SETMINUS}, + {SUBSET, cvc5::Kind::SUBSET}, + {MEMBER, cvc5::Kind::MEMBER}, + {SINGLETON, cvc5::Kind::SINGLETON}, + {INSERT, cvc5::Kind::INSERT}, + {CARD, cvc5::Kind::CARD}, + {COMPLEMENT, cvc5::Kind::COMPLEMENT}, + {UNIVERSE_SET, cvc5::Kind::UNIVERSE_SET}, + {JOIN, cvc5::Kind::JOIN}, + {PRODUCT, cvc5::Kind::PRODUCT}, + {TRANSPOSE, cvc5::Kind::TRANSPOSE}, + {TCLOSURE, cvc5::Kind::TCLOSURE}, + {JOIN_IMAGE, cvc5::Kind::JOIN_IMAGE}, + {IDEN, cvc5::Kind::IDEN}, + {COMPREHENSION, cvc5::Kind::COMPREHENSION}, + {CHOOSE, cvc5::Kind::CHOOSE}, + {IS_SINGLETON, cvc5::Kind::IS_SINGLETON}, /* Bags ---------------------------------------------------------------- */ - {UNION_MAX, CVC5::Kind::UNION_MAX}, - {UNION_DISJOINT, CVC5::Kind::UNION_DISJOINT}, - {INTERSECTION_MIN, CVC5::Kind::INTERSECTION_MIN}, - {DIFFERENCE_SUBTRACT, CVC5::Kind::DIFFERENCE_SUBTRACT}, - {DIFFERENCE_REMOVE, CVC5::Kind::DIFFERENCE_REMOVE}, - {SUBBAG, CVC5::Kind::SUBBAG}, - {BAG_COUNT, CVC5::Kind::BAG_COUNT}, - {DUPLICATE_REMOVAL, CVC5::Kind::DUPLICATE_REMOVAL}, - {MK_BAG, CVC5::Kind::MK_BAG}, - {EMPTYBAG, CVC5::Kind::EMPTYBAG}, - {BAG_CARD, CVC5::Kind::BAG_CARD}, - {BAG_CHOOSE, CVC5::Kind::BAG_CHOOSE}, - {BAG_IS_SINGLETON, CVC5::Kind::BAG_IS_SINGLETON}, - {BAG_FROM_SET, CVC5::Kind::BAG_FROM_SET}, - {BAG_TO_SET, CVC5::Kind::BAG_TO_SET}, + {UNION_MAX, cvc5::Kind::UNION_MAX}, + {UNION_DISJOINT, cvc5::Kind::UNION_DISJOINT}, + {INTERSECTION_MIN, cvc5::Kind::INTERSECTION_MIN}, + {DIFFERENCE_SUBTRACT, cvc5::Kind::DIFFERENCE_SUBTRACT}, + {DIFFERENCE_REMOVE, cvc5::Kind::DIFFERENCE_REMOVE}, + {SUBBAG, cvc5::Kind::SUBBAG}, + {BAG_COUNT, cvc5::Kind::BAG_COUNT}, + {DUPLICATE_REMOVAL, cvc5::Kind::DUPLICATE_REMOVAL}, + {MK_BAG, cvc5::Kind::MK_BAG}, + {EMPTYBAG, cvc5::Kind::EMPTYBAG}, + {BAG_CARD, cvc5::Kind::BAG_CARD}, + {BAG_CHOOSE, cvc5::Kind::BAG_CHOOSE}, + {BAG_IS_SINGLETON, cvc5::Kind::BAG_IS_SINGLETON}, + {BAG_FROM_SET, cvc5::Kind::BAG_FROM_SET}, + {BAG_TO_SET, cvc5::Kind::BAG_TO_SET}, /* Strings ------------------------------------------------------------- */ - {STRING_CONCAT, CVC5::Kind::STRING_CONCAT}, - {STRING_IN_REGEXP, CVC5::Kind::STRING_IN_REGEXP}, - {STRING_LENGTH, CVC5::Kind::STRING_LENGTH}, - {STRING_SUBSTR, CVC5::Kind::STRING_SUBSTR}, - {STRING_UPDATE, CVC5::Kind::STRING_UPDATE}, - {STRING_CHARAT, CVC5::Kind::STRING_CHARAT}, - {STRING_CONTAINS, CVC5::Kind::STRING_STRCTN}, - {STRING_INDEXOF, CVC5::Kind::STRING_STRIDOF}, - {STRING_REPLACE, CVC5::Kind::STRING_STRREPL}, - {STRING_REPLACE_ALL, CVC5::Kind::STRING_STRREPLALL}, - {STRING_REPLACE_RE, CVC5::Kind::STRING_REPLACE_RE}, - {STRING_REPLACE_RE_ALL, CVC5::Kind::STRING_REPLACE_RE_ALL}, - {STRING_TOLOWER, CVC5::Kind::STRING_TOLOWER}, - {STRING_TOUPPER, CVC5::Kind::STRING_TOUPPER}, - {STRING_REV, CVC5::Kind::STRING_REV}, - {STRING_FROM_CODE, CVC5::Kind::STRING_FROM_CODE}, - {STRING_TO_CODE, CVC5::Kind::STRING_TO_CODE}, - {STRING_LT, CVC5::Kind::STRING_LT}, - {STRING_LEQ, CVC5::Kind::STRING_LEQ}, - {STRING_PREFIX, CVC5::Kind::STRING_PREFIX}, - {STRING_SUFFIX, CVC5::Kind::STRING_SUFFIX}, - {STRING_IS_DIGIT, CVC5::Kind::STRING_IS_DIGIT}, - {STRING_FROM_INT, CVC5::Kind::STRING_ITOS}, - {STRING_TO_INT, CVC5::Kind::STRING_STOI}, - {CONST_STRING, CVC5::Kind::CONST_STRING}, - {STRING_TO_REGEXP, CVC5::Kind::STRING_TO_REGEXP}, - {REGEXP_CONCAT, CVC5::Kind::REGEXP_CONCAT}, - {REGEXP_UNION, CVC5::Kind::REGEXP_UNION}, - {REGEXP_INTER, CVC5::Kind::REGEXP_INTER}, - {REGEXP_DIFF, CVC5::Kind::REGEXP_DIFF}, - {REGEXP_STAR, CVC5::Kind::REGEXP_STAR}, - {REGEXP_PLUS, CVC5::Kind::REGEXP_PLUS}, - {REGEXP_OPT, CVC5::Kind::REGEXP_OPT}, - {REGEXP_RANGE, CVC5::Kind::REGEXP_RANGE}, - {REGEXP_REPEAT, CVC5::Kind::REGEXP_REPEAT}, - {REGEXP_LOOP, CVC5::Kind::REGEXP_LOOP}, - {REGEXP_EMPTY, CVC5::Kind::REGEXP_EMPTY}, - {REGEXP_SIGMA, CVC5::Kind::REGEXP_SIGMA}, - {REGEXP_COMPLEMENT, CVC5::Kind::REGEXP_COMPLEMENT}, + {STRING_CONCAT, cvc5::Kind::STRING_CONCAT}, + {STRING_IN_REGEXP, cvc5::Kind::STRING_IN_REGEXP}, + {STRING_LENGTH, cvc5::Kind::STRING_LENGTH}, + {STRING_SUBSTR, cvc5::Kind::STRING_SUBSTR}, + {STRING_UPDATE, cvc5::Kind::STRING_UPDATE}, + {STRING_CHARAT, cvc5::Kind::STRING_CHARAT}, + {STRING_CONTAINS, cvc5::Kind::STRING_STRCTN}, + {STRING_INDEXOF, cvc5::Kind::STRING_STRIDOF}, + {STRING_REPLACE, cvc5::Kind::STRING_STRREPL}, + {STRING_REPLACE_ALL, cvc5::Kind::STRING_STRREPLALL}, + {STRING_REPLACE_RE, cvc5::Kind::STRING_REPLACE_RE}, + {STRING_REPLACE_RE_ALL, cvc5::Kind::STRING_REPLACE_RE_ALL}, + {STRING_TOLOWER, cvc5::Kind::STRING_TOLOWER}, + {STRING_TOUPPER, cvc5::Kind::STRING_TOUPPER}, + {STRING_REV, cvc5::Kind::STRING_REV}, + {STRING_FROM_CODE, cvc5::Kind::STRING_FROM_CODE}, + {STRING_TO_CODE, cvc5::Kind::STRING_TO_CODE}, + {STRING_LT, cvc5::Kind::STRING_LT}, + {STRING_LEQ, cvc5::Kind::STRING_LEQ}, + {STRING_PREFIX, cvc5::Kind::STRING_PREFIX}, + {STRING_SUFFIX, cvc5::Kind::STRING_SUFFIX}, + {STRING_IS_DIGIT, cvc5::Kind::STRING_IS_DIGIT}, + {STRING_FROM_INT, cvc5::Kind::STRING_ITOS}, + {STRING_TO_INT, cvc5::Kind::STRING_STOI}, + {CONST_STRING, cvc5::Kind::CONST_STRING}, + {STRING_TO_REGEXP, cvc5::Kind::STRING_TO_REGEXP}, + {REGEXP_CONCAT, cvc5::Kind::REGEXP_CONCAT}, + {REGEXP_UNION, cvc5::Kind::REGEXP_UNION}, + {REGEXP_INTER, cvc5::Kind::REGEXP_INTER}, + {REGEXP_DIFF, cvc5::Kind::REGEXP_DIFF}, + {REGEXP_STAR, cvc5::Kind::REGEXP_STAR}, + {REGEXP_PLUS, cvc5::Kind::REGEXP_PLUS}, + {REGEXP_OPT, cvc5::Kind::REGEXP_OPT}, + {REGEXP_RANGE, cvc5::Kind::REGEXP_RANGE}, + {REGEXP_REPEAT, cvc5::Kind::REGEXP_REPEAT}, + {REGEXP_LOOP, cvc5::Kind::REGEXP_LOOP}, + {REGEXP_EMPTY, cvc5::Kind::REGEXP_EMPTY}, + {REGEXP_SIGMA, cvc5::Kind::REGEXP_SIGMA}, + {REGEXP_COMPLEMENT, cvc5::Kind::REGEXP_COMPLEMENT}, // maps to the same kind as the string versions - {SEQ_CONCAT, CVC5::Kind::STRING_CONCAT}, - {SEQ_LENGTH, CVC5::Kind::STRING_LENGTH}, - {SEQ_EXTRACT, CVC5::Kind::STRING_SUBSTR}, - {SEQ_UPDATE, CVC5::Kind::STRING_UPDATE}, - {SEQ_AT, CVC5::Kind::STRING_CHARAT}, - {SEQ_CONTAINS, CVC5::Kind::STRING_STRCTN}, - {SEQ_INDEXOF, CVC5::Kind::STRING_STRIDOF}, - {SEQ_REPLACE, CVC5::Kind::STRING_STRREPL}, - {SEQ_REPLACE_ALL, CVC5::Kind::STRING_STRREPLALL}, - {SEQ_REV, CVC5::Kind::STRING_REV}, - {SEQ_PREFIX, CVC5::Kind::STRING_PREFIX}, - {SEQ_SUFFIX, CVC5::Kind::STRING_SUFFIX}, - {CONST_SEQUENCE, CVC5::Kind::CONST_SEQUENCE}, - {SEQ_UNIT, CVC5::Kind::SEQ_UNIT}, - {SEQ_NTH, CVC5::Kind::SEQ_NTH}, + {SEQ_CONCAT, cvc5::Kind::STRING_CONCAT}, + {SEQ_LENGTH, cvc5::Kind::STRING_LENGTH}, + {SEQ_EXTRACT, cvc5::Kind::STRING_SUBSTR}, + {SEQ_UPDATE, cvc5::Kind::STRING_UPDATE}, + {SEQ_AT, cvc5::Kind::STRING_CHARAT}, + {SEQ_CONTAINS, cvc5::Kind::STRING_STRCTN}, + {SEQ_INDEXOF, cvc5::Kind::STRING_STRIDOF}, + {SEQ_REPLACE, cvc5::Kind::STRING_STRREPL}, + {SEQ_REPLACE_ALL, cvc5::Kind::STRING_STRREPLALL}, + {SEQ_REV, cvc5::Kind::STRING_REV}, + {SEQ_PREFIX, cvc5::Kind::STRING_PREFIX}, + {SEQ_SUFFIX, cvc5::Kind::STRING_SUFFIX}, + {CONST_SEQUENCE, cvc5::Kind::CONST_SEQUENCE}, + {SEQ_UNIT, cvc5::Kind::SEQ_UNIT}, + {SEQ_NTH, cvc5::Kind::SEQ_NTH}, /* Quantifiers --------------------------------------------------------- */ - {FORALL, CVC5::Kind::FORALL}, - {EXISTS, CVC5::Kind::EXISTS}, - {BOUND_VAR_LIST, CVC5::Kind::BOUND_VAR_LIST}, - {INST_PATTERN, CVC5::Kind::INST_PATTERN}, - {INST_NO_PATTERN, CVC5::Kind::INST_NO_PATTERN}, - {INST_ATTRIBUTE, CVC5::Kind::INST_ATTRIBUTE}, - {INST_PATTERN_LIST, CVC5::Kind::INST_PATTERN_LIST}, - {LAST_KIND, CVC5::Kind::LAST_KIND}, + {FORALL, cvc5::Kind::FORALL}, + {EXISTS, cvc5::Kind::EXISTS}, + {BOUND_VAR_LIST, cvc5::Kind::BOUND_VAR_LIST}, + {INST_PATTERN, cvc5::Kind::INST_PATTERN}, + {INST_NO_PATTERN, cvc5::Kind::INST_NO_PATTERN}, + {INST_ATTRIBUTE, cvc5::Kind::INST_ATTRIBUTE}, + {INST_PATTERN_LIST, cvc5::Kind::INST_PATTERN_LIST}, + {LAST_KIND, cvc5::Kind::LAST_KIND}, }; /* Mapping from internal kind to external (API) kind. */ -const static std::unordered_map<CVC5::Kind, Kind, CVC5::kind::KindHashFunction> +const static std::unordered_map<cvc5::Kind, Kind, cvc5::kind::KindHashFunction> s_kinds_internal{ - {CVC5::Kind::UNDEFINED_KIND, UNDEFINED_KIND}, - {CVC5::Kind::NULL_EXPR, NULL_EXPR}, + {cvc5::Kind::UNDEFINED_KIND, UNDEFINED_KIND}, + {cvc5::Kind::NULL_EXPR, NULL_EXPR}, /* Builtin --------------------------------------------------------- */ - {CVC5::Kind::UNINTERPRETED_CONSTANT, UNINTERPRETED_CONSTANT}, - {CVC5::Kind::ABSTRACT_VALUE, ABSTRACT_VALUE}, - {CVC5::Kind::EQUAL, EQUAL}, - {CVC5::Kind::DISTINCT, DISTINCT}, - {CVC5::Kind::VARIABLE, CONSTANT}, - {CVC5::Kind::BOUND_VARIABLE, VARIABLE}, - {CVC5::Kind::SEXPR, SEXPR}, - {CVC5::Kind::LAMBDA, LAMBDA}, - {CVC5::Kind::WITNESS, WITNESS}, + {cvc5::Kind::UNINTERPRETED_CONSTANT, UNINTERPRETED_CONSTANT}, + {cvc5::Kind::ABSTRACT_VALUE, ABSTRACT_VALUE}, + {cvc5::Kind::EQUAL, EQUAL}, + {cvc5::Kind::DISTINCT, DISTINCT}, + {cvc5::Kind::VARIABLE, CONSTANT}, + {cvc5::Kind::BOUND_VARIABLE, VARIABLE}, + {cvc5::Kind::SEXPR, SEXPR}, + {cvc5::Kind::LAMBDA, LAMBDA}, + {cvc5::Kind::WITNESS, WITNESS}, /* Boolean --------------------------------------------------------- */ - {CVC5::Kind::CONST_BOOLEAN, CONST_BOOLEAN}, - {CVC5::Kind::NOT, NOT}, - {CVC5::Kind::AND, AND}, - {CVC5::Kind::IMPLIES, IMPLIES}, - {CVC5::Kind::OR, OR}, - {CVC5::Kind::XOR, XOR}, - {CVC5::Kind::ITE, ITE}, - {CVC5::Kind::MATCH, MATCH}, - {CVC5::Kind::MATCH_CASE, MATCH_CASE}, - {CVC5::Kind::MATCH_BIND_CASE, MATCH_BIND_CASE}, + {cvc5::Kind::CONST_BOOLEAN, CONST_BOOLEAN}, + {cvc5::Kind::NOT, NOT}, + {cvc5::Kind::AND, AND}, + {cvc5::Kind::IMPLIES, IMPLIES}, + {cvc5::Kind::OR, OR}, + {cvc5::Kind::XOR, XOR}, + {cvc5::Kind::ITE, ITE}, + {cvc5::Kind::MATCH, MATCH}, + {cvc5::Kind::MATCH_CASE, MATCH_CASE}, + {cvc5::Kind::MATCH_BIND_CASE, MATCH_BIND_CASE}, /* UF -------------------------------------------------------------- */ - {CVC5::Kind::APPLY_UF, APPLY_UF}, - {CVC5::Kind::CARDINALITY_CONSTRAINT, CARDINALITY_CONSTRAINT}, - {CVC5::Kind::CARDINALITY_VALUE, CARDINALITY_VALUE}, - {CVC5::Kind::HO_APPLY, HO_APPLY}, + {cvc5::Kind::APPLY_UF, APPLY_UF}, + {cvc5::Kind::CARDINALITY_CONSTRAINT, CARDINALITY_CONSTRAINT}, + {cvc5::Kind::CARDINALITY_VALUE, CARDINALITY_VALUE}, + {cvc5::Kind::HO_APPLY, HO_APPLY}, /* Arithmetic ------------------------------------------------------ */ - {CVC5::Kind::PLUS, PLUS}, - {CVC5::Kind::MULT, MULT}, - {CVC5::Kind::IAND, IAND}, - {CVC5::Kind::MINUS, MINUS}, - {CVC5::Kind::UMINUS, UMINUS}, - {CVC5::Kind::DIVISION, DIVISION}, - {CVC5::Kind::DIVISION_TOTAL, INTERNAL_KIND}, - {CVC5::Kind::INTS_DIVISION, INTS_DIVISION}, - {CVC5::Kind::INTS_DIVISION_TOTAL, INTERNAL_KIND}, - {CVC5::Kind::INTS_MODULUS, INTS_MODULUS}, - {CVC5::Kind::INTS_MODULUS_TOTAL, INTERNAL_KIND}, - {CVC5::Kind::ABS, ABS}, - {CVC5::Kind::DIVISIBLE, DIVISIBLE}, - {CVC5::Kind::POW, POW}, - {CVC5::Kind::EXPONENTIAL, EXPONENTIAL}, - {CVC5::Kind::SINE, SINE}, - {CVC5::Kind::COSINE, COSINE}, - {CVC5::Kind::TANGENT, TANGENT}, - {CVC5::Kind::COSECANT, COSECANT}, - {CVC5::Kind::SECANT, SECANT}, - {CVC5::Kind::COTANGENT, COTANGENT}, - {CVC5::Kind::ARCSINE, ARCSINE}, - {CVC5::Kind::ARCCOSINE, ARCCOSINE}, - {CVC5::Kind::ARCTANGENT, ARCTANGENT}, - {CVC5::Kind::ARCCOSECANT, ARCCOSECANT}, - {CVC5::Kind::ARCSECANT, ARCSECANT}, - {CVC5::Kind::ARCCOTANGENT, ARCCOTANGENT}, - {CVC5::Kind::SQRT, SQRT}, - {CVC5::Kind::DIVISIBLE_OP, DIVISIBLE}, - {CVC5::Kind::CONST_RATIONAL, CONST_RATIONAL}, - {CVC5::Kind::LT, LT}, - {CVC5::Kind::LEQ, LEQ}, - {CVC5::Kind::GT, GT}, - {CVC5::Kind::GEQ, GEQ}, - {CVC5::Kind::IS_INTEGER, IS_INTEGER}, - {CVC5::Kind::TO_INTEGER, TO_INTEGER}, - {CVC5::Kind::TO_REAL, TO_REAL}, - {CVC5::Kind::PI, PI}, + {cvc5::Kind::PLUS, PLUS}, + {cvc5::Kind::MULT, MULT}, + {cvc5::Kind::IAND, IAND}, + {cvc5::Kind::MINUS, MINUS}, + {cvc5::Kind::UMINUS, UMINUS}, + {cvc5::Kind::DIVISION, DIVISION}, + {cvc5::Kind::DIVISION_TOTAL, INTERNAL_KIND}, + {cvc5::Kind::INTS_DIVISION, INTS_DIVISION}, + {cvc5::Kind::INTS_DIVISION_TOTAL, INTERNAL_KIND}, + {cvc5::Kind::INTS_MODULUS, INTS_MODULUS}, + {cvc5::Kind::INTS_MODULUS_TOTAL, INTERNAL_KIND}, + {cvc5::Kind::ABS, ABS}, + {cvc5::Kind::DIVISIBLE, DIVISIBLE}, + {cvc5::Kind::POW, POW}, + {cvc5::Kind::EXPONENTIAL, EXPONENTIAL}, + {cvc5::Kind::SINE, SINE}, + {cvc5::Kind::COSINE, COSINE}, + {cvc5::Kind::TANGENT, TANGENT}, + {cvc5::Kind::COSECANT, COSECANT}, + {cvc5::Kind::SECANT, SECANT}, + {cvc5::Kind::COTANGENT, COTANGENT}, + {cvc5::Kind::ARCSINE, ARCSINE}, + {cvc5::Kind::ARCCOSINE, ARCCOSINE}, + {cvc5::Kind::ARCTANGENT, ARCTANGENT}, + {cvc5::Kind::ARCCOSECANT, ARCCOSECANT}, + {cvc5::Kind::ARCSECANT, ARCSECANT}, + {cvc5::Kind::ARCCOTANGENT, ARCCOTANGENT}, + {cvc5::Kind::SQRT, SQRT}, + {cvc5::Kind::DIVISIBLE_OP, DIVISIBLE}, + {cvc5::Kind::CONST_RATIONAL, CONST_RATIONAL}, + {cvc5::Kind::LT, LT}, + {cvc5::Kind::LEQ, LEQ}, + {cvc5::Kind::GT, GT}, + {cvc5::Kind::GEQ, GEQ}, + {cvc5::Kind::IS_INTEGER, IS_INTEGER}, + {cvc5::Kind::TO_INTEGER, TO_INTEGER}, + {cvc5::Kind::TO_REAL, TO_REAL}, + {cvc5::Kind::PI, PI}, /* BV -------------------------------------------------------------- */ - {CVC5::Kind::CONST_BITVECTOR, CONST_BITVECTOR}, - {CVC5::Kind::BITVECTOR_CONCAT, BITVECTOR_CONCAT}, - {CVC5::Kind::BITVECTOR_AND, BITVECTOR_AND}, - {CVC5::Kind::BITVECTOR_OR, BITVECTOR_OR}, - {CVC5::Kind::BITVECTOR_XOR, BITVECTOR_XOR}, - {CVC5::Kind::BITVECTOR_NOT, BITVECTOR_NOT}, - {CVC5::Kind::BITVECTOR_NAND, BITVECTOR_NAND}, - {CVC5::Kind::BITVECTOR_NOR, BITVECTOR_NOR}, - {CVC5::Kind::BITVECTOR_XNOR, BITVECTOR_XNOR}, - {CVC5::Kind::BITVECTOR_COMP, BITVECTOR_COMP}, - {CVC5::Kind::BITVECTOR_MULT, BITVECTOR_MULT}, - {CVC5::Kind::BITVECTOR_PLUS, BITVECTOR_PLUS}, - {CVC5::Kind::BITVECTOR_SUB, BITVECTOR_SUB}, - {CVC5::Kind::BITVECTOR_NEG, BITVECTOR_NEG}, - {CVC5::Kind::BITVECTOR_UDIV, BITVECTOR_UDIV}, - {CVC5::Kind::BITVECTOR_UREM, BITVECTOR_UREM}, - {CVC5::Kind::BITVECTOR_SDIV, BITVECTOR_SDIV}, - {CVC5::Kind::BITVECTOR_SREM, BITVECTOR_SREM}, - {CVC5::Kind::BITVECTOR_SMOD, BITVECTOR_SMOD}, - {CVC5::Kind::BITVECTOR_SHL, BITVECTOR_SHL}, - {CVC5::Kind::BITVECTOR_LSHR, BITVECTOR_LSHR}, - {CVC5::Kind::BITVECTOR_ASHR, BITVECTOR_ASHR}, - {CVC5::Kind::BITVECTOR_ULT, BITVECTOR_ULT}, - {CVC5::Kind::BITVECTOR_ULE, BITVECTOR_ULE}, - {CVC5::Kind::BITVECTOR_UGT, BITVECTOR_UGT}, - {CVC5::Kind::BITVECTOR_UGE, BITVECTOR_UGE}, - {CVC5::Kind::BITVECTOR_SLT, BITVECTOR_SLT}, - {CVC5::Kind::BITVECTOR_SLE, BITVECTOR_SLE}, - {CVC5::Kind::BITVECTOR_SGT, BITVECTOR_SGT}, - {CVC5::Kind::BITVECTOR_SGE, BITVECTOR_SGE}, - {CVC5::Kind::BITVECTOR_ULTBV, BITVECTOR_ULTBV}, - {CVC5::Kind::BITVECTOR_SLTBV, BITVECTOR_SLTBV}, - {CVC5::Kind::BITVECTOR_ITE, BITVECTOR_ITE}, - {CVC5::Kind::BITVECTOR_REDOR, BITVECTOR_REDOR}, - {CVC5::Kind::BITVECTOR_REDAND, BITVECTOR_REDAND}, - {CVC5::Kind::BITVECTOR_EXTRACT_OP, BITVECTOR_EXTRACT}, - {CVC5::Kind::BITVECTOR_REPEAT_OP, BITVECTOR_REPEAT}, - {CVC5::Kind::BITVECTOR_ZERO_EXTEND_OP, BITVECTOR_ZERO_EXTEND}, - {CVC5::Kind::BITVECTOR_SIGN_EXTEND_OP, BITVECTOR_SIGN_EXTEND}, - {CVC5::Kind::BITVECTOR_ROTATE_LEFT_OP, BITVECTOR_ROTATE_LEFT}, - {CVC5::Kind::BITVECTOR_ROTATE_RIGHT_OP, BITVECTOR_ROTATE_RIGHT}, - {CVC5::Kind::BITVECTOR_EXTRACT, BITVECTOR_EXTRACT}, - {CVC5::Kind::BITVECTOR_REPEAT, BITVECTOR_REPEAT}, - {CVC5::Kind::BITVECTOR_ZERO_EXTEND, BITVECTOR_ZERO_EXTEND}, - {CVC5::Kind::BITVECTOR_SIGN_EXTEND, BITVECTOR_SIGN_EXTEND}, - {CVC5::Kind::BITVECTOR_ROTATE_LEFT, BITVECTOR_ROTATE_LEFT}, - {CVC5::Kind::BITVECTOR_ROTATE_RIGHT, BITVECTOR_ROTATE_RIGHT}, - {CVC5::Kind::INT_TO_BITVECTOR_OP, INT_TO_BITVECTOR}, - {CVC5::Kind::INT_TO_BITVECTOR, INT_TO_BITVECTOR}, - {CVC5::Kind::BITVECTOR_TO_NAT, BITVECTOR_TO_NAT}, + {cvc5::Kind::CONST_BITVECTOR, CONST_BITVECTOR}, + {cvc5::Kind::BITVECTOR_CONCAT, BITVECTOR_CONCAT}, + {cvc5::Kind::BITVECTOR_AND, BITVECTOR_AND}, + {cvc5::Kind::BITVECTOR_OR, BITVECTOR_OR}, + {cvc5::Kind::BITVECTOR_XOR, BITVECTOR_XOR}, + {cvc5::Kind::BITVECTOR_NOT, BITVECTOR_NOT}, + {cvc5::Kind::BITVECTOR_NAND, BITVECTOR_NAND}, + {cvc5::Kind::BITVECTOR_NOR, BITVECTOR_NOR}, + {cvc5::Kind::BITVECTOR_XNOR, BITVECTOR_XNOR}, + {cvc5::Kind::BITVECTOR_COMP, BITVECTOR_COMP}, + {cvc5::Kind::BITVECTOR_MULT, BITVECTOR_MULT}, + {cvc5::Kind::BITVECTOR_PLUS, BITVECTOR_PLUS}, + {cvc5::Kind::BITVECTOR_SUB, BITVECTOR_SUB}, + {cvc5::Kind::BITVECTOR_NEG, BITVECTOR_NEG}, + {cvc5::Kind::BITVECTOR_UDIV, BITVECTOR_UDIV}, + {cvc5::Kind::BITVECTOR_UREM, BITVECTOR_UREM}, + {cvc5::Kind::BITVECTOR_SDIV, BITVECTOR_SDIV}, + {cvc5::Kind::BITVECTOR_SREM, BITVECTOR_SREM}, + {cvc5::Kind::BITVECTOR_SMOD, BITVECTOR_SMOD}, + {cvc5::Kind::BITVECTOR_SHL, BITVECTOR_SHL}, + {cvc5::Kind::BITVECTOR_LSHR, BITVECTOR_LSHR}, + {cvc5::Kind::BITVECTOR_ASHR, BITVECTOR_ASHR}, + {cvc5::Kind::BITVECTOR_ULT, BITVECTOR_ULT}, + {cvc5::Kind::BITVECTOR_ULE, BITVECTOR_ULE}, + {cvc5::Kind::BITVECTOR_UGT, BITVECTOR_UGT}, + {cvc5::Kind::BITVECTOR_UGE, BITVECTOR_UGE}, + {cvc5::Kind::BITVECTOR_SLT, BITVECTOR_SLT}, + {cvc5::Kind::BITVECTOR_SLE, BITVECTOR_SLE}, + {cvc5::Kind::BITVECTOR_SGT, BITVECTOR_SGT}, + {cvc5::Kind::BITVECTOR_SGE, BITVECTOR_SGE}, + {cvc5::Kind::BITVECTOR_ULTBV, BITVECTOR_ULTBV}, + {cvc5::Kind::BITVECTOR_SLTBV, BITVECTOR_SLTBV}, + {cvc5::Kind::BITVECTOR_ITE, BITVECTOR_ITE}, + {cvc5::Kind::BITVECTOR_REDOR, BITVECTOR_REDOR}, + {cvc5::Kind::BITVECTOR_REDAND, BITVECTOR_REDAND}, + {cvc5::Kind::BITVECTOR_EXTRACT_OP, BITVECTOR_EXTRACT}, + {cvc5::Kind::BITVECTOR_REPEAT_OP, BITVECTOR_REPEAT}, + {cvc5::Kind::BITVECTOR_ZERO_EXTEND_OP, BITVECTOR_ZERO_EXTEND}, + {cvc5::Kind::BITVECTOR_SIGN_EXTEND_OP, BITVECTOR_SIGN_EXTEND}, + {cvc5::Kind::BITVECTOR_ROTATE_LEFT_OP, BITVECTOR_ROTATE_LEFT}, + {cvc5::Kind::BITVECTOR_ROTATE_RIGHT_OP, BITVECTOR_ROTATE_RIGHT}, + {cvc5::Kind::BITVECTOR_EXTRACT, BITVECTOR_EXTRACT}, + {cvc5::Kind::BITVECTOR_REPEAT, BITVECTOR_REPEAT}, + {cvc5::Kind::BITVECTOR_ZERO_EXTEND, BITVECTOR_ZERO_EXTEND}, + {cvc5::Kind::BITVECTOR_SIGN_EXTEND, BITVECTOR_SIGN_EXTEND}, + {cvc5::Kind::BITVECTOR_ROTATE_LEFT, BITVECTOR_ROTATE_LEFT}, + {cvc5::Kind::BITVECTOR_ROTATE_RIGHT, BITVECTOR_ROTATE_RIGHT}, + {cvc5::Kind::INT_TO_BITVECTOR_OP, INT_TO_BITVECTOR}, + {cvc5::Kind::INT_TO_BITVECTOR, INT_TO_BITVECTOR}, + {cvc5::Kind::BITVECTOR_TO_NAT, BITVECTOR_TO_NAT}, /* FP -------------------------------------------------------------- */ - {CVC5::Kind::CONST_FLOATINGPOINT, CONST_FLOATINGPOINT}, - {CVC5::Kind::CONST_ROUNDINGMODE, CONST_ROUNDINGMODE}, - {CVC5::Kind::FLOATINGPOINT_FP, FLOATINGPOINT_FP}, - {CVC5::Kind::FLOATINGPOINT_EQ, FLOATINGPOINT_EQ}, - {CVC5::Kind::FLOATINGPOINT_ABS, FLOATINGPOINT_ABS}, - {CVC5::Kind::FLOATINGPOINT_NEG, FLOATINGPOINT_NEG}, - {CVC5::Kind::FLOATINGPOINT_PLUS, FLOATINGPOINT_PLUS}, - {CVC5::Kind::FLOATINGPOINT_SUB, FLOATINGPOINT_SUB}, - {CVC5::Kind::FLOATINGPOINT_MULT, FLOATINGPOINT_MULT}, - {CVC5::Kind::FLOATINGPOINT_DIV, FLOATINGPOINT_DIV}, - {CVC5::Kind::FLOATINGPOINT_FMA, FLOATINGPOINT_FMA}, - {CVC5::Kind::FLOATINGPOINT_SQRT, FLOATINGPOINT_SQRT}, - {CVC5::Kind::FLOATINGPOINT_REM, FLOATINGPOINT_REM}, - {CVC5::Kind::FLOATINGPOINT_RTI, FLOATINGPOINT_RTI}, - {CVC5::Kind::FLOATINGPOINT_MIN, FLOATINGPOINT_MIN}, - {CVC5::Kind::FLOATINGPOINT_MAX, FLOATINGPOINT_MAX}, - {CVC5::Kind::FLOATINGPOINT_LEQ, FLOATINGPOINT_LEQ}, - {CVC5::Kind::FLOATINGPOINT_LT, FLOATINGPOINT_LT}, - {CVC5::Kind::FLOATINGPOINT_GEQ, FLOATINGPOINT_GEQ}, - {CVC5::Kind::FLOATINGPOINT_GT, FLOATINGPOINT_GT}, - {CVC5::Kind::FLOATINGPOINT_ISN, FLOATINGPOINT_ISN}, - {CVC5::Kind::FLOATINGPOINT_ISSN, FLOATINGPOINT_ISSN}, - {CVC5::Kind::FLOATINGPOINT_ISZ, FLOATINGPOINT_ISZ}, - {CVC5::Kind::FLOATINGPOINT_ISINF, FLOATINGPOINT_ISINF}, - {CVC5::Kind::FLOATINGPOINT_ISNAN, FLOATINGPOINT_ISNAN}, - {CVC5::Kind::FLOATINGPOINT_ISNEG, FLOATINGPOINT_ISNEG}, - {CVC5::Kind::FLOATINGPOINT_ISPOS, FLOATINGPOINT_ISPOS}, - {CVC5::Kind::FLOATINGPOINT_TO_FP_IEEE_BITVECTOR_OP, + {cvc5::Kind::CONST_FLOATINGPOINT, CONST_FLOATINGPOINT}, + {cvc5::Kind::CONST_ROUNDINGMODE, CONST_ROUNDINGMODE}, + {cvc5::Kind::FLOATINGPOINT_FP, FLOATINGPOINT_FP}, + {cvc5::Kind::FLOATINGPOINT_EQ, FLOATINGPOINT_EQ}, + {cvc5::Kind::FLOATINGPOINT_ABS, FLOATINGPOINT_ABS}, + {cvc5::Kind::FLOATINGPOINT_NEG, FLOATINGPOINT_NEG}, + {cvc5::Kind::FLOATINGPOINT_PLUS, FLOATINGPOINT_PLUS}, + {cvc5::Kind::FLOATINGPOINT_SUB, FLOATINGPOINT_SUB}, + {cvc5::Kind::FLOATINGPOINT_MULT, FLOATINGPOINT_MULT}, + {cvc5::Kind::FLOATINGPOINT_DIV, FLOATINGPOINT_DIV}, + {cvc5::Kind::FLOATINGPOINT_FMA, FLOATINGPOINT_FMA}, + {cvc5::Kind::FLOATINGPOINT_SQRT, FLOATINGPOINT_SQRT}, + {cvc5::Kind::FLOATINGPOINT_REM, FLOATINGPOINT_REM}, + {cvc5::Kind::FLOATINGPOINT_RTI, FLOATINGPOINT_RTI}, + {cvc5::Kind::FLOATINGPOINT_MIN, FLOATINGPOINT_MIN}, + {cvc5::Kind::FLOATINGPOINT_MAX, FLOATINGPOINT_MAX}, + {cvc5::Kind::FLOATINGPOINT_LEQ, FLOATINGPOINT_LEQ}, + {cvc5::Kind::FLOATINGPOINT_LT, FLOATINGPOINT_LT}, + {cvc5::Kind::FLOATINGPOINT_GEQ, FLOATINGPOINT_GEQ}, + {cvc5::Kind::FLOATINGPOINT_GT, FLOATINGPOINT_GT}, + {cvc5::Kind::FLOATINGPOINT_ISN, FLOATINGPOINT_ISN}, + {cvc5::Kind::FLOATINGPOINT_ISSN, FLOATINGPOINT_ISSN}, + {cvc5::Kind::FLOATINGPOINT_ISZ, FLOATINGPOINT_ISZ}, + {cvc5::Kind::FLOATINGPOINT_ISINF, FLOATINGPOINT_ISINF}, + {cvc5::Kind::FLOATINGPOINT_ISNAN, FLOATINGPOINT_ISNAN}, + {cvc5::Kind::FLOATINGPOINT_ISNEG, FLOATINGPOINT_ISNEG}, + {cvc5::Kind::FLOATINGPOINT_ISPOS, FLOATINGPOINT_ISPOS}, + {cvc5::Kind::FLOATINGPOINT_TO_FP_IEEE_BITVECTOR_OP, FLOATINGPOINT_TO_FP_IEEE_BITVECTOR}, - {CVC5::Kind::FLOATINGPOINT_TO_FP_IEEE_BITVECTOR, + {cvc5::Kind::FLOATINGPOINT_TO_FP_IEEE_BITVECTOR, FLOATINGPOINT_TO_FP_IEEE_BITVECTOR}, - {CVC5::Kind::FLOATINGPOINT_TO_FP_FLOATINGPOINT_OP, + {cvc5::Kind::FLOATINGPOINT_TO_FP_FLOATINGPOINT_OP, FLOATINGPOINT_TO_FP_FLOATINGPOINT}, - {CVC5::Kind::FLOATINGPOINT_TO_FP_FLOATINGPOINT, + {cvc5::Kind::FLOATINGPOINT_TO_FP_FLOATINGPOINT, FLOATINGPOINT_TO_FP_FLOATINGPOINT}, - {CVC5::Kind::FLOATINGPOINT_TO_FP_REAL_OP, FLOATINGPOINT_TO_FP_REAL}, - {CVC5::Kind::FLOATINGPOINT_TO_FP_REAL, FLOATINGPOINT_TO_FP_REAL}, - {CVC5::Kind::FLOATINGPOINT_TO_FP_SIGNED_BITVECTOR_OP, + {cvc5::Kind::FLOATINGPOINT_TO_FP_REAL_OP, FLOATINGPOINT_TO_FP_REAL}, + {cvc5::Kind::FLOATINGPOINT_TO_FP_REAL, FLOATINGPOINT_TO_FP_REAL}, + {cvc5::Kind::FLOATINGPOINT_TO_FP_SIGNED_BITVECTOR_OP, FLOATINGPOINT_TO_FP_SIGNED_BITVECTOR}, - {CVC5::Kind::FLOATINGPOINT_TO_FP_SIGNED_BITVECTOR, + {cvc5::Kind::FLOATINGPOINT_TO_FP_SIGNED_BITVECTOR, FLOATINGPOINT_TO_FP_SIGNED_BITVECTOR}, - {CVC5::Kind::FLOATINGPOINT_TO_FP_UNSIGNED_BITVECTOR_OP, + {cvc5::Kind::FLOATINGPOINT_TO_FP_UNSIGNED_BITVECTOR_OP, FLOATINGPOINT_TO_FP_UNSIGNED_BITVECTOR}, - {CVC5::Kind::FLOATINGPOINT_TO_FP_UNSIGNED_BITVECTOR, + {cvc5::Kind::FLOATINGPOINT_TO_FP_UNSIGNED_BITVECTOR, FLOATINGPOINT_TO_FP_UNSIGNED_BITVECTOR}, - {CVC5::Kind::FLOATINGPOINT_TO_FP_GENERIC_OP, + {cvc5::Kind::FLOATINGPOINT_TO_FP_GENERIC_OP, FLOATINGPOINT_TO_FP_GENERIC}, - {CVC5::Kind::FLOATINGPOINT_TO_FP_GENERIC, FLOATINGPOINT_TO_FP_GENERIC}, - {CVC5::Kind::FLOATINGPOINT_TO_UBV_OP, FLOATINGPOINT_TO_UBV}, - {CVC5::Kind::FLOATINGPOINT_TO_UBV, FLOATINGPOINT_TO_UBV}, - {CVC5::Kind::FLOATINGPOINT_TO_UBV_TOTAL_OP, INTERNAL_KIND}, - {CVC5::Kind::FLOATINGPOINT_TO_UBV_TOTAL, INTERNAL_KIND}, - {CVC5::Kind::FLOATINGPOINT_TO_SBV_OP, FLOATINGPOINT_TO_SBV}, - {CVC5::Kind::FLOATINGPOINT_TO_SBV, FLOATINGPOINT_TO_SBV}, - {CVC5::Kind::FLOATINGPOINT_TO_SBV_TOTAL_OP, INTERNAL_KIND}, - {CVC5::Kind::FLOATINGPOINT_TO_SBV_TOTAL, INTERNAL_KIND}, - {CVC5::Kind::FLOATINGPOINT_TO_REAL, FLOATINGPOINT_TO_REAL}, - {CVC5::Kind::FLOATINGPOINT_TO_REAL_TOTAL, INTERNAL_KIND}, + {cvc5::Kind::FLOATINGPOINT_TO_FP_GENERIC, FLOATINGPOINT_TO_FP_GENERIC}, + {cvc5::Kind::FLOATINGPOINT_TO_UBV_OP, FLOATINGPOINT_TO_UBV}, + {cvc5::Kind::FLOATINGPOINT_TO_UBV, FLOATINGPOINT_TO_UBV}, + {cvc5::Kind::FLOATINGPOINT_TO_UBV_TOTAL_OP, INTERNAL_KIND}, + {cvc5::Kind::FLOATINGPOINT_TO_UBV_TOTAL, INTERNAL_KIND}, + {cvc5::Kind::FLOATINGPOINT_TO_SBV_OP, FLOATINGPOINT_TO_SBV}, + {cvc5::Kind::FLOATINGPOINT_TO_SBV, FLOATINGPOINT_TO_SBV}, + {cvc5::Kind::FLOATINGPOINT_TO_SBV_TOTAL_OP, INTERNAL_KIND}, + {cvc5::Kind::FLOATINGPOINT_TO_SBV_TOTAL, INTERNAL_KIND}, + {cvc5::Kind::FLOATINGPOINT_TO_REAL, FLOATINGPOINT_TO_REAL}, + {cvc5::Kind::FLOATINGPOINT_TO_REAL_TOTAL, INTERNAL_KIND}, /* Arrays ---------------------------------------------------------- */ - {CVC5::Kind::SELECT, SELECT}, - {CVC5::Kind::STORE, STORE}, - {CVC5::Kind::STORE_ALL, CONST_ARRAY}, + {cvc5::Kind::SELECT, SELECT}, + {cvc5::Kind::STORE, STORE}, + {cvc5::Kind::STORE_ALL, CONST_ARRAY}, /* Datatypes ------------------------------------------------------- */ - {CVC5::Kind::APPLY_SELECTOR, APPLY_SELECTOR}, - {CVC5::Kind::APPLY_CONSTRUCTOR, APPLY_CONSTRUCTOR}, - {CVC5::Kind::APPLY_SELECTOR_TOTAL, INTERNAL_KIND}, - {CVC5::Kind::APPLY_TESTER, APPLY_TESTER}, - {CVC5::Kind::TUPLE_UPDATE_OP, TUPLE_UPDATE}, - {CVC5::Kind::TUPLE_UPDATE, TUPLE_UPDATE}, - {CVC5::Kind::RECORD_UPDATE_OP, RECORD_UPDATE}, - {CVC5::Kind::RECORD_UPDATE, RECORD_UPDATE}, - {CVC5::Kind::DT_SIZE, DT_SIZE}, - {CVC5::Kind::TUPLE_PROJECT, TUPLE_PROJECT}, + {cvc5::Kind::APPLY_SELECTOR, APPLY_SELECTOR}, + {cvc5::Kind::APPLY_CONSTRUCTOR, APPLY_CONSTRUCTOR}, + {cvc5::Kind::APPLY_SELECTOR_TOTAL, INTERNAL_KIND}, + {cvc5::Kind::APPLY_TESTER, APPLY_TESTER}, + {cvc5::Kind::TUPLE_UPDATE_OP, TUPLE_UPDATE}, + {cvc5::Kind::TUPLE_UPDATE, TUPLE_UPDATE}, + {cvc5::Kind::RECORD_UPDATE_OP, RECORD_UPDATE}, + {cvc5::Kind::RECORD_UPDATE, RECORD_UPDATE}, + {cvc5::Kind::DT_SIZE, DT_SIZE}, + {cvc5::Kind::TUPLE_PROJECT, TUPLE_PROJECT}, /* Separation Logic ------------------------------------------------ */ - {CVC5::Kind::SEP_NIL, SEP_NIL}, - {CVC5::Kind::SEP_EMP, SEP_EMP}, - {CVC5::Kind::SEP_PTO, SEP_PTO}, - {CVC5::Kind::SEP_STAR, SEP_STAR}, - {CVC5::Kind::SEP_WAND, SEP_WAND}, + {cvc5::Kind::SEP_NIL, SEP_NIL}, + {cvc5::Kind::SEP_EMP, SEP_EMP}, + {cvc5::Kind::SEP_PTO, SEP_PTO}, + {cvc5::Kind::SEP_STAR, SEP_STAR}, + {cvc5::Kind::SEP_WAND, SEP_WAND}, /* Sets ------------------------------------------------------------ */ - {CVC5::Kind::EMPTYSET, EMPTYSET}, - {CVC5::Kind::UNION, UNION}, - {CVC5::Kind::INTERSECTION, INTERSECTION}, - {CVC5::Kind::SETMINUS, SETMINUS}, - {CVC5::Kind::SUBSET, SUBSET}, - {CVC5::Kind::MEMBER, MEMBER}, - {CVC5::Kind::SINGLETON, SINGLETON}, - {CVC5::Kind::INSERT, INSERT}, - {CVC5::Kind::CARD, CARD}, - {CVC5::Kind::COMPLEMENT, COMPLEMENT}, - {CVC5::Kind::UNIVERSE_SET, UNIVERSE_SET}, - {CVC5::Kind::JOIN, JOIN}, - {CVC5::Kind::PRODUCT, PRODUCT}, - {CVC5::Kind::TRANSPOSE, TRANSPOSE}, - {CVC5::Kind::TCLOSURE, TCLOSURE}, - {CVC5::Kind::JOIN_IMAGE, JOIN_IMAGE}, - {CVC5::Kind::IDEN, IDEN}, - {CVC5::Kind::COMPREHENSION, COMPREHENSION}, - {CVC5::Kind::CHOOSE, CHOOSE}, - {CVC5::Kind::IS_SINGLETON, IS_SINGLETON}, + {cvc5::Kind::EMPTYSET, EMPTYSET}, + {cvc5::Kind::UNION, UNION}, + {cvc5::Kind::INTERSECTION, INTERSECTION}, + {cvc5::Kind::SETMINUS, SETMINUS}, + {cvc5::Kind::SUBSET, SUBSET}, + {cvc5::Kind::MEMBER, MEMBER}, + {cvc5::Kind::SINGLETON, SINGLETON}, + {cvc5::Kind::INSERT, INSERT}, + {cvc5::Kind::CARD, CARD}, + {cvc5::Kind::COMPLEMENT, COMPLEMENT}, + {cvc5::Kind::UNIVERSE_SET, UNIVERSE_SET}, + {cvc5::Kind::JOIN, JOIN}, + {cvc5::Kind::PRODUCT, PRODUCT}, + {cvc5::Kind::TRANSPOSE, TRANSPOSE}, + {cvc5::Kind::TCLOSURE, TCLOSURE}, + {cvc5::Kind::JOIN_IMAGE, JOIN_IMAGE}, + {cvc5::Kind::IDEN, IDEN}, + {cvc5::Kind::COMPREHENSION, COMPREHENSION}, + {cvc5::Kind::CHOOSE, CHOOSE}, + {cvc5::Kind::IS_SINGLETON, IS_SINGLETON}, /* Bags ------------------------------------------------------------ */ - {CVC5::Kind::UNION_MAX, UNION_MAX}, - {CVC5::Kind::UNION_DISJOINT, UNION_DISJOINT}, - {CVC5::Kind::INTERSECTION_MIN, INTERSECTION_MIN}, - {CVC5::Kind::DIFFERENCE_SUBTRACT, DIFFERENCE_SUBTRACT}, - {CVC5::Kind::DIFFERENCE_REMOVE, DIFFERENCE_REMOVE}, - {CVC5::Kind::SUBBAG, SUBBAG}, - {CVC5::Kind::BAG_COUNT, BAG_COUNT}, - {CVC5::Kind::DUPLICATE_REMOVAL, DUPLICATE_REMOVAL}, - {CVC5::Kind::MK_BAG, MK_BAG}, - {CVC5::Kind::EMPTYBAG, EMPTYBAG}, - {CVC5::Kind::BAG_CARD, BAG_CARD}, - {CVC5::Kind::BAG_CHOOSE, BAG_CHOOSE}, - {CVC5::Kind::BAG_IS_SINGLETON, BAG_IS_SINGLETON}, - {CVC5::Kind::BAG_FROM_SET, BAG_FROM_SET}, - {CVC5::Kind::BAG_TO_SET, BAG_TO_SET}, + {cvc5::Kind::UNION_MAX, UNION_MAX}, + {cvc5::Kind::UNION_DISJOINT, UNION_DISJOINT}, + {cvc5::Kind::INTERSECTION_MIN, INTERSECTION_MIN}, + {cvc5::Kind::DIFFERENCE_SUBTRACT, DIFFERENCE_SUBTRACT}, + {cvc5::Kind::DIFFERENCE_REMOVE, DIFFERENCE_REMOVE}, + {cvc5::Kind::SUBBAG, SUBBAG}, + {cvc5::Kind::BAG_COUNT, BAG_COUNT}, + {cvc5::Kind::DUPLICATE_REMOVAL, DUPLICATE_REMOVAL}, + {cvc5::Kind::MK_BAG, MK_BAG}, + {cvc5::Kind::EMPTYBAG, EMPTYBAG}, + {cvc5::Kind::BAG_CARD, BAG_CARD}, + {cvc5::Kind::BAG_CHOOSE, BAG_CHOOSE}, + {cvc5::Kind::BAG_IS_SINGLETON, BAG_IS_SINGLETON}, + {cvc5::Kind::BAG_FROM_SET, BAG_FROM_SET}, + {cvc5::Kind::BAG_TO_SET, BAG_TO_SET}, /* Strings --------------------------------------------------------- */ - {CVC5::Kind::STRING_CONCAT, STRING_CONCAT}, - {CVC5::Kind::STRING_IN_REGEXP, STRING_IN_REGEXP}, - {CVC5::Kind::STRING_LENGTH, STRING_LENGTH}, - {CVC5::Kind::STRING_SUBSTR, STRING_SUBSTR}, - {CVC5::Kind::STRING_UPDATE, STRING_UPDATE}, - {CVC5::Kind::STRING_CHARAT, STRING_CHARAT}, - {CVC5::Kind::STRING_STRCTN, STRING_CONTAINS}, - {CVC5::Kind::STRING_STRIDOF, STRING_INDEXOF}, - {CVC5::Kind::STRING_STRREPL, STRING_REPLACE}, - {CVC5::Kind::STRING_STRREPLALL, STRING_REPLACE_ALL}, - {CVC5::Kind::STRING_REPLACE_RE, STRING_REPLACE_RE}, - {CVC5::Kind::STRING_REPLACE_RE_ALL, STRING_REPLACE_RE_ALL}, - {CVC5::Kind::STRING_TOLOWER, STRING_TOLOWER}, - {CVC5::Kind::STRING_TOUPPER, STRING_TOUPPER}, - {CVC5::Kind::STRING_REV, STRING_REV}, - {CVC5::Kind::STRING_FROM_CODE, STRING_FROM_CODE}, - {CVC5::Kind::STRING_TO_CODE, STRING_TO_CODE}, - {CVC5::Kind::STRING_LT, STRING_LT}, - {CVC5::Kind::STRING_LEQ, STRING_LEQ}, - {CVC5::Kind::STRING_PREFIX, STRING_PREFIX}, - {CVC5::Kind::STRING_SUFFIX, STRING_SUFFIX}, - {CVC5::Kind::STRING_IS_DIGIT, STRING_IS_DIGIT}, - {CVC5::Kind::STRING_ITOS, STRING_FROM_INT}, - {CVC5::Kind::STRING_STOI, STRING_TO_INT}, - {CVC5::Kind::CONST_STRING, CONST_STRING}, - {CVC5::Kind::STRING_TO_REGEXP, STRING_TO_REGEXP}, - {CVC5::Kind::REGEXP_CONCAT, REGEXP_CONCAT}, - {CVC5::Kind::REGEXP_UNION, REGEXP_UNION}, - {CVC5::Kind::REGEXP_INTER, REGEXP_INTER}, - {CVC5::Kind::REGEXP_DIFF, REGEXP_DIFF}, - {CVC5::Kind::REGEXP_STAR, REGEXP_STAR}, - {CVC5::Kind::REGEXP_PLUS, REGEXP_PLUS}, - {CVC5::Kind::REGEXP_OPT, REGEXP_OPT}, - {CVC5::Kind::REGEXP_RANGE, REGEXP_RANGE}, - {CVC5::Kind::REGEXP_REPEAT, REGEXP_REPEAT}, - {CVC5::Kind::REGEXP_REPEAT_OP, REGEXP_REPEAT}, - {CVC5::Kind::REGEXP_LOOP, REGEXP_LOOP}, - {CVC5::Kind::REGEXP_LOOP_OP, REGEXP_LOOP}, - {CVC5::Kind::REGEXP_EMPTY, REGEXP_EMPTY}, - {CVC5::Kind::REGEXP_SIGMA, REGEXP_SIGMA}, - {CVC5::Kind::REGEXP_COMPLEMENT, REGEXP_COMPLEMENT}, - {CVC5::Kind::CONST_SEQUENCE, CONST_SEQUENCE}, - {CVC5::Kind::SEQ_UNIT, SEQ_UNIT}, - {CVC5::Kind::SEQ_NTH, SEQ_NTH}, + {cvc5::Kind::STRING_CONCAT, STRING_CONCAT}, + {cvc5::Kind::STRING_IN_REGEXP, STRING_IN_REGEXP}, + {cvc5::Kind::STRING_LENGTH, STRING_LENGTH}, + {cvc5::Kind::STRING_SUBSTR, STRING_SUBSTR}, + {cvc5::Kind::STRING_UPDATE, STRING_UPDATE}, + {cvc5::Kind::STRING_CHARAT, STRING_CHARAT}, + {cvc5::Kind::STRING_STRCTN, STRING_CONTAINS}, + {cvc5::Kind::STRING_STRIDOF, STRING_INDEXOF}, + {cvc5::Kind::STRING_STRREPL, STRING_REPLACE}, + {cvc5::Kind::STRING_STRREPLALL, STRING_REPLACE_ALL}, + {cvc5::Kind::STRING_REPLACE_RE, STRING_REPLACE_RE}, + {cvc5::Kind::STRING_REPLACE_RE_ALL, STRING_REPLACE_RE_ALL}, + {cvc5::Kind::STRING_TOLOWER, STRING_TOLOWER}, + {cvc5::Kind::STRING_TOUPPER, STRING_TOUPPER}, + {cvc5::Kind::STRING_REV, STRING_REV}, + {cvc5::Kind::STRING_FROM_CODE, STRING_FROM_CODE}, + {cvc5::Kind::STRING_TO_CODE, STRING_TO_CODE}, + {cvc5::Kind::STRING_LT, STRING_LT}, + {cvc5::Kind::STRING_LEQ, STRING_LEQ}, + {cvc5::Kind::STRING_PREFIX, STRING_PREFIX}, + {cvc5::Kind::STRING_SUFFIX, STRING_SUFFIX}, + {cvc5::Kind::STRING_IS_DIGIT, STRING_IS_DIGIT}, + {cvc5::Kind::STRING_ITOS, STRING_FROM_INT}, + {cvc5::Kind::STRING_STOI, STRING_TO_INT}, + {cvc5::Kind::CONST_STRING, CONST_STRING}, + {cvc5::Kind::STRING_TO_REGEXP, STRING_TO_REGEXP}, + {cvc5::Kind::REGEXP_CONCAT, REGEXP_CONCAT}, + {cvc5::Kind::REGEXP_UNION, REGEXP_UNION}, + {cvc5::Kind::REGEXP_INTER, REGEXP_INTER}, + {cvc5::Kind::REGEXP_DIFF, REGEXP_DIFF}, + {cvc5::Kind::REGEXP_STAR, REGEXP_STAR}, + {cvc5::Kind::REGEXP_PLUS, REGEXP_PLUS}, + {cvc5::Kind::REGEXP_OPT, REGEXP_OPT}, + {cvc5::Kind::REGEXP_RANGE, REGEXP_RANGE}, + {cvc5::Kind::REGEXP_REPEAT, REGEXP_REPEAT}, + {cvc5::Kind::REGEXP_REPEAT_OP, REGEXP_REPEAT}, + {cvc5::Kind::REGEXP_LOOP, REGEXP_LOOP}, + {cvc5::Kind::REGEXP_LOOP_OP, REGEXP_LOOP}, + {cvc5::Kind::REGEXP_EMPTY, REGEXP_EMPTY}, + {cvc5::Kind::REGEXP_SIGMA, REGEXP_SIGMA}, + {cvc5::Kind::REGEXP_COMPLEMENT, REGEXP_COMPLEMENT}, + {cvc5::Kind::CONST_SEQUENCE, CONST_SEQUENCE}, + {cvc5::Kind::SEQ_UNIT, SEQ_UNIT}, + {cvc5::Kind::SEQ_NTH, SEQ_NTH}, /* Quantifiers ----------------------------------------------------- */ - {CVC5::Kind::FORALL, FORALL}, - {CVC5::Kind::EXISTS, EXISTS}, - {CVC5::Kind::BOUND_VAR_LIST, BOUND_VAR_LIST}, - {CVC5::Kind::INST_PATTERN, INST_PATTERN}, - {CVC5::Kind::INST_NO_PATTERN, INST_NO_PATTERN}, - {CVC5::Kind::INST_ATTRIBUTE, INST_ATTRIBUTE}, - {CVC5::Kind::INST_PATTERN_LIST, INST_PATTERN_LIST}, + {cvc5::Kind::FORALL, FORALL}, + {cvc5::Kind::EXISTS, EXISTS}, + {cvc5::Kind::BOUND_VAR_LIST, BOUND_VAR_LIST}, + {cvc5::Kind::INST_PATTERN, INST_PATTERN}, + {cvc5::Kind::INST_NO_PATTERN, INST_NO_PATTERN}, + {cvc5::Kind::INST_ATTRIBUTE, INST_ATTRIBUTE}, + {cvc5::Kind::INST_PATTERN_LIST, INST_PATTERN_LIST}, /* ----------------------------------------------------------------- */ - {CVC5::Kind::LAST_KIND, LAST_KIND}, + {cvc5::Kind::LAST_KIND, LAST_KIND}, }; /* Set of kinds for indexed operators */ @@ -677,8 +677,8 @@ const static std::unordered_set<Kind, KindHashFunction> s_indexed_kinds( namespace { -/** Convert a CVC5::Kind (internal) to a CVC5::api::Kind (external). */ -CVC5::api::Kind intToExtKind(CVC5::Kind k) +/** Convert a cvc5::Kind (internal) to a cvc5::api::Kind (external). */ +cvc5::api::Kind intToExtKind(cvc5::Kind k) { auto it = api::s_kinds_internal.find(k); if (it == api::s_kinds_internal.end()) @@ -688,13 +688,13 @@ CVC5::api::Kind intToExtKind(CVC5::Kind k) return it->second; } -/** Convert a CVC5::api::Kind (external) to a CVC5::Kind (internal). */ -CVC5::Kind extToIntKind(CVC5::api::Kind k) +/** Convert a cvc5::api::Kind (external) to a cvc5::Kind (internal). */ +cvc5::Kind extToIntKind(cvc5::api::Kind k) { auto it = api::s_kinds.find(k); if (it == api::s_kinds.end()) { - return CVC5::Kind::UNDEFINED_KIND; + return cvc5::Kind::UNDEFINED_KIND; } return it->second; } @@ -709,17 +709,17 @@ bool isDefinedKind(Kind k) { return k > UNDEFINED_KIND && k < LAST_KIND; } * as datatype constructors/selectors/testers as terms * but interally they are not */ -bool isApplyKind(CVC5::Kind k) +bool isApplyKind(cvc5::Kind k) { - return (k == CVC5::Kind::APPLY_UF || k == CVC5::Kind::APPLY_CONSTRUCTOR - || k == CVC5::Kind::APPLY_SELECTOR || k == CVC5::Kind::APPLY_TESTER); + return (k == cvc5::Kind::APPLY_UF || k == cvc5::Kind::APPLY_CONSTRUCTOR + || k == cvc5::Kind::APPLY_SELECTOR || k == cvc5::Kind::APPLY_TESTER); } #ifdef CVC4_ASSERTIONS /** Return true if given kind is a defined internal kind. */ -bool isDefinedIntKind(CVC5::Kind k) +bool isDefinedIntKind(cvc5::Kind k) { - return k != CVC5::Kind::UNDEFINED_KIND && k != CVC5::Kind::LAST_KIND; + return k != cvc5::Kind::UNDEFINED_KIND && k != cvc5::Kind::LAST_KIND; } #endif @@ -728,7 +728,7 @@ uint32_t minArity(Kind k) { Assert(isDefinedKind(k)); Assert(isDefinedIntKind(extToIntKind(k))); - uint32_t min = CVC5::kind::metakind::getMinArityForKind(extToIntKind(k)); + uint32_t min = cvc5::kind::metakind::getMinArityForKind(extToIntKind(k)); // At the API level, we treat functions/constructors/selectors/testers as // normal terms instead of making them part of the operator @@ -744,7 +744,7 @@ uint32_t maxArity(Kind k) { Assert(isDefinedKind(k)); Assert(isDefinedIntKind(extToIntKind(k))); - uint32_t max = CVC5::kind::metakind::getMaxArityForKind(extToIntKind(k)); + uint32_t max = cvc5::kind::metakind::getMaxArityForKind(extToIntKind(k)); // At the API level, we treat functions/constructors/selectors/testers as // normal terms instead of making them part of the operator @@ -762,7 +762,7 @@ uint32_t maxArity(Kind k) std::string kindToString(Kind k) { return k == INTERNAL_KIND ? "INTERNAL_KIND" - : CVC5::kind::kindToString(extToIntKind(k)); + : cvc5::kind::kindToString(extToIntKind(k)); } std::ostream& operator<<(std::ostream& out, Kind k) @@ -834,11 +834,11 @@ class CVC4ApiRecoverableExceptionStream { \ throw CVC4ApiRecoverableException(e.getMessage()); \ } \ - catch (const CVC5::RecoverableModalException& e) \ + catch (const cvc5::RecoverableModalException& e) \ { \ throw CVC4ApiRecoverableException(e.getMessage()); \ } \ - catch (const CVC5::Exception& e) { throw CVC4ApiException(e.getMessage()); } \ + catch (const cvc5::Exception& e) { throw CVC4ApiException(e.getMessage()); } \ catch (const std::invalid_argument& e) { throw CVC4ApiException(e.what()); } } // namespace @@ -847,49 +847,49 @@ class CVC4ApiRecoverableExceptionStream /* Result */ /* -------------------------------------------------------------------------- */ -Result::Result(const CVC5::Result& r) : d_result(new CVC5::Result(r)) {} +Result::Result(const cvc5::Result& r) : d_result(new cvc5::Result(r)) {} -Result::Result() : d_result(new CVC5::Result()) {} +Result::Result() : d_result(new cvc5::Result()) {} bool Result::isNull() const { - return d_result->getType() == CVC5::Result::TYPE_NONE; + return d_result->getType() == cvc5::Result::TYPE_NONE; } bool Result::isSat(void) const { - return d_result->getType() == CVC5::Result::TYPE_SAT - && d_result->isSat() == CVC5::Result::SAT; + return d_result->getType() == cvc5::Result::TYPE_SAT + && d_result->isSat() == cvc5::Result::SAT; } bool Result::isUnsat(void) const { - return d_result->getType() == CVC5::Result::TYPE_SAT - && d_result->isSat() == CVC5::Result::UNSAT; + return d_result->getType() == cvc5::Result::TYPE_SAT + && d_result->isSat() == cvc5::Result::UNSAT; } bool Result::isSatUnknown(void) const { - return d_result->getType() == CVC5::Result::TYPE_SAT - && d_result->isSat() == CVC5::Result::SAT_UNKNOWN; + return d_result->getType() == cvc5::Result::TYPE_SAT + && d_result->isSat() == cvc5::Result::SAT_UNKNOWN; } bool Result::isEntailed(void) const { - return d_result->getType() == CVC5::Result::TYPE_ENTAILMENT - && d_result->isEntailed() == CVC5::Result::ENTAILED; + return d_result->getType() == cvc5::Result::TYPE_ENTAILMENT + && d_result->isEntailed() == cvc5::Result::ENTAILED; } bool Result::isNotEntailed(void) const { - return d_result->getType() == CVC5::Result::TYPE_ENTAILMENT - && d_result->isEntailed() == CVC5::Result::NOT_ENTAILED; + return d_result->getType() == cvc5::Result::TYPE_ENTAILMENT + && d_result->isEntailed() == cvc5::Result::NOT_ENTAILED; } bool Result::isEntailmentUnknown(void) const { - return d_result->getType() == CVC5::Result::TYPE_ENTAILMENT - && d_result->isEntailed() == CVC5::Result::ENTAILMENT_UNKNOWN; + return d_result->getType() == cvc5::Result::TYPE_ENTAILMENT + && d_result->isEntailed() == cvc5::Result::ENTAILMENT_UNKNOWN; } bool Result::operator==(const Result& r) const @@ -904,18 +904,18 @@ bool Result::operator!=(const Result& r) const Result::UnknownExplanation Result::getUnknownExplanation(void) const { - CVC5::Result::UnknownExplanation expl = d_result->whyUnknown(); + cvc5::Result::UnknownExplanation expl = d_result->whyUnknown(); switch (expl) { - case CVC5::Result::REQUIRES_FULL_CHECK: return REQUIRES_FULL_CHECK; - case CVC5::Result::INCOMPLETE: return INCOMPLETE; - case CVC5::Result::TIMEOUT: return TIMEOUT; - case CVC5::Result::RESOURCEOUT: return RESOURCEOUT; - case CVC5::Result::MEMOUT: return MEMOUT; - case CVC5::Result::INTERRUPTED: return INTERRUPTED; - case CVC5::Result::NO_STATUS: return NO_STATUS; - case CVC5::Result::UNSUPPORTED: return UNSUPPORTED; - case CVC5::Result::OTHER: return OTHER; + case cvc5::Result::REQUIRES_FULL_CHECK: return REQUIRES_FULL_CHECK; + case cvc5::Result::INCOMPLETE: return INCOMPLETE; + case cvc5::Result::TIMEOUT: return TIMEOUT; + case cvc5::Result::RESOURCEOUT: return RESOURCEOUT; + case cvc5::Result::MEMOUT: return MEMOUT; + case cvc5::Result::INTERRUPTED: return INTERRUPTED; + case cvc5::Result::NO_STATUS: return NO_STATUS; + case cvc5::Result::UNSUPPORTED: return UNSUPPORTED; + case cvc5::Result::OTHER: return OTHER; default: return UNKNOWN_REASON; } return UNKNOWN_REASON; @@ -952,12 +952,12 @@ std::ostream& operator<<(std::ostream& out, enum Result::UnknownExplanation e) /* Sort */ /* -------------------------------------------------------------------------- */ -Sort::Sort(const Solver* slv, const CVC5::TypeNode& t) - : d_solver(slv), d_type(new CVC5::TypeNode(t)) +Sort::Sort(const Solver* slv, const cvc5::TypeNode& t) + : d_solver(slv), d_type(new cvc5::TypeNode(t)) { } -Sort::Sort() : d_solver(nullptr), d_type(new CVC5::TypeNode()) {} +Sort::Sort() : d_solver(nullptr), d_type(new cvc5::TypeNode()) {} Sort::~Sort() { @@ -1332,7 +1332,7 @@ Sort Sort::instantiate(const std::vector<Sort>& params) const CVC4_API_CHECK(isParametricDatatype() || isSortConstructor()) << "Expected parametric datatype or sort constructor sort."; //////// all checks before this line - std::vector<CVC5::TypeNode> tparams = sortVectorToTypeNodes(params); + std::vector<cvc5::TypeNode> tparams = sortVectorToTypeNodes(params); if (d_type->isDatatype()) { return Sort(d_solver, d_type->instantiateParametricDatatype(tparams)); @@ -1368,7 +1368,7 @@ Sort Sort::substitute(const std::vector<Sort>& sorts, CVC4_API_CHECK_SORTS(replacements); //////// all checks before this line - std::vector<CVC5::TypeNode> tSorts = sortVectorToTypeNodes(sorts), + std::vector<cvc5::TypeNode> tSorts = sortVectorToTypeNodes(sorts), tReplacements = sortVectorToTypeNodes(replacements); return Sort(d_solver, @@ -1394,7 +1394,7 @@ std::string Sort::toString() const CVC4_API_TRY_CATCH_END; } -const CVC5::TypeNode& Sort::getTypeNode(void) const { return *d_type; } +const cvc5::TypeNode& Sort::getTypeNode(void) const { return *d_type; } /* Constructor sort ------------------------------------------------------- */ @@ -1757,15 +1757,15 @@ bool Sort::isNullHelper() const { return d_type->isNull(); } /* Op */ /* -------------------------------------------------------------------------- */ -Op::Op() : d_solver(nullptr), d_kind(NULL_EXPR), d_node(new CVC5::Node()) {} +Op::Op() : d_solver(nullptr), d_kind(NULL_EXPR), d_node(new cvc5::Node()) {} Op::Op(const Solver* slv, const Kind k) - : d_solver(slv), d_kind(k), d_node(new CVC5::Node()) + : d_solver(slv), d_kind(k), d_node(new cvc5::Node()) { } -Op::Op(const Solver* slv, const Kind k, const CVC5::Node& n) - : d_solver(slv), d_kind(k), d_node(new CVC5::Node(n)) +Op::Op(const Solver* slv, const Kind k, const cvc5::Node& n) + : d_solver(slv), d_kind(k), d_node(new cvc5::Node(n)) { } @@ -1914,53 +1914,53 @@ std::pair<uint32_t, uint32_t> Op::getIndices() const // using if/else instead of case statement because want local variables if (k == BITVECTOR_EXTRACT) { - CVC5::BitVectorExtract ext = d_node->getConst<BitVectorExtract>(); + cvc5::BitVectorExtract ext = d_node->getConst<BitVectorExtract>(); indices = std::make_pair(ext.d_high, ext.d_low); } else if (k == FLOATINGPOINT_TO_FP_IEEE_BITVECTOR) { - CVC5::FloatingPointToFPIEEEBitVector ext = + cvc5::FloatingPointToFPIEEEBitVector ext = d_node->getConst<FloatingPointToFPIEEEBitVector>(); indices = std::make_pair(ext.getSize().exponentWidth(), ext.getSize().significandWidth()); } else if (k == FLOATINGPOINT_TO_FP_FLOATINGPOINT) { - CVC5::FloatingPointToFPFloatingPoint ext = + cvc5::FloatingPointToFPFloatingPoint ext = d_node->getConst<FloatingPointToFPFloatingPoint>(); indices = std::make_pair(ext.getSize().exponentWidth(), ext.getSize().significandWidth()); } else if (k == FLOATINGPOINT_TO_FP_REAL) { - CVC5::FloatingPointToFPReal ext = d_node->getConst<FloatingPointToFPReal>(); + cvc5::FloatingPointToFPReal ext = d_node->getConst<FloatingPointToFPReal>(); indices = std::make_pair(ext.getSize().exponentWidth(), ext.getSize().significandWidth()); } else if (k == FLOATINGPOINT_TO_FP_SIGNED_BITVECTOR) { - CVC5::FloatingPointToFPSignedBitVector ext = + cvc5::FloatingPointToFPSignedBitVector ext = d_node->getConst<FloatingPointToFPSignedBitVector>(); indices = std::make_pair(ext.getSize().exponentWidth(), ext.getSize().significandWidth()); } else if (k == FLOATINGPOINT_TO_FP_UNSIGNED_BITVECTOR) { - CVC5::FloatingPointToFPUnsignedBitVector ext = + cvc5::FloatingPointToFPUnsignedBitVector ext = d_node->getConst<FloatingPointToFPUnsignedBitVector>(); indices = std::make_pair(ext.getSize().exponentWidth(), ext.getSize().significandWidth()); } else if (k == FLOATINGPOINT_TO_FP_GENERIC) { - CVC5::FloatingPointToFPGeneric ext = + cvc5::FloatingPointToFPGeneric ext = d_node->getConst<FloatingPointToFPGeneric>(); indices = std::make_pair(ext.getSize().exponentWidth(), ext.getSize().significandWidth()); } else if (k == REGEXP_LOOP) { - CVC5::RegExpLoop ext = d_node->getConst<RegExpLoop>(); + cvc5::RegExpLoop ext = d_node->getConst<RegExpLoop>(); indices = std::make_pair(ext.d_loopMinOcc, ext.d_loopMaxOcc); } else @@ -2031,13 +2031,13 @@ bool Op::isIndexedHelper() const { return !d_node->isNull(); } /* Term */ /* -------------------------------------------------------------------------- */ -Term::Term() : d_solver(nullptr), d_node(new CVC5::Node()) {} +Term::Term() : d_solver(nullptr), d_node(new cvc5::Node()) {} -Term::Term(const Solver* slv, const CVC5::Node& n) : d_solver(slv) +Term::Term(const Solver* slv, const cvc5::Node& n) : d_solver(slv) { // Ensure that we create the node in the correct node manager. NodeManagerScope scope(d_solver->getNodeManager()); - d_node.reset(new CVC5::Node(n)); + d_node.reset(new cvc5::Node(n)); } Term::~Term() @@ -2251,7 +2251,7 @@ Op Term::getOp() const { // it's an indexed operator // so we should return the indexed op - CVC5::Node op = d_node->getOperator(); + cvc5::Node op = d_node->getOperator(); return Op(d_solver, intToExtKind(d_node->getKind()), op); } // Notice this is the only case where getKindHelper is used, since the @@ -2276,7 +2276,7 @@ Term Term::getConstArrayBase() const CVC4_API_TRY_CATCH_BEGIN; CVC4_API_CHECK_NOT_NULL; // CONST_ARRAY kind maps to STORE_ALL internal kind - CVC4_API_CHECK(d_node->getKind() == CVC5::Kind::STORE_ALL) + CVC4_API_CHECK(d_node->getKind() == cvc5::Kind::STORE_ALL) << "Expecting a CONST_ARRAY Term when calling getConstArrayBase()"; //////// all checks before this line return Term(d_solver, d_node->getConst<ArrayStoreAll>().getValue()); @@ -2288,7 +2288,7 @@ std::vector<Term> Term::getConstSequenceElements() const { CVC4_API_TRY_CATCH_BEGIN; CVC4_API_CHECK_NOT_NULL; - CVC4_API_CHECK(d_node->getKind() == CVC5::Kind::CONST_SEQUENCE) + CVC4_API_CHECK(d_node->getKind() == cvc5::Kind::CONST_SEQUENCE) << "Expecting a CONST_SEQUENCE Term when calling " "getConstSequenceElements()"; //////// all checks before this line @@ -2414,7 +2414,7 @@ Term::const_iterator::const_iterator() } Term::const_iterator::const_iterator(const Solver* slv, - const std::shared_ptr<CVC5::Node>& n, + const std::shared_ptr<cvc5::Node>& n, uint32_t p) : d_solver(slv), d_origNode(n), d_pos(p) { @@ -2515,14 +2515,14 @@ Term::const_iterator Term::end() const return Term::const_iterator(d_solver, d_node, endpos); } -const CVC5::Node& Term::getNode(void) const { return *d_node; } +const cvc5::Node& Term::getNode(void) const { return *d_node; } namespace detail { -const Rational& getRational(const CVC5::Node& node) +const Rational& getRational(const cvc5::Node& node) { return node.getConst<Rational>(); } -Integer getInteger(const CVC5::Node& node) +Integer getInteger(const cvc5::Node& node) { return node.getConst<Rational>().getNumerator(); } @@ -2545,7 +2545,7 @@ bool checkReal64Bounds(const Rational& r) bool isInteger(const Node& node) { - return node.getKind() == CVC5::Kind::CONST_RATIONAL + return node.getKind() == cvc5::Kind::CONST_RATIONAL && node.getConst<Rational>().isIntegral(); } bool isInt32(const Node& node) @@ -2658,7 +2658,7 @@ bool Term::isString() const CVC4_API_TRY_CATCH_BEGIN; CVC4_API_CHECK_NOT_NULL; //////// all checks before this line - return d_node->getKind() == CVC5::Kind::CONST_STRING; + return d_node->getKind() == cvc5::Kind::CONST_STRING; //////// CVC4_API_TRY_CATCH_END; } @@ -2667,10 +2667,10 @@ std::wstring Term::getString() const { CVC4_API_TRY_CATCH_BEGIN; CVC4_API_CHECK_NOT_NULL; - CVC4_API_CHECK(d_node->getKind() == CVC5::Kind::CONST_STRING) + CVC4_API_CHECK(d_node->getKind() == cvc5::Kind::CONST_STRING) << "Term should be a String when calling getString()"; //////// all checks before this line - return d_node->getConst<CVC5::String>().toWString(); + return d_node->getConst<cvc5::String>().toWString(); //////// CVC4_API_TRY_CATCH_END; } @@ -2754,18 +2754,18 @@ Kind Term::getKindHelper() const { switch (d_node->getKind()) { - case CVC5::Kind::STRING_CONCAT: return SEQ_CONCAT; - case CVC5::Kind::STRING_LENGTH: return SEQ_LENGTH; - case CVC5::Kind::STRING_SUBSTR: return SEQ_EXTRACT; - case CVC5::Kind::STRING_UPDATE: return SEQ_UPDATE; - case CVC5::Kind::STRING_CHARAT: return SEQ_AT; - case CVC5::Kind::STRING_STRCTN: return SEQ_CONTAINS; - case CVC5::Kind::STRING_STRIDOF: return SEQ_INDEXOF; - case CVC5::Kind::STRING_STRREPL: return SEQ_REPLACE; - case CVC5::Kind::STRING_STRREPLALL: return SEQ_REPLACE_ALL; - case CVC5::Kind::STRING_REV: return SEQ_REV; - case CVC5::Kind::STRING_PREFIX: return SEQ_PREFIX; - case CVC5::Kind::STRING_SUFFIX: return SEQ_SUFFIX; + case cvc5::Kind::STRING_CONCAT: return SEQ_CONCAT; + case cvc5::Kind::STRING_LENGTH: return SEQ_LENGTH; + case cvc5::Kind::STRING_SUBSTR: return SEQ_EXTRACT; + case cvc5::Kind::STRING_UPDATE: return SEQ_UPDATE; + case cvc5::Kind::STRING_CHARAT: return SEQ_AT; + case cvc5::Kind::STRING_STRCTN: return SEQ_CONTAINS; + case cvc5::Kind::STRING_STRIDOF: return SEQ_INDEXOF; + case cvc5::Kind::STRING_STRREPL: return SEQ_REPLACE; + case cvc5::Kind::STRING_STRREPLALL: return SEQ_REPLACE_ALL; + case cvc5::Kind::STRING_REV: return SEQ_REV; + case cvc5::Kind::STRING_PREFIX: return SEQ_PREFIX; + case cvc5::Kind::STRING_SUFFIX: return SEQ_SUFFIX; default: // fall through to conversion below break; @@ -2802,7 +2802,7 @@ DatatypeConstructorDecl::DatatypeConstructorDecl() DatatypeConstructorDecl::DatatypeConstructorDecl(const Solver* slv, const std::string& name) - : d_solver(slv), d_ctor(new CVC5::DTypeConstructor(name)) + : d_solver(slv), d_ctor(new cvc5::DTypeConstructor(name)) { } DatatypeConstructorDecl::~DatatypeConstructorDecl() @@ -2884,7 +2884,7 @@ DatatypeDecl::DatatypeDecl() : d_solver(nullptr), d_dtype(nullptr) {} DatatypeDecl::DatatypeDecl(const Solver* slv, const std::string& name, bool isCoDatatype) - : d_solver(slv), d_dtype(new CVC5::DType(name, isCoDatatype)) + : d_solver(slv), d_dtype(new cvc5::DType(name, isCoDatatype)) { } @@ -2893,7 +2893,7 @@ DatatypeDecl::DatatypeDecl(const Solver* slv, const Sort& param, bool isCoDatatype) : d_solver(slv), - d_dtype(new CVC5::DType( + d_dtype(new cvc5::DType( name, std::vector<TypeNode>{*param.d_type}, isCoDatatype)) { } @@ -2905,8 +2905,8 @@ DatatypeDecl::DatatypeDecl(const Solver* slv, : d_solver(slv) { std::vector<TypeNode> tparams = Sort::sortVectorToTypeNodes(params); - d_dtype = std::shared_ptr<CVC5::DType>( - new CVC5::DType(name, tparams, isCoDatatype)); + d_dtype = std::shared_ptr<cvc5::DType>( + new cvc5::DType(name, tparams, isCoDatatype)); } bool DatatypeDecl::isNullHelper() const { return !d_dtype; } @@ -2991,15 +2991,15 @@ std::ostream& operator<<(std::ostream& out, const DatatypeDecl& dtdecl) return out; } -CVC5::DType& DatatypeDecl::getDatatype(void) const { return *d_dtype; } +cvc5::DType& DatatypeDecl::getDatatype(void) const { return *d_dtype; } /* DatatypeSelector --------------------------------------------------------- */ DatatypeSelector::DatatypeSelector() : d_solver(nullptr), d_stor(nullptr) {} DatatypeSelector::DatatypeSelector(const Solver* slv, - const CVC5::DTypeSelector& stor) - : d_solver(slv), d_stor(new CVC5::DTypeSelector(stor)) + const cvc5::DTypeSelector& stor) + : d_solver(slv), d_stor(new cvc5::DTypeSelector(stor)) { CVC4_API_CHECK(d_stor->isResolved()) << "Expected resolved datatype selector"; } @@ -3079,8 +3079,8 @@ DatatypeConstructor::DatatypeConstructor() : d_solver(nullptr), d_ctor(nullptr) } DatatypeConstructor::DatatypeConstructor(const Solver* slv, - const CVC5::DTypeConstructor& ctor) - : d_solver(slv), d_ctor(new CVC5::DTypeConstructor(ctor)) + const cvc5::DTypeConstructor& ctor) + : d_solver(slv), d_ctor(new cvc5::DTypeConstructor(ctor)) { CVC4_API_CHECK(d_ctor->isResolved()) << "Expected resolved datatype constructor"; @@ -3214,14 +3214,14 @@ DatatypeConstructor::const_iterator DatatypeConstructor::end() const } DatatypeConstructor::const_iterator::const_iterator( - const Solver* slv, const CVC5::DTypeConstructor& ctor, bool begin) + const Solver* slv, const cvc5::DTypeConstructor& ctor, bool begin) { d_solver = slv; d_int_stors = &ctor.getArgs(); - const std::vector<std::shared_ptr<CVC5::DTypeSelector>>& sels = + const std::vector<std::shared_ptr<cvc5::DTypeSelector>>& sels = ctor.getArgs(); - for (const std::shared_ptr<CVC5::DTypeSelector>& s : sels) + for (const std::shared_ptr<cvc5::DTypeSelector>& s : sels) { /* Can not use emplace_back here since constructor is private. */ d_stors.push_back(DatatypeSelector(d_solver, *s.get())); @@ -3341,8 +3341,8 @@ std::ostream& operator<<(std::ostream& out, const DatatypeConstructor& ctor) /* Datatype ----------------------------------------------------------------- */ -Datatype::Datatype(const Solver* slv, const CVC5::DType& dtype) - : d_solver(slv), d_dtype(new CVC5::DType(dtype)) +Datatype::Datatype(const Solver* slv, const cvc5::DType& dtype) + : d_solver(slv), d_dtype(new cvc5::DType(dtype)) { CVC4_API_CHECK(d_dtype->isResolved()) << "Expected resolved datatype"; } @@ -3549,7 +3549,7 @@ DatatypeConstructor Datatype::getConstructorForName( } Datatype::const_iterator::const_iterator(const Solver* slv, - const CVC5::DType& dtype, + const cvc5::DType& dtype, bool begin) : d_solver(slv), d_int_ctors(&dtype.getConstructors()) { @@ -3816,7 +3816,7 @@ Sort Grammar::resolve() bvl = Term( d_solver, d_solver->getNodeManager()->mkNode( - CVC5::kind::BOUND_VAR_LIST, Term::termVectorToNodes(d_sygusVars))); + cvc5::kind::BOUND_VAR_LIST, Term::termVectorToNodes(d_sygusVars))); } std::unordered_map<Term, Sort, TermHashFunction> ntsToUnres(d_ntSyms.size()); @@ -3829,7 +3829,7 @@ Sort Grammar::resolve() Sort(d_solver, d_solver->getNodeManager()->mkSort(ntsymbol.toString())); } - std::vector<CVC5::DType> datatypes; + std::vector<cvc5::DType> datatypes; std::set<TypeNode> unresTypes; datatypes.reserve(d_ntSyms.size()); @@ -3903,12 +3903,12 @@ void Grammar::addSygusConstructorTerm( { Term lbvl = Term(d_solver, - d_solver->getNodeManager()->mkNode(CVC5::kind::BOUND_VAR_LIST, + d_solver->getNodeManager()->mkNode(cvc5::kind::BOUND_VAR_LIST, Term::termVectorToNodes(args))); // its operator is a lambda op = Term(d_solver, d_solver->getNodeManager()->mkNode( - CVC5::kind::LAMBDA, *lbvl.d_node, *op.d_node)); + cvc5::kind::LAMBDA, *lbvl.d_node, *op.d_node)); } std::vector<TypeNode> cargst = Sort::sortVectorToTypeNodes(cargs); dt.d_dtype->addSygusConstructor(*op.d_node, ssCName.str(), cargst); @@ -4027,27 +4027,27 @@ std::ostream& operator<<(std::ostream& out, const Grammar& grammar) /* -------------------------------------------------------------------------- */ const static std:: - unordered_map<RoundingMode, CVC5::RoundingMode, RoundingModeHashFunction> + unordered_map<RoundingMode, cvc5::RoundingMode, RoundingModeHashFunction> s_rmodes{ {ROUND_NEAREST_TIES_TO_EVEN, - CVC5::RoundingMode::ROUND_NEAREST_TIES_TO_EVEN}, - {ROUND_TOWARD_POSITIVE, CVC5::RoundingMode::ROUND_TOWARD_POSITIVE}, - {ROUND_TOWARD_NEGATIVE, CVC5::RoundingMode::ROUND_TOWARD_NEGATIVE}, - {ROUND_TOWARD_ZERO, CVC5::RoundingMode::ROUND_TOWARD_ZERO}, + cvc5::RoundingMode::ROUND_NEAREST_TIES_TO_EVEN}, + {ROUND_TOWARD_POSITIVE, cvc5::RoundingMode::ROUND_TOWARD_POSITIVE}, + {ROUND_TOWARD_NEGATIVE, cvc5::RoundingMode::ROUND_TOWARD_NEGATIVE}, + {ROUND_TOWARD_ZERO, cvc5::RoundingMode::ROUND_TOWARD_ZERO}, {ROUND_NEAREST_TIES_TO_AWAY, - CVC5::RoundingMode::ROUND_NEAREST_TIES_TO_AWAY}, + cvc5::RoundingMode::ROUND_NEAREST_TIES_TO_AWAY}, }; -const static std::unordered_map<CVC5::RoundingMode, +const static std::unordered_map<cvc5::RoundingMode, RoundingMode, - CVC5::RoundingModeHashFunction> + cvc5::RoundingModeHashFunction> s_rmodes_internal{ - {CVC5::RoundingMode::ROUND_NEAREST_TIES_TO_EVEN, + {cvc5::RoundingMode::ROUND_NEAREST_TIES_TO_EVEN, ROUND_NEAREST_TIES_TO_EVEN}, - {CVC5::RoundingMode::ROUND_TOWARD_POSITIVE, ROUND_TOWARD_POSITIVE}, - {CVC5::RoundingMode::ROUND_TOWARD_POSITIVE, ROUND_TOWARD_NEGATIVE}, - {CVC5::RoundingMode::ROUND_TOWARD_ZERO, ROUND_TOWARD_ZERO}, - {CVC5::RoundingMode::ROUND_NEAREST_TIES_TO_AWAY, + {cvc5::RoundingMode::ROUND_TOWARD_POSITIVE, ROUND_TOWARD_POSITIVE}, + {cvc5::RoundingMode::ROUND_TOWARD_POSITIVE, ROUND_TOWARD_NEGATIVE}, + {cvc5::RoundingMode::ROUND_TOWARD_ZERO, ROUND_TOWARD_ZERO}, + {cvc5::RoundingMode::ROUND_NEAREST_TIES_TO_AWAY, ROUND_NEAREST_TIES_TO_AWAY}, }; @@ -4097,7 +4097,7 @@ void Solver::increment_vars_consts_stats(const Sort& sort, bool is_var) const { #ifdef CVC4_STATISTICS_ON const TypeNode tn = sort.getTypeNode(); - TypeConstant tc = tn.getKind() == CVC5::kind::TYPE_CONSTANT + TypeConstant tc = tn.getKind() == cvc5::kind::TYPE_CONSTANT ? tn.getConst<TypeConstant>() : LAST_TYPE; if (is_var) @@ -4128,10 +4128,10 @@ Term Solver::mkRealFromStrHelper(const std::string& s) const //////// all checks before this line try { - CVC5::Rational r = s.find('/') != std::string::npos - ? CVC5::Rational(s) - : CVC5::Rational::fromDecimal(s); - return mkValHelper<CVC5::Rational>(r); + cvc5::Rational r = s.find('/') != std::string::npos + ? cvc5::Rational(s) + : cvc5::Rational::fromDecimal(s); + return mkValHelper<cvc5::Rational>(r); } catch (const std::invalid_argument& e) { @@ -4148,7 +4148,7 @@ Term Solver::mkBVFromIntHelper(uint32_t size, uint64_t val) const { CVC4_API_ARG_CHECK_EXPECTED(size > 0, size) << "a bit-width > 0"; //////// all checks before this line - return mkValHelper<CVC5::BitVector>(CVC5::BitVector(size, val)); + return mkValHelper<cvc5::BitVector>(cvc5::BitVector(size, val)); } Term Solver::mkBVFromStrHelper(const std::string& s, uint32_t base) const @@ -4157,7 +4157,7 @@ Term Solver::mkBVFromStrHelper(const std::string& s, uint32_t base) const CVC4_API_ARG_CHECK_EXPECTED(base == 2 || base == 10 || base == 16, base) << "base 2, 10, or 16"; //////// all checks before this line - return mkValHelper<CVC5::BitVector>(CVC5::BitVector(s, base)); + return mkValHelper<cvc5::BitVector>(cvc5::BitVector(s, base)); } Term Solver::mkBVFromStrHelper(uint32_t size, @@ -4184,7 +4184,7 @@ Term Solver::mkBVFromStrHelper(uint32_t size, << size << " too small to hold value " << s << ")"; } - return mkValHelper<CVC5::BitVector>(CVC5::BitVector(size, val)); + return mkValHelper<cvc5::BitVector>(cvc5::BitVector(size, val)); } Term Solver::mkCharFromStrHelper(const std::string& s) const @@ -4199,7 +4199,7 @@ Term Solver::mkCharFromStrHelper(const std::string& s) const //////// all checks before this line std::vector<unsigned> cpts; cpts.push_back(val); - return mkValHelper<CVC5::String>(CVC5::String(cpts)); + return mkValHelper<cvc5::String>(cvc5::String(cpts)); } Term Solver::getValueHelper(const Term& term) const @@ -4234,14 +4234,14 @@ Term Solver::mkTermFromKind(Kind kind) const Node res; if (kind == REGEXP_EMPTY || kind == REGEXP_SIGMA) { - CVC5::Kind k = extToIntKind(kind); + cvc5::Kind k = extToIntKind(kind); Assert(isDefinedIntKind(k)); res = d_nodeMgr->mkNode(k, std::vector<Node>()); } else { Assert(kind == PI); - res = d_nodeMgr->mkNullaryOperator(d_nodeMgr->realType(), CVC5::kind::PI); + res = d_nodeMgr->mkNullaryOperator(d_nodeMgr->realType(), cvc5::kind::PI); } (void)res.getType(true); /* kick off type checking */ increment_term_stats(kind); @@ -4254,7 +4254,7 @@ Term Solver::mkTermHelper(Kind kind, const std::vector<Term>& children) const //////// all checks before this line std::vector<Node> echildren = Term::termVectorToNodes(children); - CVC5::Kind k = extToIntKind(kind); + cvc5::Kind k = extToIntKind(kind); Node res; if (echildren.size() > 2) { @@ -4344,7 +4344,7 @@ Term Solver::mkTermHelper(const Op& op, const std::vector<Term>& children) const return mkTermHelper(op.d_kind, children); } - const CVC5::Kind int_kind = extToIntKind(op.d_kind); + const cvc5::Kind int_kind = extToIntKind(op.d_kind); std::vector<Node> echildren = Term::termVectorToNodes(children); NodeBuilder<> nb(int_kind); @@ -4364,14 +4364,14 @@ std::vector<Sort> Solver::mkDatatypeSortsInternal( // double checks //////// all checks before this line - std::vector<CVC5::DType> datatypes; + std::vector<cvc5::DType> datatypes; for (size_t i = 0, ndts = dtypedecls.size(); i < ndts; ++i) { datatypes.push_back(dtypedecls[i].getDatatype()); } std::set<TypeNode> utypes = Sort::sortSetToTypeNodes(unresolvedSorts); - std::vector<CVC5::TypeNode> dtypes = + std::vector<cvc5::TypeNode> dtypes = getNodeManager()->mkMutualDatatypeTypes(datatypes, utypes); std::vector<Sort> retTypes = Sort::typeNodeVectorToSorts(this, dtypes); return retTypes; @@ -4443,7 +4443,7 @@ Term Solver::ensureTermSort(const Term& term, const Sort& sort) const res = Term(this, d_nodeMgr->mkNode(extToIntKind(DIVISION), *res.d_node, - d_nodeMgr->mkConst(CVC5::Rational(1)))); + d_nodeMgr->mkConst(cvc5::Rational(1)))); } Assert(res.getSort() == sort); return res; @@ -4511,7 +4511,7 @@ void Solver::checkMkTerm(Kind kind, uint32_t nchildren) const { CVC4_API_KIND_CHECK(kind); Assert(isDefinedIntKind(extToIntKind(kind))); - const CVC5::kind::MetaKind mk = kind::metaKindOf(extToIntKind(kind)); + const cvc5::kind::MetaKind mk = kind::metaKindOf(extToIntKind(kind)); CVC4_API_KIND_CHECK_EXPECTED( mk == kind::metakind::PARAMETERIZED || mk == kind::metakind::OPERATOR, kind) @@ -4874,7 +4874,7 @@ Term Solver::mkPi() const CVC4_API_TRY_CATCH_BEGIN; //////// all checks before this line Node res = - d_nodeMgr->mkNullaryOperator(d_nodeMgr->realType(), CVC5::kind::PI); + d_nodeMgr->mkNullaryOperator(d_nodeMgr->realType(), cvc5::kind::PI); (void)res.getType(true); /* kick off type checking */ return Term(this, res); //////// @@ -4900,7 +4900,7 @@ Term Solver::mkInteger(int64_t val) const NodeManagerScope scope(getNodeManager()); CVC4_API_TRY_CATCH_BEGIN; //////// all checks before this line - Term integer = mkValHelper<CVC5::Rational>(CVC5::Rational(val)); + Term integer = mkValHelper<cvc5::Rational>(cvc5::Rational(val)); Assert(integer.getSort() == getIntegerSort()); return integer; //////// @@ -4928,7 +4928,7 @@ Term Solver::mkReal(int64_t val) const NodeManagerScope scope(getNodeManager()); CVC4_API_TRY_CATCH_BEGIN; //////// all checks before this line - Term rational = mkValHelper<CVC5::Rational>(CVC5::Rational(val)); + Term rational = mkValHelper<cvc5::Rational>(cvc5::Rational(val)); return ensureRealSort(rational); //////// CVC4_API_TRY_CATCH_END; @@ -4939,7 +4939,7 @@ Term Solver::mkReal(int64_t num, int64_t den) const NodeManagerScope scope(getNodeManager()); CVC4_API_TRY_CATCH_BEGIN; //////// all checks before this line - Term rational = mkValHelper<CVC5::Rational>(CVC5::Rational(num, den)); + Term rational = mkValHelper<cvc5::Rational>(cvc5::Rational(num, den)); return ensureRealSort(rational); //////// CVC4_API_TRY_CATCH_END; @@ -4951,7 +4951,7 @@ Term Solver::mkRegexpEmpty() const CVC4_API_TRY_CATCH_BEGIN; //////// all checks before this line Node res = - d_nodeMgr->mkNode(CVC5::kind::REGEXP_EMPTY, std::vector<CVC5::Node>()); + d_nodeMgr->mkNode(cvc5::kind::REGEXP_EMPTY, std::vector<cvc5::Node>()); (void)res.getType(true); /* kick off type checking */ return Term(this, res); //////// @@ -4964,7 +4964,7 @@ Term Solver::mkRegexpSigma() const CVC4_API_TRY_CATCH_BEGIN; //////// all checks before this line Node res = - d_nodeMgr->mkNode(CVC5::kind::REGEXP_SIGMA, std::vector<CVC5::Node>()); + d_nodeMgr->mkNode(cvc5::kind::REGEXP_SIGMA, std::vector<cvc5::Node>()); (void)res.getType(true); /* kick off type checking */ return Term(this, res); //////// @@ -4980,7 +4980,7 @@ Term Solver::mkEmptySet(const Sort& sort) const CVC4_API_ARG_CHECK_EXPECTED(sort.isNull() || this == sort.d_solver, sort) << "set sort associated with this solver object"; //////// all checks before this line - return mkValHelper<CVC5::EmptySet>(CVC5::EmptySet(*sort.d_type)); + return mkValHelper<cvc5::EmptySet>(cvc5::EmptySet(*sort.d_type)); //////// CVC4_API_TRY_CATCH_END; } @@ -4994,7 +4994,7 @@ Term Solver::mkEmptyBag(const Sort& sort) const CVC4_API_ARG_CHECK_EXPECTED(sort.isNull() || this == sort.d_solver, sort) << "bag sort associated with this solver object"; //////// all checks before this line - return mkValHelper<CVC5::EmptyBag>(CVC5::EmptyBag(*sort.d_type)); + return mkValHelper<cvc5::EmptyBag>(cvc5::EmptyBag(*sort.d_type)); //////// CVC4_API_TRY_CATCH_END; } @@ -5006,7 +5006,7 @@ Term Solver::mkSepNil(const Sort& sort) const CVC4_API_SOLVER_CHECK_SORT(sort); //////// all checks before this line Node res = - getNodeManager()->mkNullaryOperator(*sort.d_type, CVC5::kind::SEP_NIL); + getNodeManager()->mkNullaryOperator(*sort.d_type, cvc5::kind::SEP_NIL); (void)res.getType(true); /* kick off type checking */ return Term(this, res); //////// @@ -5018,7 +5018,7 @@ Term Solver::mkString(const std::string& s, bool useEscSequences) const NodeManagerScope scope(getNodeManager()); CVC4_API_TRY_CATCH_BEGIN; //////// all checks before this line - return mkValHelper<CVC5::String>(CVC5::String(s, useEscSequences)); + return mkValHelper<cvc5::String>(cvc5::String(s, useEscSequences)); //////// CVC4_API_TRY_CATCH_END; } @@ -5028,7 +5028,7 @@ Term Solver::mkString(const unsigned char c) const NodeManagerScope scope(getNodeManager()); CVC4_API_TRY_CATCH_BEGIN; //////// all checks before this line - return mkValHelper<CVC5::String>(CVC5::String(std::string(1, c))); + return mkValHelper<cvc5::String>(cvc5::String(std::string(1, c))); //////// CVC4_API_TRY_CATCH_END; } @@ -5038,7 +5038,7 @@ Term Solver::mkString(const std::vector<uint32_t>& s) const NodeManagerScope scope(getNodeManager()); CVC4_API_TRY_CATCH_BEGIN; //////// all checks before this line - return mkValHelper<CVC5::String>(CVC5::String(s)); + return mkValHelper<cvc5::String>(cvc5::String(s)); //////// CVC4_API_TRY_CATCH_END; } @@ -5074,7 +5074,7 @@ Term Solver::mkUniverseSet(const Sort& sort) const //////// all checks before this line Node res = getNodeManager()->mkNullaryOperator(*sort.d_type, - CVC5::kind::UNIVERSE_SET); + cvc5::kind::UNIVERSE_SET); // TODO(#2771): Reenable? // (void)res->getType(true); /* kick off type checking */ return Term(this, res); @@ -5133,7 +5133,7 @@ Term Solver::mkConstArray(const Sort& sort, const Term& val) const n = n[0]; } Term res = - mkValHelper<CVC5::ArrayStoreAll>(CVC5::ArrayStoreAll(*sort.d_type, n)); + mkValHelper<cvc5::ArrayStoreAll>(cvc5::ArrayStoreAll(*sort.d_type, n)); return res; //////// CVC4_API_TRY_CATCH_END; @@ -5146,7 +5146,7 @@ Term Solver::mkPosInf(uint32_t exp, uint32_t sig) const CVC4_API_CHECK(Configuration::isBuiltWithSymFPU()) << "Expected CVC4 to be compiled with SymFPU support"; //////// all checks before this line - return mkValHelper<CVC5::FloatingPoint>( + return mkValHelper<cvc5::FloatingPoint>( FloatingPoint::makeInf(FloatingPointSize(exp, sig), false)); //////// CVC4_API_TRY_CATCH_END; @@ -5159,7 +5159,7 @@ Term Solver::mkNegInf(uint32_t exp, uint32_t sig) const CVC4_API_CHECK(Configuration::isBuiltWithSymFPU()) << "Expected CVC4 to be compiled with SymFPU support"; //////// all checks before this line - return mkValHelper<CVC5::FloatingPoint>( + return mkValHelper<cvc5::FloatingPoint>( FloatingPoint::makeInf(FloatingPointSize(exp, sig), true)); //////// CVC4_API_TRY_CATCH_END; @@ -5172,7 +5172,7 @@ Term Solver::mkNaN(uint32_t exp, uint32_t sig) const CVC4_API_CHECK(Configuration::isBuiltWithSymFPU()) << "Expected CVC4 to be compiled with SymFPU support"; //////// all checks before this line - return mkValHelper<CVC5::FloatingPoint>( + return mkValHelper<cvc5::FloatingPoint>( FloatingPoint::makeNaN(FloatingPointSize(exp, sig))); //////// CVC4_API_TRY_CATCH_END; @@ -5185,7 +5185,7 @@ Term Solver::mkPosZero(uint32_t exp, uint32_t sig) const CVC4_API_CHECK(Configuration::isBuiltWithSymFPU()) << "Expected CVC4 to be compiled with SymFPU support"; //////// all checks before this line - return mkValHelper<CVC5::FloatingPoint>( + return mkValHelper<cvc5::FloatingPoint>( FloatingPoint::makeZero(FloatingPointSize(exp, sig), false)); //////// CVC4_API_TRY_CATCH_END; @@ -5198,7 +5198,7 @@ Term Solver::mkNegZero(uint32_t exp, uint32_t sig) const CVC4_API_CHECK(Configuration::isBuiltWithSymFPU()) << "Expected CVC4 to be compiled with SymFPU support"; //////// all checks before this line - return mkValHelper<CVC5::FloatingPoint>( + return mkValHelper<cvc5::FloatingPoint>( FloatingPoint::makeZero(FloatingPointSize(exp, sig), true)); //////// CVC4_API_TRY_CATCH_END; @@ -5211,7 +5211,7 @@ Term Solver::mkRoundingMode(RoundingMode rm) const CVC4_API_CHECK(Configuration::isBuiltWithSymFPU()) << "Expected CVC4 to be compiled with SymFPU support"; //////// all checks before this line - return mkValHelper<CVC5::RoundingMode>(s_rmodes.at(rm)); + return mkValHelper<cvc5::RoundingMode>(s_rmodes.at(rm)); //////// CVC4_API_TRY_CATCH_END; } @@ -5222,8 +5222,8 @@ Term Solver::mkUninterpretedConst(const Sort& sort, int32_t index) const CVC4_API_TRY_CATCH_BEGIN; CVC4_API_SOLVER_CHECK_SORT(sort); //////// all checks before this line - return mkValHelper<CVC5::UninterpretedConstant>( - CVC5::UninterpretedConstant(*sort.d_type, index)); + return mkValHelper<cvc5::UninterpretedConstant>( + cvc5::UninterpretedConstant(*sort.d_type, index)); //////// CVC4_API_TRY_CATCH_END; } @@ -5234,11 +5234,11 @@ Term Solver::mkAbstractValue(const std::string& index) const CVC4_API_TRY_CATCH_BEGIN; CVC4_API_ARG_CHECK_EXPECTED(!index.empty(), index) << "a non-empty string"; - CVC5::Integer idx(index, 10); + cvc5::Integer idx(index, 10); CVC4_API_ARG_CHECK_EXPECTED(idx > 0, index) << "a string representing an integer > 0"; //////// all checks before this line - return Term(this, getNodeManager()->mkConst(CVC5::AbstractValue(idx))); + return Term(this, getNodeManager()->mkConst(cvc5::AbstractValue(idx))); // do not call getType(), for abstract values, type can not be computed // until it is substituted away //////// @@ -5252,7 +5252,7 @@ Term Solver::mkAbstractValue(uint64_t index) const CVC4_API_ARG_CHECK_EXPECTED(index > 0, index) << "an integer > 0"; //////// all checks before this line return Term(this, - getNodeManager()->mkConst(CVC5::AbstractValue(Integer(index)))); + getNodeManager()->mkConst(cvc5::AbstractValue(Integer(index)))); // do not call getType(), for abstract values, type can not be computed // until it is substituted away //////// @@ -5275,8 +5275,8 @@ Term Solver::mkFloatingPoint(uint32_t exp, uint32_t sig, Term val) const val.getSort().isBitVector() && val.d_node->isConst(), val) << "bit-vector constant"; //////// all checks before this line - return mkValHelper<CVC5::FloatingPoint>( - CVC5::FloatingPoint(exp, sig, val.d_node->getConst<BitVector>())); + return mkValHelper<cvc5::FloatingPoint>( + cvc5::FloatingPoint(exp, sig, val.d_node->getConst<BitVector>())); //////// CVC4_API_TRY_CATCH_END; } @@ -5465,7 +5465,7 @@ Term Solver::mkTerm(const Op& op) const return mkTermFromKind(op.d_kind); } - const CVC5::Kind int_kind = extToIntKind(op.d_kind); + const cvc5::Kind int_kind = extToIntKind(op.d_kind); Term res = Term(this, getNodeManager()->mkNode(int_kind, *op.d_node)); (void)res.d_node->getType(true); /* kick off type checking */ @@ -5538,7 +5538,7 @@ Term Solver::mkTuple(const std::vector<Sort>& sorts, CVC4_API_SOLVER_CHECK_SORTS(sorts); CVC4_API_SOLVER_CHECK_TERMS(terms); //////// all checks before this line - std::vector<CVC5::Node> args; + std::vector<cvc5::Node> args; for (size_t i = 0, size = sorts.size(); i < size; i++) { args.push_back(*(ensureTermSort(terms[i], sorts[i])).d_node); @@ -5584,7 +5584,7 @@ Op Solver::mkOp(Kind kind, const std::string& arg) const { res = Op(this, kind, - *mkValHelper<CVC5::RecordUpdate>(CVC5::RecordUpdate(arg)).d_node); + *mkValHelper<cvc5::RecordUpdate>(cvc5::RecordUpdate(arg)).d_node); } else { @@ -5595,7 +5595,7 @@ Op Solver::mkOp(Kind kind, const std::string& arg) const << "a string representing an integer, real or rational value."; res = Op(this, kind, - *mkValHelper<CVC5::Divisible>(CVC5::Divisible(CVC5::Integer(arg))) + *mkValHelper<cvc5::Divisible>(cvc5::Divisible(cvc5::Integer(arg))) .d_node); } return res; @@ -5614,76 +5614,76 @@ Op Solver::mkOp(Kind kind, uint32_t arg) const case DIVISIBLE: res = Op(this, kind, - *mkValHelper<CVC5::Divisible>(CVC5::Divisible(arg)).d_node); + *mkValHelper<cvc5::Divisible>(cvc5::Divisible(arg)).d_node); break; case BITVECTOR_REPEAT: res = Op(this, kind, - *mkValHelper<CVC5::BitVectorRepeat>(CVC5::BitVectorRepeat(arg)) + *mkValHelper<cvc5::BitVectorRepeat>(cvc5::BitVectorRepeat(arg)) .d_node); break; case BITVECTOR_ZERO_EXTEND: res = Op(this, kind, - *mkValHelper<CVC5::BitVectorZeroExtend>( - CVC5::BitVectorZeroExtend(arg)) + *mkValHelper<cvc5::BitVectorZeroExtend>( + cvc5::BitVectorZeroExtend(arg)) .d_node); break; case BITVECTOR_SIGN_EXTEND: res = Op(this, kind, - *mkValHelper<CVC5::BitVectorSignExtend>( - CVC5::BitVectorSignExtend(arg)) + *mkValHelper<cvc5::BitVectorSignExtend>( + cvc5::BitVectorSignExtend(arg)) .d_node); break; case BITVECTOR_ROTATE_LEFT: res = Op(this, kind, - *mkValHelper<CVC5::BitVectorRotateLeft>( - CVC5::BitVectorRotateLeft(arg)) + *mkValHelper<cvc5::BitVectorRotateLeft>( + cvc5::BitVectorRotateLeft(arg)) .d_node); break; case BITVECTOR_ROTATE_RIGHT: res = Op(this, kind, - *mkValHelper<CVC5::BitVectorRotateRight>( - CVC5::BitVectorRotateRight(arg)) + *mkValHelper<cvc5::BitVectorRotateRight>( + cvc5::BitVectorRotateRight(arg)) .d_node); break; case INT_TO_BITVECTOR: res = Op( this, kind, - *mkValHelper<CVC5::IntToBitVector>(CVC5::IntToBitVector(arg)).d_node); + *mkValHelper<cvc5::IntToBitVector>(cvc5::IntToBitVector(arg)).d_node); break; case IAND: res = - Op(this, kind, *mkValHelper<CVC5::IntAnd>(CVC5::IntAnd(arg)).d_node); + Op(this, kind, *mkValHelper<cvc5::IntAnd>(cvc5::IntAnd(arg)).d_node); break; case FLOATINGPOINT_TO_UBV: res = Op( this, kind, - *mkValHelper<CVC5::FloatingPointToUBV>(CVC5::FloatingPointToUBV(arg)) + *mkValHelper<cvc5::FloatingPointToUBV>(cvc5::FloatingPointToUBV(arg)) .d_node); break; case FLOATINGPOINT_TO_SBV: res = Op( this, kind, - *mkValHelper<CVC5::FloatingPointToSBV>(CVC5::FloatingPointToSBV(arg)) + *mkValHelper<cvc5::FloatingPointToSBV>(cvc5::FloatingPointToSBV(arg)) .d_node); break; case TUPLE_UPDATE: res = Op(this, kind, - *mkValHelper<CVC5::TupleUpdate>(CVC5::TupleUpdate(arg)).d_node); + *mkValHelper<cvc5::TupleUpdate>(cvc5::TupleUpdate(arg)).d_node); break; case REGEXP_REPEAT: res = Op(this, kind, - *mkValHelper<CVC5::RegExpRepeat>(CVC5::RegExpRepeat(arg)).d_node); + *mkValHelper<cvc5::RegExpRepeat>(cvc5::RegExpRepeat(arg)).d_node); break; default: CVC4_API_KIND_CHECK_EXPECTED(false, kind) @@ -5707,57 +5707,57 @@ Op Solver::mkOp(Kind kind, uint32_t arg1, uint32_t arg2) const case BITVECTOR_EXTRACT: res = Op(this, kind, - *mkValHelper<CVC5::BitVectorExtract>( - CVC5::BitVectorExtract(arg1, arg2)) + *mkValHelper<cvc5::BitVectorExtract>( + cvc5::BitVectorExtract(arg1, arg2)) .d_node); break; case FLOATINGPOINT_TO_FP_IEEE_BITVECTOR: res = Op(this, kind, - *mkValHelper<CVC5::FloatingPointToFPIEEEBitVector>( - CVC5::FloatingPointToFPIEEEBitVector(arg1, arg2)) + *mkValHelper<cvc5::FloatingPointToFPIEEEBitVector>( + cvc5::FloatingPointToFPIEEEBitVector(arg1, arg2)) .d_node); break; case FLOATINGPOINT_TO_FP_FLOATINGPOINT: res = Op(this, kind, - *mkValHelper<CVC5::FloatingPointToFPFloatingPoint>( - CVC5::FloatingPointToFPFloatingPoint(arg1, arg2)) + *mkValHelper<cvc5::FloatingPointToFPFloatingPoint>( + cvc5::FloatingPointToFPFloatingPoint(arg1, arg2)) .d_node); break; case FLOATINGPOINT_TO_FP_REAL: res = Op(this, kind, - *mkValHelper<CVC5::FloatingPointToFPReal>( - CVC5::FloatingPointToFPReal(arg1, arg2)) + *mkValHelper<cvc5::FloatingPointToFPReal>( + cvc5::FloatingPointToFPReal(arg1, arg2)) .d_node); break; case FLOATINGPOINT_TO_FP_SIGNED_BITVECTOR: res = Op(this, kind, - *mkValHelper<CVC5::FloatingPointToFPSignedBitVector>( - CVC5::FloatingPointToFPSignedBitVector(arg1, arg2)) + *mkValHelper<cvc5::FloatingPointToFPSignedBitVector>( + cvc5::FloatingPointToFPSignedBitVector(arg1, arg2)) .d_node); break; case FLOATINGPOINT_TO_FP_UNSIGNED_BITVECTOR: res = Op(this, kind, - *mkValHelper<CVC5::FloatingPointToFPUnsignedBitVector>( - CVC5::FloatingPointToFPUnsignedBitVector(arg1, arg2)) + *mkValHelper<cvc5::FloatingPointToFPUnsignedBitVector>( + cvc5::FloatingPointToFPUnsignedBitVector(arg1, arg2)) .d_node); break; case FLOATINGPOINT_TO_FP_GENERIC: res = Op(this, kind, - *mkValHelper<CVC5::FloatingPointToFPGeneric>( - CVC5::FloatingPointToFPGeneric(arg1, arg2)) + *mkValHelper<cvc5::FloatingPointToFPGeneric>( + cvc5::FloatingPointToFPGeneric(arg1, arg2)) .d_node); break; case REGEXP_LOOP: res = Op( this, kind, - *mkValHelper<CVC5::RegExpLoop>(CVC5::RegExpLoop(arg1, arg2)).d_node); + *mkValHelper<cvc5::RegExpLoop>(cvc5::RegExpLoop(arg1, arg2)).d_node); break; default: CVC4_API_KIND_CHECK_EXPECTED(false, kind) @@ -5782,7 +5782,7 @@ Op Solver::mkOp(Kind kind, const std::vector<uint32_t>& args) const { res = Op(this, kind, - *mkValHelper<CVC5::TupleProjectOp>(CVC5::TupleProjectOp(args)) + *mkValHelper<cvc5::TupleProjectOp>(cvc5::TupleProjectOp(args)) .d_node); } break; @@ -5823,7 +5823,7 @@ Result Solver::checkEntailed(const Term& term) const "(try --incremental)"; CVC4_API_SOLVER_CHECK_TERM(term); //////// all checks before this line - CVC5::Result r = d_smtEngine->checkEntailed(*term.d_node); + cvc5::Result r = d_smtEngine->checkEntailed(*term.d_node); return Result(r); //////// CVC4_API_TRY_CATCH_END; @@ -5873,7 +5873,7 @@ Result Solver::checkSat(void) const << "Cannot make multiple queries unless incremental solving is enabled " "(try --incremental)"; //////// all checks before this line - CVC5::Result r = d_smtEngine->checkSat(); + cvc5::Result r = d_smtEngine->checkSat(); return Result(r); //////// CVC4_API_TRY_CATCH_END; @@ -5892,7 +5892,7 @@ Result Solver::checkSatAssuming(const Term& assumption) const "(try --incremental)"; CVC4_API_SOLVER_CHECK_TERM_WITH_SORT(assumption, getBooleanSort()); //////// all checks before this line - CVC5::Result r = d_smtEngine->checkSat(*assumption.d_node); + cvc5::Result r = d_smtEngine->checkSat(*assumption.d_node); return Result(r); //////// CVC4_API_TRY_CATCH_END; @@ -5916,7 +5916,7 @@ Result Solver::checkSatAssuming(const std::vector<Term>& assumptions) const CVC4_API_SOLVER_CHECK_TERM(term); } std::vector<Node> eassumptions = Term::termVectorToNodes(assumptions); - CVC5::Result r = d_smtEngine->checkSat(eassumptions); + cvc5::Result r = d_smtEngine->checkSat(eassumptions); return Result(r); //////// CVC4_API_TRY_CATCH_END; @@ -6645,7 +6645,7 @@ void Solver::setLogic(const std::string& logic) const CVC4_API_TRY_CATCH_BEGIN; CVC4_API_CHECK(!d_smtEngine->isFullyInited()) << "Invalid call to 'setLogic', solver is already fully initialized"; - CVC5::LogicInfo logic_info(logic); + cvc5::LogicInfo logic_info(logic); //////// all checks before this line d_smtEngine->setLogic(logic_info); //////// @@ -6828,12 +6828,12 @@ Term Solver::getSynthSolution(Term term) const CVC4_API_TRY_CATCH_BEGIN; CVC4_API_SOLVER_CHECK_TERM(term); - std::map<CVC5::Node, CVC5::Node> map; + std::map<cvc5::Node, cvc5::Node> map; CVC4_API_CHECK(d_smtEngine->getSynthSolutions(map)) << "The solver is not in a state immediately preceded by a " "successful call to checkSynth"; - std::map<CVC5::Node, CVC5::Node>::const_iterator it = map.find(*term.d_node); + std::map<cvc5::Node, cvc5::Node>::const_iterator it = map.find(*term.d_node); CVC4_API_CHECK(it != map.cend()) << "Synth solution not found for given term"; //////// all checks before this line @@ -6849,7 +6849,7 @@ std::vector<Term> Solver::getSynthSolutions( CVC4_API_ARG_SIZE_CHECK_EXPECTED(!terms.empty(), terms) << "non-empty vector"; CVC4_API_SOLVER_CHECK_TERMS(terms); - std::map<CVC5::Node, CVC5::Node> map; + std::map<cvc5::Node, cvc5::Node> map; CVC4_API_CHECK(d_smtEngine->getSynthSolutions(map)) << "The solver is not in a state immediately preceded by a " "successful call to checkSynth"; @@ -6860,7 +6860,7 @@ std::vector<Term> Solver::getSynthSolutions( for (size_t i = 0, n = terms.size(); i < n; ++i) { - std::map<CVC5::Node, CVC5::Node>::const_iterator it = + std::map<cvc5::Node, cvc5::Node>::const_iterator it = map.find(*terms[i].d_node); CVC4_API_CHECK(it != map.cend()) @@ -6897,4 +6897,4 @@ Options& Solver::getOptions(void) { return d_smtEngine->getOptions(); } } // namespace api -} // namespace CVC5 +} // namespace cvc5 diff --git a/src/api/cvc4cpp.h b/src/api/cvc4cpp.h index 99c2d1182..c446fcaf5 100644 --- a/src/api/cvc4cpp.h +++ b/src/api/cvc4cpp.h @@ -30,7 +30,7 @@ #include <unordered_set> #include <vector> -namespace CVC5 { +namespace cvc5 { template <bool ref_count> class NodeTemplate; @@ -202,14 +202,14 @@ class CVC4_EXPORT Result * @param r the internal result that is to be wrapped by this result * @return the Result */ - Result(const CVC5::Result& r); + Result(const cvc5::Result& r); /** * The interal result wrapped by this result. - * Note: This is a shared_ptr rather than a unique_ptr since CVC5::Result is + * Note: This is a shared_ptr rather than a unique_ptr since cvc5::Result is * not ref counted. */ - std::shared_ptr<CVC5::Result> d_result; + std::shared_ptr<cvc5::Result> d_result; }; /** @@ -240,16 +240,16 @@ class Datatype; */ class CVC4_EXPORT Sort { - friend class CVC5::DatatypeDeclarationCommand; - friend class CVC5::DeclareFunctionCommand; - friend class CVC5::DeclareHeapCommand; - friend class CVC5::DeclareSortCommand; - friend class CVC5::DeclareSygusVarCommand; - friend class CVC5::DefineSortCommand; - friend class CVC5::GetAbductCommand; - friend class CVC5::GetInterpolCommand; - friend class CVC5::GetModelCommand; - friend class CVC5::SynthFunCommand; + friend class cvc5::DatatypeDeclarationCommand; + friend class cvc5::DeclareFunctionCommand; + friend class cvc5::DeclareHeapCommand; + friend class cvc5::DeclareSortCommand; + friend class cvc5::DeclareSygusVarCommand; + friend class cvc5::DefineSortCommand; + friend class cvc5::GetAbductCommand; + friend class cvc5::GetInterpolCommand; + friend class cvc5::GetModelCommand; + friend class cvc5::SynthFunCommand; friend class DatatypeConstructor; friend class DatatypeConstructorDecl; friend class DatatypeSelector; @@ -701,7 +701,7 @@ class CVC4_EXPORT Sort private: /** @return the internal wrapped TypeNode of this sort. */ - const CVC5::TypeNode& getTypeNode(void) const; + const cvc5::TypeNode& getTypeNode(void) const; /** Helper to convert a set of Sorts to internal TypeNodes. */ std::set<TypeNode> static sortSetToTypeNodes(const std::set<Sort>& sorts); @@ -718,7 +718,7 @@ class CVC4_EXPORT Sort * @param t the internal type that is to be wrapped by this sort * @return the Sort */ - Sort(const Solver* slv, const CVC5::TypeNode& t); + Sort(const Solver* slv, const cvc5::TypeNode& t); /** * Helper for isNull checks. This prevents calling an API function with @@ -734,10 +734,10 @@ class CVC4_EXPORT Sort /** * The interal type wrapped by this sort. * Note: This is a shared_ptr rather than a unique_ptr to avoid overhead due - * to memory allocation (CVC5::Type is already ref counted, so this + * to memory allocation (cvc5::Type is already ref counted, so this * could be a unique_ptr instead). */ - std::shared_ptr<CVC5::TypeNode> d_type; + std::shared_ptr<cvc5::TypeNode> d_type; }; /** @@ -848,7 +848,7 @@ class CVC4_EXPORT Op * @param n the internal node that is to be wrapped by this term * @return the Term */ - Op(const Solver* slv, const Kind k, const CVC5::Node& n); + Op(const Solver* slv, const Kind k, const cvc5::Node& n); /** * Helper for isNull checks. This prevents calling an API function with @@ -875,10 +875,10 @@ class CVC4_EXPORT Op /** * The internal node wrapped by this operator. * Note: This is a shared_ptr rather than a unique_ptr to avoid overhead due - * to memory allocation (CVC5::Node is already ref counted, so this + * to memory allocation (cvc5::Node is already ref counted, so this * could be a unique_ptr instead). */ - std::shared_ptr<CVC5::Node> d_node; + std::shared_ptr<cvc5::Node> d_node; }; /* -------------------------------------------------------------------------- */ @@ -890,25 +890,25 @@ class CVC4_EXPORT Op */ class CVC4_EXPORT Term { - friend class CVC5::AssertCommand; - friend class CVC5::BlockModelValuesCommand; - friend class CVC5::CheckSatCommand; - friend class CVC5::CheckSatAssumingCommand; - friend class CVC5::DeclareSygusVarCommand; - friend class CVC5::DefineFunctionCommand; - friend class CVC5::DefineFunctionRecCommand; - friend class CVC5::GetAbductCommand; - friend class CVC5::GetInterpolCommand; - friend class CVC5::GetModelCommand; - friend class CVC5::GetQuantifierEliminationCommand; - friend class CVC5::GetUnsatCoreCommand; - friend class CVC5::GetValueCommand; - friend class CVC5::SetUserAttributeCommand; - friend class CVC5::SimplifyCommand; - friend class CVC5::SygusConstraintCommand; - friend class CVC5::SygusInvConstraintCommand; - friend class CVC5::SynthFunCommand; - friend class CVC5::QueryCommand; + friend class cvc5::AssertCommand; + friend class cvc5::BlockModelValuesCommand; + friend class cvc5::CheckSatCommand; + friend class cvc5::CheckSatAssumingCommand; + friend class cvc5::DeclareSygusVarCommand; + friend class cvc5::DefineFunctionCommand; + friend class cvc5::DefineFunctionRecCommand; + friend class cvc5::GetAbductCommand; + friend class cvc5::GetInterpolCommand; + friend class cvc5::GetModelCommand; + friend class cvc5::GetQuantifierEliminationCommand; + friend class cvc5::GetUnsatCoreCommand; + friend class cvc5::GetValueCommand; + friend class cvc5::SetUserAttributeCommand; + friend class cvc5::SimplifyCommand; + friend class cvc5::SygusConstraintCommand; + friend class cvc5::SygusInvConstraintCommand; + friend class cvc5::SynthFunCommand; + friend class cvc5::QueryCommand; friend class Datatype; friend class DatatypeConstructor; friend class DatatypeSelector; @@ -1117,7 +1117,7 @@ class CVC4_EXPORT Term * @param p the position of the iterator (e.g. which child it's on) */ const_iterator(const Solver* slv, - const std::shared_ptr<CVC5::Node>& e, + const std::shared_ptr<cvc5::Node>& e, uint32_t p); /** @@ -1170,7 +1170,7 @@ class CVC4_EXPORT Term */ const Solver* d_solver; /** The original node to be iterated over. */ - std::shared_ptr<CVC5::Node> d_origNode; + std::shared_ptr<cvc5::Node> d_origNode; /** Keeps track of the iteration position. */ uint32_t d_pos; }; @@ -1260,10 +1260,10 @@ class CVC4_EXPORT Term * @param n the internal node that is to be wrapped by this term * @return the Term */ - Term(const Solver* slv, const CVC5::Node& n); + Term(const Solver* slv, const cvc5::Node& n); /** @return the internal wrapped Node of this term. */ - const CVC5::Node& getNode(void) const; + const cvc5::Node& getNode(void) const; /** * Helper for isNull checks. This prevents calling an API function with @@ -1286,10 +1286,10 @@ class CVC4_EXPORT Term /** * The internal node wrapped by this term. * Note: This is a shared_ptr rather than a unique_ptr to avoid overhead due - * to memory allocation (CVC5::Node is already ref counted, so this + * to memory allocation (cvc5::Node is already ref counted, so this * could be a unique_ptr instead). */ - std::shared_ptr<CVC5::Node> d_node; + std::shared_ptr<cvc5::Node> d_node; }; /** @@ -1446,9 +1446,9 @@ class CVC4_EXPORT DatatypeConstructorDecl * The internal (intermediate) datatype constructor wrapped by this * datatype constructor declaration. * Note: This is a shared_ptr rather than a unique_ptr since - * CVC5::DTypeConstructor is not ref counted. + * cvc5::DTypeConstructor is not ref counted. */ - std::shared_ptr<CVC5::DTypeConstructor> d_ctor; + std::shared_ptr<cvc5::DTypeConstructor> d_ctor; }; class Solver; @@ -1535,7 +1535,7 @@ class CVC4_EXPORT DatatypeDecl bool isCoDatatype = false); /** @return the internal wrapped Dtype of this datatype declaration. */ - CVC5::DType& getDatatype(void) const; + cvc5::DType& getDatatype(void) const; /** * Helper for isNull checks. This prevents calling an API function with @@ -1551,10 +1551,10 @@ class CVC4_EXPORT DatatypeDecl /** * The internal (intermediate) datatype wrapped by this datatype * declaration. - * Note: This is a shared_ptr rather than a unique_ptr since CVC5::DType is + * Note: This is a shared_ptr rather than a unique_ptr since cvc5::DType is * not ref counted. */ - std::shared_ptr<CVC5::DType> d_dtype; + std::shared_ptr<cvc5::DType> d_dtype; }; /** @@ -1605,7 +1605,7 @@ class CVC4_EXPORT DatatypeSelector * @param stor the internal datatype selector to be wrapped * @return the DatatypeSelector */ - DatatypeSelector(const Solver* slv, const CVC5::DTypeSelector& stor); + DatatypeSelector(const Solver* slv, const cvc5::DTypeSelector& stor); /** * Helper for isNull checks. This prevents calling an API function with @@ -1620,10 +1620,10 @@ class CVC4_EXPORT DatatypeSelector /** * The internal datatype selector wrapped by this datatype selector. - * Note: This is a shared_ptr rather than a unique_ptr since CVC5::DType is + * Note: This is a shared_ptr rather than a unique_ptr since cvc5::DType is * not ref counted. */ - std::shared_ptr<CVC5::DTypeSelector> d_stor; + std::shared_ptr<cvc5::DTypeSelector> d_stor; }; /** @@ -1786,7 +1786,7 @@ class CVC4_EXPORT DatatypeConstructor * @param true if this is a begin() iterator */ const_iterator(const Solver* slv, - const CVC5::DTypeConstructor& ctor, + const cvc5::DTypeConstructor& ctor, bool begin); /** @@ -1824,7 +1824,7 @@ class CVC4_EXPORT DatatypeConstructor * @param ctor the internal datatype constructor to be wrapped * @return the DatatypeConstructor */ - DatatypeConstructor(const Solver* slv, const CVC5::DTypeConstructor& ctor); + DatatypeConstructor(const Solver* slv, const cvc5::DTypeConstructor& ctor); /** * Return selector for name. @@ -1846,10 +1846,10 @@ class CVC4_EXPORT DatatypeConstructor /** * The internal datatype constructor wrapped by this datatype constructor. - * Note: This is a shared_ptr rather than a unique_ptr since CVC5::DType is + * Note: This is a shared_ptr rather than a unique_ptr since cvc5::DType is * not ref counted. */ - std::shared_ptr<CVC5::DTypeConstructor> d_ctor; + std::shared_ptr<cvc5::DTypeConstructor> d_ctor; }; /* @@ -2008,7 +2008,7 @@ class CVC4_EXPORT Datatype * @param dtype the internal datatype to iterate over * @param true if this is a begin() iterator */ - const_iterator(const Solver* slv, const CVC5::DType& dtype, bool begin); + const_iterator(const Solver* slv, const cvc5::DType& dtype, bool begin); /** * The associated solver object. @@ -2045,7 +2045,7 @@ class CVC4_EXPORT Datatype * @param dtype the internal datatype to be wrapped * @return the Datatype */ - Datatype(const Solver* slv, const CVC5::DType& dtype); + Datatype(const Solver* slv, const cvc5::DType& dtype); /** * Return constructor for name. @@ -2067,10 +2067,10 @@ class CVC4_EXPORT Datatype /** * The internal datatype wrapped by this datatype. - * Note: This is a shared_ptr rather than a unique_ptr since CVC5::DType is + * Note: This is a shared_ptr rather than a unique_ptr since cvc5::DType is * not ref counted. */ - std::shared_ptr<CVC5::DType> d_dtype; + std::shared_ptr<cvc5::DType> d_dtype; }; /** @@ -2136,9 +2136,9 @@ std::ostream& operator<<(std::ostream& out, */ class CVC4_EXPORT Grammar { - friend class CVC5::GetAbductCommand; - friend class CVC5::GetInterpolCommand; - friend class CVC5::SynthFunCommand; + friend class cvc5::GetAbductCommand; + friend class cvc5::GetInterpolCommand; + friend class cvc5::SynthFunCommand; friend class Solver; public: @@ -2323,7 +2323,7 @@ class CVC4_EXPORT Solver friend class DatatypeSelector; friend class Grammar; friend class Op; - friend class CVC5::ResetCommand; + friend class cvc5::ResetCommand; friend class Sort; friend class Term; @@ -3708,5 +3708,5 @@ class CVC4_EXPORT Solver }; } // namespace api -} // namespace CVC5 +} // namespace cvc5 #endif diff --git a/src/api/cvc4cppkind.h b/src/api/cvc4cppkind.h index ef2f6af74..eec90147e 100644 --- a/src/api/cvc4cppkind.h +++ b/src/api/cvc4cppkind.h @@ -21,7 +21,7 @@ #include <ostream> -namespace CVC5 { +namespace cvc5 { namespace api { /* -------------------------------------------------------------------------- */ @@ -33,7 +33,7 @@ namespace api { * * Note that the underlying type of Kind must be signed (to enable range * checks for validity). The size of this type depends on the size of - * CVC5::Kind (NodeValue::NBITS_KIND, currently 10 bits, see expr/node_value.h). + * cvc5::Kind (NodeValue::NBITS_KIND, currently 10 bits, see expr/node_value.h). */ enum CVC4_EXPORT Kind : int32_t { @@ -2868,6 +2868,6 @@ struct CVC4_EXPORT KindHashFunction }; } // namespace api -} // namespace CVC5 +} // namespace cvc5 #endif diff --git a/src/api/python/cvc4.pxd b/src/api/python/cvc4.pxd index 9d69e2a15..947132a89 100644 --- a/src/api/python/cvc4.pxd +++ b/src/api/python/cvc4.pxd @@ -19,7 +19,7 @@ cdef extern from "api/cvc4cpp.h" namespace "CVC4": pass -cdef extern from "api/cvc4cpp.h" namespace "CVC5::api": +cdef extern from "api/cvc4cpp.h" namespace "cvc5::api": cdef cppclass Datatype: Datatype() except + DatatypeConstructor operator[](size_t idx) except + @@ -353,7 +353,7 @@ cdef extern from "api/cvc4cpp.h" namespace "CVC5::api": size_t operator()(const Term & t) except + -cdef extern from "api/cvc4cpp.h" namespace "CVC5::api::RoundingMode": +cdef extern from "api/cvc4cpp.h" namespace "cvc5::api::RoundingMode": cdef RoundingMode ROUND_NEAREST_TIES_TO_EVEN, cdef RoundingMode ROUND_TOWARD_POSITIVE, cdef RoundingMode ROUND_TOWARD_NEGATIVE, diff --git a/src/api/python/genkinds.py.in b/src/api/python/genkinds.py.in index 46bf2b45e..0c800d787 100644 --- a/src/api/python/genkinds.py.in +++ b/src/api/python/genkinds.py.in @@ -40,13 +40,13 @@ PYCOMMENT = '#' CDEF_KIND = " cdef Kind " KINDS_PXD_TOP = \ -r"""cdef extern from "api/cvc4cppkind.h" namespace "CVC5::api": +r"""cdef extern from "api/cvc4cppkind.h" namespace "cvc5::api": cdef cppclass Kind: pass # Kind declarations: See cvc4cppkind.h for additional information -cdef extern from "api/cvc4cppkind.h" namespace "CVC5::api::Kind": +cdef extern from "api/cvc4cppkind.h" namespace "cvc5::api::Kind": """ KINDS_PXI_TOP = \ |