Sie sind auf Seite 1von 54

Universidad Simn Bolvar

Peter Olejua

Estudio sobre listas grficas

Introduccin:
Una lista grfica es una lista de enteros nonegativos, para la cual existe un grafo simple tal que el grado de cada vrtice corresponde a un nico entero en dicha lista.

Estudio sobre listas grficas

Objetivos:

Responder a la interrogante Cundo una lista de enteros es grfica? Hacer un recorrido por las soluciones a este problema:

Havel[1955], Hakimi[1962] Erds-Gallai[1960] Tripathi-Venugolapan-West[2010]

Estudio sobre listas grficas

Prembulo:

Def. Un grafo G es una tripleta que consiste en un conjunto de vrtices V(G), un conjunto de lados E(G) y una relacin que asocia a cada lado dos vrtices (no necesariamente distintos y sin orden) llamados extremos. Si un lado e tiene por extremos v1 y v2, decimos que e es incidente a v1 y a v2, que v1 es adyacente a v2 y que dichos vrtices son vecinos. El conjunto de los vecinos de v en G se denotar

NG(v).

Si no existe e en E(G) que tenga por extremos a v1 y a v2, estos vrtices se llaman independientes.

Estudio sobre listas grficas

Prembulo:

Def. Un lazo es un lado cuyos extremos son iguales. Lados multiples son lados que tienen el mismo par de extremos. Def. Un grafo simple es un grafo sin lazos ni lados multiples.

Estudio sobre listas grficas

Prembulo:

Para v V(G), el grado d(v) es el nmero de lados que tienen a v como extremo (lazos cuentan doble). Si V(G)={v1,v2,...,vn}, la lista de grados de G

es (d(v1),...,d(vn)). Usualmente esta lista se escribe en orden decreciente.

Estudio sobre listas grficas

Prembulo:

Proposicin 1: Si G es un grafo, entonces d(vi)=2|E(G)|. En particular, d(vi) es par. Dem: Al sumar d(vi) contamos el nmero de lados incidentes a vi. Cada lado o es un lazo o tiene dos extremos distintos. As, cada lado suma dos unidades a d(vi).

Estudio sobre listas grficas

Lista realizable: Una lista de enteros nonegativos (d1,...,dn) es realizable si existe un grafo G que la realice, es decir, existe un grafo G y un etiquetamiento de sus vrtices V(G)={v1,v2,...,vn} tal que di=d(vi), para todo i=1,...,n.

Estudio sobre listas grficas

Ejemplo: La lista (5,4,3,3,2,1,0) es realizable.

Estudio sobre listas grficas

Lista grfica: Una lista de enteros negativos es grfica si es realizable por un grafo simple. Ejemplo: La lista (3,3,1,1) es realizable pero no grfica.

Estudio sobre listas grficas

Pregunta: Cundo una lista es realizable? Restricciones a la pregunta:

Cundo una lista es realizable por un grafo que pueda tener lazos? Cundo una lista es realizable por un grafo sin lazos pero que pueda tener lados mltiples? Cundo una lista es realizable por un grafo sin lazos ni lados lados mltiples? O lo que es igual, Cundo una lista es grfica?

Estudio sobre listas grficas

Cundo una lista es realizable por un grafo que pueda tener lazos?

Teorema 1: Una lista de enteros nonegativos (d1,...,dn) es realizable sii di es par. Dem: () Proposicin 1. () Induccin (Luego de la hiptesis inductiva, agregar otro vrtice con (dn+1-1)/2 lazos en el caso impar)

Estudio sobre listas grficas

Cundo una lista es realizable por un grafo sin lazos pero que pueda tener lados mltiples?

Teorema 2 (Hakimi 1962): Sea (d1,...,dn) una lista no-creciente de enteros no-negativos. Existe un grafo sin lazos que realiza dicha secuencia sii di es par y d1<=d2+...+dn. Dem: () Supongamos que existe dicho grafo. Por la Prop. 1 di es par. Cada lado incidente a un vrtice de mayor grado es incidente a alguno de los otros y al contar la suma de los grados de estos ultimos contamos al menos d1 lados.

Estudio sobre listas grficas

Teorema 2: Sea (d1,...,dn) una lista no-creciente de enteros no-negativos. Existe un grafo sin lazos que realiza dicha lista sii di es par y d1<=d2+...+dn. Dem: () Induccin sobre di. Si di=0, n vrtices independientes realizan dicha lista. Si di>0 consideramos la lista D=(d1-1,d2-1,..,dn). Como d1<=d2+...+dn entonces d1-1<=d2-1+...+dn. Tambin d1-1+d21+...+dn es par. Aplicamos la hipotesis inductiva a D. Finalmente, agregamos un lado de v 1 a v2

Estudio sobre listas grficas

Cundo una lista es grfica?

Teorema 3: Una condicin recursiva (Havel [1955], Hakimi [1962]): Ejemplo: Las listas 2,2,1,1 y 1,0,1 son grficas. El grafo K2+K1 realiza 1,0,1; donde Kn es el grafo simple con todos los lados posibles entre sus vrtices (grafo completo). Agregando un nuevo vrtice adyacente a los vrtices de grado 1 y 0 se crea un grafo que realiza 2,2,1,1.

Estudio sobre listas grficas

Cundo una lista es grfica?

Teorema 3: Una condicin recursiva (Havel [1955], Hakimi [1962]): Para n>1, una lista d de tamao n es grfica sii d' es grfica, donde d' es obtenida de d borrando su mayor elemento y restando 1 a sus siguientes elementos ms grandes. La nica lista grfica de tamao 1 es d1=0.

Estudio sobre listas grficas

Cundo una lista es grfica?

Teorema 3: Una condicin recursiva (Havel [1955], Hakimi [1962]): Dem: (): Dada d ordenada de forma nocreciente y un grafo simple G' con lista de grados d', agregamos un nuevo vrtice adyacente a vrtices en G' con grados d21,...,d-1. El grafo resultante G es simple y realiza d.

Estudio sobre listas grficas

Cundo una lista es grfica?

Teorema 3: Una condicin recursiva (Havel [1955], Hakimi [1962]): Dem: (): Supongamos que un grafo G realiza d. Encontraremos G' que realice d', con d' como en el teorema. Consideramos w en G de grado . Sea S un conjunto de vrtices en G que tienen grados d2,...,d+1. Si N(w)=S, eliminamos w para encontrar G' que realica d'.

Estudio sobre listas grficas

Cundo una lista es grfica?

Teorema 3: Una condicin recursiva (Havel [1955], Hakimi [1962]): Dem: (): El otro caso posible es que falte algn vrtice de N(w) en S. Modificaremos G para aumentar |N(w)S|. Como |N(w)S| puede aumentar a lo sumo , en un nmero finito de pasos encontraremos G* que realeza d y NG*(w)=S. De G* eliminaremos w y encontraremos G' que realiza d'.

Estudio sobre listas grficas

Cundo una lista es grfica?

Teorema 3: Una condicin recursiva (Havel [1955], Hakimi [1962]): Dem: (): Cmo encontramos G*? Elegimos x en S y z vecino de w pero que no pertenece a S. Queremos agregar wx y eliminar wz pero preservando los grados.

Estudio sobre listas grficas

Cundo una lista es grfica?

Teorema 3: Una condicin recursiva (Havel [1955], Hakimi [1962]): Dem: (): Por la eleccin de S d(z)<=d(x), adems w ya es vecino de z pero no de x. Existe y vecino de x pero no de z. Entonces, eliminamos {wz,xy} y agregamos {wx,yz} para aumentar |N(w)S|.

Estudio sobre listas grficas

Cundo una lista es grfica?

Teorema 3: Una condicin recursiva (Havel [1955], Hakimi [1962]): Ejemplo:

Estudio sobre listas grficas

Teorema 4 (Caracterizacin de ErdosGallai [1960]): Una lista no-creciente de enteros no-negativos es grfica sii la suma de sus elementos es par y cumple la desigualdad de ErdosGallai (E-G) para todo 1<=k<=n.

Estudio sobre listas grficas

Caracterizacin de ErdosGallai [1960] (Idea )

La idea es acotar el grado del vrtice i-simo, en la izquierda, contando los lados incidentes a dicho vrtice y cuyo otro vrtice extremo est en los primeros k vrtices; y contando los lados incidentes a dicho vrtice y cuyo otro extremo est en los ltimos nk vrtices.

Estudio sobre listas grficas

Caracterizacin de ErdosGallai [1960] (): Supongamos que la suma de los elementos de una lista d, no-creciente de enteros no-negativos, es par y d cumple con la desigualdad de E-G. Entonces d es grfica.

Estudio sobre listas grficas

Caracterizacin de ErdosGallai [1960] (El algoritmo: Tripathi-Venugopalan-West [2010]). DEFs previas: -Una subrealizacin de d=d1,...,dn, es un grafo simple con
vrtices v1,v2,...,vn, tal que d(vi)<=di, para 1<=i<=n. - En una subrealizacin, el ndice crtico r es el ms grande ndice tal que d(vi)=di, para 1<=i<r. - Sea G una subrealizacin de d=d1,...,dn, La deficiencia de G en vi es di-d(vi). - Sean S={vr+1,...,vn} y T={v1,...,vr-1}.

Estudio sobre listas grficas

Caracterizacin de ErdosGallai [1960] (El algoritmo: Tripathi-Venugopalan-West [2010]). El inicio: - La subrealizacin inicial tiene n vrtices y ningn lado. - Entonces, r=1, a menos que la lista este llena de ceros, en cuyo caso, el proceso termina.

Estudio sobre listas grficas

Caracterizacin de ErdosGallai [1960] (El algoritmo: Tripathi-Venugopalan-West [2010]). El inicio: - La subrealizacin inicial tiene n vrtices y ningn lado. - Entonces, r=1, a menos que la lista este llena de ceros, en cuyo caso, el proceso termina.

La iteracin: Mientras r<=n Si la deficiencia en vr es nula aumento r. Si no obtenemos una nueva subrealizacin con deficiencia en vr ms pequea. Cuando esta deficiencia se anule, aumentamos r.

Estudio sobre listas grficas

Caracterizacin de ErdosGallai [1960] (El algoritmo: Tripathi-Venugopalan-West [2010]). El invariante: Mantendremos la condicin que S={vr+1,...,vn}. sea un conjunto independiente (No hay lados entre sus vrtices). Adems, en cada iteracin no se alterar el grado de ninguno de los vrtices vi con i<r. Cuando el algoritmo termina, r>n, con lo cual, la ltima subrealizacin es una realizacin de d.

Estudio sobre listas grficas

Caracterizacin de ErdosGallai [1960] (El algoritmo: Tripathi-Venugopalan-West [2010])


Cmo obtener la nueva subrealizacin en cada iteracin? Sea G la subrealizacin actual:

Estudio sobre listas grficas

Caracterizacin de ErdosGallai [1960] (El algoritmo: Tripathi-Venugopalan-West [2010])


Cmo obtener la nueva subrealizacin en cada iteracin? Sea G la subrealizacin actual:

Caso 0) vrvi E(G), para algn vrtice vi tal que d(vi)<di.

Estudio sobre listas grficas

Caracterizacin de ErdosGallai [1960] (El algoritmo: Tripathi-Venugopalan-West [2010])


Cmo obtener la nueva subrealizacin en cada iteracin? Sea G la subrealizacin actual:

Caso 0) vrvi E(G), para algn vrtice vi tal que d(vi)<di.

Estudio sobre listas grficas

Caracterizacin de ErdosGallai [1960] (El algoritmo: Tripathi-Venugopalan-West [2010])


Cmo obtener la nueva subrealizacin en cada iteracin? Sea G la subrealizacin actual:

Caso 0) vrvi E(G), para algn vrtice vi tal que d(vi)<di. Agregamos el lado vrvi.

Estudio sobre listas grficas

Caracterizacin de ErdosGallai [1960] (El algoritmo: Tripathi-Venugopalan-West [2010])


Cmo obtener la nueva subrealizacin en cada iteracin? Sea G la subrealizacin actual:

Caso 1) vrvi E(G), para algn i con i<r.

Estudio sobre listas grficas

Caracterizacin de ErdosGallai [1960] (El algoritmo: Tripathi-Venugopalan-West [2010])


Cmo obtener la nueva subrealizacin en cada iteracin? Sea G la subrealizacin actual:

Caso 1) vrvi E(G), para algn i con i<r. Como d(vi)=di>=dr>d(vr), u N(vi)-N(vr).

Estudio sobre listas grficas

Caracterizacin de ErdosGallai [1960] (El algoritmo: Tripathi-Venugopalan-West [2010])


Cmo obtener la nueva subrealizacin en cada iteracin? Sea G la subrealizacin actual:

Caso 1) vrvi E(G), para algn i con i<r. Como d(vi)=di>=dr>d(vr), u N(vi)-N(vr).

Estudio sobre listas grficas

Caracterizacin de ErdosGallai [1960] (El algoritmo: Tripathi-Venugopalan-West [2010])


Cmo obtener la nueva subrealizacin en cada iteracin? Sea G la subrealizacin actual:

Caso 1) vrvi E(G), para algn i con i<r. Como d(vi)=di>=dr>d(vr), u N(vi)-N(vr). - Si dr-d(vr)>=2 remplazamos {uvi} con {uvi,vivr}.

Estudio sobre listas grficas

Caracterizacin de ErdosGallai [1960] (El algoritmo: Tripathi-Venugopalan-West [2010])


Cmo obtener la nueva subrealizacin en cada iteracin? Sea G la subrealizacin actual:

Caso 1) vrvi E(G), para algn i con i<r. Como d(vi)=di>=dr>d(vr), u N(vi)-N(vr). - Si dr-d(vr)>=2 remplazamos {uvi} con {uvi,vivr}.

Estudio sobre listas grficas

Caracterizacin de ErdosGallai [1960] (El algoritmo: Tripathi-Venugopalan-West [2010])


Cmo obtener la nueva subrealizacin en cada iteracin? Sea G la subrealizacin actual:

Caso 1) vrvi E(G), para algn i con i<r. Como d(vi)=di>=dr>d(vr), u N(vi)-N(vr). - Si dr-d(vr)=1. El hecho de que di-d(vi) sea par => vj en S

Estudio sobre listas grficas

Caracterizacin de ErdosGallai [1960] (El algoritmo: Tripathi-Venugopalan-West [2010])


Cmo obtener la nueva subrealizacin en cada iteracin? Sea G la subrealizacin actual:

Caso 1) vrvi E(G), para algn i con i<r. Como d(vi)=di>=dr>d(vr), u N(vi)-N(vr). - Si dr-d(vr)=1. El hecho de que di-d(vi) sea par => vj en S, con dj>d(vj).

Estudio sobre listas grficas

Caracterizacin de ErdosGallai [1960] (El algoritmo: Tripathi-Venugopalan-West [2010])


Cmo obtener la nueva subrealizacin en cada iteracin? Sea G la subrealizacin actual:

Caso 1) vrvi E(G), para algn i con i<r. Como d(vi)=di>=dr>d(vr), u N(vi)-N(vr). - Si dr-d(vr)=1. El hecho de que di-d(vi) sea par => vj en S, con dj>d(vj). (Caso 0) => vrvj E(G). remplazamos {uvi,vrvj} con {uvr,vivr}.

Estudio sobre listas grficas

Caracterizacin de ErdosGallai [1960] (El algoritmo: Tripathi-Venugopalan-West [2010])


Cmo obtener la nueva subrealizacin en cada iteracin? Sea G la subrealizacin actual:

Caso 2) vrT E(G) y d(vj)min{r,dj} para algn j>r.

Estudio sobre listas grficas

Caracterizacin de ErdosGallai [1960] (El algoritmo: Tripathi-Venugopalan-West [2010])


Cmo obtener la nueva subrealizacin en cada iteracin? Sea G la subrealizacin actual:

Caso 2) vrT E(G) y d(vj)min{r,dj} para algn j>r. En una subrealizacin, d(vj)<=dj. Por suposin, d(vj)<dj y por (Caso 0) => vrvj E(G).

Estudio sobre listas grficas

Caracterizacin de ErdosGallai [1960] (El algoritmo: Tripathi-Venugopalan-West [2010])


Cmo obtener la nueva subrealizacin en cada iteracin? Sea G la subrealizacin actual:

Caso 2) vrT E(G) y d(vj)min{r,dj} para algn j>r. En una subrealizacin, d(vj)<=dj. Como S es independiente, d(vj)<=r.

Estudio sobre listas grficas

Caracterizacin de ErdosGallai [1960] (El algoritmo: Tripathi-Venugopalan-West [2010])


Cmo obtener la nueva subrealizacin en cada iteracin? Sea G la subrealizacin actual:

Caso 2) vrT E(G) y d(vj)min{r,dj} para algn j>r. En una subrealizacin, d(vj)<=dj. Como S es independiente, d(vj)<=r. Ahora, d(vj)<r => vjvi E(G), para algun i<r.

Estudio sobre listas grficas

Caracterizacin de ErdosGallai [1960] (El algoritmo: Tripathi-Venugopalan-West [2010])


Cmo obtener la nueva subrealizacin en cada iteracin? Sea G la subrealizacin actual:

Caso 2) vrT E(G) y d(vj)min{r,dj} para algn j>r. En una subrealizacin, d(vj)<=dj. Como S es independiente, d(vj)<=r. Ahora, d(vj)<r => vjvi E(G), para algun i<r.

Estudio sobre listas grficas

Caracterizacin de ErdosGallai [1960] (El algoritmo: Tripathi-Venugopalan-West [2010])


Cmo obtener la nueva subrealizacin en cada iteracin? Sea G la subrealizacin actual:

Caso 2) vrT E(G) y d(vj)min{r,dj} para algn j>r. Como d(vi)=di>=dr>d(vr), u N(vi)-N(vr).

Estudio sobre listas grficas

Caracterizacin de ErdosGallai [1960] (El algoritmo: Tripathi-Venugopalan-West [2010])


Cmo obtener la nueva subrealizacin en cada iteracin? Sea G la subrealizacin actual:

Caso 2) vrT E(G) y d(vj)min{r,dj} para algn j>r. Como d(vi)=di>=dr>d(vr), u N(vi)-N(vr). remplazamos {uvi} con {uvr,vivj}.

Estudio sobre listas grficas

Caracterizacin de ErdosGallai [1960] (El algoritmo: Tripathi-Venugopalan-West [2010])


Cmo obtener la nueva subrealizacin en cada iteracin? Sea G la subrealizacin actual:

Caso 3) vrT E(G) y vivj E(G), para algunos i con i<j<r.

Estudio sobre listas grficas

Caracterizacin de ErdosGallai [1960] (El algoritmo: Tripathi-Venugopalan-West [2010])


Cmo obtener la nueva subrealizacin en cada iteracin? Sea G la subrealizacin actual:

Caso 3) vrT E(G) y vivj E(G), para algunos i con i<j<r. Entonces d(vi)>=d(vj)>=d(vr) => u N(vi)-N(vr) y w N(vj)-N(vr). Adems, vrT E(G) => u,w S

Estudio sobre listas grficas

Caracterizacin de ErdosGallai [1960] (El algoritmo: Tripathi-Venugopalan-West [2010])


Cmo obtener la nueva subrealizacin en cada iteracin? Sea G la subrealizacin actual:

Caso 3) vrT E(G) y vivj E(G), para algunos i con i<j<r. remplazamos {uvi,wvj} con {uvr,vivj}.

Estudio sobre listas grficas

Caracterizacin de ErdosGallai [1960] (El algoritmo: Tripathi-Venugopalan-West [2010])


Cmo obtener la nueva subrealizacin en cada iteracin? Sea G la subrealizacin actual:

Caso 3) vrT E(G) y vivj E(G), para algunos i con i<j<r. remplazamos {uvi,wvj} con {uvr,vivj}.

Estudio sobre listas grficas

Caracterizacin de ErdosGallai [1960] (El algoritmo: Tripathi-Venugopalan-West [2010])


Cmo obtener la nueva subrealizacin en cada iteracin? Sea G la subrealizacin actual:

No hace falta, Caso 4) d(vj)=min{r,dj} para j>r. Como S es independiente,

vrT E(G), T es completo y

Estudio sobre listas grficas

Caracterizacin de ErdosGallai [1960] (El algoritmo: Tripathi-Venugopalan-West [2010])


El algoritmo termina, pues en cada caso aumenta d(vr) o r. Como la subrealizacin mejora en cada paso, se necesitarn, a lo sumo, di iteraciones. Qu tan lento es este algoritmo? La iteracin: Mientras r<=n Si la deficiencia en vr es nula aumento r. Si no obtenemos una nueva subrealizacin con deficiencia en vr ms pequea. Cuando esta deficiencia se anule, aumentamos r. En cada caso, para mejorar la subrealizacin, se necesita un tiempo constante. El tiempo de corrida de este algoritmo es O(ndi).

Das könnte Ihnen auch gefallen