Lenguajes.
Lenguajes
Un conjunto de cadenas, todas ellas seleccionadas de un Σ∗, donde Σ es un determinado alfabeto se denomina lenguaje. Si Σ es un alfabeto y L ⊆ Σ∗, entonces L es un lenguaje de Σ. Observe que un lenguaje de Σ no necesita incluir cadenas con todos los símbolos de Σ, ya que una vez que hemos establecido que L es un lenguaje de Σ, también sabemos que es un lenguaje de cualquier alfabeto que sea un superconjunto de Σ.
La elección del término “lenguaje” puede parecer extraña. Sin embargo, los lenguajes habituales pueden interpretarse como conjuntos de cadenas. Un ejemplo sería el inglés, donde la colección de las palabras correctas inglesas es un conjunto de cadenas del alfabeto que consta de todas las letras. Otro ejemplo es el lenguaje C, o cualquier otro lenguaje de programación, donde los programas correctos son un subconjunto de las posibles cadenas que pueden formarse a partir del alfabeto del lenguaje. Este alfabeto es un subconjunto de los caracteres ASCII. El alfabeto en concreto puede diferir ligeramente entre diferentes lenguajes de programación, aunque generalmente incluye las letras mayúsculas y minúsculas, los dígitos, los caracteres de puntuación y los símbolos matemáticos.
Sin embargo, existen también otros muchos lenguajes que veremos a lo largo del estudio de los autómatas.
Algunos ejemplos son los siguientes:
1. El lenguaje de todas las cadenas que constan de n ceros seguidos de n unos para cualquier n ≥ 0:
{ε,01,0011,000111,...}.
2. El conjunto de cadenas formadas por el mismo número de ceros que de unos:
{ε,01,10,0011,0101,1001,...}
3. El conjunto de números binarios cuyo valor es un número primo:
{10,11,101,111,1011,...}
4. Σ∗ es un lenguaje para cualquier alfabeto Σ.
5. /0, el lenguaje vacío, es un lenguaje de cualquier alfabeto.
6. {ε}, el lenguaje que consta sólo de la cadena vacía, también es un lenguaje de cualquier alfabeto.
Observe que /0 = {ε}; el primero no contiene ninguna cadena y el segundo sólo tiene una cadena.
La única restricción importante sobre lo que puede ser un lenguaje es que todos los alfabetos son finitos. De este modo, los lenguajes, aunque pueden tener un número infinito de cadenas, están restringidos a que dichas cadenas estén formadas por los símbolos que definen un alfabeto finito y prefijado.
Comentarios
Publicar un comentario