1.3. LÍMITE DE LOS AUTÓMATAS FINITOS DETERMINISTAS Esta sección tratará de distinguir entre cadenas aceptables y no aceptables por autómatas finitos deterministas.
1.3.1. Definiciones previas Vamos a definir |w| como la longitud de una cadena (número de símbolos que contiene el cual como se dijo antes podía ser infinito aunque contable). Dado un alfabeto, S, vamos a considerar todas las cadenas de longitud finita (incluyendo la vacía), a partir de este alfabeto y lo vamos a designar con S*(no confundirlo con el conjunto potencia del alfabeto, por ejemplo, en el alfabeto {a,b}, S* será { l, a, b, aa, bb, ab, ba, aaa, aab,...} y P(S)={l, a, b, ab}). Un subconjunto de S* se llama lenguaje (varios subconjuntos denotarán distintos lenguajes).Si M es un autómata finito determinista (S,S, d,i ,F), la colección de cadenas que acepta constituye un lenguaje con respecto al alfabeto S; Este lenguaje lo representamos con L(M) que se lee "el lenguaje que acepta M". L(M) es la colección de TODAS las cadenas que acepta M (ni más ni menos). El lenguaje que es aceptado por un autómata finito se llama lenguaje regular. Hay dos tipos especiales de lenguajes regulares:
Como estamos hablando de conjuntos de cadenas, podemos decir que S* es el conjunto universal, y {Æ } su complementario. Como los dos son lenguajes regulares, entonces podemos generalizar a cualquier lenguaje regular y su complementario, que son regulares también. COROLARIO.- Para cualquier lenguaje regular aceptado por un autómata finito determinista L(M), existe el autómata finito determinista L(M') que acepta el lenguaje complementario con respecto al universal (L(M') = S* - L(M)).
TEOREMA.- Para cualquier alfabeto existe un lenguaje que no es igual a L(M) para cualquier autómata finito determinista M.
Sea Wn, donde W es una cadena de S* y n es un entero no negativo. Wn es la forma abreviada para representar una cadena de n copias del patrón W (si S={x,y}, entonces (xy)3=xyxyxy o y0=l ).
TEOREMA.- Si un lenguaje regular contiene cadenas de la forma xnyn para enteros arbitrariamente grandes, n entonces debe contener cadenas de la forma xmyn donde m y n no son iguales.
En definitiva las cadenas de la forma xnyn no son regulares. Un ejemplo de estos lenguajes no regulares son las expresiones matemáticas con paréntesis. Para recorrer una expresión de este tipo hay que tener en cuenta que el número de paréntesis izquierdos debe ser igual a los paréntesis derechos, de manera que habría que recordarlo, cosa que un autómata finito no puede.
© 1999 Roberto de la Fuente López. Todos los derechos reservados Fecha de actualización: 15 de abril de 1999 |