cTI: A Constraint-Based Termination Inference Tool for {ISO-Prolog}

Publication TypeJournal Article
Year of Publication2005
AuthorsMesnard F, Bagnara R
JournalTheory and Practice of Logic Programming
Keywordsabstract interpretation, logic programming, software verification, static analysis, termination analysis, termination inference

We present cTI, the first system for universal left-termination inference of logic programs. Termination inference generalizes termination analysis and checking. Traditionally, a termination analyzer tries to prove that a given class of queries terminates. This class must be provided to the system, for instance by means of user annotations. Moreover, the analysis must be redone every time the class of queries of interest is updated. Termination inference, in contrast, requires neither user annotations nor recomputation. In this approach, terminating classes for all predicates are inferred at once. We describe the architecture of cTI and report an extensive experimental evaluation of the system covering many classical examples from the logic programming termination literature and several Prolog programs of respectable size and complexity.

File attachments: 
We are a passionate team of experts. Do not hesitate to let us have your feedback:
You may be surprised to discover just how much your suggestions matter to us.