Articulo de referencia

Algoritmo de completación de Knuth-Bendix

El algoritmo de completación de Knuth-Bendix (llamado así por Donald Knuth y Peter Bendix [ 1 ] ) es un algoritmo de semidecisión [ 2 ] [ 3 ] para transformar un conjunto de ecu...

El algoritmo de completación de Knuth-Bendix (llamado así por Donald Knuth y Peter Bendix [ 1 ] ) es un algoritmo de semidecisión [ 2 ] [ 3 ] para transformar un conjunto de ecuaciones (sobre términos ) en un sistema de reescritura de términos confluente . Cuando el algoritmo tiene éxito, resuelve efectivamente el problema de palabras para el álgebra especificada .

El algoritmo de Buchberger para calcular bases de Gröbner es muy similar. Aunque se desarrolló de forma independiente, también puede considerarse una instanciación del algoritmo de Knuth-Bendix en la teoría de anillos de polinomios .

Introducción

Para un conjunto E de ecuaciones, su cierre deductivo ( E ) es el conjunto de todas las ecuaciones que se pueden derivar aplicando ecuaciones de E en cualquier orden. Formalmente, E se considera una relación binaria , ( E ) es su cierre de reescritura , y ( E ) es el cierre de equivalencia de ( E ). Para un conjunto R de reglas de reescritura, su cierre deductivo ( RR ) es el conjunto de todas las ecuaciones que se pueden confirmar aplicando reglas de R de izquierda a derecha a ambos lados hasta que sean literalmente iguales. Formalmente, R se considera nuevamente como una relación binaria, ( R ) es su cierre de reescritura, ( R ) es su converso y ( RR ) es la composición de relaciones de sus cierres transitivos reflexivos ( R y R ).

Por ejemplo, si E = {1⋅ x = x , x −1x = 1, ( xy )⋅ z = x ⋅( yz )} son los axiomas del grupo , la cadena de derivación

a −1 ⋅( ab ) E ( a −1a )⋅ b E 1⋅ b E b      

demuestra que a −1 ⋅( ab ) E b es un miembro del cierre deductivo de E. Si R = { 1⋅ xx , x −1x → 1, ( xy )⋅ zx ⋅( yz ) } es una versión de E con "regla de reescritura" , las cadenas de derivación

( a −1a )⋅ b R 1⋅ b R b y b R b            

Demostrar que ( a −1a )⋅ b RR b es un miembro del cierre deductivo de R. Sin embargo, no hay manera de derivar a −1 ⋅( ab ) RR b de forma similar a la anterior, ya que no se permite una aplicación de derecha a izquierda de la regla ( xy )⋅ zx ⋅( yz ) .

El algoritmo de Knuth-Bendix toma un conjunto E de ecuaciones entre términos y un orden de reducción (>) sobre el conjunto de todos los términos, e intenta construir un sistema de reescritura de términos confluente y terminante R que tenga el mismo cierre deductivo que E. Si bien demostrar las consecuencias de E a menudo requiere intuición humana, demostrar las consecuencias de R no la requiere. Para más detalles, consulte Confluencia (reescritura abstracta)#Ejemplos motivadores , que ofrece un ejemplo de demostración de la teoría de grupos, realizada tanto con E como con R.

Normas

Dado un conjunto E de ecuaciones entre términos , se pueden usar las siguientes reglas de inferencia para transformarlo en un sistema de reescritura de términos convergente equivalente (si es posible): [ 4 ] [ 5 ] Se basan en un orden de reducción dado por el usuario (>) en el conjunto de todos los términos; se eleva a un orden bien fundamentado (▻) en el conjunto de reglas de reescritura definiendo ( st ) ▻ ( lr ) si

Ejemplo

El siguiente ejemplo de ejecución, obtenido del demostrador de teoremas E , calcula una completación de los axiomas de grupo (aditivos) como en Knuth, Bendix (1970). Comienza con las tres ecuaciones iniciales para el grupo (elemento neutro 0, elementos inversos, asociatividad), usando f(X,Y)para X + Y , y i(X)para − X. Las 10 ecuaciones con asterisco resultan constituir el sistema de reescritura convergente resultante. "pm" es la abreviatura de " paramodulación ", que implementa deduce . El cálculo de pares críticos es una instancia de paramodulación para cláusulas de unidades ecuacionales. "rw" es reescritura, que implementa compose , collapse y simplify . La orientación de las ecuaciones se realiza implícitamente y no se registra.

Véase también Problema verbal (matemáticas) para otra presentación de este ejemplo.

Sistemas de reescritura de cuerdas en teoría de grupos

Un caso importante en la teoría de grupos computacional son los sistemas de reescritura de cuerdas, que pueden utilizarse para asignar etiquetas canónicas a elementos o clases laterales de un grupo finitamente presentado como productos de los generadores . Este caso particular es el tema central de esta sección.

La motivación en la teoría de grupos

El lema del par crítico establece que un sistema de reescritura de términos es localmente confluente (o débilmente confluente) si y solo si todos sus pares críticos convergen. Además, el lema de Newman establece que si un sistema de reescritura (abstracto) es fuertemente normalizador y débilmente confluente, entonces el sistema de reescritura es confluente. Por lo tanto, si podemos agregar reglas al sistema de reescritura de términos para forzar la convergencia de todos los pares críticos manteniendo la propiedad de fuerte normalización, esto forzará que el sistema de reescritura resultante sea confluente.

Consideremos un monoide finitamente presentado.METRO=incógnitaR{\displaystyle M=\langle X\mid R\rangle }donde X es un conjunto finito de generadores y R es un conjunto de relaciones definitorias en X. Sea X * el conjunto de todas las palabras en X (es decir, el monoide libre generado por X). Dado que las relaciones R generan una relación de equivalencia en X*, se pueden considerar los elementos de M como las clases de equivalencia de X * bajo R. Para cada clase {w 1 , w 2 , ... } es deseable elegir un representante estándar w k . Este representante se llama forma canónica o normal para cada palabra w k en la clase. Si existe un método computable para determinar para cada w k su forma normal w i entonces el problema de la palabra se resuelve fácilmente. Un sistema de reescritura confluente permite hacer precisamente esto.

Aunque teóricamente la elección de una forma canónica puede hacerse de manera arbitraria, este enfoque generalmente no es computable. (Considérese que una relación de equivalencia en un lenguaje puede producir un número infinito de clases infinitas). Si el lenguaje está bien ordenado, el orden < proporciona un método consistente para definir representantes mínimos; sin embargo, el cálculo de estos representantes aún puede no ser posible. En particular, si se utiliza un sistema de reescritura para calcular representantes mínimos, el orden < también debería tener la propiedad:

A < B → XAY < XBY para todas las palabras A, B, X, Y

Esta propiedad se llama invariancia traslacional . Un orden que es a la vez invariante traslacional y un buen orden se llama orden de reducción .

A partir de la presentación del monoide, es posible definir un sistema de reescritura dado por las relaciones R. Si A x B está en R, entonces A  <  B, en cuyo caso B   A es una regla del sistema de reescritura; de lo contrario, A  >  B y A   B. Dado que < es un orden de reducción, una palabra dada W puede reducirse a W > W_1 > ... > W_n, donde W_n es irreducible bajo el sistema de reescritura. Sin embargo, dependiendo de las reglas que se apliquen en cada W i  W i+1, es posible obtener dos reducciones irreducibles diferentes W n  W' m de W. No obstante, si el sistema de reescritura dado por las relaciones se convierte en un sistema de reescritura confluente mediante el algoritmo de Knuth-Bendix, entonces todas las reducciones garantizan la misma palabra irreducible, es decir, la forma normal de esa palabra.

Descripción del algoritmo para monoides finitamente presentados.

Supongamos que nos dan una presentaciónincógnitaR{\displaystyle \langle X\mid R\rangle }, dóndeincógnita{\displaystyle X}es un conjunto de generadores yR{\displaystyle R}es un conjunto de relaciones que dan el sistema de reescritura. Supongamos además que tenemos un orden de reducción<{\displaystyle <}entre las palabras generadas porincógnita{\displaystyle X}(p. ej., orden shortlex ). Para cada relaciónPAGi=Qi{\displaystyle P_{i}=Q_{i}}enR{\displaystyle R}, suponerQi<PAGi{\displaystyle Q_{i}<P_{i}}. Así pues, comenzamos con el conjunto de reduccionesPAGiQi{\displaystyle P_{i}\rightarrow Q_{i}}.

Primero, si existe alguna relaciónPAGi=Qi{\displaystyle P_{i}=Q_{i}}se puede reducir, reemplazarPAGi{\displaystyle P_{i}}yQi{\displaystyle Q_{i}}con las reducciones.

A continuación, añadimos más reducciones (es decir, reescritura de reglas) para eliminar posibles excepciones de confluencia. Supongamos quePAGi{\displaystyle P_{i}}yPAGj{\displaystyle P_{j}}superposición.

  1. Caso 1: o bien el prefijo dePAGi{\displaystyle P_{i}}es igual al sufijo dePAGj{\displaystyle P_{j}}o viceversa. En el primer caso, podemos escribirPAGi=Bdo{\displaystyle P_{i}=BC}yPAGj=AB{\displaystyle P_{j}=AB}; en este último caso,PAGi=AB{\displaystyle P_{i}=AB}yPAGj=Bdo{\displaystyle P_{j}=BC}.
  2. Caso 2: cualquieraPAGi{\displaystyle P_{i}}está completamente contenido en (rodeado por) PAGj{\displaystyle P_{j}}o viceversa. En el primer caso, podemos escribirPAGi=B{\displaystyle P_{i}=B}yPAGj=ABdo{\displaystyle P_{j}=ABC}; en este último caso,PAGi=ABdo{\displaystyle P_{i}=ABC}yPAGj=B{\displaystyle P_{j}=B}.

Reducir la palabraABdo{\displaystyle ABC}usandoPAGi{\displaystyle P_{i}}primero, luego usandoPAGj{\displaystyle P_{j}}Primero. Llama a los resultadosr1,r2{\displaystyle r_{1},r_{2}}, respectivamente. Sir1r2{\displaystyle r_{1}\neq r_{2}}, entonces tenemos un caso en el que la confluencia podría fallar. Por lo tanto, agregue la reducción.máximor1,r2minr1,r2{\displaystyle \max r_{1},r_{2}\rightarrow \min r_{1},r_{2}}aR{\displaystyle R}.

Después de agregar una regla aR{\displaystyle R}, eliminar cualquier regla enR{\displaystyle R}que podrían tener lados izquierdos reducibles (después de comprobar si dichas reglas tienen pares críticos con otras reglas).

Repita el procedimiento hasta que se hayan revisado todos los lados izquierdos superpuestos.

Ejemplos

Un ejemplo de finalización

Consideremos el monoide:

incógnita,yincógnita3=y3=(incógnitay)3=1{\displaystyle \langle x,y\mid x^{3}=y^{3}=(xy)^{3}=1\rangle }.

Utilizamos el orden shortlex . Se trata de un monoide infinito, pero aun así, el algoritmo de Knuth-Bendix es capaz de resolver el problema de la palabra.

Nuestras tres reducciones iniciales son, por lo tanto,

Un sufijo deincógnita3{\displaystyle x^{3}}(a saberincógnita{\displaystyle x}) es un prefijo de(incógnitay)3=incógnitayincógnitayincógnitay{\displaystyle (xy)^{3}=xyxyxy}, así que considere la palabraincógnita3yincógnitayincógnitay{\displaystyle x^{3}yxyxy}Reduciendo usando ( 1 ), obtenemosyincógnitayincógnitay{\displaystyle yxyxy}Reduciendo usando ( 3 ), obtenemosincógnita2{\displaystyle x^{2}}Por lo tanto, obtenemosyincógnitayincógnitay=incógnita2{\displaystyle yxyxy=x^{2}}, dando como resultado la regla de reducción

De manera similar, utilizandoincógnitayincógnitayincógnitay3{\displaystyle xyxyxy^{3}}y reduciendo usando ( 2 ) y ( 3 ), obtenemosincógnitayincógnitayincógnita=y2{\displaystyle xyxyx=y^{2}}. Por lo tanto, la reducción

Ambas reglas están obsoletas ( 3 ), así que las eliminamos.

A continuación, considereincógnita3yincógnitayincógnita{\displaystyle x^{3}yxyx}superponiendo ( 1 ) y ( 5 ). Reduciendo obtenemosyincógnitayincógnita=incógnita2y2{\displaystyle yxyx=x^{2}y^{2}}, por lo que añadimos la regla

En vista deincógnitayincógnitayincógnita3{\displaystyle xyxyx^{3}}Al superponer ( 1 ) y ( 5 ), obtenemosincógnitayincógnitay=y2incógnita2{\displaystyle xyxy=y^{2}x^{2}}, por lo que añadimos la regla

Estas reglas obsoletas ( 4 ) y ( 5 ), por lo que las eliminamos.

Ahora nos queda el sistema de reescritura.

Al comprobar la superposición de estas reglas, no encontramos posibles fallos de confluencia. Por lo tanto, tenemos un sistema de reescritura confluente y el algoritmo finaliza correctamente.

Un ejemplo que no termina

El orden de los generadores puede afectar de manera crucial si la compleción de Knuth-Bendix termina. Como ejemplo, consideremos el grupo abeliano libre mediante la presentación de monoides:

incógnita,y,incógnita1,y1|incógnitay=yincógnita,incógnitaincógnita1=incógnita1incógnita=yy1=y1y=1.{\displaystyle \langle x,y,x^{-1},y^{-1}\,|\,xy=yx,xx^{-1}=x^{-1}x=yy^{-1}=y^{-1}y=1\rangle .}

La completitud de Knuth-Bendix con respecto al orden lexicográficoincógnita<incógnita1<y<y1{\displaystyle x<x^{-1}<y<y^{-1}}termina con un sistema convergente, sin embargo, considerando el orden lexicográfico de longitud.incógnita<y<incógnita1<y1{\displaystyle x<y<x^{-1}<y^{-1}}no termina porque no hay sistemas convergentes finitos compatibles con este último orden. [ 6 ]

Generalizaciones

Si el algoritmo de Knuth-Bendix no tiene éxito, se ejecutará indefinidamente y producirá aproximaciones sucesivas a un sistema completo infinito, o bien fallará al encontrar una ecuación no orientable (es decir, una ecuación que no puede transformar en una regla de reescritura). Una versión mejorada no fallará ante ecuaciones no orientables y producirá un sistema confluente fundamental , proporcionando un semialgoritmo para el problema verbal. [ 7 ]

El concepto de reescritura registrada, tratado en el artículo de Heyworth y Wensley que se cita a continuación, permite registrar el proceso de reescritura a medida que avanza. Esto resulta útil para calcular identidades entre relaciones en la representación de grupos.

Referencias

  1. D. Knuth, "La génesis de las gramáticas de atributos"
  2. Jacob T. Schwartz; Domenico Cantone; Eugenio G. Omodeo; Martin Davis (2011). Lógica computacional y teoría de conjuntos: aplicación de la lógica formalizada al análisis . Springer Science & Business Media. pág.  200. ISBN 978-0-85729-808-9.
  3. Hsiang, J.; Rusinowitch, M. (1987). "Sobre problemas de palabras en teorías ecuacionales" (PDF) . Autómatas, lenguajes y programación . Notas de clase en ciencias de la computación. Vol. 267. p. 54. doi : 10.1007/3-540-18088-5_6 . ISBN   978-3-540-18088-3.pág. 55
  4. Bachmair, L.; Dershowitz, N.; Hsiang, J. (junio de 1986). "Ordenamientos para pruebas ecuacionales". Actas del Simposio IEEE sobre lógica en ciencias de la computación . págs. 346–357 . 
  5. N. Dershowitz; J.-P. Jouannaud (1990). Jan van Leeuwen (ed.). Sistemas de reescritura . Manual de informática teórica. Vol. B. Elsevier. págs. 243–320 .  Aquí: sección 8.1, pág. 293
  6. V. Diekert; AJ Duncan; AG Myasnikov (2011). «Sistemas de reescritura geodésica y pregrupos». En Oleg Bogopolski; Inna Bumagin; Olga Kharlampovich; Enric Ventura (eds.). Teoría combinatoria y geométrica de grupos: conferencias de Dortmund y Ottawa-Montreal . Springer Science & Business Media. pág. 62. ISBN  978-3-7643-9911-5.
  7. Bachmair, Leo; Dershowitz, Nachum; Plaisted, David A. (1989). "Completion Without Failure" (PDF) . Rewriting Techniques : 1–30 . doi : 10.1016/B978-0-12-046371-8.50007-9 . Recuperado el 24 de diciembre de 2021 .
  • D. Knuth; P. Bendix (1970). J. Leech (ed.). Problemas verbales sencillos en álgebras universales (PDF) . Pergamon Press. págs. 263–297 . 
  • Gérard Huet (1981). "Una prueba completa de corrección del algoritmo de completación de Knuth-Bendix" (PDF) . J. Comput. Syst. Sci . 23 (1): 11– 21. doi : 10.1016/0022-0000(81)90002-7 .
  • C. Sims. 'Cálculos con grupos finitamente presentados'. Cambridge, 1994.
  • Anne Heyworth y CD Wensley. « Reescritura registrada e identidades entre narradores ». Groups St. Andrews 2001 en Oxford. Vol. I, 256–276, London Math. Soc. Lecture Note Ser., 304, Cambridge Univ. Press, Cambridge, 2003.
  • Weisstein, Eric W. "Algoritmo de finalización de Knuth-Bendix" . MundoMatemático .
  • Visualizador de finalización de Knuth-Bendix (Desaparecido)
  • Herramienta en línea que implementa el algoritmo de completación de Knuth-Bendix.