80 research outputs found
A Reduction-Preserving Completion for Proving Confluence of Non-Terminating Term Rewriting Systems
We give a method to prove confluence of term rewriting systems that contain
non-terminating rewrite rules such as commutativity and associativity. Usually,
confluence of term rewriting systems containing such rules is proved by
treating them as equational term rewriting systems and considering E-critical
pairs and/or termination modulo E. In contrast, our method is based solely on
usual critical pairs and it also (partially) works even if the system is not
terminating modulo E. We first present confluence criteria for term rewriting
systems whose rewrite rules can be partitioned into a terminating part and a
possibly non-terminating part. We then give a reduction-preserving completion
procedure so that the applicability of the criteria is enhanced. In contrast to
the well-known Knuth-Bendix completion procedure which preserves the
equivalence relation of the system, our completion procedure preserves the
reduction relation of the system, by which confluence of the original system is
inferred from that of the completed system
Labelings for Decreasing Diagrams
This article is concerned with automating the decreasing diagrams technique
of van Oostrom for establishing confluence of term rewrite systems. We study
abstract criteria that allow to lexicographically combine labelings to show
local diagrams decreasing. This approach has two immediate benefits. First, it
allows to use labelings for linear rewrite systems also for left-linear ones,
provided some mild conditions are satisfied. Second, it admits an incremental
method for proving confluence which subsumes recent developments in automating
decreasing diagrams. The techniques proposed in the article have been
implemented and experimental results demonstrate how, e.g., the rule labeling
benefits from our contributions
Decreasing Diagrams and Relative Termination
In this paper we use the decreasing diagrams technique to show that a
left-linear term rewrite system R is confluent if all its critical pairs are
joinable and the critical pair steps are relatively terminating with respect to
R. We further show how to encode the rule-labeling heuristic for decreasing
diagrams as a satisfiability problem. Experimental data for both methods are
presented.Comment: v3: missing references adde
CERTIFYING CONFLUENCE PROOFS VIA RELATIVE TERMINATION AND RULE LABELING
The rule labeling heuristic aims to establish confluence of (left-)linear
term rewrite systems via decreasing diagrams. We present a formalization of a
confluence criterion based on the interplay of relative termination and the
rule labeling in the theorem prover Isabelle. Moreover, we report on the
integration of this result into the certifier CeTA, facilitating the checking
of confluence certificates based on decreasing diagrams. The power of the
method is illustrated by an experimental evaluation on a (standard) collection
of confluence problems
Deciding Confluence and Normal Form Properties of Ground Term Rewrite Systems Efficiently
It is known that the first-order theory of rewriting is decidable for ground
term rewrite systems, but the general technique uses tree automata and often
takes exponential time. For many properties, including confluence (CR),
uniqueness of normal forms with respect to reductions (UNR) and with respect to
conversions (UNC), polynomial time decision procedures are known for ground
term rewrite systems. However, this is not the case for the normal form
property (NFP). In this work, we present a cubic time algorithm for NFP, an
almost cubic time algorithm for UNR, and an almost linear time algorithm for
UNC, improving previous bounds. We also present a cubic time algorithm for CR
On Complexity Bounds and Confluence of Parallel Term Rewriting
We revisit parallel-innermost term rewriting as a model of parallel
computation on inductive data structures and provide a corresponding notion of
runtime complexity parametric in the size of the start term. We propose
automatic techniques to derive both upper and lower bounds on parallel
complexity of rewriting that enable a direct reuse of existing techniques for
sequential complexity. Our approach to find lower bounds requires confluence of
the parallel-innermost rewrite relation, thus we also provide effective
sufficient criteria for proving confluence. The applicability and the precision
of the method are demonstrated by the relatively light effort in extending the
program analysis tool AProVE and by experiments on numerous benchmarks from the
literature.Comment: Under submission to Fundamenta Informaticae. arXiv admin note:
substantial text overlap with arXiv:2208.0100
Termination of Narrowing: Automated Proofs and Modularity Properties
En 1936 Alan Turing demostro que el halting problem, esto es, el problema de decidir
si un programa termina o no, es un problema indecidible para la inmensa mayoria de
los lenguajes de programacion. A pesar de ello, la terminacion es un problema tan
relevante que en las ultimas decadas un gran numero de tecnicas han sido desarrolladas
para demostrar la terminacion de forma automatica de la maxima cantidad posible de
programas. Los sistemas de reescritura de terminos proporcionan un marco teorico
abstracto perfecto para el estudio de la terminacion de programas. En este marco, la
evaluaci on de un t ermino consiste en la aplicacion no determinista de un conjunto de
reglas de reescritura.
El estrechamiento (narrowing) de terminos es una generalizacion de la reescritura
que proporciona un mecanismo de razonamiento automatico. Por ejemplo, dado un
conjunto de reglas que denan la suma y la multiplicacion, la reescritura permite calcular
expresiones aritmeticas, mientras que el estrechamiento permite resolver ecuaciones
con variables. Esta tesis constituye el primer estudio en profundidad de las
propiedades de terminacion del estrechamiento. Las contribuciones son las siguientes.
En primer lugar, se identican clases de sistemas en las que el estrechamiento tiene
un comportamiento bueno, en el sentido de que siempre termina. Muchos metodos
de razonamiento automatico, como el analisis de la semantica de lenguajes de programaci
on mediante operadores de punto jo, se benefician de esta caracterizacion.
En segundo lugar, se introduce un metodo automatico, basado en el marco teorico
de pares de dependencia, para demostrar la terminacion del estrechamiento en un
sistema particular. Nuestro metodo es, por primera vez, aplicable a cualquier clase
de sistemas.
En tercer lugar, se propone un nuevo metodo para estudiar la terminacion del
estrechamiento desde un termino particular, permitiendo el analisis de la terminacion
de lenguajes de programacion. El nuevo metodo generaliza losIborra López, J. (2010). Termination of Narrowing: Automated Proofs and Modularity Properties [Tesis doctoral no publicada]. Universitat Politècnica de València. https://doi.org/10.4995/Thesis/10251/19251Palanci
- …