
En informática teórica , en particular en el razonamiento automatizado sobre ecuaciones formales, se utilizan órdenes 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 demostrado ser útiles en 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 usar el conjunto de reglas { x +0 → x , 0+ x → x , x *0 → 0, 0* x → 0, x *1 → x , 1* x → x }. 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 propiamente más corto que el término s "; aplicar cualquier regla del conjunto siempre acortará el término de forma adecuada.
Por el contrario, para establecer la terminación de la "distribución" utilizando la regla x *( y + z ) → x * y + x * z , se necesitará un orden de reducción más elaborado, ya que esta regla puede aumentar considerablemente el tamaño del término debido a la duplicación de x . La teoría de los órdenes de reescritura tiene como objetivo ayudar a proporcionar un orden apropiado en tales casos.
Definiciones formales
Formalmente, una relación binaria (→) en el conjunto de términos se denomina relación de reescritura si es cerrada bajo incrustación contextual y bajo instanciación ; formalmente: si l → r implica u [ l σ ] p → u [ r σ] p para todos los términos l , r , u , cada camino p de u , y cada sustitución σ. Si (→) es además irreflexiva y transitiva , entonces se denomina orden de reescritura , [ 1 ] o preorden de reescritura . Si esta última (→) es además bien fundada , 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érminos se denomina orden de simplificación . [ 4 ]
Propiedades
- La recíproca , el cierre simétrico , el cierre reflexivo y el cierre transitivo de una relación de reescritura es de nuevo una relación de reescritura, al igual que la unión y la intersección de dos relaciones de reescritura. [ 1 ]
- Lo contrario de una orden de reescritura es, de nuevo, una orden de reescritura.
- Si bien existen órdenes de reescritura que son totales en el conjunto de términos básicos ("total básico" para abreviar), ninguna orden de reescritura puede ser total en el conjunto de todos los términos . [ nota 3 ] [ 5 ]
- Un sistema de reescritura de términos { l 1 ::= r 1 ,..., l n ::= r n , ...} es terminante si sus reglas son un subconjunto de un ordenamiento de reducción. [ nota 4 ] [ 2 ]
- Por el contrario, para todo sistema de reescritura de términos terminante, el cierre transitivo de (::=) es un orden de reducción, [ 2 ] que, sin embargo, no tiene por qué ser extensible a uno fundamental-total. Por ejemplo, el sistema de reescritura de términos fundamental { f ( a )::= f ( b ), g ( b )::= g ( a ) } es terminante, pero se puede demostrar que lo es usando un orden de reducción solo si las constantes a y b son incomparables. [ nota 5 ] [ 6 ]
- Un ordenamiento de reescritura fundamental y bien fundamentado [ nota 6 ] contiene necesariamente la relación de subtérminos adecuada en los términos fundamentales. [ nota 7 ]
- Por el contrario, un ordenamiento de reescritura que contiene la relación de subtérmino [ nota 8 ] está necesariamente bien fundamentado cuando el conjunto de símbolos de función es finito. [ 5 ] [ nota 9 ]
- Un sistema de reescritura de términos finitos { l 1 ::= r 1 ,..., l n ::= r n , ...} es terminante si sus reglas son un subconjunto de la parte estricta de un orden de simplificación. [ 4 ] [ 8 ]
Notas
- ↑ 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 dominio no vacío).
- ↑ excepto que todos los x i son iguales para todo i más allá de algún n , para una relación reflexiva
- ↑ Dado que x < y implica y < x , puesto que este último es una instancia del primero, para las variables x , y .
- ↑ 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.
- ↑ Dado que, por ejemplo, a > b implicaba g ( a )> g ( b ) , lo que significa que la segunda regla de reescritura no era decreciente.
- ↑ es decir, un ordenamiento de reducción total fundamental
- ↑ De lo 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 ]
- ↑ es decir, una ordenación de simplificación
- ↑ La demostración 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). «Sistemas de reescritura». En Jan van Leeuwen (ed.). Modelos formales y semántica . Manual de informática teórica. Vol. B. Elsevier. pp. 243–320 . doi : 10.1016/B978-0-444-88074-1.50011-1 . ISBN 9780444880741.
- ^ Dershowitz , Jouannaud (1990), sección 2.1, p.251
- 1 2 3 Dershowitz, Jouannaud (1990), sección 5.1, p.270
- ^ Dershowitz, Jouannaud (1990), sección 2.2, p.252
- ^ Dershowitz , Jouannaud (1990), sección 5.2, p.274.
- 1 2 Dershowitz, Jouannaud (1990), sección 5.1, p.272
- 1 2 Dershowitz, Jouannaud (1990), sección 5.1, p.271
- ↑ David A. Plaisted (1978). Un ordenamiento definido recursivamente para probar la terminación de sistemas de reescritura de términos (Informe técnico). Univ. de Illinois, Dept. de Ciencias de la Computación, pág. 52. R-78-943.
- ↑ 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ág. 287; los conceptos se denominan de forma ligeramente diferente.
- Sistemas de reescritura
- teoría del orden