Problema de separación de palabrasProblemas no resueltos de la computer science: How many states are needed in a deterministic finite automaton that behaves differently on two given strings of length n?
En la teoría computacional, el problema de separar palabras es el problema de encontrar el autómata finito determinista más pequeño que se comporta de manera diferente en dos cadenas dadas, lo que significa que acepta una de las dos cadenas y rechaza la otra. El tamaño que debe tener un autómata, en el peor de los casos, en función de la longitud de las cadenas de entrada es un problema abierto. EjemploLas dos cadenas 0010 y 1000 pueden distinguirse entre sí por un autómata de tres estados en el que las transiciones desde el estado de inicio pasan a dos estados diferentes, ambos terminales en el sentido de que las transiciones posteriores de estos dos estados siempre regresan al mismo estado. El estado de este autómata registra el primer símbolo de la cadena de entrada. Si uno de los dos estados terminales está aceptando y el otro está rechazando, entonces el autómata aceptará solo una de las cadenas 0010 y 1000. Sin embargo, estas dos cadenas no pueden distinguirse por ningún autómata con menos de tres estados. Simplificando suposicionesPara probar los límites en este problema, se puede suponer sin pérdida de generalidad que las entradas son cadenas sobre un alfabeto de dos letras. Porque, si dos cadenas en un alfabeto más grande difieren, entonces existe un homomorfismo de cadena que las correlaciona con cadenas binarias de la misma longitud que también difieren. Cualquier autómata que distingue las cadenas binarias se puede traducir en un autómata que distingue las cadenas originales, sin ningún aumento en la cantidad de estados.[1] También se puede suponer que las dos cadenas tienen la misma longitud. Para cadenas de longitud desigual, siempre existe un número primo p cuyo valor es logarítmico en la menor de las dos longitudes de entrada, de modo que las dos longitudes son diferentes módulo p. Un autómata que cuente la longitud de su entrada módulo p se puede usar para distinguir las dos cadenas entre sí en este caso. Por lo tanto, las cadenas de longitudes desiguales siempre se pueden distinguir entre sí por autómatas con pocos estados. Historia y límitesEl problema de bounding la medida de un autómata que distingue dos cuerdas dadas era primero formuladas por Goralčík y Koubek (1986) & Koubek (1986), quién mostró que la medida de autómata es siempre sublinear. Más tarde, Robson (1989) probó el mejor superior atado sabido, O(n2/5(registro n)3/5), en la medida de autómata que puede ser requerido.[2][3] Existen pares de entradas que son cadenas binarias de longitud n para las cuales cualquier autómata que distinga las entradas debe tener un tamaño Ω(log n). Cerrar la brecha entre este límite inferior y el límite superior de Robson sigue siendo un problema abierto. Jeffrey Shallit ha ofrecido un premio de 100 libras esterlinas por cualquier mejora en el límite superior de Robson. Casos especialesSe sabe que varios casos especiales del problema de separación de palabras se pueden resolver usando pocos estados:
Referencias
|