Split the non-linear solver (#4219)
authorAndrew Reynolds <andrew.j.reynolds@gmail.com>
Sat, 11 Apr 2020 00:15:18 +0000 (19:15 -0500)
committerGitHub <noreply@github.com>
Sat, 11 Apr 2020 00:15:18 +0000 (19:15 -0500)
commit04a8bf833bad57329a4e83b3c5aafb7537de885d
tree07d3e46c8da90c8b23475712deb93b39765dc047
parent6b599f87b18186b811f187789e48c1e8c0774534
Split the non-linear solver (#4219)

This splits the "non-linear solver" from "NonlinearExtension". The non-linear solver is the module that implements the inference schemas whereas NonlinearExtension is the glue code that manages the solver(s) for non-linear.

This also involves moving utilities from the non-linear solver to their own file.
src/CMakeLists.txt
src/theory/arith/nl_constraint.cpp [new file with mode: 0644]
src/theory/arith/nl_constraint.h [new file with mode: 0644]
src/theory/arith/nl_lemma_utils.h
src/theory/arith/nl_monomial.cpp [new file with mode: 0644]
src/theory/arith/nl_monomial.h [new file with mode: 0644]
src/theory/arith/nl_solver.cpp [new file with mode: 0644]
src/theory/arith/nl_solver.h [new file with mode: 0644]
src/theory/arith/nonlinear_extension.cpp
src/theory/arith/nonlinear_extension.h
src/theory/arith/transcendental_solver.h