Results 1 
8 of
8
Variant Narrowing and Equational Unification
 In Proc. of WRLA 2008, ENTCS
, 2009
"... Abstract. Narrowing is a wellknown complete procedure for equational Eunification 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 Bcoherent rewrite rules. However, when B ̸ = ∅, ef ..."
Abstract

Cited by 10 (8 self)
 Add to MetaCart
Abstract. Narrowing is a wellknown complete procedure for equational Eunification 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 Bcoherent rewrite rules. However, when B ̸ = ∅, efficient narrowing strategies such as basic narrowing easily fail to be complete and cannot be used. This poses two challenges to narrowingbased equational unification: (i) finding efficient narrowing strategies that are complete modulo B under mild assumptions on B, and (ii) finding sufficient conditions under which such narrowing strategies yield finitary Eunification algorithms. Inspired by Comon and Delaune’s notion of Evariant 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 Eunification algorithm when E has the finite variant property. We furthermore identify a class of equational theories for which the finite bound ensuring the finite variant property can be effectively computed by a generic algorithm. We also discuss applications to the formal analysis of cryptographic protocols modulo the algebraic properties of the underlying cryptographic functions. 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 ∪Axunification algorithm. However, except for the hopelessly inefficient case of full narrowing, nothing seems to be known about effective narrowin ..."
Abstract

Cited by 6 (3 self)
 Add to MetaCart
(Show Context)
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 ∪Axunification 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 ∪Axvariants of a term that we call folding variant narrowing. This strategy is complete, both for computing E ∪Axunifiers 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 ∪Axvariants of a term may be just as important as computing E∪Axunifiers in recent applications of folding variant narrowing such as termination methods modulo axioms, and checking confluence and coherence of rules modulo axioms. 1
Complete symbolic reachability analysis using backandforth narrowing
 In International Conference on Algebra and Coalgebra in Computer Science
, 2005
"... Abstract. We propose a method called backandforth 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 semidecision procedure in the sense that it is guaranteed to find a solution when one exis ..."
Abstract

Cited by 4 (2 self)
 Add to MetaCart
(Show Context)
Abstract. We propose a method called backandforth 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 semidecision 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 extravariables in the righthand side. Such generality is often essential while modeling concurrent systems or axiomatizing inference systems as rewrite rules, and in such applications backandforth 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 system meets its specification. However, verification of software systems is not easy: such sys ..."
Abstract

Cited by 3 (1 self)
 Add to MetaCart
(Show Context)
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 system 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 practical 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
(Show Context)
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 leftlinear 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 leftlinear and constructorbased. We also establish the soundness and completeness of this generalization. 1
Narrowing for NonDeterminism with CallTime Choice Semantics
, 2007
"... In a recent work we have proposed letrewriting, a simple onestep relation close to ordinary term rewriting but able, via local bindings, to express sharing of computed values. In this way, letrewriting reflects the calltime choice semantics for nondeterminism adopted by modern functional logi ..."
Abstract

Cited by 1 (1 self)
 Add to MetaCart
In a recent work we have proposed letrewriting, a simple onestep relation close to ordinary term rewriting but able, via local bindings, to express sharing of computed values. In this way, letrewriting reflects the calltime choice semantics for nondeterminism adopted by modern functional logic languages, where programs are rewrite systems possibly nonconfluent and nonterminating. Equivalence with CRWL, a well known semantic framework for functional logic programming, was also proved. In this paper we extend that work providing a notion of letnarrowing which is adequate for calltime choice as proved by a lifting lemma for letrewriting similar to Hullot’s lifting lemma for ordinary rewriting and narrowing.
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
Functional Logic Programming in Maude?
"... Abstract. Functional logic programming languages combine the most important features of functional programming languages and logic programming languages. Functional logic programming applied to the Maude specification language would replace the functional viewpoint by an equational viewpoint while ..."
Abstract
 Add to MetaCart
(Show Context)
Abstract. Functional logic programming languages combine the most important features of functional programming languages and logic programming languages. Functional logic programming applied to the Maude specification language would replace the functional viewpoint by an equational viewpoint while retaining the logic features. This paper tries to bridge the gap between functional logic languages and the current implementation of narrowing as symbolic reachability in Maude. It illustrates how many features available in modern functional logic languages are easily definable and simulated in Maude but also shows how Maude goes beyond standard practices in the functional logic area by using, e.g. equational properties such as associativity and commutativity or ordersorted information. As a practical application we use the Missionaries and Cannibals equational logic program given by Goguen and Meseguer for Eqlog in the eighties. 1