Eliminate use of getBaseType (#8764)
authorAndrew Reynolds <andrew.j.reynolds@gmail.com>
Fri, 13 May 2022 17:02:33 +0000 (12:02 -0500)
committerGitHub <noreply@github.com>
Fri, 13 May 2022 17:02:33 +0000 (17:02 +0000)
commite33582f42b0998170bc4f30f54290808fc9cf4ac
treea8adf599188e8fd9df10a6259771b36069de2f3b
parent70dca46f1caf99a42c572bd5e245e827eb4e3c58
Eliminate use of getBaseType (#8764)

For the model, this was used for ensuring that we skipped enumerating the Real constant 1.0 if the Integer constant 1 already existed in the model. Now, these two nodes are disjoint, and due to #8740, the use of getBaseType in this context has no effect since the set of real and integer constants are disjoint.

It was also used in CEGQI in a similar manner, where since equivalence classes of Int and Real terms are disjoint, it is not necessary to search for e.g. Real variables in integer equivalence classes.
src/expr/type_node.cpp
src/expr/type_node.h
src/theory/quantifiers/cegqi/ceg_instantiator.cpp
src/theory/theory_model_builder.cpp
src/theory/type_set.cpp
src/theory/type_set.h
test/unit/node/type_node_white.cpp