Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
Implement branching on predicates (#484)
* Add ListT * Add BranchT to Simplifier stack * Use BranchT on top of Simplifier stack * Add Test.ListT * Add Kore.Step.Simplification.Predicate.simplifyPartialBranch * Add Kore.Step.Simplification.PredicateSubstitution.simplifyBranch * Kore.Step.Simplification: Branching in PredicateSubstitutionSimplifier * Remove Kore.Step.Simplification.simplifyPartial * Rename Kore.Step.Simplification.PredicateSubstitution.simplifyBranch * Allow branching in Kore.Step.Substitution.normalize * Kore.Step.Substitution.normalizeSubstitutionAfterMerge: Give a meaningful error * Kore.Step.Simplification.Data: Collect branching documentation in one place * Kore.Step.Simplification.Data: Clarify capabilities of BranchT and Simplifier * Rename Kore.Step.Simplification.Predicate.simplify * ListT: Describe type more clearly * Predicate.simplifyPartial: Use straightforward pattern matching * Kore.Step.Substitution: Reduce duplication and redundant checks * ListT: Add examples * Kore.Step.Simplification.Data: Clarify comments around scatter and gather * Prune branches of Simplifier lifted into BranchT * normalizeWorker: Cleanup * Add instance MonadSMT BranchT
- Loading branch information