Add skeleton of the FP theory solver (#1130)
authorMartin <martin.brain@cs.ox.ac.uk>
Tue, 10 Oct 2017 06:21:26 +0000 (07:21 +0100)
committerAndres Noetzli <andres.noetzli@gmail.com>
Tue, 10 Oct 2017 06:21:26 +0000 (23:21 -0700)
commit8c860213ca3a43e1fe483accb4b2b928ae14028e
tree4383636a3c88e1cde14e78b9ee4f04f46952c392
parent96a0bc3b022b67b5ab79bf2ab087573c65a8d248
Add skeleton of the FP theory solver (#1130)

This commit adds the skeleton of the theory solver using a dummy version of the converter (fp_converter.{h,cpp}). The converter is a class that is used to produce bit-vector expressions equivalent to floating-point ones. The commit sets up the equality engine and the infrastructure for interacting with the main theory components. The majority of this code is still agnostic to how the conversion is actually implemented / what kind of theory solver this is. This is pretty much the template code you need to write any kind of theory solver. This includes equality reasoning and so should be able to solve some basic problems.
src/Makefile.am
src/theory/fp/fp_converter.cpp [new file with mode: 0644]
src/theory/fp/fp_converter.h [new file with mode: 0644]
src/theory/fp/kinds
src/theory/fp/theory_fp.cpp
src/theory/fp/theory_fp.h
src/theory/fp/theory_fp_type_rules.h