File tree Expand file tree Collapse file tree 1 file changed +14
-2
lines changed Expand file tree Collapse file tree 1 file changed +14
-2
lines changed Original file line number Diff line number Diff line change @@ -84,6 +84,7 @@ import Kore.Simplify.Simplify (
84
84
Simplifier ,
85
85
simplifyCondition ,
86
86
)
87
+ import Kore.Simplify.Simplify qualified as Simplifier
87
88
import Kore.Substitute
88
89
import Logic (
89
90
LogicT ,
@@ -306,11 +307,22 @@ finalizeRulesParallel
306
307
& fmap fold
307
308
let unifications = MultiOr. make (Conditional. withoutTerm <$> unifiedRules)
308
309
remainderPredicate = Remainder. remainder' unifications
309
- debugRewriteRulesRemainder initial (length unifiedRules) remainderPredicate
310
+
311
+ simplifiedRemainderConditional <-
312
+ Logic. observeAllT $
313
+ Simplifier. simplifyCondition
314
+ ( sideCondition
315
+ & SideCondition. addConditionWithReplacements
316
+ (Pattern. withoutTerm initial)
317
+ )
318
+ (Condition. fromPredicate remainderPredicate)
319
+ let simplifiedRemainder = Remainder. remainder' $ MultiOr. make simplifiedRemainderConditional
320
+
321
+ debugRewriteRulesRemainder initial (length unifiedRules) simplifiedRemainder
310
322
-- evaluate the remainder predicate to make sure it is actually satisfiable
311
323
SMT. evalPredicate
312
324
(ErrorDecidePredicateUnknown $ srcLoc Nothing )
313
- remainderPredicate
325
+ simplifiedRemainder
314
326
Nothing
315
327
>>= \ case
316
328
-- remainder condition is UNSAT: we prune the remainder branch early to avoid
You can’t perform that action at this time.
0 commit comments