Impacto
Downloads
Downloads per month over past year
López Fraguas, Francisco J. and Martín Martín, Enrique and Rodríguez Hortalá, Juan and Sánchez Hernández, Jaime (2014) Rewriting and narrowing for constructor systems with calltime choice semantics. Theory and Practice of Logic Programming, March (14.2). pp. 165213. ISSN 14710684

PDF
752kB 
Abstract
Nonconfluent and nonterminating constructorbased term rewrite systems are useful for the purpose of specification and programming. In particular, existing functional logic languages use such kind of rewrite systems to define possibly nonstrict nondeterministic functions. The semantics adopted for nondeterminism is calltime choice, whose combination with nonstrictness is a non trivial issue, addressed years ago from a semantic point of view with the Constructorbased Rewriting Logic (CRWL), a wellknown semantic framework commonly accepted as suitable semantic basis of modern functional logic languages. A drawback of CRWL is that it does not come with a proper notion of onestep reduction, which would be very useful to understand and reason about how computations proceed. In this paper we develop thoroughly the theory for the first order version of letrewriting, a simple reduction notion close to that of classical term rewriting, but extended with a letbinding construction to adequately express the combination of calltime choice with nonstrict semantics. Letrewriting can be seen as a particular textual presentation of term graph rewriting. We investigate the properties of letrewriting, most remarkably their equivalence with respect to a conservative extension of the CRWLsemantics coping with letbindings, and we show by some case studies that having two interchangeable formal views (reduction/semantics) of the same language is a powerful reasoning tool. After that, we provide a notion of letnarrowing which is adequate for calltime choice as proved by soundness and completeness results of letnarrowing with respect to letre writing. Moreover, we relate those letrewriting and letnarrowing relations (and hence CRWL) with ordinary term rewriting and narrowing, providing in particular soundness and completeness of letrewriting with respect to term rewriting for a class of programs which are deterministic in a semantic sense.
Item Type:  Article 

Uncontrolled Keywords:  Term rewriting systems, constructorbased rewriting logic, narrowing, nondeterminism, calltime choice semantics, sharing, local bindings 
Subjects:  Sciences > Computer science > Programming languages (Electronic computers) Sciences > Computer science > Expert systems (Computer science) 
ID Code:  36061 
Deposited On:  03 Mar 2016 11:39 
Last Modified:  01 Jun 2016 23:01 
Origin of downloads
Repository Staff Only: item control page