CINVESTAV IPN México City <fsagols@math.cinvestav.mx> 2010
1 Preliminares 1.1 Cadenas, alfabetos y lenguajes Un símbolo es un ente abstracto que no se puede definir formalmente. Letras o dígitos son ejemplos que frecuentemente usan símbolos. Una cadena (o palabra) es una secuencia finita de símbolos. Por ejemplo : a, b y c son símbolos y abcb es una cadena. La longitud de una cadena w, denotadapor w, esel número de símbolos que componen la cadena. Por ejemplo : abcb tiene longitud 4. La cadena vacía, denotada por ɛ, es la cadena que contiene cero símbolos. Así ɛ = 0.
Un prefijo de una cadena α es cualquier secuencia con los primeros n símbolos de la cadena (donde 0 n α ), y un sufijo es cualquier secuencia con los últimos n símbolos de la cadena. Por ejemplo : la cadena abc tiene prefijos ɛ, a, ab y abc ;ylossufijossonɛ, c, bc y abc.
La concatenación de dos cadenas es una cadena formada por la primera seguida de la segunda, sin espacio. Es decir, si w y x son cadenas, entonces wx es la concatenación de esas dos cadenas. La cadena vacía es la identidad para el operador concatenación. Es decir, ɛw = wɛ = w para cada cadena w.
Un albafeto es un conjunto finito de símbolos. Un lenguaje formal es un conjunto de cadenas de símbolos de algún alfabeto. El conjunto vacío,, y el conjunto que contiene a la cadena vacia {ɛ} son lenguajes. El conjunto de palíndromos (cadenas que se leen igual de izquierda a derecha que de derecha a izquierda) sobre el alfabeto {0, 1} es un lenguaje infinito. Otro lenguaje es el conjunto de todas las cadenas sobre un alfabeto fijo Σ. Denotamos a este lenguaje por Σ. Por ejemplo, si Σ={a}, entonces Σ = {ɛ, a, aa, aaa,...}.
1.2 Gráficas y árboles Una gráfica, denotadaporg =(V, E), consiste de un conjunto finito de vértices (o nodos) V y un conjunto de pares de vértices E llamadas aristas. Una gráfica se muestra en la siguiente figura, donde V = {1, 2, 3, 4, 5} E = {(n, m) n + m = 4 o n + m = 7} 1 2 3 4 5
Un camino en una gráfica es una secuencia de vértices v 1, v 2,..., v k, k 1, tal que existe una arista (v i, v i+1 ) para cada i, 1 i < k. Lalongitud de un camino es k 1. Por ejemplo, 1,3, 4 es un camino para la gráfica anterior, también lo es 5. Si v i = v k,elcaminoesunciclo.
Gráficas dirigidas Una gráfica dirigida (o digráfica), denotada por G =(V, E), consiste de un conjunto finito de vértices V y un conjunto de pares ordenados de vértices E llamados arcos. Se denota un arco de v a w por v w. Un ejemplo de una digráfica es : 1 2 3 4
Un camino en una digráfica es una secuencia de vértices v 1, v 2,..., v k, k 1, tal que v i v i+1 es un arco para cada i, 1 i < k. Y se dice que el camino es de v i a v k.así,parala digráfica anterior, 1 2 3 4esuncaminode1a4.Si v w es un arco se dice que v es predecesor de w y w es sucesor de v.
Árboles Un árbol es una digráfica con las siguientes propiedades : 1 Existe un vértice, llamado raíz, que no tiene predecesor y del cual existe un camino para cada vértice. 2 Cada vértice distinto al raíz tiene exactamente un predecesor. 3 Los sucesores de cada vértice son ordenados a partir de la izquierda. Un árbol se dibuja con el nodo raíz en el tope y todos los arcos apuntando hacia abajo. Los sucesores de cada vértice se dibujan ordenados de izquierda a derecha.
Un sucesor de un vértice es llamado hijo, y el predecesor es llamado padre. Si existe un camino del vértice v 1 al vértice v 2, entonces a v 1 se le llama ancestro de v 2,yv 2 es llamado descendiente de v 1. Un vértice que no tiene hijos es llamado hoja, y los otros vértices son llamados vértices interiores. Tarea : Resolver los ejercicios del Capitulo 1 del libro de Hopcroft.