En informática, un alfabeto es un conjunto finito no vacío. Los elementos de un alfabeto se llaman letras o símbolos del alfabeto.
Un ejemplo de alfabeto es { - , ⋅ } {que puede usarse para el código Morse o {begin, if, else, for, while} que pueden ser las palabras clave de un lenguaje de programación.
El conjunto de los números naturales no es un alfabeto porque no es finito.
El alfabeto más utilizado en informática es {0,1}. Se llama alfabeto binario porque contiene dos símbolos. Un alfabeto puede utilizarse para formar una cadena (o palabra). Ésta es una secuencia finita de letras del alfabeto. Por ejemplo, una cadena de longitud 5 sobre {0,1} es 01101.
La cadena vacía es la cadena que no contiene ninguna letra (a menudo se escribe como λ {\displaystyle \lambda } ). La cadena vacía es una cadena sobre cualquier alfabeto.
Si tenemos un alfabeto llamado Σ {\displaystyle \Sigma } . Entonces escribimos el conjunto de todas las cadenas que pueden hacerse a partir de Σ {\displaystyle \Sigma }
como Σ ∗ {\displaystyle \Sigma ^{*}}
. Esto se llama la estrella de Kleene (o cierre de Kleene) de Σ {\displaystyle \Sigma }
. Lleva el nombre del matemático Stephen Cole Kleene.
La estrella de Kleene del alfabeto binario es { λ , 0 , 1 , 00 , 01 , 10 , 11 , 000 , 001 , . . . } {{lambda ,0,1,00,01,10,11,000,001,...\}} . Los tres puntos después de 001, muestran que no podemos escribir la estrella de Kleene de un alfabeto completo porque es un conjunto infinito.
Los alfabetos son importantes porque se utilizan en el estudio de los lenguajes formales, los autómatas finitos y cuestiones muy difíciles en informática sobre lo que se puede calcular y lo que no.