A Machine Learning-based Approach for Solving Recurrence Relations and its use in Cost Analysis of Logic Programs
Louis Rustenholz, Maximiliano Klemen, Miguel \'Angel, Carreira-Perpi\~n\'an, and Pedro L\'opez-Garc\'ia

TL;DR
This paper introduces a machine learning-based method for solving complex recurrence relations in static cost analysis of logic programs, outperforming existing solvers and handling previously unsolvable recurrences.
Contribution
It presents a novel, general approach combining machine learning and symbolic reasoning to solve arbitrary recurrence relations in program cost analysis.
Findings
Outperforms state-of-the-art cost analyzers on benchmarks.
Solves recurrences unsolvable by existing methods.
Demonstrates promising results within the CiaoPP system.
Abstract
Automatic static cost analysis infers information about the resources used by programs without actually running them with concrete data, and presents such information as functions of input data sizes. Most of the analysis tools for logic programs (and many for other languages), as CiaoPP, are based on setting up recurrence relations representing (bounds on) the computational cost of predicates, and solving them to find closed-form functions. Such recurrence solving is a bottleneck in current tools: many of the recurrences that arise during the analysis cannot be solved with state-of-the-art solvers, including Computer Algebra Systems (CASs), so that specific methods for different classes of recurrences need to be developed. We address such a challenge by developing a novel, general approach for solving arbitrary, constrained recurrence relations, that uses machine-learning…
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.
Taxonomy
TopicsSemantic Web and Ontologies · Logic, Reasoning, and Knowledge · Formal Methods in Verification
