Page 35 - LENGUAJES FORMALES AUTOMATAS Y COMPILADOS
P. 35

35


                                                           CADENAS

                  En matemáticas, lógica, y ciencias de la computación, un lenguaje formal es un lenguaje cuyos
                  símbolos primitivos y reglas para unir esos símbolos están formalmente especificados y definidos;

                  y en consecuencia se ajustan al rigor de la regla.  Al conjunto de los símbolos primitivos se le
                  llama el alfabeto (o vocabulario) del lenguaje, y al conjunto de las reglas se le llama la gramática
                  formal (o sintaxis). A una cadena de símbolos formada de acuerdo a la gramática se la llama una
                  fórmula bien formada (o palabra) del lenguaje.  Estrictamente hablando, un lenguaje formal es
                  idéntico al conjunto de todas sus fórmulas bien formadas. A diferencia de lo que ocurre con el
                  alfabeto (que debe ser un conjunto finito) y con cada fórmula bien formada (que debe tener una
                  longitud también finita), un lenguaje formal puede estar compuesto por un número infinito de
                  fórmulas bien formadas.

                  Alfabeto:

                  Un alfabeto  es un conjunto de símbolos finito  y no vacío.  Convencionalmente, se utiliza  el
                  símbolo σ, para referirse a él.
                  Ejemplos de alfabetos conocidos en el ámbito computacional:
                  1. Σ= {0, 1}, el alfabeto binario
                  2. Σ= {a, b,…, z}, el conjunto de todas las letras mayúsculas
                  3.  El  conjunto  de  todos  los  caracteres  ASCII  o  el  conjunto  de  todos  los  caracteres  ASCII
                  imprimibles.


                  Potencias de un alfabeto:

                  Si  σ  es  un  alfabeto,  podemos  expresar  el  conjunto  de  todas  las  cadenas  de  una  determinada
                                                                                                 
                  longitud, de dicho alfabeto,  utilizando una notación exponencial. Definimos     para que sea el
                  conjunto de las cadenas de longitud k, tales que cada uno de los símbolos de las mismas pertenece
                  a σ.

                               0
                  Nótese que       = {∈} sea cual sea el alfabeto. O sea ∈ es la única cadena existente cuya longitud
                  es 0. O sea ∈ es la cadena vacia, también se designa con λ  o ω en algunos libros.

                                                               1
                                                                            2
                  Si  σ ={ 0, 1} (esto es un alfabeto), entonces       = {0,1},      = {00, 01, 10, 11}
                                   = {000, 001, 010, 011, 100, 101, 110,111}. Las anteriores son conjuntos de cadenas.
                              3
                  Concluyendo: el conjunto de todas las cadenas de un alfabeto  σ se representa por     o sea que
                                                                                                    ∗
                  si: {0,1}   = {є, 0,1,00,01,10,11,000, … }  que es lo mismo que expresar:
                          ∗
                                     1
                                           2
                                0
                           ∗
                              =     ⋃     ⋃    ⋃ …..
                  Cadenas  o cadenas de caracteres:
                  Una cadena de caracteres (que en ocasiones se denomina palabra) es una secuencia finita de
                  símbolos seleccionados de algún alfabeto. Por ejemplo, 01101 es una cadena del alfabeto binario
                  σ= {0, 1}.  La  cadena 111 es otra cadena de dicho alfabeto.   En  general,  una cadena es una
                  secuencia de símbolos finita. En consecuencia cuando se habla de símbolos se hace referencia a
                  los símbolos de un alfabeto particular. Así las cosas si el alfabeto es  {a,b}, cadenas o palabras de
                  ese alfabeto particular pueden ser: {aabb}, {abab}, {aaab} , etc. En fin cualquier combinación de
   30   31   32   33   34   35   36   37   38   39   40