Results 1 -
6 of
6
Complete symbolic reachability analysis using back-and-forth narrowing
- In International Conference on Algebra and Coalgebra in Computer Science
, 2005
"... Abstract. We propose a method called back-and-forth narrowing for solving reachability goals of the form ( ∃ − → x).t1 → ∗ t ′ 1 ∧... ∧ tn → ∗ t ′ n in general term rewrite systems. The method is a complete semi-decision procedure in the sense that it is guaranteed to find a solution when one exis ..."
Abstract
-
Cited by 4 (2 self)
- Add to MetaCart
Abstract. We propose a method called back-and-forth narrowing for solving reachability goals of the form ( ∃ − → x).t1 → ∗ t ′ 1 ∧... ∧ tn → ∗ t ′ n in general term rewrite systems. The method is a complete semi-decision procedure in the sense that it is guaranteed to find a solution when one exists, but in general it may not terminate when there are no solutions. The completeness result is very general in that it makes no assumptions about the given term rewrite system. Specifically, the rewrite rules need not be linear, confluent, or terminating, and can even have extra-variables in the righthand side. Such generality is often essential while modeling concurrent systems or axiomatizing inference systems as rewrite rules, and in such applications back-and-forth narrowing can be used as a sound and complete technique for symbolic reachability analysis or as a deductive procedure for proving existential formulae. 1
Learning to Verify Systems
, 2006
"... Making high quality and reliable software systems remains a difficult problem. One approach to address this problem is automated verification which attempts to demonstrate algorithmically that a software sys-tem meets its specification. However, verification of software systems is not easy: such sys ..."
Abstract
-
Cited by 3 (1 self)
- Add to MetaCart
Making high quality and reliable software systems remains a difficult problem. One approach to address this problem is automated verification which attempts to demonstrate algorithmically that a software sys-tem meets its specification. However, verification of software systems is not easy: such systems are often modeled using abstractions of infinite structures such as unbounded integers, infinite memory for allocation, unbounded space for call stack, unrestricted queue sizes and so on. It can be shown that for most classes of such systems, the verification problem is actually undecidable (there exists no algorithm which will always give the correct answer for arbitrary inputs). In spite of this negative theoretical result, techniques have been developed which are successful on some practical examples although they are not guaranteed to always work. This dissertation is in a similar spirit and develops a new paradigm for automated verification of large or infinite state systems. We observe that even if the state space of a system is infinite, for practi-cal examples, the set of reachable states (or other fixpoints needed for verification) is often expressible in a simple representation. Based on this observation, we propose an entirely new approach to verification: the idea is to use techniques from computational learning theory to identify the reachable states (or other fixpoints) and then verify the property of interest. To use learning techniques, we solve key problems of
Natural rewriting for general term rewriting systems
- In Proc. of LOPSTR’04
, 2004
"... Abstract. We address the problem of an efficient rewriting strategy for general term rewriting systems. Several strategies have been proposed over the last two decades for rewriting, the most efficient of all being the natural rewriting strategy [9]. All the strategies so far, including natural rewr ..."
Abstract
-
Cited by 2 (2 self)
- Add to MetaCart
Abstract. We address the problem of an efficient rewriting strategy for general term rewriting systems. Several strategies have been proposed over the last two decades for rewriting, the most efficient of all being the natural rewriting strategy [9]. All the strategies so far, including natural rewriting, assume that the given term rewriting system is a left-linear constructor system. Although these restrictions are reasonable for some functional programming languages, they limit the expressive power of equational languages, and they preclude certain applications of rewriting to equational theorem proving and to languages combining equational and logic programming. In this paper, we propose a conservative generalization of natural rewriting that does not require the rules to be left-linear and constructor-based. We also establish the soundness and completeness of this generalization. 1
Folding variant narrowing and optimal variant termination
- In WRLA 2010, LNCS 6381:52–68
, 2010
"... Abstract. If a set of equations E∪Ax is such that E is confluent, terminating, and coherent modulo Ax, narrowing with E modulo Ax provides a complete E ∪Ax-unification algorithm. However, except for the hopelessly inefficient case of full narrowing, nothing seems to be known about effective narrowin ..."
Abstract
-
Cited by 1 (1 self)
- Add to MetaCart
Abstract. If a set of equations E∪Ax is such that E is confluent, terminating, and coherent modulo Ax, narrowing with E modulo Ax provides a complete E ∪Ax-unification algorithm. However, except for the hopelessly inefficient case of full narrowing, nothing seems to be known about effective narrowing strategies in the general modulo case beyond the quite depressing observation that basic narrowing is incomplete modulo AC. In this work we propose an effective strategy based on the idea of the E ∪Ax-variants of a term that we call folding variant narrowing. This strategy is complete, both for computing E ∪Ax-unifiers and for computing a minimal complete set of variants for any input term. And it is optimally variant terminating in the sense of terminating for an input term t iff t has a finite, complete set of variants. The applications of folding variant narrowing go beyond providing a complete E ∪ Axunification algorithm: computing the E ∪Ax-variants of a term may be just as important as computing E∪Ax-unifiers in recent applications of folding variant narrowing such as termination methods modulo axioms, and checking confluence and coherence of rules modulo axioms. 1
WRLA 2008 Variant Narrowing and Equational Unification
"... Narrowing is a well-known complete procedure for equational E-unification when E can be decomposed as a union E = ∆ ⊎ B with B a set of axioms for which a finitary unification algorithm exists, and ∆ a set of confluent, terminating, and B-coherent rewrite rules. However, when B ̸ = ∅, effective na ..."
Abstract
- Add to MetaCart
Narrowing is a well-known complete procedure for equational E-unification when E can be decomposed as a union E = ∆ ⊎ B with B a set of axioms for which a finitary unification algorithm exists, and ∆ a set of confluent, terminating, and B-coherent rewrite rules. However, when B ̸ = ∅, effective narrowing strategies such as basic narrowing easily fail to be complete and cannot be used. This poses two challenges to narrowing-based equational unification: (i) finding effective narrowing strategies that are complete modulo B under mild assumptions on B, and (ii) finding sufficient conditions under which such narrowing strategies yield finitary E-unification algorithms. Inspired by Comon and Delaune’s notion of E-variant for a term, we propose a new narrowing strategy called variant narrowing that has a search space potentially much smaller than full narrowing, is complete, and yields a finitary E-unification algorithm when E has the finite variant property. We also discuss applications to symbolic reachability analysis of concurrent systems specified as rewrite theories, and in particular to the formal analysis of cryptographic protocols modulo the algebraic properties of the underlying cryptographic functions.
A Note on Syntactic Annotations for Narrowing ∗
"... In this paper, we discuss syntactic annotations for narrowing and propose a uni ed model that exploits the synergy of combining previous frameworks. 1 ..."
Abstract
- Add to MetaCart
In this paper, we discuss syntactic annotations for narrowing and propose a uni ed model that exploits the synergy of combining previous frameworks. 1

