stringtranslate.com

Problema de separación de palabras

Problema sin resolver en informática :
¿Cuántos estados se necesitan en un autómata finito determinista que se comporta de manera diferente en dos cadenas dadas de longitud n ?

En informática teórica , el problema de separar palabras es el problema de encontrar el autómata finito determinista más pequeño que se comporte de manera diferente en dos cadenas dadas , es decir, que acepte una de las dos cadenas y rechace la otra. Es un problema abierto el tamaño que debe tener dicho autómata, en el peor de los casos, en función de la longitud de las cadenas de entrada.

Ejemplo

Las dos cadenas 0010 y 1000 pueden distinguirse entre sí mediante un autómata de tres estados en el que las transiciones desde el estado inicial pasan a dos estados diferentes, ambos terminales en el sentido de que las transiciones posteriores desde estos dos estados siempre vuelven 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 es de aceptación y el otro de rechazo, entonces el autómata aceptará solo una de las cadenas 0010 y 1000. Sin embargo, estas dos cadenas no pueden distinguirse mediante ningún autómata con menos de tres estados. [1]

Simplificando suposiciones

Para probar los límites de 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 sobre un alfabeto más grande difieren, entonces existe un homomorfismo de cadenas que las asigna a cadenas binarias de la misma longitud que también difieren. Cualquier autómata que distinga las cadenas binarias puede traducirse en un autómata que distinga las cadenas originales, sin ningún aumento en el número de estados. [1]

También se puede suponer que las dos cadenas tienen la misma longitud. Para cadenas de longitudes diferentes, 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 . En este caso, se puede utilizar un autómata que cuente la longitud de su entrada módulo p para distinguir las dos cadenas entre sí. Por lo tanto, las cadenas de longitudes diferentes siempre se pueden distinguir entre sí mediante autómatas con pocos estados. [1]

Historia y límites

El problema de limitar el tamaño de un autómata que distingue dos cadenas dadas fue formulado por primera vez por Goralčík y Koubek (1986), quienes demostraron que el tamaño del autómata es siempre sublineal. [2] Más tarde, Robson (1989) demostró el límite superior O ( n 2/5 (log  n ) 3/5 ) sobre el tamaño del autómata que puede requerirse. [3] Esto fue mejorado por Chase (2020) a O ( n 1/3 (log  n ) 7 ) . [4] [5]

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 Chase 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. [6]

Casos especiales

Se sabe que varios casos especiales del problema de separación de palabras se pueden resolver utilizando pocos estados:

Referencias

  1. ^ abcdef Demaine, Erik D. ; Eisenstat, Sarah; Shallit, Jeffrey ; Wilson, David A. (2011), "Observaciones sobre la separación de palabras", Complejidad descriptiva de sistemas formales: 13.º taller internacional, DCFS 2011, Gießen/Limburgo, Alemania, 25-27 de julio de 2011, Actas , Lecture Notes in Computer Science, vol. 6808, Heidelberg: Springer-Verlag, págs. 147–157, arXiv : 1103.4513 , doi :10.1007/978-3-642-22600-7_12, ISBN 978-3-642-22599-4, MR  2910373, S2CID  6959459.
  2. ^ Goralčík, P.; Koubek, V. (1986), "Sobre el discernimiento de palabras por autómatas", Automata, Languages ​​and Programming: 13th International Colloquium, Rennes, Francia, 15-19 de julio de 1986, Actas , Lecture Notes in Computer Science, vol. 226, Berlín: Springer-Verlag, pp. 116-122, doi :10.1007/3-540-16761-7_61, ISBN 978-3-540-16761-7, Sr.  0864674.
  3. ^ Robson, JM (1989), "Separación de cadenas con pequeños autómatas", Information Processing Letters , 30 (4): 209–214, doi :10.1016/0020-0190(89)90215-9, MR  0986823.
  4. ^ Chase, Z. (2020), "Un nuevo límite superior para separar palabras", arXiv : 2007.12097 [math.CO].
  5. ^ Chase, Zachary (15 de junio de 2021). "Separación de palabras y reconstrucción de trazas". Actas del 53.º Simposio anual ACM SIGACT sobre teoría de la computación . STOC 2021. Nueva York, NY, EE. UU.: Association for Computing Machinery. págs. 21–31. doi :10.1145/3406325.3451118. ISBN 978-1-4503-8053-9.
  6. ^ Shallit, Jeffrey (2014), "Problemas abiertos en la teoría de autómatas: una visión idiosincrásica", Coloquio británico sobre informática teórica (BCTCS 2014), Universidad de Loughborough (PDF).