Towards an Automated Reasoning Tool for Complexity Analysis of Automated Reasoners

2026-06-22Logic in Computer Science

Logic in Computer Science
AI summary

The authors describe a tool they are developing to help analyze the complexity of complicated algorithms, especially those used in automated reasoning. The tool assists experts by automating repetitive parts of the process, like turning algorithm steps into recurrence equations. It uses a new technique to translate symbolic programs into numerical forms and then solves these equations using advanced methods beyond standard computer algebra systems. This helps find and check bounds on how long algorithms take to run.

complexity analysisautomated reasoningquantifier eliminationrecurrence equationsabstract interpretationoperator semanticscomputer algebra systemsSMT solverstermination analysis
Authors
Louis Rustenholz, Manuel V. Hermenegildo, Pedro Lopez-Garcia, Alessio Mansutti, Félix Ridoux, Niki Vazou
Abstract
We present the theory underpinning a complexity analysis tool (under development) that aims at automating tedious parts of the analysis of complex algorithms originating from the field of automated reasoning. Examples are given by super-exponential quantifier elimination procedures in real and integer arithmetics. Our tool implements the following pipeline. * Together with the algorithm to be analysed, the user (expert, e.g. the algorithm designer) can provide key metrics to track, and lemmas to improve the analysis. In pen-and-paper proofs, these correspond to the "non-tedious" and "creative" parts of the complexity analysis, that require human ingenuity. * The second step consists in the extraction of (generalised) recurrence equations. Here, we rely on a novel higher-order abstract interpretation technique, built on the concept of operator semantics. It enables (optimal) abstract compilation of symbolic programs to different kinds of purely numerical recursive representations, such as recurrence equations on interval-valued functions or numerical logic programs. * Finally, our tool solves the recurrence equations. We propose to go beyond the direct usage of computer algebra systems (CAS), and use pre/postfixpoint-based techniques to discover and verify candidate bounds on the solution. This approach makes use, in turn, of recent progress in SMT solvers, and can also be improved by techniques originating in termination analysis research.