Standardize uses of inference manager in datatypes (#5035)
authorAndrew Reynolds <andrew.j.reynolds@gmail.com>
Mon, 14 Sep 2020 07:52:28 +0000 (02:52 -0500)
committerGitHub <noreply@github.com>
Mon, 14 Sep 2020 07:52:28 +0000 (00:52 -0700)
commit21439d98e9afe1541bb0f5371c4ab0011666bd5e
tree4d7d96a58350aae1177c3711d8cd90676bc53820
parent3a8a27994584ca2168ef71d5eb0ce46ef558ba34
Standardize uses of inference manager in datatypes (#5035)

Datatypes now has an inference manager. This is work towards making it use the inference manager in all places where it should.

In particular, this makes many of the places where conflicts are determined using `InferenceManager::conflictExp` (explained conflict) instead of `InferenceManager::conflict` + custom calls to explain in TheoryDatatypes.  The goal here is to ensure that all explanations from the equality engine are managed by inference manager, which is required for proofs.
src/theory/datatypes/theory_datatypes.cpp
src/theory/datatypes/theory_datatypes.h
src/theory/theory_inference_manager.cpp
src/theory/uf/proof_equality_engine.cpp