stringtranslate.com

Orden de reescritura

Reescribiendo s en t mediante una regla l ::= r . Si l y r están relacionados mediante una relación de reescritura , también lo están s y t . Un ordenamiento de simplificación siempre relaciona l y s , y de manera similar r y t .

En la informática teórica , en particular en el razonamiento automático sobre ecuaciones formales, se utilizan ordenamientos de reducción para evitar bucles infinitos . Los órdenes de reescritura y, a su vez, las relaciones de reescritura son generalizaciones de este concepto que han resultado útiles en las investigaciones teóricas.

Motivación

Intuitivamente, un orden de reducción R relaciona dos términos s y t si t es propiamente "más simple" que s en algún sentido.

Por ejemplo, la simplificación de términos puede ser parte de un programa de álgebra computacional y puede estar usando el conjunto de reglas { x + 0 → x , 0+ xx , x * 0 → 0, 0* x → 0, x * 1 → x , 1* xx }. Para demostrar la imposibilidad de bucles infinitos al simplificar un término usando estas reglas, se puede usar el orden de reducción definido por " sRt si el término t es apropiadamente más corto que el término s "; aplicar cualquier regla del conjunto siempre acortará apropiadamente el término.

Por el contrario, para establecer la terminación de la "distribución" utilizando la regla x * ( y + z ) → x * y + x * z , será necesario un orden de reducción más elaborado, ya que esta regla puede hacer que el tamaño del término se dispare debido a la duplicación de x . La teoría de los órdenes de reescritura apunta a ayudar a proporcionar un orden apropiado en tales casos.

Definiciones formales

Formalmente, una relación binaria (→) sobre el conjunto de términos se denomina relación de reescritura si está cerrada bajo incrustación contextual y bajo instanciación ; formalmente: si lr implica u [ l σ ] pu [ r σ] p para todos los términos l , r , u , cada camino p de u , y cada sustitución σ. Si (→) es también irreflexiva y transitiva , entonces se denomina orden de reescritura , [1] o preorden de reescritura . Si este último (→) está además bien fundado , se denomina orden de reducción , [2] o preorden de reducción . Dada una relación binaria R , su cierre de reescritura es la relación de reescritura más pequeña que contiene a R . [3] Una relación de reescritura transitiva y reflexiva que contiene el orden de subtérmino se denomina orden de simplificación . [4]

Propiedades

Notas

  1. ^ Las entradas entre paréntesis indican propiedades inferidas que no forman parte de la definición. Por ejemplo, una relación irreflexiva no puede ser reflexiva (en un conjunto de dominios no vacíos).
  2. ^ excepto que todos los x i son iguales para todos los i más allá de algún n , para una relación reflexiva
  3. ^ Dado que x < y implica y < x , ya que el último es una instancia del primero, para las variables x , y .
  4. ^ es decir, si l i > r i para todo i , donde (>) es un ordenamiento de reducción; el sistema no necesita tener un número finito de reglas
  5. ^ Dado que, por ejemplo, a > b implicaba g ( a )> g ( b ) , lo que significa que la segunda regla de reescritura no era decreciente.
  6. ^ es decir, un orden de reducción total del terreno
  7. ^ En caso contrario, t | p > t para algún término t y posición p , lo que implica una cadena descendente infinita t > t [ t ] p > t [ t [ t ] p ] p > ... [6] [7]
  8. ^ es decir, una ordenación de simplificación
  9. ^ La prueba de esta propiedad se basa en el lema de Higman o, más generalmente, en el teorema del árbol de Kruskal .

Referencias

Nachum Dershowitz ; Jean-Pierre Jouannaud (1990). "Rewrite Systems". En Jan van Leeuwen (ed.). Modelos formales y semántica . Manual de informática teórica. Vol. B. Elsevier. págs. 243–320. doi :10.1016/B978-0-444-88074-1.50011-1. ISBN 9780444880741.

  1. ^ ab Dershowitz, Jouannaud (1990), sección 2.1, p.251
  2. ^ abc Dershowitz, Jouannaud (1990), sección 5.1, p.270
  3. ^ Dershowitz, Jouannaud (1990), sección 2.2, p.252
  4. ^ ab Dershowitz, Jouannaud (1990), sección 5.2, p.274
  5. ^ ab Dershowitz, Jouannaud (1990), sección 5.1, p.272
  6. ^ ab Dershowitz, Jouannaud (1990), sección 5.1, p.271
  7. ^ David A. Plaisted (1978). Un ordenamiento definido recursivamente para demostrar la terminación de sistemas de reescritura de términos (informe técnico). Univ. de Illinois, Departamento de Ciencias Computacionales, pág. 52. R-78-943.
  8. ^ N. Dershowitz (1982). "Ordenamientos para sistemas de reescritura de términos" (PDF) . Theoret. Comput. Sci . 17 (3): 279–301. doi :10.1016/0304-3975(82)90026-3. S2CID  6070052.Aquí: p.287; las nociones tienen nombres ligeramente diferentes.