"Is ¿Esta es una de esas cosas o un valor puramente teórico sin ninguna aplicación práctica?
Hrm. ¿Qué es una aplicación práctica? Sabiamente etiquetó su pregunta "ciencia de la computación". Así que supongo que la pregunta está destinado a preguntar, "¿es práctico para la informática?
En cuyo caso, la respuesta es ...
Por supuesto que lo es! Se enseña como una de las primeras formas de clasificar diferentes clases de complejidad de lenguaje, más allá de solo "big-O (whateverthehell)". Muestra que hay problemas relacionados con la computación más allá del tiempo de ejecución, en este caso que algunos modelos simplemente no pueden calcular algunas funciones. * Es bastante bajo -Introducción de pelota a las pruebas formales sobre la teoría de autómatas.
Una gran parte de la informática que la mayoría de los estudiantes de informática (mis pares) parecen Intenta evitar es la Teoría de la Computación, una clasificación a la que los lemmas de bombeo obviamente recaen.
El hecho, afortunadamente obvio, es que la teoría de la computación, le guste o no, es fundamental para la informática. Para no captar la idea de las diferentes clases de complejidad (la gran O por sí misma realmente no funciona) no deletreará la muerte del científico informático, pero ocultará una parte considerable del campo de su vista.
* Sí, generalmente el problema de detención se muestra como el primero, pero nunca lo consiguen la primera vez.
En cuanto a la interpretación más cínica de su pregunta, en la que quiere decir "¿alguna pieza de software realmente usa esto?", Mi respuesta es por supuesto que no. Es parte de la base de la computación, no de sus aplicaciones. Esto no es para sonar desdeñoso de sus aplicaciones, en absoluto. Ambos son de valor igual, noble.
¿Se puede demostrar si un idioma es o no regular de uso práctico? –
@Anon: sí, ya sea que un lenguaje pueda describirse mediante una gramática libre de contexto es valioso para los generadores de analizadores sintácticos. – cletus
Me tomó un tiempo averiguar por qué L no es un lenguaje sin contexto. Creo que una buena manera de pensar en la respuesta es: si quieres escribir n 0, haz un seguimiento de ello agregando algo a la pila n veces. Luego, para imprimir n 1s, realice un seguimiento eliminando todos los elementos en la pila. Sin embargo, ahora no hay forma de recordar qué n iba a imprimir n 2. –