From 960147384b7953a352ca9c721f9b93bdac4ff178 Mon Sep 17 00:00:00 2001 From: Andrew Reynolds Date: Fri, 28 Aug 2020 18:01:34 -0500 Subject: Replace Theory::Set with TheoryIdSet (#4959) This makes it so that equality_engine.h does not include theory.h. This is a bad dependency since Theory contains EqualityEngine. This dependency between equality engine and theory was due to the use of a helper (Theory::Set) for representing sets of theories that is inlined into Theory. This PR moves this definition and utilities to theory_id.h. It fixes the resulting include dependencies which are broken by changing the include theory.h -> theory_id.h in equality_engine.h. This avoids a circular dependency in the includes between Theory -> InferenceManager -> ProofEqualityEngine -> EqualityEngine -> Theory. --- src/theory/arith/congruence_manager.h | 1 + 1 file changed, 1 insertion(+) (limited to 'src/theory/arith/congruence_manager.h') diff --git a/src/theory/arith/congruence_manager.h b/src/theory/arith/congruence_manager.h index d46346fd8..242d895fc 100644 --- a/src/theory/arith/congruence_manager.h +++ b/src/theory/arith/congruence_manager.h @@ -27,6 +27,7 @@ #include "theory/arith/arithvar.h" #include "theory/arith/constraint_forward.h" #include "theory/arith/partial_model.h" +#include "theory/ee_setup_info.h" #include "theory/uf/equality_engine.h" #include "util/dense_map.h" #include "util/statistics_registry.h" -- cgit v1.2.3