Está en la página 1de 8

16-11238 Blanyer Vielma

1. Conceptos

 Defina un grafo no dirigido:

Un grafo no dirigido es un conjunto de nodos conectado por medio de aristas (arcos) que no
poseen una dirección definida, la conexión entre nodos llamada arista es simétrica, se puede partir
del nodo a al nodo b (a ≠ b), viceversa. Se denota de la forma G = (V, E), donde V es el conjunto
de vértices y E es el conjunto de arcos, en el caso de los no dirigidos los arcos se denotan de la
forma e={a, b}.

 Defina un grafo dirigido:


Un grafo dirigido es similar al concepto anterior de grafo no dirigido son un conjunto de
nodos que están unidos por aristas. La diferencia está en que las aristas no son simétricas,
solo tienen una dirección, un nodo de salida y un nodo de llegada, en este caso para que sea
posible ir entre dos nodos en ambas direcciones debe haber dos arcos con las direcciones
contrarias. Y la representación de los nodos es e = (a, b) que es diferente a e = (b, a), el
primero nodo es el de salida, y el segundo el de llegada.

 Defina el grado de un nodo:


El grado de un nodo denotado como δ(n) para el caso de grafos nos dirigidos es la
representación del número de nodos que están conectados al nodo n, tan simple como eso.
Para el caso de los nodos no dirigidos existen dos tipos de grados, el grado interior y el grado
exterior. El grado interior de un nodo n representa el número de nodos que lo tienen como
nodo de llegada, y el nodo exterior es lo contrario, es el número de nodos que tienen a n
como nodo de salida.

 ¿Qué significa que un nodo sea adyacente a otro?


Uno nodo “y” es adyacente a un nodo “x” si y solo si en el conjunto de aristas existe una
arista que posee a “x” y “y”. Formalmente se escribiría de la siguiente forma:
(∃ e | e ∈ E : (∃ x, y | x, y ∈ e ∧ x, y ∈ V : x ≠ y ))

 ¿Qué significa que un nodo es incidente a una arista?


Un nodo es incidente a una arista si y solo si la arista es adyacente al nodo. Esto quiere
decir que dado un grafo G= (V, E), tenemos un lado arbitrario e perteneciente a E y n un nodo
arbitrario perteneciente a V, tenemos que si n pertenece a e, entonces e es adyacente a n y
por tanto n es incidente a la arista e.
 Defina:

o Grafo Completo: Un grafo completo es aquel en que todos sus nodos están
conectados entre todos. Son todas las combinaciones posibles. Formalmente es
escrito como G = (V, VxV).

o Grafo Inducido: Es un tipo de grafo que se construye a partir de otro grafo, donde
G’ = (V’, E’) tiene a V’ ⊆ V y el conjunto E’ ⊆ E tiene todas las aristas de E que
contienen los nodos que están en V’ sin excepción de alguna.

o Clique de un grafo: Dado un grafo G = (V, E), el clique del grafo es un subconjunto
de V, denotémoslo V’ ⊆ V, en el cual el grafo inducido por V’ genera un grafo
completo, es decir que E’ ⊆ E contiene las aristas de todas las combinaciones
posibles de los nodos de V’, es decir E=V’xV’.

o Grafo Bipartito: Es un grafo que se puede dividir en dos conjuntos de vértices los
cuales no poseen una arista entre ellos, es decir sea V el conjunto de vértices este se
puede dividir en V1 U V2, de tal forma que para toda arista e perteneciente a E no
existe ninguna arista x1, x2 ∈ V1 tal que e = {x1, x2} ∈ E, y lo análogo para un y1, y2
arbitrarios pertenecientes a V2.

o Grafo Euleriano: Es un grafo que posee en todos los grados de sus vértices un
número par, de esta forma se asegura que pueda haber un camino euleriano, es decir
un camino en el que se recorran todas sus aristas y se pueda terminar en el mismo
nodo de inicio, cumpliendo así la condición de ciclo euleriano (Hay un camino que
empieza y termina en el mismo nodo recorriendo todas las aristas una sola vez).

o Grafo hamiltoniano: Es un grafo que admite a lo sumo un ciclo hamiltoniano,


recordemos que un ciclo hamiltoniano es aquel camino hamiltoniano que tiene
longitud |V|, y como es hamiltoniano no se repite ningún nodo.

o Grafo regular: Es un grafo en el que los grados de cada nodo tienen el valor K, es
decir todos los nodos están conectados al mismo número de nodos. Si la K es 3 se le
dice grafo 3-regular, y eso quiere decir que el grado de cada nodo es 3.

o Número cromático de un grafo: Es la definición que se da cuando se aplican colores


a los nodos de un grafo, es el número cromático es el número mínimo de colores que
permite el grafo con la condición de que no haya nodos adyacentes del mismo color.
De ese análisis es fácil ver si es un grafo bipartito, si el número cromático es 2.

o Grafo k−coloreable: Es un grafo que se le pueden asignar k colores distintas sin que
nodos del mismo color sean adyacentes, si tiene tres colores distintos se diría que es
k-coloreable.

o Ciclo de un grafo: Es aquel camino que inicie en un nodo y termine en el mismo sin
repetir ninguno de los nodos a excepción de la inicial (camino simple, pero termina
donde inicia). No es necesario que recorra todos los nodos y un grafo puede contener
múltiples caminos que forman un ciclo.
o Circuito de un grafo: Es similar al ciclo de un grafo solo que, para grafos dirigidos, es
un camino simple que termina donde inicia, y ningún nodo se repite a excepción del
primero.

o Alcanzabilidad en un grafo: Es la existencia de un camino desde un nodo a


arbitrario a un nodo arbitrario b, así el nodo b es alcanzable desde el nodo a. Esta
definición es la misma para nodos dirigidos y no dirigidos con la diferencia que en los
grafos no dirigidos el camino es simétrico entonces si b es alcanzable desde a si y
solo si a es alcanzable desde b (Esto se puede ver fácilmente estudiando las
diagonales de la matriz adyacente asociada al grafo).

o Dado un grafo G = (V, E), que representa Ek:

2. Aplicación de los conceptos

 Ejemplos de grafos Euleriano y uno Hamiltoniano


 De ejemplo de un grafo 2-regular:

 De un algoritmo (no importa su complejidad) para colorear un grafo con k colores:

El siguiente escrito en un psudolenguaje. Dado V como el conjunto de los vértices, y


adyacentesColor(v, color) una función que devuelve true si el color dado como
parámetro esta presente en uno de los vértices adyacentes. El código ira coloreando
por el orden de los números que representan los colores [0,1, 2, …, n], donde 0
representa la usencia de color. Se irán pintando los vértices que no compartan relación
del 1 (hasta que no haya más vértice coloreable con 1, pasa al siguiente color), luego
del 2, y así hasta que se pinten todos los vértices.

 De un algoritmo para determinar si un grafo es bipartito o no:


Dado el código anterior que nos permite pintar un grafo, haciendo uso del siguiente código se
puede obtener el número cromático del grafo y si el número es dos el grafo es bipartito, en
caso contrario no. Como los colores están organizados en número significa que directamente
la existencia de un vértice con el color n, nos dice que hay n colores.

La variable x vendría siendo el número cromático, al ser dos es bipartito.

 Asuma que usted ha construido un algoritmo que indica si un grafo tiene un clique de
tamaño k. Construya un algoritmo que indique si un grafo no es k−coloreable (estando
100% seguro) o retorne ”No se”:

 Representación de un grafo mediante lista de adyacencias y matriz de adyacencias del


grafo en la figura 1.
Representación mediante matriz de adyacencia

Nr 1 2 3 4 5 6 7 8 9 10 11
Nodo
Info 3 2 1 1 1 1 0 1 1 2 3

Existe 1 2 3 4 5 6 7 8 9 10 11
arco
1 0 1 0 0 0 0 0 0 0 0 0
2 1 0 1 1 1 0 0 0 0 0 0
3 0 1 0 0 0 1 1 0 0 0 0
4 0 1 0 0 1 0 1 0 0 0 0
5 0 1 0 1 0 0 1 0 1 0 0
6 0 0 1 0 0 0 1 0 0 0 0
7 0 0 1 1 1 1 0 1 1 0 0
8 0 0 0 0 0 0 1 0 1 1 0
9 0 0 0 0 1 0 1 1 0 0 0
10 0 0 0 0 0 0 0 1 0 0 1
11 0 0 0 0 0 0 0 0 0 1 0

Representación por lista de adyacencia

 Diga que ventajas presenta la representación de un grafo mediante matriz de


adyacencia y que desventajas presenta:
La matriz de adyacencia tiene mucha ventaja en el tiempo de determinar si dos nodos
están conectados por una arista y si este es simétrico, de igual forma podemos cambiar su
valor fácilmente, desconectado y conectando nodos con un tiempo de ejecución constante. La
gran desventaja que tiene es que para lo arcos que no están conectados también se reserva
un espacio de memoria que contiene el valor 0, este espacio ocupa un byte de memoria (si
operamos con bool en vez de int). Así que entre mas grande sea la matriz mas espacio
innecesario de memoria ocupara, y para eliminar nodos hay que construir una nueva matriz lo
cual tomaría mucho tiempo.

3. Demostraciones:

 Un grafo es 2-coloreable si y solo si es bipartito:

Demostración:

p: X(G) = 2 (número cromático)


q: G es un Grafo Bipartito
r: G es un grafo 2-Coloreable

Lema 1: p ≡ q
Definición 1.4.1: p ≡ r
p ≡ q ∧ p ≡ r
≡ ⟨Implicación mutua dos veces⟩
(p ⇒ q) ∧ (q ⇒ p) ∧ (p ⇒ r) ∧ (r ⇒ p)
≡ ⟨Simetría de ∧⟩
(q ⇒ p) ∧ (p ⇒ r) ∧ (r ⇒ p) ∧ (p ⇒ q)
≡ ⟨Transitividad 2 veces⟩
(q ⇒ r) ∧ (r ⇒ q)
≡ ⟨Implicación mutua⟩
q≡r

∴ q≡r

 Si un grafo es k−coloreable entonces es también (k + n)−coloreable para n ≥ 1:


Demostración:
En la definición de numero cromático de un grafo se nos dice que X(G)=k es el mínimo
numero de colores que se puede colorear G sin que dos nodos adyacentes tengan el mismo
color, por lo que como en la premisa se plantea n con los valores n ≥ 1 y G un grafo k-
coloreable, siempre que este acotado en |V| - k ≥ n ≥ 1 (no se pueden colorear más vértices
de los que el grafo tiene), es posible agregar más colores al grafo.
Por tanto, para |V| - k ≥ n ≥ 1 la premisa es verdadera

 Si un grafo tiene un clique de tamaño k entonces el grafo es (k−1)−coloreable:


Contraejemplo:
Tenemos G=(V, E), donde V=V’U{x}, E=E’U{x, v} y E’=V’xV’, donde v es un nodo arbitrario de
V’, como un clique de G seria V’, el cual el grafo inducido resultante seria G[V’]=(V’, V’XV’),
entonces por definición sabemos que G[V’], donde |V’|=k (por la premisa), es un grafo
completo por lo que todos sus nodos son adyacentes entre sí, por tanto solo puede ser k-
coloreable, asi que es imposible que sea (k-1)-coloreable. Se concluye que la proposición es
falsa.

También podría gustarte