ufmg-smite / carcara

Apache License 2.0
33 stars 11 forks source link

[rules] [strings] Splits `concat_csplit` rule into prefix and suffix versions #36

Closed vinisilvag closed 6 months ago

vinisilvag commented 6 months ago

This PR splits the concat_csplit rule into a prefix version and a suffix version. The main reason for this modification is to simplify how the rule works, since it's premises and conclusion changes substantially based on the reverse parameter value (if the parameter is set to true, the rule is reasoning about suffixes, and if it's set to false, about prefixes).

All unit tests where converted and some additional cases where incorporated to cover previously untested scenarios.

The rule reference can be found in the cvc5 documentation and in the AletheLF specification.