Call by need computations in orthogonal term rewriting systems

The foundation of term rewriting is equational logic but for the sake of efficiency, the equations are oriented and become the rules of a term rewriting system. Term rewriting form a model of computation on algebraic data structures (terms). Term rewriting systems play an important role in various d...

Full description

Bibliographic Details
Main Author: Durand, Irène
Language:FRE
Published: Université Sciences et Technologies - Bordeaux I 2005
Subjects:
Online Access:http://tel.archives-ouvertes.fr/tel-00599195
http://tel.archives-ouvertes.fr/docs/00/59/91/95/PDF/hdr.pdf
id ndltd-CCSD-oai-tel.archives-ouvertes.fr-tel-00599195
record_format oai_dc
spelling ndltd-CCSD-oai-tel.archives-ouvertes.fr-tel-005991952013-01-07T16:54:34Z http://tel.archives-ouvertes.fr/tel-00599195 http://tel.archives-ouvertes.fr/docs/00/59/91/95/PDF/hdr.pdf Call by need computations in orthogonal term rewriting systems Durand, Irène [INFO:INFO_OH] Computer Science/Other Réécriture de termes Stratégies par appel par nécessité The foundation of term rewriting is equational logic but for the sake of efficiency, the equations are oriented and become the rules of a term rewriting system. Term rewriting form a model of computation on algebraic data structures (terms). Term rewriting systems play an important role in various domains of computer science such as automated theorem proving, functional programming, code generation, problem formalization (security of cryptographic protocols). Rewriting starts with a ground term, and consists of repeatedly replacing a redex (an instance of a left-hand side) by its contractum (the corresponding right-handside after applying the substitution). Rewriting may eventually yield a term in normal form which is a term containing no redex. Natural questions in term rewriting are: * is the system terminating" (i.e. there are no infinite rewrite sequences)? * "is the system confluent" (if a term rewrites independently to two terms t1 and t2 , there exists a term s such that both t1 and t2 rewrite to s)? We are interested in systems which can be used as programs so we want to allow non-terminating computations. Confluence implies unicity of normal forms but does not imply termination. Confluent systems form a good framework for deterministic programming. They have the power of Turing machines. However confluence is not a decidable property for term rewriting systems. Orthogonal systems (i.e. linear and non-overlapping left-hand sides) which are always confluent form the framework of all this work, although some results may apply to the more general class of left-linear systems (linear left-hand sides). The first point we want to address is "how to compute the normal form?" and not end up in an infinite computation when the normal form exists. The second is "how to do that efficiently?". The following theorem of Huet and Levy [HL91] forms the basis of all result on optimal normalizing rewrite strategies for orthogonal term rewrite systems: "Every reducible term contains a needed redex, i.e., a redex which is contracted in every rewrite sequence to normal form, and repeated contraction of needed redexes results in a normal form, if the term under consideration has a normal form". Unfortunately, needed redexes are not computable in general. Hence, in order to obtain a computable optimal rewrite strategy, we are left to find (1) decidable approximations of neededness and (2) decidable properties of rewrite systems which ensure that every reducible term has a needed redex identi-fied by (1). Starting with the seminal work of Huet and Levy [HL91] on strong sequentiality, these issues have been extensively investigated in the literature [Com00, Jac96b, JS95, KM91, NST95, Oya93, Toy92]. In all these works Huet and Levy's notions of index, omega-reduction, and sequentiality figure prominently. We present here our contributions to this domain. 2005-07-01 FRE habilitation ࠤiriger des recherches Université Sciences et Technologies - Bordeaux I
collection NDLTD
language FRE
sources NDLTD
topic [INFO:INFO_OH] Computer Science/Other
Réécriture de termes
Stratégies par appel par nécessité
spellingShingle [INFO:INFO_OH] Computer Science/Other
Réécriture de termes
Stratégies par appel par nécessité
Durand, Irène
Call by need computations in orthogonal term rewriting systems
description The foundation of term rewriting is equational logic but for the sake of efficiency, the equations are oriented and become the rules of a term rewriting system. Term rewriting form a model of computation on algebraic data structures (terms). Term rewriting systems play an important role in various domains of computer science such as automated theorem proving, functional programming, code generation, problem formalization (security of cryptographic protocols). Rewriting starts with a ground term, and consists of repeatedly replacing a redex (an instance of a left-hand side) by its contractum (the corresponding right-handside after applying the substitution). Rewriting may eventually yield a term in normal form which is a term containing no redex. Natural questions in term rewriting are: * is the system terminating" (i.e. there are no infinite rewrite sequences)? * "is the system confluent" (if a term rewrites independently to two terms t1 and t2 , there exists a term s such that both t1 and t2 rewrite to s)? We are interested in systems which can be used as programs so we want to allow non-terminating computations. Confluence implies unicity of normal forms but does not imply termination. Confluent systems form a good framework for deterministic programming. They have the power of Turing machines. However confluence is not a decidable property for term rewriting systems. Orthogonal systems (i.e. linear and non-overlapping left-hand sides) which are always confluent form the framework of all this work, although some results may apply to the more general class of left-linear systems (linear left-hand sides). The first point we want to address is "how to compute the normal form?" and not end up in an infinite computation when the normal form exists. The second is "how to do that efficiently?". The following theorem of Huet and Levy [HL91] forms the basis of all result on optimal normalizing rewrite strategies for orthogonal term rewrite systems: "Every reducible term contains a needed redex, i.e., a redex which is contracted in every rewrite sequence to normal form, and repeated contraction of needed redexes results in a normal form, if the term under consideration has a normal form". Unfortunately, needed redexes are not computable in general. Hence, in order to obtain a computable optimal rewrite strategy, we are left to find (1) decidable approximations of neededness and (2) decidable properties of rewrite systems which ensure that every reducible term has a needed redex identi-fied by (1). Starting with the seminal work of Huet and Levy [HL91] on strong sequentiality, these issues have been extensively investigated in the literature [Com00, Jac96b, JS95, KM91, NST95, Oya93, Toy92]. In all these works Huet and Levy's notions of index, omega-reduction, and sequentiality figure prominently. We present here our contributions to this domain.
author Durand, Irène
author_facet Durand, Irène
author_sort Durand, Irène
title Call by need computations in orthogonal term rewriting systems
title_short Call by need computations in orthogonal term rewriting systems
title_full Call by need computations in orthogonal term rewriting systems
title_fullStr Call by need computations in orthogonal term rewriting systems
title_full_unstemmed Call by need computations in orthogonal term rewriting systems
title_sort call by need computations in orthogonal term rewriting systems
publisher Université Sciences et Technologies - Bordeaux I
publishDate 2005
url http://tel.archives-ouvertes.fr/tel-00599195
http://tel.archives-ouvertes.fr/docs/00/59/91/95/PDF/hdr.pdf
work_keys_str_mv AT durandirene callbyneedcomputationsinorthogonaltermrewritingsystems
_version_ 1716394925134708736