4.3 Considerações para a lasse P 4 arrumada
4.3.1 Aranhas
As aranhas foramdenidas na Seção 2.4.2. Relembre que seu onjunto de vérti es pode ser parti ionado emtrês onjuntos onhe idos omo
K
,S
eR
. Note que se uma aranhaG
é tal queR 6= ∅
, entãoG[K ∪ R] = G[K] + G[R]
eG[S ∪ R] = G[S] ∪ G[R]
. Logo,aso, a lique onteráno máximoum vérti ede
S
poisS
éum onjuntoindependentedeG
.Dadoum empa otamentode liques
P
para umaaranhaG
representa-se porn
S
i
, para2 ≤ i ≤ r
, o número de liques de tamanhoi
emP
que ontenham um vérti e deS
. As demais liques deP
são liques do grafoG[K] + G[R]
, seR 6= ∅
, ou deG[K]
, aso ontrário. No primeiro aso, serão usadas as mesmas denições dos inteirosni,j
,n
′
i
en
′′
i
já usadas para os grafos join naSeção 4.2.2 onsiderandoG1
= G[K]
eG2
= G[R]
. No outro aso,por onveniên ia, serãousadasasmesmasdenições, onsiderandoG1
= G[K]
eG2
um grafo vazio. Logo,n
′′
i
= 0
eni,j
= 0
para0 ≤ j < i
e1 ≤ i ≤ r
.Como ilustração destes on eitos, onsidere as aranhas dadas na Figura 4.7. Em
ambosexemplos, asarestasqueligam adavérti e
hi
om ada vérti eki
foramomitidas, paradiminuirapoluiçãovisual. No aso(a),aaranhaadmiteum empa otamentodotipo(1, 0, 1)
, omooformadopelas liques{k1, k2, h1, h2}
e{s3, k3}
. Paraesteempa otamento,n4,2
= 1
en
S
2
= 1
, fazendon
′
2
= 1
en
′′
2
= 1
. Já no aso (b), toma-se omo exemplo um empa otamentodotipo(2, 1)
onstituído pelas liques{k1, k2, s3}
,{h1, k3}
e{h2, h3}
,ao qual orrespondem os inteirosn2,1
= 1
,n2,0
= 1
en
S
3
= 1
, impli andon
′
1
= 1
,n
′′
1
= 1
en′′
2
= 1
.(a)Umaaranhamagra. (b)Umaaranhagorda.
Figura4.7: Empa otamentode liques em uma aranha.
Sendoque existem dois tiposde aranhas, as magraseas gordas,doponto de vistade empa otamento de liques, adiferença entre elas é que naaranha magra uma lique que ontenha um vérti ede
S
poderá onter no máximoum outro vérti e(perten enteaK
), enquanto quenuma aranhagorda, tal lique pode onter até|K| − 1
vérti es emK
.Da mesma forma que para os grafos join, serão estudadas as ondições ne essárias
para que exista um empa otamento de liques de uma aranha. A seguir, determinam-se
as ondições su ientes sobre os inteiros
ni,j
en
S
i
para onstruir um empa otamento deliques em onformidade om taisinteiros.
Primeiramente, dado um empa otamento
P
do tipo(n2, . . . , nr)
para uma aranhaG
om partição(K, S, R)
, valem as seguintes ondições (que podem ser veri adas para asi=2
i=2
i=2
i=2
nS
i
= 0,
para todoi ≥ 3
(i ≥ |K| + 1
) sea aranha émagra (gorda) (4.8) Aprimeira ondição éverdadeira desdeque ada lique emP
ontém exatamenteumvérti e de
S
ou está ontida emK ∪ R
. ParaR 6= ∅
, a segunda ondição de orre dofato que as interseções das liques em
P
omR
origina um empa otamento de liquesem
G[R]
ontendon
′′
i
liques de ardinalidadei
emG[R]
, para1 ≤ i ≤ r
. Note que onsiderarf
paraG[K]
equivaleaveri arseK
ontémvérti essu ientes, fatoin luído na próxima ondição. A ter eira ondição é satisfeita pela estrutura das aranhase pelas denições den
′
i
,n
′′
i
en
S
i
. Note que a restrição sobre a ardinalidade deS
é redundante pois|S| = |K| ≥
Pr
i=2(i − 1)nSi
≥
Pr
i=2nSi
e foi mantida pois será utilizada napróxima subseção. Além das ondições anteriores, adaptadas das ondições 4.1 a 4.3,P
satisfaztambém a ondição 4.8 pois liques do empa otamento que ontém vérti es de
S
nãopodem ter ardinalidademaiorque
2
para aranhasmagrase maiorque|K|
paraaranhas gordas.Finalmente, a m de apresentar um pro edimento para omputar
f (G, n3, . . . , nr)
para uma aranha
G
, demonstra-se que as ondições a ima são não apenas ne essárias,mas tambémsu ientes para determinar a existên ia de empa otamentos de liques em
aranhas. Relembre-seque, dos inteiros
ni,j
obtém-sen
′
i
en
′′
i
.Lema 4.2. Seja
G
uma aranha. A aranhaG
possui um empa otamento de liquesP
dotipo
(n2, . . . , nr)
se,esomentese,existireminteirosnãonegativosni,j
en
S
i
, para2 ≤ i ≤ r
e0 ≤ j ≤ i
, satisfazendo as ondições 4.5 a 4.8.Demonstração. Seja
G
uma aranha om partição(K, S, R)
eP
um empa otamento dotipo
(n2, . . . , nr)
paraG
. Os argumentos des ritos anteriormente mostram que existem inteirosni,j
en
S
i
asso iados ao empa otamentoP
satisfazendo as ondições 4.5 a 4.8. Note que estas ondiçõesreetem aestrutura das aranhas.Agora, dada uma aranha
G
e os inteirosni,j
en
S
i
, para2 ≤ i ≤ r
e0 ≤ j ≤ i
, que satisfazemas ondições4.5a4.8,será onstruídoumempa otamentode liquesP
dotipo(n2, . . . , nr)
paraG
.Primeiramente, rotule ada vérti e de
K
porki
,1 ≤ i ≤ |K|
e os ordene omoadja ente a
ki
, para1 ≤ i ≤ |S|
, e onsidere a sequên iaOS
= (s1, s2, . . . , s|S|)
. Caso ontrário(G
éumaaranhagorda),rotule omosi
oúni ovérti eemS
quenãoéadja ente aki
, para1 ≤ i ≤ |S|
,e onsidere a sequên iaOS
= (s|S|, s1, s2, . . . , s|S|−1)
.Em seguida, ada lique de
P
será onstruída, omeçando pelas que ontém vérti es emS
. Para ada inteiro2 ≤ i ≤ r
, onstrói-sen
S
i
liques de tamanhoi
om um vérti e emS
. Cada lique éformada removendo-seoprimeiro vérti e deOS
eosi − 1
primeiros vérti es deOK
e tomando-os omo um onjunto.Agora,mostra-seque ada onjuntoadi ionadoà
P
éuma lique. SeG
forumaaranha gorda, ada um dos onjuntos formadosusará um vérti e deS
eao menosum vérti e deK
,mas não todos, pela ondição 4.8. Logo, pelaordenaçõesOS
eOK
,os vérti essi
eki
nun a estarão ambos nomesmo onjunto,que, portanto, será uma lique. Se
G
for umaaranha magra, ada onjunto onterá os vérti es adja entes
si
eki
, uma vez que, pela ondição 4.8, asúni as liques possíveistem tamanho2
.Pode-se,agora, formar as liques quenão ontém vérti es em
S
. Considere os inteirosn
′
j
para1 ≤ j ≤ r
. Forma-se um empa otamento de liquesP′
om
n
′
j
liques de ardinalidadej
, obtidas removendo-se, para adaj
,jn
′
j
vérti esremanes entes em
OK
. Também onsidere um empa otamentoP
′′
do tipo
(n
′′
2, . . . , n′′r)
paraG[R]
, no qual in luem-sen
′′
1
vérti es isolados deG[R]
que ainda não perten iam a liques emP
′′
. Agora, para ada
ni,j
> 0
,1 ≤ j < i ≤ r
, repete-seni,j
vezes o seguinte pro edimento: remove-seuma liquedetamanhoj
deP
′
euma liquedetamanho
i−j
deP′′
,unem-se as duas liques e adi iona-sea lique resultantea
P
. Findoo pro edimento,restam em
P
′
eP
′′
as liques que orrespondem aos inteiros
ni,i
eni,0
, respe tivamente.Adi ionando à
P
todas as liques restantes emP
′
e em
P
′′
, tem-se o empa otamento
desejado.
Como
G[K]
é um grafo ompleto,P
′′
é um empa otamento de liques para
G[R]
eG[K ∪ R] = G[K] + G[R]
, os onjuntosa ima produzidosevidentemente são liques. A ondição 4.7garanteaexistên ia de vérti es su ientes emK
,S
eR
para produzirP′
e
P
′′
. Alémdisso, a ondição 4.6garantea existên iado empa otamento
P
′′
. Noteque,se
R = ∅
,entãoni
= n
′
i+nSi
,para2 ≤ i ≤ r
,pelas ondições4.5e4.7. Logo, opro essoéresumido a riarP
′
eadi ionarsuas liques à
P
para obteroempa otamento desejado.Finalmente,a ondição 4.5, garante queonúmero orretode liques de tamanhos
2
ar
foramadi ionadas aP
.Assim omo para grafos join, o algoritmoproposto para omputar
f (G, n3, . . . , nr)
, sendoG
umaaranha, omeça omn2
= 0
e a ada iteraçãobem-su edidain rementan2
. Uma iteração onsisteemavaliartodas aspossibilidadesde atribuições aos inteirosni,j
enS
P
(n2, . . . , nr)
G
existe um empa otamento de liques
Q
do mesmo tipo paraG
tal que toda lique detamanho
2
está ontida emR
ou ontém um vérti e deS
. Além dissoQ
eP
ontêm asmesmas liques de ardinalidade maior que
2
. Demonstração. Considere os inteirosni,j
en
S
i
asso iados aP
. É ne essário mostrar que existe quantidade su iente de vérti es livres emS
para onstruirQ
a partir deP
. De fato,toda liqueemP
ontidaemK ∪S
possuinomáximo1vérti eemS
. Logo,onúmero de vérti es emS
não ontidos em liques deP
é, pelo menos,Pr
i=1in′i
≥ 2n2,2
+ n2,1
. Assim, asseguintestransformaçõespodemserexe utadas:n
S
2
← nS2+ n2,1+ n2,2
,n2,2
← 0
en2,1
← 0
. Por inspeção, observa-se que osinteiros, após as transformações, satisfazem as ondições 4.5 a 4.8 e, pelo Lema 4.2, existe um empa otamento de liquesQ
para a aranhaG
.Note que as transformações exe utadas na demonstração do lema anterior alteram
apenasosinteiros
n2,2
,n2,1
en
S
2
,nãoafetandoaforma omo liquesde ardinalidademaior que2
são formadas. Na verdade, as transformações podem ser feitas in lo o, removendo as liquesdeP
que orrespondemaosinteirosn2,1
en2,2
eusandoseusvérti esjuntamente om vérti es livres deS
para ompor asnovas liques e adi ioná-lasnovamente aP
.Destapropriedade,resultaimediatamentequepoderíamosadi ionaraexpressão
n2,1+
n2,2
= 0
às ondiçõesne essáriasparaexistên iadeumempa otamentode liquesemuma aranha, de modo quen2
= n2,0+ n
S
2
. Ainda, dados os inteirosni,j
en
S
i
que satisfazem as ondiçõesjá onhe idaspara um empa otamentoP
do tipo(0, n3, n4, . . . , nr)
,pode-se imediatamente al ularN2
, o maior valor den2
tal que exista um empa otamento do tipo(n2, n3, . . . , nr)
para a mesma aranha. Desta forma, o algoritmo pre isaria apenas analisar as possíveis maneiras de distribuir as liques de tamanho entre3
er
. Então, para ada possibilidade, al ulam-se as quantidadesde vérti es dos onjuntosS
eK
que não são utilizados pelas liques ontidas emP
:FS
= |S| −
Pr
i=3nSi
eFK
= |K| −
Pr
i=1in′i−
Pr
i=3(i − 1)nSi
. Umavez queos inteirosn2,0
en
S
2
podem ser maximizadosdeforma independente,
N2
= min{FS, FK} + f (G[R], n
′′
3, . . . , n′′r) − n′′2
, seR 6= ∅
, ouN2
=
min{FS, FK}
, aso ontrário. Os ál ulos podem ser ainda simpli ados, observando-se queFK
≤ FS
e, portanto,min{FS, FK} = FK
.Com isto, ini ia-se a análise da omplexidade temporal do algoritmo. Considere, a
prin ípio, que
R 6= ∅
. Uma vez que, para aranhas magras, nenhuma lique de tamanhomaior que
2
pode usar vérti es emS
, então a ontagem de possibilidades analisadas é a mesmaqueparaografoG[K]+G[R]
. LogootempogastoéO(n
2+3+...+(r−1))
. Paraaranhas gordas,num enáriodepior aso,qualquer liquedesejadapodeserempa otadautilizando umvérti ede
S
. Assim,onúmerodepossibilidadesanalisadasparani
liquesde tamanhoi
éni+i+1
ni
. Todavia, as liques ontidas em
K ∪ R
onstituem um empa otamento deG[K] + G[R]
e,assim, apli ando oLema 4.1, o número de possibilidades é reduzido parani+i
ni
,que é
O(n
i
i)
. Portanto, otempototal gasto éO(n
3+4+...+r)
.Se
R = ∅
eG
forumaaranhamagra,todasas liquesdesejadasdetamanhomaiorque2
pre isamestar ontidasemK
e, omoexpostonos omentáriosdoLema4.3, onsidera- sen2
= 0
. Logon
′
i
= ni
, para todo3 ≤ i ≤ r
, e uma úni a avaliação da ondição 4.7é su iente para determinar se o empa otamento é viável. O ál ulo de
N2
também éimediato, resultando em um tempo total de
O(n)
para ontar os vérti es emK
eS
. SeG
for umaaranha gorda,numa análisesimples, ada lique ontém ounão um vérti edeS
. Logo, para asni
liques de tamanhoi
, haveráni+1
ni
= ni+ 1
possibilidades. Assim, o total de possibilidadesé