10 research outputs found
Proving Looping and Non-Looping Non-Termination by Finite Automata
A new technique is presented to prove non-termination of term rewriting. The
basic idea is to find a non-empty regular language of terms that is closed
under rewriting and does not contain normal forms. It is automated by
representing the language by a tree automaton with a fixed number of states,
and expressing the mentioned requirements in a SAT formula. Satisfiability of
this formula implies non-termination. Our approach succeeds for many examples
where all earlier techniques fail, for instance for the S-rule from combinatory
logic
Local Termination: theory and practice
The characterisation of termination using well-founded monotone algebras has
been a milestone on the way to automated termination techniques, of which we
have seen an extensive development over the past years. Both the semantic
characterisation and most known termination methods are concerned with global
termination, uniformly of all the terms of a term rewriting system (TRS). In
this paper we consider local termination, of specific sets of terms within a
given TRS. The principal goal of this paper is generalising the semantic
characterisation of global termination to local termination. This is made
possible by admitting the well-founded monotone algebras to be partial. We also
extend our approach to local relative termination. The interest in local
termination naturally arises in program verification, where one is probably
interested only in sensible inputs, or just wants to characterise the set of
inputs for which a program terminates. Local termination will be also be of
interest when dealing with a specific class of terms within a TRS that is known
to be non-terminating, such as combinatory logic (CL) or a TRS encoding
recursive program schemes or Turing machines. We show how some of the
well-known techniques for proving global termination, such as stepwise removal
of rewrite rules and semantic labelling, can be adapted to the local case. We
also describe transformations reducing local to global termination problems.
The resulting techniques for proving local termination have in some cases
already been automated. One of our applications concerns the characterisation
of the terminating S-terms in CL as regular language. Previously this language
had already been found via a tedious analysis of the reduction behaviour of
S-terms. These findings have now been vindicated by a fully automated and
verified proof
Analysing the Complexity of Functional Programs: Higher-Order Meets First-Order
International audienceWe show how the complexity of higher-order functional programs can be analysed automatically by applying program transformations to a defunctionalized versions of them, and feeding the result to existing tools for the complexity analysis of first-order term rewrite systems. This is done while carefully analysing complexity preservation and reflection of the employed transformations such that the complexity of the obtained term rewrite system reflects on the complexity of the initial program. Further, we describe suitable strategies for the application of the studied transformations and provide ample experimental data for assessing the viability of our method
Automated Deduction – CADE 28
This open access book constitutes the proceeding of the 28th International Conference on Automated Deduction, CADE 28, held virtually in July 2021. The 29 full papers and 7 system descriptions presented together with 2 invited papers were carefully reviewed and selected from 76 submissions. CADE is the major forum for the presentation of research in all aspects of automated deduction, including foundations, applications, implementations, and practical experience. The papers are organized in the following topics: Logical foundations; theory and principles; implementation and application; ATP and AI; and system descriptions