Está en la página 1de 125

Teoría de Grafos

Introducción
Un Grafo G está formado por un conjunto de nodos y
un conjunto de arcos que los relaciona.
Ejemplo: Los puentes de Königsberg (Euler, 1736)

Fuente: Google Maps


Fuente: Mathematics Skill Building

Autómatas y Matemáticas Discretas p. 2 / 125


Introducción
Un Grafo G está formado por un conjunto de nodos y
un conjunto de arcos que los relaciona.
Ejemplo: Redes sociales

Autómatas y Matemáticas Discretas p. 3 / 125


Introducción
Un Grafo G está formado por un conjunto de nodos y
un conjunto de arcos que los relaciona.
Ejemplo: Redes de transporte y/o comunicaciones

Fuente: www.planometromadrid.org

Autómatas y Matemáticas Discretas p. 4 / 125


Introducción
En general: Son modelos matemáticos de situaciones
reales
Algunas aplicaciones:
§ Ciencias Sociales, Lingüística
§ Compiladores y traductores
§ Redes
§ Planificación, Inteligencia Artificial
§ Lenguajes Formales, Lógica
§ Organización y Recuperación de Información
Más ejemplos:
§ Internet, mapas de carreteras, circuitos eléctricos, árboles
genealógicos, …

Autómatas y Matemáticas Discretas p. 5 / 125


Contenidos
1. Conceptos básicos y representación
2. Accesibilidad y conexión
3. Caminos eulerianos y hamiltonianos
4. Grafos y relaciones
5. Árboles
6. Planaridad y coloreado
7. Grafos ponderados

Autómatas y Matemáticas Discretas p. 6 / 125


Conceptos básicos
Un Grafo G es una terna (V, A, p):
§ V: Conjunto de vértices, A: Conjunto de arcos
§ p: aplicación de incidencia p: A ® P2(V)
p(a) = {u, v} u y v son los extremos del arco ‘a’
u y v son vértices adyacentes
p(a) = {u} a es un bucle

Ejemplo: Facebook
§ V: Conjunto de personas
§ p: Relación de amistad (hay un arco entre dos personas si y
solo si son amigas)
§ Es una relación mutua

Autómatas y Matemáticas Discretas p. 7 / 125


Conceptos básicos
Un Digrafo D es una terna (V, A, p):
§ V: Conjunto de vértices, A: Conjunto de arcos
§ p: aplicación de incidencia p: A ® VxV
p(a) = (u, v) u es el extremo inicial u origen de ‘a’
v es el extremo final o destino de ‘a’
p(a) = (u, u) a es un bucle

Ejemplo: Twitter e Instagram


§ V: Conjunto de personas
§ p: Relación “follow” (hay un arco desde una persona hacia
otra, si la primera “sigue” a la segunda)
§ No tiene por qué ser una relación mutua

Autómatas y Matemáticas Discretas p. 8 / 125


Representaciones de un grafo
1. Definir V, A y p
2. Representación gráfica. Cuidado! no es única
3. Representación matricial (topológica)
Ø Representación gráfica:
b b
a
a

Relación
“ser amigo/a de”
c
c
d
d

Grafo No Dirigido

Autómatas y Matemáticas Discretas p. 9 / 125


Representaciones de un grafo
1. Definir V, A y p
2. Representación gráfica. Cuidado! no es única
3. Representación matricial (topológica)
Ø Representación gráfica:
b b
a
a

Relación
“ser hijo/a de”
c
c
d
d

Grafo Dirigido

Autómatas y Matemáticas Discretas p. 10 / 125


Ejemplo: Repr. gráfica
Un grafo « Varias representaciones gráficas

v1
a5 a1 a8

a6
v5 v2 a1 a2 a3 a4
v1 v2 v3 v4 v5
a7
a8 a7
a4 a2
a6
v4 a3 v3
a5

Autómatas y Matemáticas Discretas p. 11 / 125


Ejemplo: Grafo ND
G = (V, A, p) con:
§ V = {1, 2, 3, 4, 5}, A = {a, b, c, d, e, f, g, h, i, j, k}
§ p dada por:
p(a) = {1, 2} p(b) = {1, 5} p(c) = {2, 5} p(d) = {3, 5}
p(e) = {4, 5} p(f) = {3, 1} p(g) = {3, 4} p(h) = {2, 4}
p(i) = {1, 3} p(j) = {3, 4} p(k) = {2, 4}

a 2
c
1 f

i y f tienen los mismos G es


i
3
ND
extremos b h k
d
g
5
j
e
4

Autómatas y Matemáticas Discretas p. 12 / 125


Ejemplo: Grafo D
G = (V, A, p) con:
§ V = {1, 2, 3, 4, 5}, A = {a, b, c, d, e, f, g, h, i, j, k}
§ p dada por:
p(a) = (1, 2) p(b) = (1, 5) p(c) = (2, 5) p(d) = (3, 5)
p(e) = (4, 5) p(f) = (1, 3) p(g) = (3, 4) p(h) = (2, 4)
p(i) = (1, 3) p(j) = (3, 4) p(k) = (2, 4)

a 2
c
1 f

sD
3
b
Ge
h k
d
g
5
j
e
4

Autómatas y Matemáticas Discretas p. 13 / 125


Ejemplo
G = (V, A, p) con:
§ V = {1, 2, 3, 4, 5}, A = {a, b, c, d, e, f, g, h, i, j, k}
§ p dada por:
p(a) = (1, 2) p(b) = (1, 5) p(c) = (2, 5) p(d) = (3, 5)
p(e) = (4, 5) p(f) = (1, 3) p(g) = (3, 4) p(h) = (2, 4)
p(i) = (1, 3) p(j) = (3, 4) p(k) = (2, 4) p(h) = (1, 3)

G no es grafo
Ø Los nombres de los arcos no son etiquetas
Ø Si lo fueran, h podría etiquetar dos arcos y G sería un grafo
etiquetado. En ese caso, la aplicación no se define así
Ø Cuando las etiquetas de los arcos son números, se llama
grafo ponderado.

Autómatas y Matemáticas Discretas p. 14 / 125


Representaciones de un grafo
Ø Matriz de adyacencia (Grafos)
§ Sea G = (V, A, p), con V = {v1, v2, …, vn}
𝑴𝒂𝒅𝒚 𝑮 = (𝑎$% ) : i,j = 1, …, n
𝑎$% ≡ Número de arcos con extremos {vi, vj}

a4 æ0 2 0 0 0ö
ç ÷
v1 v4 ç2 0 1 0 0÷
a1 a6 M ady (G ) = ç 0 1 0 0 0÷
a2 a5 ç ÷
ç0 0 0 1 2÷
v2 v3 v5 ç0 0 0 2 0 ÷ø
a3 è

Autómatas y Matemáticas Discretas p. 15 / 125


Representaciones de un grafo
Ø Matriz de adyacencia (Digrafos)
§ Sea G = (V, A, p), con V = {v1, v2, …, vn}
𝑴𝒂𝒅𝒚 𝑮 = (𝑎$% ) : i,j = 1, …, n
𝑎$% ≡ Número de arcos con origen vi y destino vj

a4 æ0 1 0 0 0ö
ç ÷
v1 v4 ç1 0 1 0 0÷
a1 a6 M ady (G ) = ç 0 0 0 0 0÷
a2 a5 ç ÷
ç0 0 0 1 0÷
v2 v3 v5 ç0 0 0 2 0 ÷ø
a3 è

Autómatas y Matemáticas Discretas p. 16 / 125


Conceptos básicos: D(G)
Digrafo asociado a un grafo G: D(G)
Por cada arco p(a) = {u, v}, u ≠ v en G:
§ Dos arcos a1, a2: p(a1) = (u, v), p(a2) = (v, u)
Por cada bucle p(a) = {u}:
§ Un arco a: p(a) = (u, u)
1
1

2 2

3
3

4 G 4 D(G)

Autómatas y Matemáticas Discretas p. 17 / 125


Conceptos básicos. G(D)
Grafo asociado a un dígrafo D: G(D)
Cada arco se convierte en un arco no dirigido

a 2 a 2
c c
1 f 1 f

i i
3 3
b h k b h k
d d
g g
5 5
j j
e e
4 4
D G(D)

Autómatas y Matemáticas Discretas p. 18 / 125


Ejemplo

1 1 1

2 2 2

3 3 3

4 4 4

G D(G) G(D(G))

Autómatas y Matemáticas Discretas p. 19 / 125


Conceptos básicos: Subgrafo
G’=(V’, A’, p’) es subgrafo de G = (V, A, p), si:
§ G’ es un grafo (digrafo si G es un digrafo)
§ V’ Í V
§ A’ Í A
§ p’ = p|A’
G’=(V’, A’, p’) es subgrafo maximal de G = (V, A, p),
si:
§ V’ = V
§ A’ Í A
§ p’ = p|A’

Autómatas y Matemáticas Discretas p. 20 / 125


Conceptos básicos: Subgrafos
Determinado por…
Ø …un conjunto de arcos A’ Í A:
§ G(A’) = (V’, A’, p|A’) tal que V’={vértices que son extremos de algún
arco en A’}
Ø …conjunto de vértices V’ Í V:
§ G(A’) = (V’, A’, p|A’) tal que A’={arcos que une los nodos de V’}
Ø Subgrafo estrellado determinado por vÎV:
§ G(v) = (V’, A’, p|A’) tal que:
§ A’={arcos que salen de v (dígrafo) / son extremos de v
(grafos)}
§ V’={v y todos los nodos que son extremos de algún arco en
A’}

Autómatas y Matemáticas Discretas p. 21 / 125


Ejemplo
Ø Subgrafo

b 2 2
a

1 d
c e c

3 3

4 g 4 g
f
h h
5 5

Autómatas y Matemáticas Discretas p. 22 / 125


Ejemplo
Ø Subgrafo maximal

b 2 b 2
a a

1 d 1 d
c e e

3 3

4 g 4
f f
h h
5 5

Autómatas y Matemáticas Discretas p. 23 / 125


Ejemplo
Ø Subgrafo determinado por vértices V’={2, 3, 5}

b 2 2
a

1 d d
c e e
({2 ,3 ,5 })
G
3 3

4 g
f f
h
5 5

Autómatas y Matemáticas Discretas p. 24 / 125


Ejemplo
Ø Subgrafo determinado por arcos A’={a,c,g}

b 2 2
a a

1 d 1
c e c

})
3 G({a,c,g
4 g 4 g
f
h
5 5

Autómatas y Matemáticas Discretas p. 25 / 125


Ejemplo
Ø Subgrafo estrellado determinado por el vértice 2

b 2 2
a a

1 d 1 d
c e c

3 3

4 g 4
f
h
5

Autómatas y Matemáticas Discretas p. 26 / 125


Conceptos básicos
Un grafo/digrafo G=(V, A, p) es simple si p es
inyectiva (no hay arcos “repetidos”)
§ G* es el grafo/digrafo simple asociado a G
Vértice aislado: No es extremo de ningún arco (ojo, ni
siquiera bucles)
Grafo nulo: Todos sus vértices son aislados
1 1 1

2 2 2

3 3 3
4 4 4
Grafo simple Grafo NO simple Grafo Nulo
Autómatas y Matemáticas Discretas p. 27 / 125
Unión e Intersección
Dados G1=(V1, A1, p1) y G2=(V2, A2, p2)
G1 È G2 = (V1 È V2, A1 È A2, p)
§ siendo p(a) = p1(a) si aÎA1…
§ … y p(a) = p2(a) si aÎA2

Cuidado! Para que p sea una aplicación, y por tanto G1 È G2 sea


un grafo, es condición necesaria y suficiente que:
p1(a) = p2(a), para todo aÎA1Ç A2

Análogamente para G1 Ç G2

Autómatas y Matemáticas Discretas p. 28 / 125


Unión e Intersección: ejemplos
G1 G2 G1∨G2 G1∧G2
e e
2 2 4 2 4 2
a a
d d
b b
3 3 3 3
f f
c c c c
5 5 5 5

G1 G2
a En este caso no existe G1∨G2
a 2 3
2 3 ni G1∧G2, debido a que el
b c arco “a” tiene extremos
d diferentes en G1 y G2
5

Autómatas y Matemáticas Discretas p. 29 / 125


Grado
En grafos no dirigidos:
Grado de un vértice ‘v’, d(v):
§ Número de arcos que inciden en ‘v’ (los bucles cuentan
como 2 arcos).
En digrafos:
Grado de entrada de ‘v’, dE(v) (dI(v) en inglés):
§ Número de arcos cuyo destino es ‘v’
Grado de salida de ‘v’, dS(v) (dO(v) en inglés):
§ Número de arcos cuyo origen es ‘v’

Autómatas y Matemáticas Discretas p. 30 / 125


Grado
Teorema: Sea G=(V, A, p) un grafo:

åd (v) = 2 A
vÎV
Sea aÎA un arco cualquiera del grafo, éste contribuye en
una unidad al grado total de cada uno de sus vértices
extremos, por lo que se cuenta dos veces.
Ejemplo de uso: Algoritmo de Ranking de Google
§ Cada web es un nodo
§ Cada link desde una web a otra es un arco (grafo dirigido)
§ Ordena las páginas en función de sus grados dE(v) y dS(v)
Autómatas y Matemáticas Discretas p. 31 / 125
Grafo regular
Un grafo G = (V, A, p) es regular si todos sus vértices
tienen el mismo grado.
Se le denomina k-regular si todos sus vértices tienen
grado k. 1 2

2-regular
1 2
3 4

1 2

3 4 5 6 3-regular
3 4

Autómatas y Matemáticas Discretas p. 32 / 125


Grafo completo y bipartido
Sea G=(V, A, p) un grafo no dirigido, simple y sin
bucles:
§ G es completo (Kn) si cada vértice es adyacente del resto.
• Siendo n = |V|
§ G es bipartido si V = V1 È V2 y V1 Ç V2= Æ de manera que
cada arco {a, b} en G cumple que a Î V1 y b ÎV2
§ Si cada vértice de V1 está unido a todo vértice de V2, el
grafo es bipartido completo (Kn,m)
• Siendo n = |V1| y m = |V2 |

Si G es dirigido, entonces es completo si cada pareja


de vértices están unidos por, al menos, un arco

Autómatas y Matemáticas Discretas p. 33 / 125


Grafo completo y bipartido

Grafo completo K3 Grafo completo K4 Digrafo completo

Grafo bipartido Grafo bipartido completo K2,3

Autómatas y Matemáticas Discretas p. 34 / 125


Caminos
Un camino en un grafo G es una sucesión:
v 0 a1 v 1 a2 v 2 … an v n
Tal que:
§ Los extremos del arco ai, son vi-1 y vi
§ n ≥ 0 es la longitud del camino
§ v0 y vn son los extremos inicial y final respectivamente
§ v1, …, vn-1 se denominan vértices interiores
§ Otras representaciones
• a1 a2 … an
• v0 v1 v2 … vn (Sólo si G es simple!)

Autómatas y Matemáticas Discretas p. 35 / 125


Caminos
Ø Camino cerrado: v0 = vn (abierto: v0 ≠ vn)
Ø Camino simple: Todos sus arcos son distintos dos a
dos
Ø Camino elemental: Todos sus vértices son distintos dos
a dos, excepto a lo sumo, los extremos.
Ø Ciclo: Es un camino que cumple que:
§ Es cerrado
§ Es elemental
§ Es simple
§ Tiene longitud positiva: n > 0

Autómatas y Matemáticas Discretas p. 36 / 125


Ejemplo: Caminos

1
a
h b 6a1b3c2d4
2
6 i

g c Características:
e § Longitud: 4
5 d § Abierto
3
f § Simple
4 § Elemental
§ No es un ciclo

Autómatas y Matemáticas Discretas p. 37 / 125


Ejemplo: Caminos

1
a
h b 6a1h6g5f4
2
6 i

g c Características:
e § Longitud: 4
5 d § Abierto
3
f § Simple
4 § No es elemental
§ No es un ciclo

Autómatas y Matemáticas Discretas p. 38 / 125


Ejemplo: Caminos

1
a
h b 6a1h6a1b3c2d4e6
2
6 i

g c Características:
e § Longitud: 7
5 d § Cerrado
3
f § No Simple
4 § No es elemental
§ No es un ciclo

Autómatas y Matemáticas Discretas p. 39 / 125


Ejemplo: Caminos

1
a
h b 6a1b3c2d4e6
2
6 i

g c Características:
e § Longitud: 5
5 d § Cerrado
3
f § Simple
4 § Elemental
§ Ciclo

Relacionado: Hipótesis de los Seis Grados de Separación


Autómatas y Matemáticas Discretas p. 40 / 125
Accesibilidad (Digrafo D)
Sean u y v vértices de D
§ v es accesible desde u si, y solo si, existe un camino desde
u hasta v
§ v es k-accesible desde u si, y solo si, existe un camino de
longitud k desde u hasta v
Ø Matriz de accesibilidad, M(D):
𝑚$% = 1 ⇔ 𝑣% es accesible desde 𝑣$

Ø Matriz de accesibilidad de orden k, Mk(D):


(')
𝑚$% = 1 ⇔ 𝑣% es k-accesible desde 𝑣$

Autómatas y Matemáticas Discretas p. 41 / 125


Accesibilidad
𝑴𝒌 = 𝑴×𝑴𝒌$𝟏 , k>1
§ x: producto booleano de matrices

æ a11 ! a1n ö æ b11 ! b1n ö æ c11 ! c1n ö


ç ÷ ç ÷ ç ÷
Sean Mk = ç " " ÷, M =ç " " ÷, M k -1 = ç " " ÷
ça ! a ÷ çb ! b ÷ çc ! c ÷
è n1 nn ø è n1 nn ø è n1 nn ø

¿
æ a11 ! a1n ö æ b11 ! b1n ö æ c11 ! c1n ö

?
ç ÷ ç ÷ ç ÷
ç " " ÷=ç " " ÷xç " " ÷
ç a ! a ÷ çb ! b ÷ çc ! c ÷
è n1 nn ø è n1 nn ø è n1 nn ø

Autómatas y Matemáticas Discretas p. 42 / 125


Accesibilidad

¿
æ a11 ! a1n ö æ b11 ! b1n ö æ c11 ! c1n ö

?
ç ÷ ç ÷ ç ÷
ç " " ÷=ç " " ÷xç " " ÷
ç a ! a ÷ çb ! b ÷ çc ! c ÷
è n1 nn ø è n1 nn ø è n1 nn ø

&
𝑎!" = ( 𝑏!# · 𝑐#" = 𝑏!% · 𝑐%" ⊕ ⋯ ⊕ 𝑏!& · 𝑐&" ∀𝑖, 𝑗 = 1, … , 𝑛
#$%

𝒂𝒊𝒋 = 𝟏 ⟺ ∃𝒑: 𝒃𝒊𝒑 · 𝒄𝒑𝒋 = 𝟏

Autómatas y Matemáticas Discretas p. 43 / 125


Accesibilidad
𝒂𝒊𝒋 = 𝟏 ⟺ ∃𝒑 ∶ 𝒃𝒊𝒑 · 𝒄𝒑𝒋 = 𝟏

Existe un camino de longitud Existe un camino de longitud 1


k desde vi hasta vj desde vi hasta vp
Existe un camino de longitud
k-1 desde vp hasta vj

vi vj vi vp vj

longitud k-1
longitud k

Autómatas y Matemáticas Discretas p. 44 / 125


Accesibilidad
𝑴𝒌 = 𝑴𝒌 (k ≥ 1) (potencia booleana)
§ Caso base:
𝑀5 = 𝑀5 : trivial
§ Hipótesis de inducción: Supongamos cierto que para k,
𝑀' = 𝑀'

§ Comprobamos para k+1:

𝑀675 = 𝑀×𝑀6 = 𝑀×𝑀6 = 𝑀675

Demostración anterior Hipótesis de inducción

Autómatas y Matemáticas Discretas p. 45 / 125


Accesibilidad
Ø Matriz de accesibilidad, M(D)
§ vj es accesible desde vi (i ≠ j) si, y solo si, vj es k-accesible
desde vi, para algún k ≥ 1
§ Todo vi es accesible desde si mismo

𝑴 𝑫 = 𝑰 ⊕ ( 𝑴𝒌
𝒌(𝟏

§ No hace falta calcular todas las potencias (infinitas)


§ D = (V, A, p), n = |V|, vi ¹ vj Î V
vj es m-accesible desde vi para algún m ≥ 1

vj es k-accesible desde vi para algún 1 ≤ k ≤ n-1

Autómatas y Matemáticas Discretas p. 46 / 125


Accesibilidad
Hay un camino de u a v

Hay un camino elemental de u a v

vi w vj

Matriz de Accesibilidad de D, M(D):

𝑴 𝑫 = 𝑰 ⊕ 𝑴 ⊕ ⋯ ⊕ 𝑴𝒏"𝟏 , 𝒏 = |𝑽|

Autómatas y Matemáticas Discretas p. 47 / 125


Conexión (Grafo G)
Dos vértices u y v están conectados en G sii existe un
camino que los une.
G es conexo si, y sólo si, todo par de vértices u y v
están conectados
La relación de conexión, C, definida en V como:
uCv Û u y v están conectados
§ Es una relación de equivalencia

Autómatas y Matemáticas Discretas p. 48 / 125


Conexión
Componente conexa: Subgrafo de G determinado
por los vértices de una clase de equivalencia de C.
§ Las componentes conexas son grafos conexos
§ Las componentes conexas de G son una partición de G:
G = G1 È G2 È … È Gn , Gi Ç Gj = Æ "i ¹ j
G es conexo si posee una única componente conexa.
a b c
3 componentes conexas

d e f

Autómatas y Matemáticas Discretas p. 49 / 125


Conexión (Grafo G)
Ø Corolario
§ G es conexo Û "u, vÎV existe un camino simple en G que
conecta u con v.
x1 x2 xn
u … v
Sean u, v dos vértices distintos de G. Camino de longitud mínima
G conexo, hay al menos un camino entre u y v.
Supongamos que el camino más corto entre u y v no es simple
entonces xi= xj para algunos i, j ,0 £ i < j
u … xi-1 a xi b … a xj b xj+1 … v o u … xi-1 a xi b … b xj a xj+1 … v
dicc ión!
ra
Cont
Existe un camino de longitud menor
u x1 … xi-1 a xj b … xn v o u x1 … xi-1 a xj+1 … xn v

Autómatas y Matemáticas Discretas p. 50 / 125


Conexión
Un grafo simple y conexo con n vértices, tiene al
menos n-1 arcos (n ³1)
Demostración por inducción completa:
§ Caso base: n=1 (trivial)
§ n>1
G’l, l £ m
.
.
v .
m .

G’2

G’1
Autómatas y Matemáticas Discretas p. 51 / 125
Conexión fuerte
Digrafo fuertemente conexo:
§ Todo vértice es accesible desde cualquier otro
Las componentes fuertemente conexas de un dígrafo
son las clases de equivalencia bajo la relación “Ser
mutuamente accesibles”

1 2 3

4 5

Autómatas y Matemáticas Discretas p. 52 / 125


Caminos Eulerianos
Los puentes de Königsberg (1736)
§ Cruza todos los puentes sin pasar dos veces por el mismo

1 1

3 3
4 4

2 2

Autómatas y Matemáticas Discretas p. 53 / 125


Caminos Eulerianos (Grafos ND)
Un camino euleriano es un camino simple que
contiene todos los arcos del grafo.
§ Recorre todos los arcos del grafo “sin levantar el lápiz“
Sea G=(V, A, p) un grafo ND tal que A¹Æ
G no tiene vértices aislados y posee un camino euleriano
cerrado (circuito euleriano)

G es conexo y todos sus vértices son de grado par

Autómatas y Matemáticas Discretas p. 54 / 125


Caminos Eulerianos
Ø Algoritmo para construir un camino euleriano cerrado:
1. Elegir un vértice cualquiera y hacer un camino simple
hasta que no se pueda seguir.
• Ejemplo: 1 a 3 b 5 g 10 i 8 j 6 o 1 (no hay más arcos después de 1)
2. Eliminar los arcos utilizados
1 1
o a o a

6 l 7 2 3 6 l 7 2 3
f f
j k n e c b j k n e c b
m d m d
8 9 4 5 8 9 4 5
i g i g
h 10 h 10

Autómatas y Matemáticas Discretas p. 55 / 125


Caminos Eulerianos
3. Repetir pasos 1 y 2 recursivamente con las componentes
conexas restantes hasta que no queden arcos sin recorrer
§ Empezar el camino por uno de los vértices del camino de partida
4. Integrar todos los caminos
6l9n7m8k6 5d4e2f3c5
1 1

6 7 6 7
G’2
l 2 3 G’1 l 2 3
f f
k n e c k n e c
m d m d
8 9 4 5 8 9 4 5

h 10 G’3 h 10
10 h 10
Camino de partida: 1 a 3 b 5 g 10 i 8 j 6 o 1
C’1 C’2 C’3

Camino final: 1 a b 5 d 4 e 2 f 3 c 5 g 10 h 10 i 8 j 6 l 9 n 7 m 8 k 6 o 1
Autómatas y Matemáticas Discretas p. 56 / 125
Caminos Eulerianos
G no tiene vértices aislados y posee un camino euleriano no
cerrado

G es conexo y tiene exactamente 2 vértices de grado impar

b c
2 3 4
Ejemplo: construye un a
k
camino euleriano no 1
j l d
cerrado para el i
7 6 5
h g
siguiente grafo: f e
8
Autómatas y Matemáticas Discretas p. 57 / 125
Caminos Eulerianos
• Cómo construir un camino euleriano no cerrado
1. Añadir un nuevo arco (“0” en el ejemplo) entre los dos vértices de
grado impar, para que así todos los vértices tengan grado par:
b c
2 3 4
a
k
1 0 l d
j
i
7 h 6 5
g
f e
8
2. Construir un camino euleriano cerrado, mediante el método explicado
anteriormente:
• Supongamos que sale 1 a 2 0 7 h 6 f 8 e 5 g 6 k 3 c 4 d 5 l 2 b 3 j 7 i 1
3. Quitar del camino el arco “0” que añadimos antes:
• Resultado final: 7 h 6 f 8 e 5 g 6 k 3 c 4 d 5 l 2 b 3 j 7 i 1 a 2
Autómatas y Matemáticas Discretas p. 58 / 125
Caminos Hamiltonianos
Un camino hamiltoniano es un camino elemental que
contiene todos los vértices del grafo.
1 1 Tiene camino
a No tiene a
camino hamiltoniano
2 2
c b hamiltoniano c b abierto
3 4
d (1a2b4d3)
3 4

Tiene camino 1
1 a No tiene
a
hamiltoniano abierto e 2 camino
e 2 (1a2b4d3) y cerrado c b
c b hamiltoniano
(1a2b4d3e1) d
d 3 4
3 4

Autómatas y Matemáticas Discretas p. 59 / 125


Caminos Hamiltonianos

Teorema: Todo dígrafo completo posee un camino


hamiltoniano.
Demostración:
v1 v2 ..... vk

§ Imagina que tenemos un camino a medio hacer, y queremos


añadir un nuevo vértice al camino… (continúa en la
siguiente diapositiva)

Autómatas y Matemáticas Discretas p. 60 / 125


Caminos Hamiltonianos
Ø Entonces, siempre se da uno de estos casos:
§ Caso 1: Puede ir al principio
v1 ..... vi vi+1 ..... vk
u
§ Caso 2: Puede ir en el medio. ∃𝑖:
v1 ..... vi vi+1 ..... vk
u
§ Caso 3: Puede ir al final
v1 ..... vi vi+1 ..... vk
u
Autómatas y Matemáticas Discretas p. 61 / 125
Caminos Hamiltonianos
Ø Ejercicio: Construye un camino hamiltoniano para el siguiente
digrafo completo. Para ello aplica la demostración del teorema de
Hamilton, utilizando la ordenación de vértices 13425.
Ø Introducimos el vértice 1:
Camino: 1
Ø Introducimos el vértice 3:
2 ¿Puede ir al principio? SI
Camino: 3 1
Ø Introducimos el vértice 4:
1 ¿Puede ir al principio? NO
¿Puede ir entre el 3 y el 1? NO
Entonces, lo ponemos al final
Camino: 3 1 4
3 Ø Introducimos el vértice 2:
¿Puede ir al principio? NO
¿Puede ir entre el 3 y el 1? NO
4 ¿Puede ir entre el 1 y el 4? SI
Camino: 3 1 2 4
Ø Introducimos el vértice 5:
5 Ø ¿Puede ir al principio? SI
Camino: 5 3 1 2 4
Autómatas y Matemáticas Discretas p. 62 / 125
Digrafos simples y Relaciones
Un digrafo simple D=(V, A, p) puede representar una
relación R:
Existe un arco entre 𝑣$ e 𝑣% ⇔
⇔ ∃𝑎 ∈ 𝐴 ∶ 𝑝(𝑎) = 𝑣$ , 𝑣% ⇔ 𝑣$ 𝑅𝑣%

En ese caso podemos definir D=(V,R)


M(D) = Mady(D)=M1(D) = M ahora es también la
matriz de la relación (booleana)
𝑚$% = 1 ⇔ ∃𝑎 ∈ 𝐴 ∶ 𝑝(𝑎) = 𝑣$ , 𝑣% ⇔ 𝑣$ 𝑅𝑣%

Autómatas y Matemáticas Discretas p. 63 / 125


Relaciones: Propiedades
Ø Reflexiva (Ej. Números divisores):
∀𝑣! , 𝑣! 𝑅 𝑣! ∀𝑣! , ∃𝑎, 𝑝 𝑎 = (𝑣! , 𝑣! ) ∀𝑖 𝑚!! = 1 vi

Ø Simétrica (Ej. Hermandad):


∀𝑣! , 𝑣" ∀𝑣! , 𝑣" ∃𝑎, 𝑝 𝑎 = 𝑣! , 𝑣" ⇒ ∀𝑖, 𝑗 𝑚!" = 1 ⇒ vi
𝑣! 𝑅 𝑣" ⇒ 𝑣" 𝑅 𝑣! ⇒ ∃𝑏, 𝑝 𝑏 = (𝑣" , 𝑣! ) ⇒ 𝑚"! = 1 vj

Ø Antisimétrica (Ej. Ser descendiente de):


∀𝑣! ≠ 𝑣" ∀𝑣! ≠ 𝑣" ∃𝑎, 𝑝 𝑎 = (𝑣! , 𝑣" ) ⇒ ∀𝑖 ≠ j 𝑚!" = 1 ⇒ vi
𝑣! 𝑅 𝑣" ⇒ 𝑣" ~𝑅 𝑣! ⇒ ~∃𝑏, 𝑝 𝑏 = (𝑣" , 𝑣! ) ⇒ 𝑚"! = 0 X vj

Autómatas y Matemáticas Discretas p. 64 / 125


Relaciones: Propiedades
Ø Transitiva (Ej. Ser mayor que):
∀𝑣! , 𝑣" , 𝑣# ∀𝑣! , 𝑣" , 𝑣#
𝑣! 𝑅 𝑣" y 𝑣" 𝑅𝑣# ⇒ 𝑣! 𝑅 𝑣# ∃𝑎, 𝑝 𝑎 = (𝑣! , 𝑣" ) 𝑦 ∃𝑏 𝑝 𝑏 = (𝑣" , 𝑣# )
⇒ ∃𝑐, 𝑝 𝑐 = (𝑣! , 𝑣# )
∀𝑖, 𝑗, 𝑘
vi vj vk
𝑚!" = 1 𝑦 𝑚"# = 1 ⇒ 𝑚!# = 1

§ Si existe un camino de longitud 2 entre vi y vk, tiene que


existir también un camino de longitud 1 (un arco)

𝑴𝟐 ⊆ 𝑴 (A Í B sii "i, j, 𝑎!" = 1 Þ 𝑏!" = 1)

Autómatas y Matemáticas Discretas p. 65 / 125


Ejemplo
æ0 1 1 0 0ö
1 3 4 ç ÷
ç0 0 0 0 0÷
𝑀$ ⊆
M = ç0 0 0 1 1÷ 𝑀
2 5
ç ÷
ç0 0 0 0 0÷
ç0 0 0 0 0 ÷ø No es transitiva!
è

æ0 1 1 0 0ö æ0 1 1 0 0ö æ0 0 0 1 1ö
ç ÷ ç ÷ ç ÷
ç0 0 0 0 0÷ ç0 0 0 0 0÷ ç0 0 0 0 0÷
M 2 = ç0 0 0 1 1 ÷ xç 0 0 0 1 1÷ = ç0 0 0 0 0÷
ç ÷ ç ÷ ç ÷
ç0 0 0 0 0÷ ç0 0 0 0 0÷ ç0 0 0 0 0÷
ç0 0 0 0 0 ÷ø çè 0 0 0 0 0 ÷ø çè 0 0 0 0 0 ÷ø
è

Autómatas y Matemáticas Discretas p. 66 / 125


Ejercicio
Dibuja digrafos con tres vértices que cumplan:
§ Solo la propiedad reflexiva,
§ Solo la simétrica,
§ Solo la antisimétrica,
§ Solo la transitiva

Solo reflexiva: Solo simétrica: Solo antisimétrica: Solo transitiva:

1 2 1 2 1 2 1 2

3 3 3 3

Autómatas y Matemáticas Discretas p. 67 / 125


Relaciones binarias
Relación de equivalencia
§ Reflexiva
§ Simétrica
§ Transitiva
Relación de orden
§ Reflexiva
§ Antisimétrica
§ Transitiva
Relación de orden total ∀𝒗𝒊 , 𝒗𝒋 𝒗𝒊 ~𝑹 𝒗𝒋 ⇒ 𝒗𝒋 𝑹 𝒗𝒊

§ Relación de orden ∀𝒊, 𝒋 𝒎𝒊𝒋 = 𝟎 ⇒ 𝒎𝒋𝒊 = 𝟏

§ Todos los elementos están relacionados entre sí


Autómatas y Matemáticas Discretas p. 68 / 125
Menor relación que
contiene a R
¿Cuál es la menor relación que contiene a R y…
§ …es reflexiva?
§ …es antisimétrica? (no siempre se puede hacer)
§ …es simétrica?
§ …es transitiva?

§ …es de equivalencia?
§ …es de orden? (no siempre se puede hacer)
§ …es de orden total? (no siempre se puede hacer)

Autómatas y Matemáticas Discretas p. 69 / 125


Cierre transitivo
Cierre transitivo de R, RT: Menor relación transitiva
que contiene a R
Sea D=(V, R)
§ M su matriz de adyacencia
§ MT: Matriz de adyacencia del cierre transitivo de M
Entonces:
§ M ⊆ MD (𝑅 ⊆ 𝑅E )
§ MF ⊆ MD (𝑅E transitiva)
§ Si hay un camino no nulo de vi a vj, entonces mTij = 1

𝑴𝑻 = ( 𝑴𝒓
𝒓(𝟏
Autómatas y Matemáticas Discretas p. 70 / 125
Cierre transitivo
D = (V, R), n = |V|, vi Î V
vi es m-accesible desde vi para algún m ≥ 1

vi es k-accesible desde vi para algún 1 ≤ k ≤ n


• Si m £ n, no hay nada que probar
• Supongamos que m>n, por tanto m ³ n+1:
|V|=n Þ 2 de los m vértices xi, xi+1, …,xp, …xq,…, xj tienen que ser iguales
Sean xp= xq con i £ p < q < j Þ El camino contiene un ciclo
xi, xi+1,…, xp, xp+1,,…..,xq xq+1, …, xj
Luego el camino xi, xi+1,…, xp, xq+1, …, xi va desde xi hasta xj y tiene longitud m’<m
Si m’£ n, ya está.
Si no, tomar m=m’ y repetir el razonamiento hasta que m’ £ n.
Entonces k=m’
• Si R es reflexiva, entonces k=1

Autómatas y Matemáticas Discretas p. 71 / 125


Cierre transitivo

𝑴𝑻𝒂𝒅𝒚 = 𝑴 ⊕ ⋯ ⊕ 𝑴𝒏 , 𝒏 = |𝑽|

Nótese que MT no es igual que la matriz de


accesibilidad del grafo D=(V, R)
§ Recuerda: 𝑀GHH = 𝑰 ⊕ 𝑀 ⊕ ⋯ ⊕ 𝑀𝒏J𝟏
MT es la matriz de adyacencia de otro grafo
§ El grafo definido por la nueva relación: RT

Autómatas y Matemáticas Discretas p. 72 / 125


Ejercicio Relaciones 1 (I)
¿Las matrices M1 y M2 representan relaciones…
§ …de equivalencia?
§ …de orden?
§ …de orden total?
§ ¿Existe alguna relación de orden/equivalencia/orden total
que contenga a ambas? En caso afirmativo, proporcionar
dichas relaciones

æ1 1 0 0ö æ1 1 0 1ö
ç ÷ ç ÷
ç0 1 0 1÷ ç0 1 0 1÷
M1 = ç M2=ç
0 0 1 0÷ 0 0 1 0÷
ç ÷ ç ÷
ç1 0 0 1 ÷ø ç0 0 0 1 ÷ø
è è

Autómatas y Matemáticas Discretas p. 73 / 125


Ejercicio Relaciones 1 (II)
Solución:
La relación dada por la matriz M1 cumple: æ1 1 0 0ö
ç ÷
§ ¿Propiedad reflexiva? Sí. ç0 1 0 1÷
M1 = ç
§ ¿Propiedad simétrica? No. 0 0 1 0÷
§ ¿Propiedad antisimétrica? Sí. ç ÷
ç1 0 0 1 ÷ø
§ ¿Propiedad transitiva? No. è
Por tanto, no representa una relación ni de equivalencia, ni de orden, ni de
orden total.
La relación dada por la matriz M2 cumple: æ1 1 0 1ö
ç ÷
§ ¿Propiedad reflexiva? Sí. ç0 1 0 1÷
M2=ç
§ ¿Propiedad simétrica? No. 0 0 1 0÷
§ ¿Propiedad antisimétrica? Sí. ç ÷
ç0 0 0 1 ÷ø
§ ¿Propiedad transitiva? Sí. è
Por tanto, representa una relación de orden, pero no de equivalencia. No es
de orden total, ya que por ejemplo los elementos 3 y 4 no están relacionados
de ninguna manera.
Autómatas y Matemáticas Discretas p. 74 / 125
Ejercicio Relaciones 1 (III)
• Para tener la relación más pequeña que contiene a M1 y a
M2, hacemos una suma booleana:
1 1 0 1
𝑀1 ⊕ 𝑀2 = 0 1 0 1
0 0 1 0
1 0 0 1
• Esta relación cumple la propiedad reflexiva, pero no cumple ni
la antisimétrica, ni la simétrica, ni la transitiva.
• Es imposible que, añadiendo arcos, logremos que se cumpla la
propiedad antisimétrica, debido a que ambas posiciones (1,4)
y (4,1) valen 1. Por tanto, no existe ninguna relación de
orden ni de orden total que contenga a M1 y a M2.
• Veamos de equivalencia…
Autómatas y Matemáticas Discretas p. 75 / 125
Ejercicio Relaciones 1 (IV)
• Añadimos arcos para que se cumpla la propiedad simétrica:
1 1 0 1
𝟏 1 0 1
0 0 1 0
1 𝟏 0 1
• Ya cumple las propiedades reflexiva y simétrica. Para comprobar si
cumple la transitiva, calcularemos M2.
1 1 0 1
𝑀- = 𝑀. ×𝑀. = 1 1 0 1
0 0 1 0
1 1 0 1
• Como 𝑀 - ⊆ 𝑀. , entonces también cumple la propiedad transitiva.
• Por tanto, hemos encontrado la menor relación de equivalencia que
contiene a las relaciones M1 y M2.

Autómatas y Matemáticas Discretas p. 76 / 125


Ejercicio Relaciones 2 (I)
Sea V = {1, 2, 3, 4, 5} y sean R y S dos relaciones de equivalencia
en V cuyas matrices son MR y MS.
Ø Calcular la matriz correspondiente a la menor relación de
equivalencia que contenga a R y S.

æ1 0 0 0 0ö æ1 1 0 0 0ö
ç ÷ ç ÷
ç0 1 1 0 0÷ ç1 1 0 0 0÷
M R = ç0 1 1 0 0÷ M S = ç0 0 1 0 0÷
ç ÷ ç ÷
ç0 0 0 1 1÷ ç0 0 0 1 0÷
ç0 0 0 1 1 ÷ø ç0 0 0 0 1 ÷ø
è è

Autómatas y Matemáticas Discretas p. 77 / 125


Ejercicio Relaciones 2 (II)
Solución: Para tener la relación más pequeña que contiene a R y
a S, hacemos una suma booleana de MR y MS:

1 1 0 0 0
1 1 1 0 0
𝑀L ⊕ 𝑀M = 0 1 1 0 0
0 0 0 1 1
0 0 0 1 1

Ahora comprobamos si es una relación de equivalencia:


• ¿Cumple la propiedad reflexiva? Sí.
• ¿Cumple la propiedad simétrica? Sí.

Autómatas y Matemáticas Discretas p. 78 / 125


Ejercicio Relaciones 2 (III)
• ¿Cumple la propiedad transitiva? Para saberlo, calcularemos M2.
1 1 1 0 0
1 1 1 0 0
𝑀, = 𝑀% ×𝑀% = 1 1 1 0 0
0 0 0 1 1
0 0 0 1 1
No cumple la transitiva, ya que en M2 aparecen unos que no
estaban en M1 (en concreto en las posiciones (1,3) y (3,1)).
• Por tanto, la solución es hacer el cierre transitivo:
1 1 1 0 0
1 1 1 0 0
𝑀 - = 𝑀% ⊕ 𝑀 , ⊕ 𝑀 . ⊕ 𝑀 / ⊕ 𝑀 0 = 1 1 1 0 0
0 0 0 1 1
0 0 0 1 1
Matriz de la menor relación de
equivalencia que contiene a R y a S
Autómatas y Matemáticas Discretas p. 79 / 125
Ejercicio Relaciones 3 (I)
En el conjunto A = {1, 2, 3, 4, 5} se consideran las
siguientes relaciones:
§ x R y, si y sólo si x divide a y
§ x S y, si y sólo si y=x+2
Ø Describir mediante conjuntos, dígrafos y matrices, ambas
relaciones
Ø Determinar las matrices de 𝑅 ∩ 𝑆, 𝑅 ∪ 𝑆 y de 𝑅 ∘ 𝑆 (si aRb y
bSc entonces a R∘S c)
Ø Estudiar las propiedades de las relaciones R y S

Autómatas y Matemáticas Discretas p. 80 / 125


Ejercicio Relaciones 3 (II)
Ø Relación R (x R y, si y sólo si x divide a y):
D(V,R) : V=A,
R={(1,1), (1,2), (1,3), (1,4), (1,5), (2,2), (2,4), (3,3), (4,4), (5,5)}

æ1 1 1 1 1ö
2
ç ÷
3 ç0 1 0 1 0÷
M R = ç0 0 1 0 0÷
1
ç ÷
4 ç0 0 0 1 0÷
5 ç0 0 0 0 1 ÷ø
✔ Reflexiva è
✔ Antisimétrica
✘ Simétrica Relación de orden
✔ Transitiva

Autómatas y Matemáticas Discretas p. 81 / 125


Ejercicio Relaciones 3 (III)
Ø Relación S (x S y, si y sólo si y=x+2):
D(V,R) : V=A, S={(1,3), (2,4), (3,5)}

æ0 0 1 0 0ö
2 ç ÷
3
ç0 0 0 1 0÷
1 MS = ç0 0 0 0 1÷
ç ÷
ç0 0 0 0 0÷
5
4
ç0 0 0 0 0 ÷ø
è
✘ Reflexiva
✔ Antisimétrica
✘ Simétrica
✘ Transitiva (M2 no está contenida en MS)
Autómatas y Matemáticas Discretas p. 82 / 125
Ejercicio Relaciones 3 (IV)
Ø Determinar las matrices de 𝑅 ∩ 𝑆, 𝑅 ∪ 𝑆 y de 𝑅 ∘ 𝑆
𝑅 ∪ 𝑆 = {(1,1), (1,2), (1,3), (1,4), (1,5), (2,2), (2,4), (3,3), (4,4), (5,5)} ∪
∪ {(1,3), (2,4), (3,5)}
𝑅 ∪ 𝑆 = {(1,1), (1,2), (1,3), (1,4), (1,5), (2,2), (2,4), (3,3), (3,5), (4,4), (5,5)}

2 æ1 1 1 1 1ö
3
ç ÷
1 ç0 1 0 1 0÷
M R!S = ç0 0 1 0 1÷
ç ÷
5
4 ç0 0 0 1 0÷
ç0 0 0 0 1 ÷ø
è

Suma booleana de matrices


Autómatas y Matemáticas Discretas p. 83 / 125
Ejercicio Relaciones 3 (V)
Ø Determinar las matrices de 𝑅 ∩ 𝑆, 𝑅 ∪ 𝑆 y de 𝑅 ∘ 𝑆
𝑅 ∩ 𝑆 = {(1,1), (1,2), (1,3), (1,4), (1,5), (2,2), (2,4), (3,3), (4,4), (5,5)} ∩
∩ {(1,3), (2,4), (3,5)}
𝑅 ∩ 𝑆 = {(1,3), (2,4)}

2 æ0 0 1 0 0ö
3
ç ÷
1 ç0 0 0 1 0÷
M RÇS = ç0 0 0 0 0÷
ç ÷
5
4 ç0 0 0 0 0÷
ç0 0 0 0 0 ÷ø
è

Producto componente a componente


Autómatas y Matemáticas Discretas p. 84 / 125
Ejercicio Relaciones 3 (VI)
Ø Determinar las matrices de 𝑅 ∩ 𝑆, 𝑅 ∪ 𝑆 y de 𝑅 ∘ 𝑆
𝑅 ∘ 𝑆 = {(1,1), (1,2), (1,3), (1,4), (1,5), (2,2), (2,4), (3,3), (4,4), (5,5)} ∘
∘ {(1,3), (2,4), (3,5)}
𝑅 ∘ 𝑆 = {(1,3), (1,4), (1,5), (2,4), (3,5)}

æ1 1 1 1 1ö æ0 0 1 0 0ö æ0 0 1 1 1ö
ç ÷ ç ÷ ç ÷
ç0 1 0 1 0÷ ç0 0 0 1 0÷ ç0 0 0 1 0÷
M R! S = M R Ä MS = ç0 0 1 0 0÷ Ä ç0 0 0 0 1÷ = ç0 0 0 0 1÷
ç ÷ ç ÷ ç ÷
ç0 0 0 1 0÷ ç0 0 0 0 0÷ ç0 0 0 0 0÷
ç0 0 0 0 1 ÷ø çè 0 0 0 0 0 ÷ø çè 0 0 0 0 0 ÷ø
è

Producto booleano de matrices


Autómatas y Matemáticas Discretas p. 85 / 125
Árboles
Árbol: Grafo conexo y sin ciclos
§ Ejemplo: Árbol genealógico, ramas de conocimiento, árbol de
las especies

Sea G un grafo, son equivalentes:


1. G es un árbol
2. Cada par de vértices distintos está conectado por uno y
sólo un camino simple
3. G es conexo, pero si eliminamos un arco deja de serlo.
4. G no tiene ciclos, pero si añadimos un arco se forma
exactamente uno

Autómatas y Matemáticas Discretas p. 86 / 125


Árboles
𝟏 ⇒ 𝟐: G es un árbol ⇒ Cada par de vértices distintos
está conectado por uno y sólo un camino simple
G conexo, hay al menos un camino simple entre u y v.
C: u x0 x1 x2 … xn v
Supongamos (RA) que hay otro camino simple, distinto, entre u y v.
C’: u y0 y1 y2 … ym v
Sea xi el primer arco distinto de yi , y a el vértice anterior:
C: a xi , …, xn v C’: a yi , …, ym v
Sea b el primer vértice, distinto de a, de C que está en C’, y supongamos que xj
es el arco anterior en C y yk es el arco anterior en C’, entonces se cumple que:
a xi , …, xj b yk …., yi a es un ciclo
Contradicc
ión
Un árbol n !
o tiene ciclo
s
Autómatas y Matemáticas Discretas p. 87 / 125
Árboles
𝟐 ⇒ 𝟑: Cada par de vértices distintos está conectado
por uno y sólo un camino simple ⇒ G es conexo,
pero si eliminamos un arco deja de serlo
G conexo. Sea x un arco entre u y v. “u x v” es un camino simple que conecta
u con v, el único según el enunciado, luego si eliminamos x sus extremos
dejan de estar conectados
c il!

Autómatas y Matemáticas Discretas p. 88 / 125


Árboles
𝟑 ⇒ 𝟒: G es conexo, pero si eliminamos un arco deja de
serlo ⇒ G no tiene ciclos, pero si añadimos un
arco se forma exactamente uno
Si G tuviera un ciclo, al eliminar un arco cualquiera de dicho ciclo sus
extremos seguirían estando conectados #
Al ser G conexo, todo par de vértices u, v están conectados por un camino
simple luego si añadimos un arco nuevo, x, entre u y v se forma un ciclo
Como hemos visto que G no tiene ciclos, si al añadir un arco nuevo, x, entre
u y v se formasen dos ciclos, ambos contendrían el arco x luego se podrían
expresar como:
uxC y u x C’
Siendo C y C’ caminos simples distintos en G entre v y u. Pero entonces, de
acuerdo con la demostración 1Þ2, existiría un ciclo en G #

Autómatas y Matemáticas Discretas p. 89 / 125


Árboles
𝟒 ⇒ 𝟏: G no tiene ciclos, pero si añadimos un arco se
forma exactamente uno ⇒ G es un árbol
Sólo hay que demostrar que G es conexo. Dado un par de vértices u, v
cualesquiera, como si añadimos un arco nuevo, x, entre u y v se forma un ciclo,
ha de existir en G un camino simple que los conecte, luego G es conexo.

Autómatas y Matemáticas Discretas p. 90 / 125


Árboles
Todo árbol con más de un vértice, posee al menos dos
vértices de grado 1
§ Demostración por inducción completa en el número de
vértices

δ=1

δ=1 δ=1
δ=1

δ=1 δ=1 δ=1

Autómatas y Matemáticas Discretas p. 91 / 125


Árboles
Sea G un grafo con n³1 vértices, son equivalentes:
1. G es un árbol
2. G no tiene ciclos y tiene n-1 arcos
3. G es conexo y tiene n-1 arcos

𝟏 ⇒ 𝟐: G es un árbol ⇒ G no tiene ciclos y tiene n-1 arcos


Inducción en n:
n=1: trivial
Supuesto cierto para n (H.I.), para n+1: G árbol con n+1 vértices. Por el lema, tiene, al
menos, dos vértices de grado 1.
Sea v uno de ellos y G’ = G(V-{v}).
G’ es árbol con n vértices, luego (HI) tiene n-1 arcos. Como G’ sólo tiene un arco
menos que G, G tiene n arcos

Autómatas y Matemáticas Discretas p. 92 / 125


Árboles
𝟐 ⇒ 𝟑: G no tiene ciclos y tiene n-1 arcos ⇒ G es conexo
y tiene n-1 arcos
Sean G1, …, Gk las componentes conexas de G. Como G no tiene ciclos, G1, …,
Gk son árboles, luego si tienen ni vértices, tienen ni-1 arcos.
Como son una partición de G:
n= n1+…+nk y n-1= n1-1+…+nk-1 = n1+…+nk –k = n-k
Luego k=1, o sea G es conexo.

𝟑 ⇒ 𝟏: G es conexo y tiene n-1 arcos ⇒ G es un árbol


Sólo hay que ver que G no tiene ciclos.
Supongamos (RA) que G tiene un ciclo. Si eliminamos de G un arco cualquiera de
ese ciclo, el grafo resultante G’, seguiría siendo conexo, pero tendría n vértices y n-
2 arcos # dicc ió n ! n n -2 arcos
Contra se r co nexo co
ía
No podr
Autómatas y Matemáticas Discretas p. 93 / 125
Árboles
Árbol generador (spanning tree) de un grafo G=(V, A, p):
§ Es un árbol T=(V, A’, p|A’) con A′ ⊆ A
Todo grafo conexo posee al menos un árbol generador.

Si el grafo tiene N vértices, eliminar arcos hasta solo queden N-1


arcos, pero de tal forma que siga siendo conexo
Autómatas y Matemáticas Discretas p. 94 / 125
Árboles dirigidos
Un vértice es raíz de un dígrafo, si todos los demás
son accesibles desde él
Árbol con raíz, o árbol dirigido: Grafo dirigido D que
tiene exactamente una raíz y su grafo asociado G(D)
es un árbol
§ Desde la raíz existe un único camino a cada vértice

No es No es Sí es
árbol árbol árbol
dirigido dirigido dirigido

Autómatas y Matemáticas Discretas p. 95 / 125


Árboles dirigidos
Conceptos básicos:
§ Padre/hijo (todo vértice tiene un padre, salvo la raíz)
§ Ancestro/descendiente
§ Grado de un vértice = nº de hijos (grado de entrada fijo)
§ Subárbol de raíz u: Subgrafo determinado por u y sus
descendientes
§ Nivel o profundidad de u: longitud del camino desde la
raíz a u
• Definición inductiva:
• Nivel de la raíz = 0
• Si nivel(u) = n, y v es hijo de u, nivel(v) = n+1
§ Altura o profundidad del árbol: máximo nivel de los nodos

Autómatas y Matemáticas Discretas p. 96 / 125


Árboles dirigidos
Representación gráfica y ordenación
δ=3
raíz Nivel 0
Altura del árbol: 3

δ=2 δ=0 δ=2


Nivel 1
1 2 3

32 Nivel 2
11 12 31

Nivel 3
321 322 323

Autómatas y Matemáticas Discretas p. 97 / 125


Árboles binarios
Un árbol binario es un árbol que:
§ Es vacío, o…
§ Está formado por una raíz (R), y dos subárboles binarios:
• Subárbol izquierdo: TI
• Subárbol derecho: TD R

TI TD

Autómatas y Matemáticas Discretas p. 98 / 125


Ejemplo
Representación de expresiones algebraicas
/

* -

- b c a

a 6

((a - 6) * b) / (c - a)
Autómatas y Matemáticas Discretas p. 99 / 125
Árboles binarios
Ø El número de nodos del nivel “i” de un árbol binario
es menor o igual que 2i
Ø El número de nodos n de un árbol binario de altura h
verifica:
𝑛 ≤ 2,-. − 1
Ø La altura h de un árbol binario de n nodos verifica:
ℎ ≥ log / (𝑛 + 1) − 1

Autómatas y Matemáticas Discretas p. 100 / 125


Árboles binarios
Definiciones:
Lleno: Todos los nodos tienen 2 hijos no vacíos
excepto los del último nivel que son hojas (no tienen
hijos)
Homogéneo: Cada nodo tiene 0 o 2 hijos
Completo:
§ cada nivel i, 0 ≤ 𝑖 ≤ ℎ − 1, tiene 2$ nodos
§ los nodos del nivel h-1 con hijos están a la izquierda
§ no existen hijos únicos (es homogéneo)

Autómatas y Matemáticas Discretas p. 101 / 125


Árboles binarios

Sí Lleno No Lleno
Sí homogéneo Sí homogéneo
Sí completo No completo

No Lleno
No Lleno
No homogéneo
Sí homogéneo
Sí completo No completo

Autómatas y Matemáticas Discretas p. 102 / 125


Árboles binarios: Recorrido
Sea T un árbol binario con raíz R y subárboles
izquierdo y derecho TI y TD respectivamente:
Ø Recorrido preorden: R, TI (en preorden), TD (en
preorden)
Ø Recorrido inorden: TI (en inorden), R, TD (en inorden)
Ø Recorrido postorden: TI (en postorden), TD (en
postorden), R

Autómatas y Matemáticas Discretas p. 103 / 125


Ejemplo:
a

b c

d e f g

h i j k

Preorden: a b d h i e j c f g k
Inorden: h d i b e j a f c k g
Postorden: h i d j e b f k g c a
Autómatas y Matemáticas Discretas p. 104 / 125
Coloreado
Un grafo es n-coloreable si:
§ Existe una función 𝑓: 𝑉 → {1,2, … , 𝑛}, tal que tal que para
todo par de vértices adyacentes, u y v, f(u) ≠ f(v)

Autómatas y Matemáticas Discretas p. 105 / 125


Coloreado
Número cromático KG: Menor número de colores
suficiente para colorear el grafo G.
Cotas para KG :
ØSi G es conexo, entonces:
1 ≤ 𝐾N ≤ 𝑉
• Si no es conexo, 1 ≤ 𝐾1 ≤ 𝑉2 , donde |𝑉c| es el número de vértices
de la mayor componente conexa

ØSea δmax el grado máximo de los vértices de G, entonces:


𝐾N ≤ 𝛿OGP + 1
• f(v) = 1 (elegimos un vértice y le damos el color 1)
• f(u) = min {z / z ≠ f(u’) para todo u’ adyacente a u previamente coloreado}
(siguiendo un orden determinado, asignamos el menor color posible a cada vértice)
Autómatas y Matemáticas Discretas p. 106 / 125
Coloreado
Ø Un grafo G es 2-coloreable si, y solo si, no tiene ciclos
de longitud impar
§ Todo árbol es 2-coloreable

2
3

KG=3

KG=2

Autómatas y Matemáticas Discretas p. 107 / 125


Coloreado
El coloreado de grafos es uno de los problemas NP-
completos clásicos (no existe ningún algoritmo de tiempo
polinómico que lo resuelva de forma óptima)
Existen muchos algoritmos heurísticos, que dan buenos
resultados aunque no aseguran un coloreado óptimo
Uno de ellos es el algoritmo de Welsh-Powell
1. Calcular el grado de todos los vértices del grafo
2. Ordenar los vértices en orden decreciente de grados
3. Asignar el primer color (i=1) al primer vértice de la lista, y
luego, en orden secuencial de vértices, asignar ese mismo color
a cada uno de los vértices no adyacentes a uno previo al que
se le haya asignado el color.
4. Repetir paso 3 con el color i= i+1 para todos los vértices aún
no coloreados.

Autómatas y Matemáticas Discretas p. 108 / 125


Ejemplo
1 Ø Hay ciclos de longitud impar, luego: 3 ≤ 𝐾%
Ø El mayor grado es 𝛿 3 = 4, luego 𝐾% ≤ 4 + 1 = 5
2 3 3 ≤ 𝐾% ≤ 5

δ(1)=2 δ(3) = 4
4 5
δ(2)=3 δ(4) = 4
δ(3)=4 δ(7) = 4
δ(4)=4 δ(2) = 3
6 7 8
δ(5)=3 ordenar δ(5) = 3
δ(6)=3 δ(6) = 3
9 δ(7)=4 δ(1) = 2
δ(8)=1 δ(9) = 2
δ(9)=2 δ(8) = 1

Autómatas y Matemáticas Discretas p. 109 / 125


Ejemplo
1
δ(3) = 4
2 3
δ(4) = 4
δ(7) = 4
δ(2) = 3
4 5
δ(5) = 3
δ(6) = 3
δ(1) = 2
6 7 8
δ(9) = 2
δ(8) = 1
9

Autómatas y Matemáticas Discretas p. 110 / 125


Ejemplo
1
δ(3) = 4
2 3
δ(4) = 4
δ(7) = 4
δ(2) = 3
4 5
δ(5) = 3
δ(6) = 3
δ(1) = 2
6 7 8
δ(9) = 2
δ(8) = 1
9

Autómatas y Matemáticas Discretas p. 111 / 125


Ejemplo
1
δ(3) = 4
2 3
δ(4) = 4
δ(7) = 4
δ(2) = 3
4 5
δ(5) = 3 𝑲𝑮
δ(6) = 3
≤𝟑
δ(1) = 2
6 7 8
δ(9) = 2
δ(8) = 1
9
Como ya sabíamos que 3 ≤ 𝐾1 ≤ 5, y ahora hemos
visto que 𝐾1 ≤ 3, podemos afirmar que 𝐾1 = 3

Autómatas y Matemáticas Discretas p. 112 / 125


Planaridad
Un grafo G es plano si admite una representación en
la que los arcos no se cortan
§ Región (finitas e infinita)
§ Contorno (depende de la representación)
§ Regiones adyacentes (depende de la representación)
a a 6
1 2 1 2
f g f 1 Grafo plano
b c b c
h
2 6 regiones
i h i g
3 4 3 4
Contorno de la
e
3 e región 5: c,e,g
d 4 d 5
5 5

Autómatas y Matemáticas Discretas p. 113 / 125


Planaridad
Sea G un grafo plano y conexo con n vértices, m
arcos y r regiones, entonces:

𝒏−𝒎+𝒓=𝟐 Fórmula de Euler

Sea G un grafo conexo y plano, suprimimos lados hasta tener un árbol.


• El número de vértices permanece invariable
• El número de regiones disminuye de una en una según quitamos cada arco.
• r – m + n permanece invariante en todo el proceso
RECUERDA: Todo árbol verifica m = n – 1, así que n – m = 1,
En un árbol hay una sola región (r=1), (n – m) + r = 1 + 1 = 2.
Como ya se ha visto, n – m + r permanece invariante, luego n - m + r = 2

Autómatas y Matemáticas Discretas p. 114 / 125


Planaridad
Sea G un grafo plano, conexo, simple, sin bucles con n
vértices, m ≥ 2 arcos y r regiones, entonces:

𝟑
𝒓 ≤ 𝒎 ≤ 𝟑𝒏 − 𝟔
𝟐
Dado que G es simple, cada región está limitada al menos por 3 aristas. Además,
cada arista es borde de, a lo sumo, 2 regiones. Por tanto, se cumple que:
2m ≥ 3r, y por tanto 3/2 r ≤m
Por la formula de Euler:
n–m+r=2
6 = 3n – 3m + 3r ≤ 3n – 3m + 2m = 3n – m
m ≤ 3n - 6

Autómatas y Matemáticas Discretas p. 115 / 125


Planaridad
Los únicos grafos completos que son planos son K1, K2,
K3 y K4
n=5, m=10, p=3
1 2
Teorema de Euler:
n-m+r = 2 = 5 – 10 + r = 2 Þ r = 7

3 4 ¿Se cumplen las desigualdades del


corolario?
3/2 r ≤ m ≤ 3n-6 Þ 3/2 ·7 ≤ 10 ≤ 3·5-6
5 10,5 ≤ 10 ≤ 9 NO Þ No es plano

K5

Autómatas y Matemáticas Discretas p. 116 / 125


Ejemplos
Ø Lleva gas, agua y luz a cada casa sin que las
tuberías se corten
n=6, m=9, p=4

Teorema de Euler:
n-m+r = 2 = 6 – 9 + r = 2 Þ r = 5

¿Se cumplen las desigualdades del


corolario?
3/2 r ≤ m ≤ 3n – 6 Þ 3/2 ·5 ≤ 9 ≤ 3·6 – 6
7,5 ≤ 9 ≤ 12

Se cumple,
y sin embargo no es plano…
K3,3

Autómatas y Matemáticas Discretas p. 117 / 125


Planaridad
Generalizando la fórmula anterior, sea p la longitud
del ciclo más corto en G:
𝒑 𝒑(𝒏 − 𝟐)
𝒓≤ 𝒎≤
𝟐 𝒑−𝟐
En este caso se cumple que cada región está limitada por, al menos, p aristas. A
su vez, cada arista es borde de, a lo sumo, 2 regiones. Por tanto se cumple que:
2m ≥ pr, y por tanto p/2 r ≤m
Por la fórmula de Euler, obtenemos que:
n–m+r=2
2p = pn – pm + pr ≤ pn – pm + 2m = pn – (p – 2)m
m ≤ (pn – 2p)/(p – 2) = p(n–2)/(p – 2)

Autómatas y Matemáticas Discretas p. 118 / 125


Ejemplos
Ø Aplicando esta fórmula en el problema anterior
n=6, m=9, p=4

Teorema de Euler:
n-m+r = 2 = 6 – 9 + r = 2 Þ r = 5

¿Se cumplen las desigualdades del


corolario?
p/2 r ≤ m ≤ p(n-2)/(p-2) Þ 4/2 ·5 ≤ 9 ≤
4·(6-2)/(4-2)
10 ≤ 9 ≤ 8
NO Þ No es plano

K3,3

Autómatas y Matemáticas Discretas p. 119 / 125


Ejemplos
Ø Ahora, la tercera casa también quiere internet:
n=7, m=10, p=4

Teorema de Euler:
n-m+r = 2 = 7 – 10 + r = 2 Þ r = 5

¿Se cumplen las desigualdades del


corolario?
p/2 r ≤ m ≤ p(n-2)/(p-2) Þ 4/2 ·5 ≤ 10 ≤
4·(7-2)/(4-2)
10 ≤ 10 ≤ 10

Se cumple,
y sin embargo sigue sin ser plano…

Autómatas y Matemáticas Discretas p. 120 / 125


Planaridad
Las fórmulas vistas son condición necesaria, pero no
suficiente, para que un grafo G sea plano.
§ Si las fórmulas no se cumplen, G no es plano.
§ Si las fórmulas se cumplen, G puede ser plano o no.
Determinar la planaridad de un grafo es un
problema complejo.
Si las fórmulas “fallan”, hay otros métodos:
§ Teorema de Kuratowski, teorema de Wagner
§ Criterios de planaridad de Whitney, de Mac Lane, …
§ ………

Autómatas y Matemáticas Discretas p. 121 / 125


Planaridad y coloreado
Teorema de los 4 colores:
Todo grafo plano es 4-coloreable (Kenneth Appel and
Wolfgang Haken, 1976)
§ Todo grafo plano puede colorearse con a lo sumo 4 colores
§ Todo mapa es 4-coloreable
• Solo si se cumple que toda la región de un país es contigua, lo cual
en el mundo real no siempre es así. Por ejemplo Alaska no es
contiguo al resto de Estados Unidos. En ese caso se podrían
necesitar más de 4 colores
Ø Primer teorema importante demostrado por un
ordenador

Autómatas y Matemáticas Discretas p. 122 / 125


Grafos ponderados
Un grafo ponderado, G=(V,A,p), tiene asociada una
función de ponderación 𝑊: 𝐴 → 𝑅
§ Se asigna a cada arco un valor/ponderación/coste según
el contexto
Si el grafo es simple, a la imagen del arco de
extremos vi y vj la llamamos “peso del arco” y lo
representamos por wij
Ejemplo: Longitud de carreteras
5 Km

3 Km

Autómatas y Matemáticas Discretas p. 123 / 125


Grafos ponderados
Ø Ejemplo:

1 2
6

æ- 3 - 2ö
1 3
1
ç ÷
2
4
3 ç- - - 4 6÷
W = ç- - - 1 4÷
4
1
ç ÷
5 ç- - - - 2÷
ç- - - - - ÷ø
2
4 è

Grafo ponderado Matriz de pesos

Autómatas y Matemáticas Discretas p. 124 / 125


Grafos ponderados
Definiciones:
Ø Peso de un camino: Suma de los pesos de todos sus
arcos
Ø Camino más corto (entre dos vértices): Camino de
menor peso
Ø Camino crítico (entre dos vértices): Camino de mayor
peso
6 2
1 2 7

1 2
3 1
4 5 6

Autómatas y Matemáticas Discretas p. 125 / 125

También podría gustarte