@@ -57,7 +57,7 @@ class AlphaEquivalenceSolver : public SolverImpl {
5757 const ExprHashMap<ref<Expr>> &reverse);
5858 std::vector<const Array *>
5959 changeVersion (const std::vector<const Array *> &objects,
60- const ArrayCache::ArrayHashMap< const Array *> &reverse );
60+ AlphaBuilder &builder );
6161 Assignment
6262 changeVersion (const std::vector<const Array *> &objects,
6363 const std::vector<SparseStorage<unsigned char >> &values,
@@ -99,14 +99,12 @@ Assignment AlphaEquivalenceSolver::changeVersion(
9999 return Assignment (reverseObjects, reverseValues);
100100}
101101
102- std::vector<const Array *> AlphaEquivalenceSolver::changeVersion (
103- const std::vector<const Array *> &objects,
104- const ArrayCache::ArrayHashMap< const Array *> &reverse ) {
102+ std::vector<const Array *>
103+ AlphaEquivalenceSolver::changeVersion ( const std::vector<const Array *> &objects,
104+ AlphaBuilder &builder ) {
105105 std::vector<const Array *> reverseObjects;
106106 for (size_t i = 0 ; i < objects.size (); i++) {
107- if (reverse.count (objects.at (i)) != 0 ) {
108- reverseObjects.push_back (reverse.at (objects.at (i)));
109- }
107+ reverseObjects.push_back (builder.buildArray (objects.at (i)));
110108 }
111109 return reverseObjects;
112110}
@@ -187,8 +185,7 @@ bool AlphaEquivalenceSolver::computeInitialValues(
187185 AlphaBuilder builder (arrayCache);
188186 constraints_ty alphaQuery = builder.visitConstraints (query.constraints .cs ());
189187 ref<Expr> alphaQueryExpr = builder.build (query.expr );
190- const std::vector<const Array *> newObjects =
191- changeVersion (objects, builder.alphaArrayMap );
188+ const std::vector<const Array *> newObjects = changeVersion (objects, builder);
192189
193190 if (!solver->impl ->computeInitialValues (
194191 Query (ConstraintSet (alphaQuery, {}, {}), alphaQueryExpr, query.id ),
0 commit comments