5 – Laboratorio de Matemáticas : Teorı́a de Grafos 1.2 1.2 Moverse por un grafo. Conexión Moverse por un grafo. Conexión La estructura de un grafo, como puntos conectados, sugiere recorridos o desplazamientos por él. Es decir, en un grafo podemos partir de un vértice y recorrer aristas hasta llegar a otro vértive. Ası́: Definición 10.- Sea G = (V, A) un grafo (no dirigido simple). Llamaremos trayectoria en G a una sucesión de vértices, x1 x2 · · · xp−1 xp tales que {xi , xi+1 } ∈ A, para cada i = 1, 2, . . . , p − 1. Diremos que la trayectoria conecta o une el vértice x1 y el vértice xp , y del número de aristas recorridas, p − 1, diremos que es la longitud de la trayectoria. Si x1 = xp se dice que la trayectoria es cerrada. No hemos puesto ninguna restricción al recorrido de la trayectoria (salvo que use aristas del grafo), podrı́amos deambular por el grafo recorriendo siempre las mismas aristas y pasando por los mismos vértices. Es usual distinguir otros dos tipos de trayectorias. Definición 11.- Llamaremos cola a una trayectoria que recorre aristas distintas y camino a una trayectoria sin vértices repetidos (luego tampoco aristas). De una cola cerrada se dice que es un circuito y de un camino cerrado que es un ciclo. Nota: Las denominaciones de trayectoria, cola, circuito y camino difieren de unos autores a otros, mientras que la de ciclo es más común; en cualquier caso, y como ya comentamos, conviene comprobar cómo denomina cada autor estos elementos. Los caminos y ciclos son elementos imprescindibles en la teorı́a de grafos –también en la parte que a nosotros nos ocupa–. Las siguientes definiciones establecen unas tipologı́as de grafos muy importantes: Definición 12.- Diremos que un grafo es acı́clico si no tiene ciclos. Definición 13.- Un grafo es conexo si todo par de vértices está unido por una trayectoria (por un camino). Si el grafo no es conexo, está formado por varios trozos que sı́ son conexos. De cada uno de estos trozos se dice que es una componente conexa del grafo. En otras palabras, un grafo es conexo si desde un vértice se puede ir a todos los demás. Si el grafo no es conexo un vértice sólo está conectado con los de su misma componente conexa. Aunque no todas las trayectorias son caminos, el siguiente resultado nos asegura que siempre podremos disponer de uno si es necesario (y explica el paréntesis en la definición de conexión). Proposición 14.- Cada trayectoria que une dos vértices distintos contiene un camino que une esos mismos vértices. Demostración: Sea T una trayectoria que une el vértice vr y el vértice vs . Si T no es un camino, repite vértices. Cuando recorremos T , si pasamos por un vértice vi y este nos aparece más adelante en la trayectoria, nos encontramos en el mismo punto que la primera vez que pasamos por él, luego si eliminamos el “paseo” intermedio seguimos teniendo una trayectoria que une el vértice vr y el vértice vs . Si repetimos el proceso hasta que no queden vértices repetidos tenemos el camino postulado. De igual manera se tiene que: Proposición 15.- Cada circuito que empieza y acaba en un vértice vr contiene un ciclo que empieza y acaba en ese vértice vr . (El resultado es por supuesto válido para cada vértice de un circuito.) Prof: José Antonio Abia Vian I.T.I. en Electricidad 6 – Laboratorio de Matemáticas : Teorı́a de Grafos 1.2.1 1.2 Moverse por un grafo. Conexión Trayectorias y conexión en un digrafo Para los grafos dirigidos, las trayectorias, colas, caminos, circuitos y ciclos, se definen de forma análoga. La diferencia estriba en que los arcos sólo se pueden recorrer en un sentido, por lo que las trayectorias (colas, ciclos, etc.) son siempre trayectorias dirigidas que se recorren en el sentido que indica la flecha. Definición 16.- Sea D = (V, A) un digrafo. Llamaremos trayectoria (dirigida) en D a una sucesión de vértices, x1 x2 · · · xp−1 xp tales que (xi , xi+1 ) ∈ A, para cada i = 1, 2, . . . , p − 1. Diremos que la trayectoria conecta o une el vértice x1 con el vértice xp , y del número de arcos recorridos, p − 1, diremos que es la longitud de la trayectoria. Si x1 = xp se dice que la trayectoria es cerrada. Llamaremos cola a una trayectoria con todos los arcos distintos y circuito a una cola cerrada. Llamaremos camino a una trayectoria sin vértices repetidos y ciclo a un camino cerrado. Todas las definiciones y resultados vistos en el apartado anterior (aciclicidad, matrices y su significado, etc.) tienen su análogo para digrafos –sin más que tener en cuenta que todos los elementos han de ser dirigidos–; todas excepto una: la definición de conexo. Definición 17.- Sea D un digrafo. Se llama grafo no dirigido subyacente a D , al grafo que se obtiene sustituyendo cada arco (x, y) por la arista {x, y} (si aparecen (x, y) e (y, x) se sustituyen ambos por una sóla arista). Definición 18.- Un digrafo es conexo si su grafo subyacente es conexo. 2.1 Considerar en el digrafo D de la derecha, la trayectoria de v2 a v7 , T = v2 v1 v3 v2 v5 v4 v6 v5 v3 v4 v6 v7 . (a) Dibujar T sobre el grafo como una lı́nea continua. v1 (b) Comprobar que T es una trayectoria válida. ¿Cuál es su longitud? ¿Es cerrada? v2 v4 v s - s6 s¾ ¡ ¡6 @ ¡ µ6 I @ ¡ @ ¡ ¡ @ ª @¡ s¡ @¡ ¡@ @ ¡@ ¡ @ @ ¡ @ ª @ R s¡ @ R¡ s¾ @? s v3 v5 v7 (c) ¿Es T un camino?, ¿y una cola? (d) Buscar un camino de v2 a v7 , ¿qué longitud tiene? ¿Hay algún camino de v2 a v7 que pase por todos los demás vértices? ¿Por qué no hay un camino de longitud 1 de v2 a v7 ? ¿Por qué no puede haber un camino de longitud 7? (e) ¿Cuántos caminos hay de v2 a v7 ? (f) Buscar un ciclo de v2 a v2 de longitud 4. Introducir en el ordenador la trayectoria como un vector T y la matriz de adyacencia M. [i] Calcular a partir de T la longitud de la trayectoria T . ¿Es cerrada? [ii] Idear una manera de comprobar que el segundo, quinto y séptimo arcos recorridos en T son también arcos de D . [iii] Implementar la idea de 2.1[ii] en un bucle for que compruebe que T es una trayectoria válida (es decir, que cada arco de T es un arco de D ). [iv] Programar el mismo algoritmo, pero en un bucle while. [v] Construir una matriz que nos indique qué arcos recorre T y cuantas veces cada uno de ellos. ¿Cómo la formarı́amos mediante un algoritmo? [vi] ¿Como comprobarı́as si T es un camino? ¿Y una cola? ¿Cambia la manera de comprobarlo si T fuera una trayectoria cerrada? Prof: José Antonio Abia Vian I.T.I. en Electricidad