Regular Path Clauses and Their Application in Solving Loops
Bishoksan Kafle (IMDEA Software Institute, Spain), John P. Gallagher, (Roskilde University, Denmark, IMDEA Software Institute, Spain), Manuel V., Hermenegildo (IMDEA Software Institute, Spain, U. Politecnica de Madrid,, Spain), Maximiliano Klemen (IMDEA Software Institute, Spain

TL;DR
This paper introduces a novel method using regular path expressions and loop counters to transform complex loops into simpler forms, enabling more effective recurrence solving for program analysis.
Contribution
It proposes a new transformation technique that simplifies multi-path and multi-argument recurrences, improving the ability to derive precise loop properties.
Findings
Transforms multi-path loops into single-path loops
Enables solving previously unsolvable recurrences
Achieves more precise analysis results
Abstract
A well-established approach to reasoning about loops during program analysis is to capture the effect of a loop by extracting recurrences from the loop; these express relationships between the values of variables, or program properties such as cost, on successive loop iterations. Recurrence solvers are capable of computing closed forms for some recurrences, thus deriving precise relationships capturing the complete loop execution. However, many recurrences extracted from loops cannot be solved, due to their having multiple recursive cases or multiple arguments. In the literature, several techniques for approximating the solution of unsolvable recurrences have been proposed. The approach presented in this paper is to define transformations based on regular path expressions and loop counters that (i) transform multi-path loops to single-path loops, giving rise to recurrences with a single…
Peer Reviews
No public reviews on file for this paper yet. If you reviewed it on a platform where reviews are public (OpenReview, ICLR, NeurIPS, ICML), you can paste yours below so the community can read it here.
Videos
No videos yet. Explain this paper in a talk, walkthrough, or lecture? Add one.
