12 research outputs found
Higher-Order Termination: from Kruskal to Computability
Termination is a major question in both logic and computer science. In logic,
termination is at the heart of proof theory where it is usually called strong
normalization (of cut elimination). In computer science, termination has always
been an important issue for showing programs correct. In the early days of
logic, strong normalization was usually shown by assigning ordinals to
expressions in such a way that eliminating a cut would yield an expression with
a smaller ordinal. In the early days of verification, computer scientists used
similar ideas, interpreting the arguments of a program call by a natural
number, such as their size. Showing the size of the arguments to decrease for
each recursive call gives a termination proof of the program, which is however
rather weak since it can only yield quite small ordinals. In the sixties, Tait
invented a new method for showing cut elimination of natural deduction, based
on a predicate over the set of terms, such that the membership of an expression
to the predicate implied the strong normalization property for that expression.
The predicate being defined by induction on types, or even as a fixpoint, this
method could yield much larger ordinals. Later generalized by Girard under the
name of reducibility or computability candidates, it showed very effective in
proving the strong normalization property of typed lambda-calculi..
Argument filterings and usable rules in higher-order rewrite systems
The static dependency pair method is a method for proving the termination of
higher-order rewrite systems a la Nipkow. It combines the dependency pair
method introduced for first-order rewrite systems with the notion of strong
computability introduced for typed lambda-calculi. Argument filterings and
usable rules are two important methods of the dependency pair framework used by
current state-of-the-art first-order automated termination provers. In this
paper, we extend the class of higher-order systems on which the static
dependency pair method can be applied. Then, we extend argument filterings and
usable rules to higher-order rewriting, hence providing the basis for a
powerful automated termination prover for higher-order rewrite systems
Computability Closure: Ten Years Later
The notion of computability closure has been introduced for proving the
termination of higher-order rewriting with first-order matching by Jean-Pierre
Jouannaud and Mitsuhiro Okada in a 1997 draft which later served as a basis for
the author's PhD. In this paper, we show how this notion can also be used for
dealing with beta-normalized rewriting with matching modulo beta-eta (on
patterns \`a la Miller), rewriting with matching modulo some equational theory,
and higher-order data types (types with constructors having functional
recursive arguments). Finally, we show how the computability closure can easily
be turned into a reduction ordering which, in the higher-order case, contains
Jean-Pierre Jouannaud and Albert Rubio's higher-order recursive path ordering
and, in the first-order case, is equal to the usual first-order recursive path
ordering
The computability path ordering: the end of a quest
In this paper, we first briefly survey automated termination proof methods
for higher-order calculi. We then concentrate on the higher-order recursive
path ordering, for which we provide an improved definition, the Computability
Path Ordering. This new definition appears indeed to capture the essence of
computability arguments \`a la Tait and Girard, therefore explaining the name
of the improved ordering.Comment: Dans CSL'08 (2008
Church-Rosser Properties of Normal Rewriting
We prove a general purpose abstract Church-Rosser result that captures most existing such results that rely on termination of computations. This is achieved by studying abstract normal rewriting in a way that allows to incorporate positions at the abstract level. New concrete Church-Rosser results are obtained, in particular for higher-order rewriting at higher types
Termination of rewrite relations on -terms based on Girard's notion of reducibility
In this paper, we show how to extend the notion of reducibility introduced by
Girard for proving the termination of -reduction in the polymorphic
-calculus, to prove the termination of various kinds of rewrite
relations on -terms, including rewriting modulo some equational theory
and rewriting with matching modulo , by using the notion of
computability closure. This provides a powerful termination criterion for
various higher-order rewriting frameworks, including Klop's Combinatory
Reductions Systems with simple types and Nipkow's Higher-order Rewrite Systems
Normal Higher-Order Termination
International audienceWe extend the termination proof methods based on reduction orderings to higher-order rewriting systems based on higher-order pattern matching. We accommodate, on the one hand, a weakly polymorphic, algebraic extension of Church's simply typed λ-calculus, and on the other hand, any use of eta, as a reduction, as an expansion or as an equation. The user's rules may be of any type in this type system, either a base, functional, or weakly polymorphic type
Proof Theory at Work: Complexity Analysis of Term Rewrite Systems
This thesis is concerned with investigations into the "complexity of term
rewriting systems". Moreover the majority of the presented work deals with the
"automation" of such a complexity analysis. The aim of this introduction is to
present the main ideas in an easily accessible fashion to make the result
presented accessible to the general public. Necessarily some technical points
are stated in an over-simplified way.Comment: Cumulative Habilitation Thesis, submitted to the University of
Innsbruc
Scheme-based theorem discovery and concept invention
In this thesis we describe an approach to automatically invent/explore new mathematical
theories, with the goal of producing results comparable to those produced by humans,
as represented, for example, in the libraries of the Isabelle proof assistant. Our
approach is based on ‘schemes’, which are formulae in higher-order logic. We show
that it is possible to automate the instantiation process of schemes to generate conjectures
and definitions. We also show how the new definitions and the lemmata discovered
during the exploration of a theory can be used, not only to help with the proof
obligations during the exploration, but also to reduce redundancies inherent in most
theory-formation systems. We exploit associative-commutative (AC) operators using
ordered rewriting to avoid AC variations of the same instantiation. We implemented
our ideas in an automated tool, called IsaScheme, which employs Knuth-Bendix completion
and recent automatic inductive proof tools. We have evaluated our system in a
theory of natural numbers and a theory of lists