🤖 AI Summary
Existing difference and complement algorithms for term rewriting operate only on unconstrained linear patterns, failing to handle patterns with logical constraints (e.g., equalities, ordering relations) in Logic Constraint Term Rewriting Systems (LCTRSs). Method: This paper systematically extends difference and complement operations to constrained linear patterns within left-linear LCTRSs endowed with decidable built-in theories and no user-defined built-in constructors. We provide formal definitions and constructive algorithms for both operators under this setting. Contributions/Results: (1) First difference algorithm supporting non-purely-linear divisor patterns; (2) Complement closure achieved without user-defined built-in constructors; (3) Decidability of quasi-reducibility established in this framework. These results significantly enhance the expressiveness and automation level of constrained pattern analysis and program verification.
📝 Abstract
Considering patterns as sets of their instances, a difference operator over patterns computes a finite set of two given patterns, which represents the difference between the dividend pattern and the divisor pattern. A complement of a pattern is a set of patterns, the ground constructor instances of which comprise the complement set of the ground constructor instances of the former pattern. Given finitely many unconstrained linear patterns, using a difference operator over linear patterns, a known complement algorithm returns a finite set of linear patterns as a complement of the given patterns. In this paper, we extend the difference operator and complement algorithm to constrained linear patterns used in logically constrained term rewrite systems (LCTRSs, for short) that have no user-defined constructor term with a sort for built-in values. Then, as for left-linear TRSs, using the complement algorithm, we show that quasi-reducibility is decidable for such LCTRSs with decidable built-in theories. For the single use of the difference operator over (constrained) patterns, only divisor patterns are required to be linear.