638 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
Confluence of Layered Rewrite Systems
We investigate a new, Turing-complete class of layered systems, whose linearized lefthand sides of rules can only be overlapped at the root position. Layered systems define a natural notion of rank for terms: the maximal number of redexes along a path from the root to a leaf. Overlappings are allowed in finite or infinite trees. Rules may be non-terminating, non-left-linear, or non-right- linear. Using a novel unification technique, cyclic unification, we show that rank non-increasing layered systems are confluent provided their cyclic critical pairs have cyclic-joinable decreasing diagrams
Automated Confluence Proof by Decreasing Diagrams based on Rule-Labelling
Decreasing diagrams technique (van Oostrom, 1994) is a technique that
can be widely applied to prove confluence of rewrite systems. To
directly apply the decreasing diagrams technique to prove confluence
of rewrite systems, rule-labelling heuristic has been proposed by van
Oostrom (2008). We show how constraints for ensuring confluence of
term rewriting systems constructed based on the rule-labelling
heuristic are encoded as linear arithmetic constraints suitable for
solving the satisfiability of them by external SMT solvers. We point
out an additional constraint omitted in (van Oostrom, 2008) that is
needed to guarantee the soundness of confluence proofs based on the
rule-labelling heuristic extended to deal with non-right-linear rules.
We also present several extensions of the rule-labelling heuristic by
which the applicability of the technique is enlarged
Formalising Confluence in PVS
Confluence is a critical property of computational systems which is related
with determinism and non ambiguity and thus with other relevant computational
attributes of functional specifications and rewriting system as termination and
completion. Several criteria have been explored that guarantee confluence and
their formalisations provide further interesting information. This work
discusses topics and presents personal positions and views related with the
formalisation of confluence properties in the Prototype Verification System PVS
developed at our research group.Comment: In Proceedings DCM 2015, arXiv:1603.0053
Improving Automatic Confluence Analysis of Rewrite Systems by Redundant Rules
We describe how to utilize redundant rewrite rules, i.e., rules that can be simulated by other rules, when (dis)proving confluence of term rewrite systems. We demonstrate how automatic confluence provers benefit from the addition as well as the removal of redundant rules. Due to their simplicity, our transformations were easy to formalize in a proof assistant and are thus amenable to certification. Experimental results show the surprising gain in power
The Role of Term Symmetry in E-Unification and E-Completion
A major portion of the work and time involved in completing an incomplete set of reductions using an E-completion procedure such as the one described by Knuth and Bendix [070] or its extension to associative-commutative equational theories as described by Peterson and Stickel [PS81] is spent calculating critical pairs and subsequently testing them for coherence. A pruning technique which removes from consideration those critical pairs that represent redundant or superfluous information, either before, during, or after their calculation, can therefore make a marked difference in the run time and efficiency of an E-completion procedure to which it is applied.
The exploitation of term symmetry is one such pruning technique. The calculation of redundant critical pairs can be avoided by detecting the term symmetries that can occur between the subterms of the left-hand side of the major reduction being used, and later between the unifiers of these subterms with the left-hand side of the minor reduction. After calculation, and even after reduction to normal form, the observation of term symmetries can lead to significant savings.
The results in this paper were achieved through the development and use of a flexible E-unification algorithm which is currently written to process pairs of terms which may contain any combination of Null-E, C (Commutative), AC (Associative-Commutative) and ACI (Associative-Commutative with Identity) operators. One characteristic of this E-unification algorithm that we have not observed in any other to date is the ability to process a pair of terms which have different ACI top-level operators. In addition, the algorithm is a modular design which is a variation of the Yelick model [Ye85], and is easily extended to process terms containing operators of additional equational theories by simply plugging in a unification module for the new theory
- âŠ