Você está na página 1de 38

Universidade do Minho

Licenciatura em Matemática
Departamento de Matemática

Matemática Discreta
Capı́tulo - Teoria de Grafos Assis Azevedo

1. Generalidades

Começamos por introduzir as definições e notações que vamos usar na disciplina.

Definição 1.1. Um grafo G é um terno (V, A, ϕ) em que:


• V e A são conjuntos disjuntos, sendo V não vazio;
• ϕ : A −→ P(V ) é uma função tal que, se e ∈ A então ϕ(e) tem 1 ou 2 elementos.

Dado um grafo G, os elementos de V dizem-se os vértices de G e os de A as arestas de G.


Para evitar confusões (se estivermos a trabalhar com vários grafos, por exemplo) usaremos
por vezes a notação G = (VG , AG , ϕG ). Se e ∈ AG e v ∈ ϕ(e) dizemos que e incide em
v e que v é uma extremidade de e. Um lacete é uma aresta com uma só extremidade.
Dois vértices dizem-se adjacentes se existir uma aresta da qual são extremidades. Duas
arestas são adjacentes se tiverem uma mesma extremidade. Um grafo diz-se finito se tiver
um número finito de vértices e de arestas. Em geral consideraremos apenas grafos finitos.
Chamamos grafo trivial a um grafo com apenas um vértice e nenhuma aresta.

Definição 1.2. Um grafo diz-se simples se não tem lacetes nem admite arestas diferentes
com as mesmas extremidades.

Note-se que um grafo simples com n vértices tem entre 0 e n2 arestas. Em particular


um grafo simples é finito se e só se tiver um número finito de vértices. Se um grafo não for
simples ele pode ter uma infinidade de arestas mesmo tendo um número finito de vértices,
se existir uma infinidade de lacetes extremidade num dado vértice ou então uma infinidade
de arestas com as mesmas extremidades.
Por outro lado, um grafo simples infinito pode ter um número finito de arestas.

Existem por vezes na literatura definições mais restritivas. Por exemplo, alguns autores
chamam grafo ao que nós aqui chamamos grafo simples.

A representação de um grafo finito pode ser obtida dos seguinte modo: começamos por
marcar no plano (por exemplo) um ponto por cada vértice do grafo; para cada aresta do
grafo unimos por uma linha contı́nua (recta ou não) as suas extremidades (se existirem duas
arestas com as mesmas extremidades desenhamos duas linhas a uni-las). A menos que seja
estritamente necessário não daremos nomes às arestas e, por vezes, aos vértices.
2

Exemplos 1.3.
a) Se |V | = 4 e para cada par de vértices distintos existir uma e uma só aresta
cujas extremidades sejam esses dois vértices temos (por exemplo) as seguintes repre-
sentações do grafo
v3 v4 v3

v4

v1 v2 v1 v2

b) O seguinte grafo (com duas representações) foi obtido a partir do anterior com a
inclusão de duas arestas.
v3 v4 v3

v4

v1 v2 v1 v2

De seguida vou identificar alguns grafos que serão usados no que segue.

Exemplos 1.4. Com apenas duas excepções (C2 e W2 ) os grafos seguintes são grafos sim-
ples. Para simplificar a representação dos grafos não vou “dar nomes” às arestas nem aos
vértices.
a) Os grafos Pn têm n vértices, v1 , v2 , . . . , vn e n − 1 arestas, e1 , e2 , . . . , en−1 em que,
se 1 ≤ i < n as extremidades de ei são vi e vi+1 .

P1 P2 P3 P4 P5

b) Os grafos Cn são obtidos, se n ≥ 2, a partir dos grafos Pn acrescentando uma


aresta que une o vértice vn ao vértice v1 (ver a)) “formando um “cı́rculo” com n
pontos marcados como vértices”, ou então um polı́gono de n lados, se n ≥ 3.

C2 C3 C4 C5

c) Os grafos Wn podem ser obtidos, se n ≥ 2, a partir dos grafos Cn acrescentando


um vértice que será unido por uma aresta a cada um dos outros vértices. Formamos
assim uma “roda” (wheel em inglês) de uma bicicleta com n raios.

W2 W3 W4 W5
3

d) Os grafos, ditos completos, Kn (com n ∈ N) são grafos simples com n vértices e


o maior número possı́vel de arestas que, como vimos atrás, são n2 .


K1 K2 K3 K4 K5

Compare K3 com C3 e K4 com W3 .

e) Os grafos Kn,m podem ser obtidos do seguinte modo: consideramos dois grupos de
vértices, um com n e o outro com m elementos; unimos cada vértices do primeiro
grupo a cada um dos vértices do segundo por uma única aresta.

K1,2 K2,3 K3,3

Note-se que Kn,m tem n + m vértices e n · m arestas. Compare K1,2 com P3 e


K2,2 com C4 .

f ) Temos também os grafos platónicos obtidos pela “planificação” dos sólidos platónicos.
Ver secção 6 para uma caracterização destes poliedros.

“Cubo” “Tetraedro” “Octaedro”

“Dodecaedro” “Icosaedro”
4

g) Outros dois grafos muito usuais e que servem em muitos casos para procurarmos
“contra-exemplos” são os chamados grafo de Petersen e grafo de Tutte

“Grafo de Petersen” “Grafo de Tutte”

Definição 1.5. Dado um grafo G e v ∈ VG chamamos grau de v, e denotamos por gr v, ao


número de arestas que incidem em v, contando a dobrar aquelas que só incidem em v. Mais
precisamente
X X
gr v = 1+ 2.
v ∈ ϕ(e), {v}6=ϕ(e) v∈ϕ(e),{v}=ϕ(e)

No grafo da alı́nea b) do Exemplo 1.3, gr v1 = 6, gr v2 = 4, gr v3 = gr v4 = 3. Nos grafos


de Petersen e de Tutte e nos grafos platónicos todos os vértices têm o mesmo grau (4 no
octaedro, 5 no icosaedro e 3 nos restantes).

Note-se que num grafo simples com n vértices, cada vértice tem grau entre 0 e n − 1.
Como não pode haver simultaneamente um vértice com grau 0 e um outro com grau n − 1
(pois este seria adjacente a todos os outros) então temos n vértices e n − 1 possibilidades
para grau dos vértices. Fica assim mostramos o seguinte resultado.
Lema 1.6. Num grafo simples finito há sempre dois vértices com o mesmo grau.
Decorre imediatamente da definição de grau de um vértice o seguinte resultado.
Lema 1.7 (do aperto de mão). A soma dos graus dos vértices de um grafo finito é igual ao
dobro do número de arestas do grafo. Em particular essa soma é par.
Como consequência temos.
Teorema 1.8. Num grafo finito o número de vértices de grau ı́mpar é par.
Demonstração. Seja G um grafo finito e consideremos
V p = {v ∈ V : gr v é par}, V i = {v ∈ V : gr v é ı́mpar}.
Do Lema 1.7 e da igualdade
X X X
gr v = gr v + gr v
v∈V v∈V p v∈V i
resulta que o último somatório é par (pois os outros também são). Como a soma de um
número finito de números ı́mpares é par se e só se o número de parcelas o for, concluı́mos
que V i tem um número par de elementos. 
5

Como exemplo vejamos que numa dada festa com 49 elementos há sempre uma pessoa
que conhece um número par de (outras) pessoas. Para isso basta considerar o grafo simples
em que: os vértices são formados pelas pessoas presentes na festa; dois vértices diferentes
são unidos por uma aresta se as pessoas representadas por esses vértices se conhecerem.
Aplicando o teorema anterior podemos concluir que o número k de pessoas que conhece um
número ı́mpar de (outras) pessoas é par. Por exclusão de partes existem 49 − k pessoas que
conhecem um número par de (outras) pessoas. Note-se que 49 − k não é zero pois é um
número ı́mpar.
Note-se que se na festa estivessem 48 pessoas poderia acontecer o caso de todas elas se
conhecerem e portanto cada uma delas conhecia um número ı́mpar (47) de pessoas na festa.
O teorema anterior tem uma espécie de recı́proco.

Proposição 1.9. Sejam n ∈ N e d1 , d2 , . . . , dn ∈ N0 tais que um número par deles é ı́mpar


sendo os outros pares. Nestas condições existe um grafo com n vértices v1 , v2 , . . . , vn tal que
o grau de vi é igual a di , para i = 1, 2, . . . , n.

Demonstração. Consideremos h i n pontos distintos, v1 , v2 , . . . , vn que serão os vértices do grafo.


Para cada i consideremos d2i lacetes incidentes em vi (por exemplo, se di = 5 consideramos
2 lacetes incidentes em v1 ). Cada vértice do grafo obtido até o momento tem grau igual a
di , se di é par ou di − 1 se di é ı́mpar. Como existe um número par de vértices de grau ı́mpar
posso agrupá-los em grupos de 2 e definir uma aresta que une os vértices de cada um desses
grupos. O grafo obtido satisfaz as condições pedidas. 

Se quisermos um grafo com 5 vértices v1 , v2 , v3 , v4 e v5 cujos graus são 1, 4, 5, 7 e 9


podemos considerar 2 lacetes adjacentes a v2 , 2 lacetes adjacentes a v3 , 3 lacetes adjacentes
em v4 , 4 lacetes adjacentes em v5 e mais duas arestas, uma adjacente a v1 e v3 e a outra
adjacente a v4 e v5 . É claro que pode haver muitos outros grafos nestas mesmas propriedades.

Definição 1.10. Um grafo G diz-se bipartido se o conjunto dos vértices é a união disjunta
de dois conjuntos V1 e V2 tais que toda a aresta de G tem uma extremidade em V1 e outra
em V2 .

Os grafos Kn,m (m, n ∈ N), são casos tı́picos de grafos bipartidos. De facto são o que se
chama grafos simples bipartidos completos. Note-se que estes grafos não são completos
mas não podemos acrescentar mais arestas a esses grafos mantendo-o simples e bipartido.
Uma maneira de ver se um dado grafo é ou não bipartido é tentar usar duas cores (cor 1
e cor 2) para colorir os vértices do grafo de modo a que dois vértices com a mesma cor não
sejam adjacentes. Caso consigamos, consideramos V1 e V2 o conjunto formado pelos vértices
que foram coloridos com a cor 1 e com a cor 2, respectivamente.
Na prática, se o grafo for finito, escolhemos a cor 1 para um dos vértices. Para que o grafo
seja bipartido todos os vértices adjacentes ao vértice inicial têm de ter a cor 2. Para cada
um dos vértices já com a cor 2 vamos atribuir a cor 1 aos vértices que lhes são adjacentes.
6

Se chegarmos a uma contradição, o grafo não é bipartido, caso contrário continuamos com
o processo. Mais cedo ou mais tarde o processo termina. O que estamos a fazer é a definir
o que se chama uma 2-coloração de um grafo, que será mais tarde generalizada.

Vejamos outros exemplos, para além dos grafos Kn,m .


• Um grafo com lacetes não é bipartido.
• O cubo é o único grafo platónico que é bipartido.
• Os grafos Pn são bipartidos, se n ≥ 2. Basta considerar V1 = {vi : i é ı́mpar} e
V2 = {vi : i é par}.
• Os grafos Cn são bipartidos se e só se n é par. De facto, como cada vértice vi é unido
a vi+1 , se i < n então a partição dos vértices de Cn teria de separar os vértices Vi
com i par dos vértices vi com i ı́mpar. No caso em que n é ı́mpar chegarı́amos a uma
contradição pois vn está ligado a v1 e 1 e n são ı́mpares. Se n é par tudo funciona!
• Se n ≥ 2, Wn não é bipartido.
Vamos agora introduzir a noção de subgrafo.

Definição 1.11. Sejam G = (VG , AG , ϕG ) e F = (VF , EF , ϕF ) dois grafos. Diz-se que F é


um subgrafo de G se VF ⊆ VG , AF ⊆ AG e ϕF (e) = ϕG (e) para todo e ∈ AF .

Notação. Se F e G são grafos, escreveremos F ≤ G para dizer que F é um subgrafo de G.


Na prática os subgrafos de um grafo são obtidos retirando alguns vértices e arestas, tendo
o cuidado de retirar todas as arestas que sejam adjacentes a um vértice que foi retirado.
Duas maneiras de construir subgrafos são as seguintes.

Definição 1.12. Sejam G = (VG , AG , ϕ) um grafo, C ⊆ VG e E ⊆ AG . Denotámos por:


• G − C, o grafo (VG \ C, A, φ) em que A é o conjunto formado pelas arestas de G
que não são incidentes em nenhum vértice de C e φ(e) = ϕ(e) se e ∈ A (na prática
retiramos a G as arestas incidentes em algum vértice pertencente a C);
• G − E, o grafo (VG , A \ E, φ) em que φ(e) = ϕ(e) se e ∈ A \ E (na prática retiramos
a G as arestas pertencentes a E).

Nas condições da definição acima, se v ∈ VG e e ∈ AG escreveremos G − v e G − e para


denotar G − {v} e G − {e} respectivamente.
Os seguintes são 4 subgrafos do grafo da alı́nea b) do Exemplo 1.3 que são da forma G − C
ou G − E em que C ⊆ V e E ⊆ A.
v3 v3 v3 v3

v4 v4 v4
v1 v2 v1 v2 v1 v2 v1 v2

Note-se que o primeiro, o segundo e quarto grafos na figura acima são obtidos do grafo
original, retirando arestas e que o terceiro grafo é G − {v4 }.
7

O seguinte grafo é um subgrafo do grafo da alı́nea b) do Exemplo 1.3 que não é da forma
G − C nem G − E, com C ⊆ V e E ⊆ A
v3

v1 v2

De qualquer modo este grafo é (G − v4 ) − e em que e é uma das arestas, que em G, é


incidente em v1 e em v2 . Vejamos que isto pode ser feito sempre que tivermos um subgrafo
de um grafo dado.

Proposição 1.13. Todo o subgrafo de um grafo G = (VG , AG , ϕG ) é da forma (G − C) − E


em que C ⊆ V e E ⊆ A.

Demonstração. Seja H = (VH , AH , ϕH ) um subgrafo de G e consideremos C = VG \ VH .


Note-se que H é um subgrafo de G − C com os mesmos vértices que G − C. Para concluir
basta considerar E o conjunto formado pelas arestas de G − C que não pertencem a H. 

Note-se que pode haver muitos subgrafos de um grafo dado. Por exemplo grafos da forma
G − C em que C ⊆ V existem 2|V | , que é o número de subconjuntos de V . Para cada um
desses subgrafos podemos ainda retirar algumas arestas obtendo em cada caso subgrafos
diferentes. É claro que muitos desses subgrafos podem ter a mesma representação.
Para terminar esta secção vamos formalizar o que se entende por dois grafos terem a
mesma estrutura.

Definição 1.14. Dois grafos G e H dizem-se isomorfos se existirem bijecções f : VG → VH


e g : AG → AH tais que, se e ∈ AG , as extremidades de g(e) são as imagens por f das
extremidades de e.

Notação. Se F e G forem dois grafos, escreveremos F ∼ = G para dizer que F e G são


isomorfos.
É claro que a relação de isomorfismo é uma relação de equivalência.
Na prática se tivermos a representação de um grafo G e se esquecermos os nomes dos
vértices e das arestas então essa representação serve para qualquer grafo que seja isomorfo
a G, e só para esses.
Por exemplo: K3 = ∼ C3 , K4 = ∼ W3 , K1,2 =
∼ P3 , K2,2 ∼ = C4 , Km,n ∼= Kn,m (se n, m ∈ N),
dois quaisquer grafos completos são isomorfos.
Acrescentando passo a passo um vértice pode-se “facilmente” encontrar, a menos de iso-
morfismo, todos os grafos simples com 5 ou menos vértices.
Dizemos que uma propriedade é preservada por isomorfismo, se sempre que for satisfeita
por um grafo é também satisfeita por todos so que lhe são isomorfos. Estas propriedades
são usadas muitas vezes para mostrar que dois grafos não são isomorfos. Vejamos algumas
dessas propriedades.
8

Se dois grafos G e H são isomorfos então:


• VG e VH são equipotentes;
• AG e AH são equipotentes;
• se G é bipartido então H é bipartido;
• se G tem k vértices com grau n então H também tem k vértices com grau n (k, n ∈
N0 );
• se G tem k lacetes então H também tem k lacetes (k ∈ N0 );
• se G é completo, bipartido ou simples então o mesmo acontece relativamente a H.
Se um grafo admite um subgrafo que não é bipartido então o grafo também não é bipartido.
Por esse motivo se o grafo admitir 3 vértices que são adjacentes dois a dois então o grafo
não é bipartido. No fundo C3 é isomorfo a um subgrafo do grafo dado. Pela mesma razão o
grafo de Petersen não é bipartido, pois admite um subgrafo isomorfo a C5 .

2. Caminhos

Vamos agora introduzir a noção de caminho e de alguns dos seus casos particulares.

Definição 2.1. Um caminho num grafo G = (V, A, ϕ) é uma sequência

C = (v0 , e1 , v1 , e2 , . . . , vn−1 , en , vn ),

com n ∈ N0 , v0 , . . . , vn ∈ V , e1 , . . . , en ∈ A tal que ϕ(ei ) = {vi−1 , vi }, para i = 1, . . . , n.

Nas condições desta definição, se n = 0 o caminho diz-se trivial. Dizemos que C une v0
a vn e que v0 a vn são as extremidades de C , sendo v0 o inı́cio e vn o fim de C .
Em geral, nas condições da definição dizemos que o caminho passa nos vértices v0 , v1 , . . . , vn
e nas arestas e1 , . . . , en . Na definição de caminho é necessário referir que ϕG (ei ) = {vi−1 , vi }
(se i ≤ n) e não apenas que vi−1 , vi são extremidades de ei . Por exemplo, se o desenho
seguinte for uma representação de parte de um grafo

v1 e1 v0 e2 v2
então a sequência (v0 , e1 , v0 , e2 , v2 ) não é um caminho embora v0 seja extremidade de e1 e
v0 e v2 sejam extremidades de e1 .
Note-se também que, na definição do caminho é necessário indicar as arestas pois no grafo
podem existir arestas com as mesmas extremidades. Se tal não acontecer (por exemplo, se
G é simples) podemos definir caminhos apenas pela sucessão dos vértices por onde ele passa.
Com as notações referidas, o número de arestas, contando com as repetições, usadas para
definir um caminho C diz-se o comprimento do caminho e denota-se por |C |.
Como é de esperar, podemos multiplicar (em certas condições) e inverter caminhos.
9

Definição 2.2. Sejam G um grafo e C = (v0 , e1 , v1 , · · · , en , vn ) e D = (u0 , f1 , u1 , · · · , fm , um )


dois caminhos. Se vn = u0 , a concatenação de C com D define-se como sendo o caminho

C ∗D = (v0 , e1 , v1 , · · · , en , vn , f1 , u1 , · · · , fm , um ).

Dizemos que o caminho C ∗ D prolonga C à direita (e D à esquerda). Note-se que o


produto de dois caminhos nem sempre existe e que, pode existir o produto de concatenação
de C por D e não existir o produto de D por C . Além disso, se C ∗ D e C ∗ D estiverem
definidos, eles são em geral diferentes.

Definição 2.3. Sejam G um grafo e C = (v0 , e1 , v1 , · · · , en , vn ) e um caminho. Definimos


o inverso de C como sendo o caminho

C −1 = (vn , en , · · · , v1 , e1 , v0 ).

Nota 2.4. Se C , D e E são caminhos num grafo G tais que podemos considerar os produtos
de concatenação C ∗ D e (C ∗ D) ∗ E então:
• (C ∗ D)−1 = D −1 ∗ C −1 ;
• (C ∗ D) ∗ E = C ∗ (D ∗ E ) (o produto de concatenação é associativo).
Esta última observação dá sentido à expressão C ∗ D ∗ E .

Um sub-caminho de um caminho (v0 , e1 , v1 , e2 , · · · , vn−1 , en , vn ) é qualquer caminho da


forma (vi−1 , ei , vi , ei+1 , · · · , vj−1 , ej , vj ) em que 1 ≤ i ≤ j ≤ n. Dito de outra forma: um
caminho D é um sub-caminho de um caminho C se existirem caminhos E e F tais que
C = E ∗ D ∗ F.

Alguns caminhos têm um nome “especı́fico”.

Definição 2.5. Num grafo G um caminho diz-se um:


• caminho fechado ou circuito se as suas extremidades coincidirem;

• trilho se não repete arestas;

• simples se não tem vértices repetidos excepto eventualmente as extremidades;

• ciclo se é fechado e não repete arestas;

• k-ciclo, com k ∈ N se é um ciclo de comprimento k;

• euleriano se passa por todas as arestas exactamente uma vez;

• hamiltoniano se é simples e passa por todos os vértices.


10

Nota 2.6. Se um caminho repetir arestas então não é simples pois repete os vértices que
incidem na aresta repetida e uma das ocorrências dessa repetição não é extremidade do
caminho. Por outro lado um caminho pode ser simples e repetir arestas, como acontece com
os caminhos da forma (u, e, v, e, u), que só repetem os vértices que são extremidades. De facto
os caminho desta forma são os únicos caminhos simples que repetem arestas. Verifique!

Dado um circuito C e um vértice v que pertença ao caminho, existem caminhos D,


acabando em v, e E , começando em v tais que C = D ∗E . Deste modo E ∗D está bem definido
e é um caminho que começa e acaba em v. Por exemplo, se C = (v0 , e1 , v1 , e2 , v2 , e3 , v3 , e4 , v0 )
e v = v2 , consideramos D = (v0 , e1 , v1 , e2 , v2 ) e E = (v2 , e3 , v3 , e4 , v0 ). Nessas condições
obtemos E ∗ D = (v2 , e3 , v3 , e4 , v0 , e1 , v1 , e2 , v2 ).
Em qualquer grafo há circuitos, basta considerar C ∗ C −1 em que C é um caminho
qualquer. Por outro lado se tivermos um circuito D então podemos definir uma infinidade
de circuitos: D ∗ D, D ∗ D ∗ D, etc.. O que nos vai interessar é saber quando é que existem
circuitos que não repetem vértices, isto é, ciclos simples.
Os seguintes resultados serão usados mais tarde. No primeiro mostrámos que um trilho
num grafo finito pode ser prolongado “de um ou dos dois lados” de maneira maximal.

Lema 2.7. Sejam G um grafo finito e C um trilho em G. Então existe um trilho D que
prolonga C à direita (esquerda) e que não pode ser prolongado à direita (esquerda) por outro
trilho.

Demonstração. Prolongando o trilho C à direita usando novas arestas enquanto isso for
possı́vel, obtemos um trilho nas condições pretendidas. 

Usando as duas versões deste lema, à esquerda e à direita obtemos o seguinte resultado.

Corolário 2.8. Todo o trilho num grafo finito é um subgrafo de um trilho que por sua vez
não é um subgrafo de nenhum outro trilho.

O próximo resultado dá-nos uma condição suficiente sobre um grafo de modo a garantir
a existência de ciclos simples.

Proposição 2.9. Sejam G um grafo e C um circuito que usa uma dada aresta apenas uma
vez. Então existe um ciclo simples no grafo que usa apenas arestas de C e que passa pela
aresta referida.

Demonstração. Seja e uma aresta que é usada uma só vez no caminho C e consideremos D
e E caminhos tais que C = D ∗ E e e é a primeira aresta do caminho E . Consideremos o
caminho E ∗D. Note-se que este caminho é da forma (v0 , e, v1 , . . . , en , vn ), com vn = v0 . Seja
k o menor ı́ndice positivo tal que vk = v0 e consideremos D1 = (v0 , e, v1 , . . . , ek , vk ). Se este
caminho for simples a demonstração terminou. Se o caminho não for simples então existem
0 < i < j < n tais que vi = vj . Nesse caso consideramos D2 = (v0 , e, . . . , vi , ej , . . . , vk ), que
11

é um caminho fechado que usa apenas arestas do caminho original, usa a aresta e uma só
vez e tem comprimento menor do que D1 . Se D2 não for simples podemos repetir o processo.
Como o caminho C tem comprimento finito, este processo pára, obtendo nesse momento um
circuito simples. Como a aresta e só pode aparecer uma vez este circuito não é da forma
(u, e, v, e, u) e portanto é um ciclo (ver a parte final da Nota 2.6). 

Se no enunciado considerasse que a aresta e aparecia 2 vezes (de facto um número par
de vezes) então o resultado poderia não ser verdadeiro pois o caminho poderia ser da forma
(u, e, v, e, u), por exemplo.

Corolário 2.10. Sejam G um grafo, e uma aresta de G e C um circuito que usa a aresta e
um número ı́mpar de vezes. Então existe um ciclo simples no grafo que usa apenas arestas
de C e que passa pela aresta e.

Demonstração. Seja k o número de vezes que a aresta aparece no caminho. Se k = 1 o


resultado já foi demonstrado. Suponhamos então que k é um número ı́mpar maior do que 1.
Se u0 e u1 são as extremidades da aresta e então o caminho C é da forma

C0 ∗ E1 ∗ C1 ∗ E2 ∗ · · · Ck−1 ∗ Ek ∗ Ck ,

em que Ei é igual a (u0 , e, u1 ) ou (u1 , e, u0 ).

Se existir i < k tal que Ei = Ei+1 então aplicamos a proposição anterior ao caminho Ei ∗ Ci
que é um caminho fechado usando a aresta e apenas uma vez. Se Ei 6= Ei+1 para todo i < k
então necessariamente

E1 = E3 = · · · = Ek , E2 = E4 = · · · = Ek−1 .

Em particular C0 ∗ Ek ∗ Ck é um caminho fechado que usa a aresta e apenas uma vez.


Podemos agora aplicar a proposição anterior para obter um ciclo nas condições pedidas. 

Definição 2.11. Um grafo diz-se: euleriano se admitir um circuito euleriano; hamilto-


niano se admitir um ciclo hamiltoniano.

Por exemplo, se n, m ∈ N:
• Pn , Cn , Wn , Kn e os grafos platónicos são hamiltonianos;
• Km,n é hamiltoniano se e só se n = m;
• Cn é euleriano;
• Wn não é euleriano para n ≥ 2;
• Kn é euleriano se e só se n é ı́mpar;
• Km,n é euleriano se e só se n e m são pares;
• o “octaedro” é o único grafo platónico euleriano.
A demonstração de que alguns destes grafos não são eulerianos pode não ser óbvia!
12

Definição 2.12. Um grafo diz-se conexo se dois quaisquer dos seus vértices podem ser
unidos por um caminho. Um grafo que não seja conexo diz-se desconexo.

Note-se que todos os grafos que vimos até agora são conexos.
A propriedade de “ser euleriano”, “ser hamiltoniano”, “ser conexo” é preservada por
isomorfismo. Dito de outro modo, se G e H são grafos isomorfos e um deles é euleriano (ou
hamiltoniano, ou conexo) então o outro também é.
A distância entre dois vértices num grafo conexo é o menor comprimento possı́vel de um
caminho que una esses dois vértices.
Como exercı́cio pode verificar que a função d : VG × VG −→ N0 que a cada par de vértices
associa a distância entre eles é o que se chama uma métrica sobre VG , isto é satisfaz as
condições:
• ∀u, v ∈ VG , d(u, v) ≥ 0;
• ∀u, v ∈ VG , d(u, v)) = 0 se e só se u = v;
• ∀u, v ∈ VG , d(u, v) = d(v, u);
• ∀u, v, w ∈ VG , d(u, w) ≤ d(u, v) + d(v, w) (desigualdade triangular).
Chamamos diâmetro de um grafo conexo ao supremo das distâncias entre vértices do
grafo.
Intuitivamente parece claro que se fizermos uma representação plana (por exemplo) de
um grafo desconexo estamos no fundo a fazer representações de 2 ou mais grafos conexos.
Cada um desses grafos é o que se chama “uma componente conexa do grafo original”.
Formalmente a situação é a seguinte. Se G é um grafo (desconexo para o que interessa
agora) definimos a seguinte relação R sobre VG (que facilmente se vê ser de uma relação de
equivalência)
R = {(u, v) ∈ VG × VG : existe um caminho em G que une u a v}.
Usando a partição sobre VG induzida por esta relação de equivalência obtemos G como
uma “união” de subgrafos de G conexos. Cada um deles tendo os elementos de uma classe
como vértices e como arestas as arestas de G que unem vértices dessas classe.
Note-se que dois pontos de duas classe de equivalência diferentes não são extremidades
do mesmo caminho e, muito menos, da mesma aresta. Se G for conexo esta relação de
equivalência é universal. O número de classes desta relação de equivalência diz-se o número
de componentes conexas de G.
É óbvio que se dois grafos são isomorfos então admitem o mesmo número de componentes
conexas. Quando queremos mostrar que dois grafos não são isomorfos começamos por ver se
têm o mesmo número de vértices e se os graus dos vértices são os mesmos. A partir daqui
o problema pode complicar-se. Se, por exemplo, tivermos dois grafos G e H, e ∈ AG tais
que G − {e} é desconexo então, se G e H forem isomorfos tem de existir f ∈ AH tal que
H − {f } é desconexo e G − {e} e H − {f } são isomorfos. E o processo pode continuar!
13

Exemplos 2.13.

a) Se tirarmos uma aresta aos grafos Pn , com n ≥ 2, ou a K1,n os grafos obtidos


são desconexos.
b) Se tirarmos duas arestas aos grafos Cn , com n ≥ 2, obtemos sempre grafos des-
conexos, mas se fizermos o mesmo aos grafos K2,n podemos ou não obter grafos
desconexos.
c) Consideremos o grafo (com diâmetro 2)
v5

v2 v3

v1 v4

O caminho que passa sucessivamente por v1 , v2 , v5 , v3 , v4 , v1 é um ciclo hamilto-


niano. O caminho que passa sucessivamente por v1 , v2 , v5 , v3 , v2 , v4 , v1 , v3 , v4 é um
caminho euleriano. Não existe nenhum ciclo euleriano neste grafo.
d) No grafo (com diâmetro 5) que representa o dodecaedro podemos definir um ciclo
hamiltoniano começando em v “seguindo as arestas mais a cheio”.

e) Se tivermos uma planta de uma casa podemos associar-lhe um grafo do seguinte


modo: marcamos um vértice por cada divisão da casa e um vértice para a região
exterior; marcamos uma aresta unindo dois vértices por cada porta que ligue duas
divisões da casa ou uma divisão da casa ao exterior. Deste modo: um caminho
euleriano neste grafo corresponde a um percurso que passe por todas as portas sem
repetições; um ciclo hamiltoniano corresponde a um ciclo que passe em todas as
divisões e no exterior sem repetições. Na figura seguinte represento a planta de uma
casa (à esquerda) e o grafo associado.

f ) O grafo de Petersen (que tem diâmetro 2) admite um circuito hamiltoniano. Para


ver isso basta seguir (num dos dois desenhos) as arestas “marcadas a tracejado”
começando e acabando nos vértices mais a cheio.
14

Para além disso, o grafo de Petersen não é um grafo hamiltoniano mas, se tirarmos
um qualquer dos seus vértices (e todas as arestas que lhe são adjacentes) obtemos
um grafo hamiltoniano. Verifique!

3. Árvores

Começamos com uma definição.

Definição 3.1. Seja G um grafo. Uma aresta e diz-se uma ponte de G se o número de
componentes conexas de G − e for maior do que o número de componentes conexas de G.

Dito de outra maneira: num grafo G uma aresta e é uma ponte se e só se as suas extre-
midades só poderem ser unidos por caminhos que usem a aresta e.
Vejamos uma outra caracterização das pontes num grafo.

Lema 3.2. Num grafo G uma aresta é uma ponte se e só se não pertence a um ciclo.

Demonstração. Suponhamos que e é uma aresta de G que pertence a um ciclo C . Podemos


supor que C é da forma D ∗ (u, e, v) ∗ E em que u e v são as extremidades de e e o fim de
E é o inı́cio de D. Então E ∗ D é um caminho que une as extremidades de e e que não usa
a aresta e pois C é um ciclo.
Suponhamos agora que e é uma aresta que não é uma ponte. Sejam u e v as extremidades
de e. Como em G os vértices u e v podem ser unidos pelo caminho (u, e, v) e e não é
uma ponte então existe um caminho C em G − e e que une v a u. Deste modo o caminho
(u, e, v) ∗ C é um circuito que usa a aresta e apenas uma vez. Pelo Lema 2.9 existe um ciclo
em G que contém e. 

Definição 3.3. Um grafo diz-se uma:


• árvore, se for conexo e não admitir ciclos;
• floresta, se não admitir ciclos.

É claro que as componentes conexas de uma floresta são árvores. Note-se que todo o
subgrafo de uma floresta é uma floresta mas um subgrafo de uma árvore pode não ser uma
árvore, pois pode não ser conexa.

Dado um grafo G dizemos que um seu subgrafo é uma árvore geradora de G se for uma
árvore e contiver todos os vértices de G.
15

Atendendo ao lema anterior o seguinte resultado é óbvio.

Proposição 3.4. Todo o grafo conexo finito admite uma árvore geradora.

Demonstração. Seja G um grafo conexo. Se G não admitir ciclos então é uma árvore gera-
dora. Se G admitir ciclos então retiramos uma aresta ao ciclo obtendo-se um grafo conexo
(pois a aresta não é uma ponte, pelo Lema 3.2) com os mesmo vértices. Se este grafo for
uma árvore o processo termina, caso contrário retirámos-lhe uma aresta que pertença a um
ciclo. Como o grafo é finito, o processo pára, obtendo então uma árvore geradora de G. 

Vejamos um exemplo. Começamos no grafo da esquerda e aplicamos o método descrito


na demonstração da proposição anterior. Obtemos sucessivamente

sendo o grafo da direita uma árvore geradora do grafo da esquerda (e também dos outros).
Note-se que poderı́amos ter aplicado este método de outras maneiras e obterı́amos várias
árvores geradores deste grafo.

Lema 3.5. Se numa árvore finita há um vértice de grau k (k ∈ N) então a árvore tem pelo
menos k vértices de grau 1.

Demonstração. Sejam v ∈ V com grau k e e1 , e2 , . . . , ek as arestas incidentes em v. Para


cada 1 ≤ i ≤ k, seja vi o vértice, diferente de v, adjacente à aresta ei . Usando o Lema 2.7
seja Ci um trilho que prolonga à direita o trilho (v, ei , vi ) e que não pode ser prolongado à
direita por nenhum outro trilho. Como G não tem ciclos cada um destes trilhos é simples.
As extremidades de Ci são v e um outro vértice wi , para 1 ≤ i ≤ k. Se wi tivesse grau
maior do que 1 então existiria uma aresta que não foi usada no caminho e que era incidente
em wi permitindo assim prolongar o trilho Ci a outro trilho, contrariando a hipótese sobre
Ci .
Por outro lado, se existisse i 6= j tal que wi = wj então o grafo G admitiria o ciclo Ci ∗Cj−1 .

ei Ei
vj
v wi = wj Neste desenho Ci = (v, ei , vi ) ∗ Ei

ej vi
Ej

Mostrámos assim que w1 , . . . , wk são k vértices com grau 1. 

Este resultado dá-nos a ideia que numa árvore a média dos graus dos vértices é muito
baixo. De facto, se n é o número de vértices da árvore, a média referida é igual a 2(1 − n1 ),
que é um número entre 1 e 2 (ver Exercı́cio 41).
16

Teorema 3.6. Se G = (VG , AG , ϕG ) é um grafo finito e conexo as seguintes condições são


equivalentes:
a) G é uma árvore;
b) todas as arestas de G são pontes;
c) |VG | = |AG | + 1.

Demonstração. O Lema 3.2 mostra que as duas primeiras condições são equivalentes.
a) ⇒ c) Vamos fazer a demonstração por indução sobre o número de vértices de G. Se G
tem um só vértice então não tem arestas, pois caso contrário teria um ciclo.
Suponhamos agora que o resultado vale para todas as árvores com n vértices (para algum
n ∈ N) e seja G uma árvore com n + 1 vértices. Pelo lema anterior G tem (pelo menos) um
vértice v de grau 1. Seja e a aresta de G incidente em v. Neste caso G − v é uma árvore
pois é conexo (porquê?). Aplicando a hipótese de indução, podemos concluir que G − v tem
mais um vértice do que arestas. Como G tem mais um vértice e uma aresta do que G − v a
conclusão segue imediatamente.
c) ⇒ a) Seja agora G um grafo conexo tal que |VG | = |AG | + 1. Usando a Proposição 3.4,
seja H uma árvore geradora de G. Pela implicação que acabámos de demonstrar, aplicada
a H, temos |VH | = |AH | + 1. Desta igualdade, do facto de H e G terem os mesmos vértices
e da igualdade |VG | = |AG | + 1 obtemos |AH | = |AG |. Em particular G = H, pois H é um
subgrafo de G. Concluı́mos assim que G é uma árvore. 

Se considerarmos florestas em vez de árvores podemos usar este teorema em cada compo-
nente conexa da floresta, que é uma árvore, e obter o seguinte resultado.

Corolário 3.7. As seguintes condições sobre um grafo finito G = (VG , AG , ϕG ) com k


componentes conexas são equivalentes:
a) G é uma floresta;
b) todas as arestas de G são pontes;
c) |VG | = |AG | + k. 

4. Caminhos eulerianos

Estamos agora em condições de caracterizar os grafos que admitem um caminho ou um


circuito euleriano. Apesar de a definição de grafo hamiltoniano ter muitas parecenças com
a de grafo euleriano não existe nenhum algoritmo “computacionalmente eficiente” que nos
diga se um dado grafo é ou não hamiltoniano.

É claro que se o grafo for desconexo existem vértices no grafo que não podem ser unidos
por um caminho e, portanto, o grafo não admite nenhum caminho euleriano ou hamiltoniano.
17

Teorema 4.1. Um grafo conexo finito é euleriano se e só se todos os seus vértices tiverem
grau par.

Demonstração. Seja G = (VG , AG , ϕ) um grafo.


Suponhamos que G é euleriano e que (v0 , e1 , v1 , e2 , · · · , vn−1 , en , vn ), com vn = v0 , é um
caminho euleriano. Em particular neste caminho estão todas as arestas, sem repetição, e
todos os vértices. Deste modo, se 0 ≤ i ≤ n, gr vi é par, pois

gr vi = dobro das vezes em que vi aparece no caminho, se vi 6= v0
gr v0 = 1 + dobro das vezes em que v0 aparece no caminho sem ser nos extremos + 1.

O primeiro (segundo) 1 refere-se à primeira (última) ocorrência de v0 no caminho. Deste


modo os graus de todos os vértices é um número par.

Inversamente, se todos os vértices de G têm grau par começamos por escolher um vértice
v0 e vamos definir um caminho que comece em v0 . Esse caminho pode ir sempre sendo
prolongado, sem repetir arestas, até chegarmos a um vértice em que todas as arestas nele
incidentes já tenham sido usadas.
Nesse momento obtemos um caminho da forma

C1 = (v0 , e1 , v1 , . . . , en , vn )

em que todas as arestas de G incidentes em vn já aparecem no caminho. Note-se que vn = v0


pois caso contrário o grau de vn era igual a 2 r + 1 (que é ı́mpar) em que r é o número de
vezes que vn “aparece” no caminho sem ser nos extremos (ainda não usamos o facto G ser
conexo).

Suponhamos que há um vértice vi de C1 que é uma extremidade de uma aresta que não
pertence a C1 . Nesse caso o grafo H obtido de G por exclusão das arestas que pertencem
a C1 é um grafo (possivelmente não conexo) cujos vértices têm todos grau par. Podemos
aplicar a este grafo o raciocı́nio referido acima para encontrar um trilho fechado D em H
que começa e acaba em vi . Deste modo o caminho

C2 = (v0 , e1 , v1 , . . . , ei , vi ) ∗ D ∗ (vi , e1+1 , . . . , en , vn )

é um trilho fechado que liga v0 a v0 e que utiliza mais arestas que C1 .


Este processo pode ser repetido até encontrarmos um trilho fechado Cm de tal modo que
qualquer que seja o vértice do trilho todas as arestas incidentes nesse vértice foram já usadas
no trilho Cm (aqui usamos o facto de G ser finito).
Se todos os vértices de G forem vértices de Cm então Cm é um circuito euleriano. Se
existir um vértice em G que não pertence a Cm então, como G é conexo esse vértice pode
ser unido por um caminho a um vértice de Cm . Esta situação não pode acontecer porque
nesse caminho existe uma aresta que tem uma extremidade em Cm e outra fora de Cm . 
18

Nota 4.2. Da demonstração do teorema segue também que, se um grafo for euleriano então
admite um circuito euleriano a começar em qualquer dos seus vértices e seguindo por uma
qualquer aresta nele incidente.

Vejamos um exemplo.

Exemplo 4.3. Suponhamos que queremos encontrar um caminho euleriano no grafo

8
A 1 B
C
3 7

2 6 10 9
4 12

5 D
F E
11

começando em A e que tı́nhamos construı́do o trilho fechado C1 = (A, 1, B, 6, E, 5, F, 2, A).


De seguida considero o grafo obtido por remoção das arestas já usadas

8
A B
C
3 7

10 9
4 12

D
F E
11

e repetimos o processo começando num dos vértices já usados e que incida em alguma aresta,
por exemplo o F . Construo um trilho fechado, por exemplo, D = (F, 4, B, 7, C, 8, B, 3, F ).
“Incluı́mos” agora este trilho em C1 , substituindo F por D, obtendo assim o trilho
C2 = (A, 1, B, 6, E, 5, F, 4, B, 7, C, 8, B, 3, F, 2, A).
De seguida retiramos as arestas já usadas e repetimos o processo agora no grafo

A B
C

10 9
12

D
F E
11

Consideramos o trilho H = (C, 9, D, 11, E, 12, D, 10, C) e incluı́-mo-lo em C2 no lugar


do C obtendo assim
C3 = (A, 1, B, 6, E, 5, F, 4, B, 7, C, 9, D, 11, E, 12, D, 10, C, 8, B, 3, F, 2, A)
que é um circuito euleriano.
19

Se apenas dois dos vértices de um grafo tiverem grau ı́mpar então podemos encontrar
caminhos (não ciclos) eulerianos no grafo.

Corolário 4.4. Um grafo admite um caminho euleriano que não é fechado se e só se tiver
exactamente dois vértices com grau ı́mpar. Caso exista um caminho euleriano não fechado
os vértices de grau ı́mpar são as extremidades do caminho.

Demonstração. Se G admite um grafo euleriano não fechado C = (u0 , e1 , u1 . . . , en , un )


consideremos o grafo G∗ obtido a partir de G acrescentando apenas uma aresta e cujas
extremidades são u0 e un . Note-se que o caminho C = (u0 , e1 , u1 . . . , en , un , e, u0 ) é um
circuito euleriano em G∗ . Pelo teorema anterior todos os vértices de G∗ têm grau par. Em
particular os vértices u0 e un têm grau ı́mpar em G e os outros têm grau par.
Inversamente se existirem u, v ∈ VG com grau ı́mpar e se todos todos os outros vértices de
G tiverem grau par então no grafo G∗ construı́do como atrás (acrescentando a G uma aresta
e cujas extremidades são u e v) todos os vértices têm grau par. Pelo teorema anterior e
pela nota acima, existe um circuito euleriano (u, e, v, . . . , en , u) definido em G∗ . Deste modo
o caminho (v, . . . , en , u) (obtido do anterior por exclusão do primeiro vértice e da primeira
aresta) é um caminho euleriano em G que não é fechado. 

Um outro algoritmo (em geral muito mais simples de executar) para construir circuitos
eulerianos, quando existem, é o chamado algoritmo de Fleury.

Começamos num vértice qualquer. Em cada passo acrescentamos uma aresta e um vértice
ao caminho que queremos definir e construı́mos um novo grafo obtido do anterior por remoção
da aresta escolhida. O único cuidado é que a aresta que se vai escolher em cada momento
não seja uma ponte do grafo com que estamos nesse momento a trabalhar, a não ser que não
haja outra hipótese. Mostra-se que quando retirarmos todas as arestas ao grafo original, o
caminho que estamos a construir em paralelo é um circuito euleriano.
Este algoritmo pode ser usado no caso em que o grafo tem exactamente dois vértices de
grau ı́mpar. A única diferença é que temos de começar num desses dois vértices.
Vamos aplicar este algoritmo ao grafo do Exemplo 2.13, alı́nea b), começando pelo vértice
v1 . A sucessão de grafos obtida por este processo pode ser

v5 v5 v5 v5 v5 v5 v5 v5

v2 v3 v2 v3 v2 v3 v2 v3 v2 v3 v2 v3 v2 v3 v2 v3

v1 v4 v1 v4 v1 v4 v1 v4 v1 v4 v1 v4 v1 v4 v1 v4

O caminho euleriano é aquele que começa em v1 e vai seguindo as arestas que vão ficando
a tracejado conforme percorremos a sucessão dos grafos. Dito de outro modo, o caminho
euleriano passa sucessivamente pelos vértices v1 , v3 , v4 , v1 , v2 , v3 , v5 , v2 e v4 .
20

5. Grafos planares

Parece ser intuitivo (e é verdade!) que todo o grafo finito pode ser representado no
espaço (a 3 dimensões) sem cruzamento de arestas a não ser nos vértices. Uma questão mais
complicada é a de caracterizar quais os grafos finitos que podem ser representados no plano
com as condições referidas.

Definição 5.1. Um grafo diz-se planar se tiver uma representação no plano de tal modo
que as arestas não se intersectem a não ser em vértices.

Note-se que podemos ter uma representação não planar de um grafo planar. Por exemplo
as seguintes são representações de um mesmo grafo

três delas planares (duas usando apenas segmentos de recta) e uma não planar.
É também claro que dois grafos isomorfos são ambos planares ou ambos não planares.

Como exemplos de grafos planares temos:


• K1,m , para m ∈ N;
• os grafos Kn para n ≤ 4, e K2,m para m ∈ N como se pode ver pelas seguintes
representações

···

K4 K3 K2 K1 K2,m

• os grafos platónicos (ver página 3);


• de um modo geral todos os grafos representados graficamente até aqui com excepção
de K3,3 , K5 e o grafo de Petersen.
Vamos de seguida fazer algumas observações (muito simples e intuitivas) sobre planari-
dade. Se G é um grafo finito então:
a) se G é planar e H for um subgrafo de G então , usando a representação plana de
G podemos facilmente obter uma representação plana de H “apagando” as repre-
sentações das arestas e dos vértices de G que não pertencem a H;
b) se e é um lacete de G então G é planar se e só se G − e for planar;
c) se e e f são arestas de G com as mesmas extremidades então G é planar se e só se
G − e é planar.
21

Atendendo aos dois últimos pontos, no estudo da planaridade basta-nos considerar grafos
simples.
Nota 5.2. Podemos fazer algumas operações sobre grafos finitos mantendo a sua planari-
dade. Seja G um grafo finito.
a) (eliminação de vértices de grau dois) Seja (u, e, v, f, w) um caminho em G,
em que u, v e w são vértices diferentes e gr v = 2. Então G é planar se e só se o
grafo obtido a partir de G − v por inclusão de uma aresta g incidente em u e w é
planar. Na prática no desenho do grafo esquecemos o vértice v (que era adjacente
apenas às arestas e e f ) e juntamos as arestas e e f numa só.
A situação pode ser descrita pelo seguinte desenho (da parte relevante dos grafo)
u u
e g
v w w
f

b) (contracção de arestas) Seja e uma aresta de G incidente nos vértices u e v.


Consideremos o grafo obtido a partir de G − e eliminando o vértice v e considerando
que as arestas que em G eram incidentes em v deixam de o ser e passam a ser
incidentes em u. No fundo eliminamos a aresta e e identificamos, como um só, os
vértices u e v. Podemos descrever a situação referida do seguinte modo
x y w x y w

v
e u t u t

z z

Se o grafo original for planar então o novo grafo também é planar, mas o
reverso não é verdadeiro, como se poderá ver mais tarde quando tivermos exemplos
de grafos não planares.
A sequência que segue mostra que o grafo K3,3 pode ser obtido, usando as operações
referidas na nota acima a partir do grafo de Petersen.

A partir do grafo da esquerda eliminamos um vértice e as 3 arestas nele incidentes e


depois eliminamos os 3 vértices de grau 2, obtendo um grafo isomorfo a K3,3 como se pode
ver notando que o terceiro e o quarto desenho são representações do mesmo grafo.
Daqui resulta que, se o grafo de Petersen for planar então K3,3 também é planar.
A nota anterior sugere a seguinte definição.
Definição 5.3. Dois grafos G e H dizem-se homeomórficos se existir um grafo K de tal
modo que, que por eliminação de vértices de grau dois, se possa obter G e H.
22

Por exemplo, os grafos, com as seguintes representações

são homeomórficos pois ambos são obtidos a partir do grafo

por eliminação de vértices de grau dois.

Pelo que foi dito acima se dois grafos são homeomórficos então são ambos planares ou
ambos não planares.
Vamos agora mostrar a fórmula de Euler para grafos planares. Esta fórmula, que como
veremos, generaliza a conhecida fórmula de Euler para poliedros, servirá, em particular, para
mostrar que K3,3 e K5 não são grafos planares.
Neste momento nada nos diz que duas representações planas de um dado grafo dividam
o plano no mesmo número de regiões. Veremos que isto de facto acontece.

Dada uma representação plana de um grafo, o plano fica dividido em várias regiões. Se
nessa representação retirarmos uma “aresta” que pertença a um ciclo então o número de
regiões diminui de uma unidade. Esta observação está na base da demonstração do teorema
seguinte.

Teorema 5.4 (Euler). Seja G = (V, A, ϕ) um grafo finito, conexo e planar e consideremos
uma sua representação plana. Nestas condições, se |F | for o número de regiões em que o
plano fica “dividido” pela representação gráfica, então

|V | − |A| + |F | = 2.

Em particular, |F | não depende da representação plana do grafo mas apenas do grafo.

Demonstração. Se o grafo é uma árvore então o resultado é equivalente ao Teorema 3.6, uma
vez que |F | = 1.
Se G não é uma árvore, então G admite um ciclo. Seja e uma aresta pertencente a esse
ciclo e consideremos H = G − e. Pelo Lema 3.2, H é um grafo conexo que é planar pois é
um subgrafo de G. Usando um argumento de indução (sobre o número de arestas) podemos
concluir que H satisfaz a tese do teorema. Como VH = V e AH = A \ {e} e H divide o
plano em |F | − 1 regiões então |V | − (|A| − 1) + (|F | − 1) = 2 ou seja |V | − |A| + |F | = 2.
A segunda parte do teorema é uma consequência da primeira uma vez que os números
|V | e |A| não dependem da representação do grafo e |F | = 2 − |V | + |A|. 
23

O seguinte lema vai servir para mostrar que os grafos K3,3 e K5 , por exemplo, não são
planares.

Lema 5.5. Seja s ∈ N. Se G é um grafo planar em que todos os seus ciclos têm comprimento
pelo menos s, então (com as notações anteriores) |F | ≤ 2s |A|.

Demonstração. Sejam P1 , P2 , . . . , P|F | as regiões delimitadas pelo grafo. Deste modo, como
o número de arestas de Pi é pelo menos s, temos
|F | |F |
X X
(número de arestas de Pk ) ≥ s = s |F |.
k=1 k=1
Por outro lado, como cada aresta delimita no máximo duas regiões temos
|F |
X
(número de arestas de Pk ) ≤ 2 |A|.
k=1
2
Em particular s |F | ≤ 2 |A| ou seja |F | ≤ s |A|. 

Note-se que, se um grafo planar for simples então o número s referido no enunciado do
lema é pelo menos 3.

Teorema 5.6. Os grafos Kn,m , com m, n ≥ 3 e Kn com n ≥ 5 não são planares.

Demonstração. Atendendo a que nas condições referidas K3,3 é um subgrafo de Kn,m e K5


é um subgrafo de Kn basta-nos mostrar que K3,3 e K5 não são planares.
Suponhamos, por absurdo, que tı́nhamos uma representação planar do grafo K3,3 . Usando
a fórmula de Euler temos |F | = 5. Como todos os ciclos em K3,3 têm comprimento pelo
menos 4 então, pelo lema anterior, 5 ≤ 184 , o que é falso.
Se K5 fosse planar então usando a fórmula de Euler tı́nhamos |F | = 7 e, portanto, pelo
lema anterior, 7 ≤ 20
3 . Chegamos novamente a uma contradição. 

Note-se que daqui resulta que o grafo de Petersen não é planar (ver página 21). Vejamos
mais 3 demonstrações deste facto (apenas a tı́tulo de exercı́cio).

Corolário 5.7. O grafo de Petersen não é planar.

Demonstração. O esquema seguinte explica como contrair 5 arestas do grafo de Petersen de


modo a obter o grafo K5 (ver Nota 5.2). As arestas que unem os vértices do pentágono de
fora aos vértices da “estrela” (de dentro) são contraı́das. O resultado segue do facto de K5
não ser planar.

······
24

Vamos agora obter o grafo K3,3 a partir do grafo de Petersen. Começamos por eliminar
duas arestas, depois eliminamos os vértices de grau 2. No final obtivemos uma representação
do grafo K3,3 .

A terceira demonstração é similar à que foi feita no caso dos grafos K3,3 e K5 . Aplicando
a fórmula de Euler, se o grafo de Petersen fosse plano então uma sua representação plana
dividiria o plano em 7 regiões. Por outro lado os ciclos no grafo de Petersen têm todos
comprimento pelo menos 5. Deste modo, usando o Lema 5.5, 7 ≤ 30 5 o que é falso. 

Proposição 5.8. Se um grafo simples finito é planar então admite pelo menos um vértice
de grau menor ou igual a 5.

Demonstração. Suponhamos que G é um grafo finito em que todos os seus vértices têm grau
maior do que 5. Pelo Lema 1.7 a soma dos graus dos vértices é igual ao dobro do número
das arestas. Daqui concluı́mos, com a notação usual, que 6 |V | ≤ 2 |A|. Usando o Lema 5.5
e a fórmula de Euler temos
1 2
2 = |V | − |A| + |F | ≤ |A| − |A| + |A| = 0
3 3
o que, obviamente, é um absurdo. 

Note-se que há grafos planares cujos vértices têm todos grau 5. Basta considerar o “Ico-
saedro” referido na página 3. Nesse sentido, o resultado anterior não pode ser melhorado.

Para terminar esta secção vamos apresentar, sem demonstração e apenas como curio-
sidade, três resultados sobre planaridade de grafos. O mais importante é o teorema de
Kuratowski.

Teorema 5.9 (K. Wagner, 1936, I. Fary, 1948). Um grafo simples é planar se e só se puder
ser representado no plano usando segmentos de recta para representar as arestas.

Teorema 5.10 (Kuratowski, 1930). Um grafo é planar se e só se não contém nenhum
subgrafo que seja homeomórfico a K5 nem a K3,3 .

Teorema 5.11 (Wagner, 1937). Um grafo é planar se e só se não não tem nenhum subgrafo
que possa ser contraı́do em K5 ou em K3,3 .

Há vários programas “livres” que lidam com grafos. O mais simples é provavelmente
o GRIN (“GRaph INterface”) de Vitali Petchenkine, Saratov State Technical University,
Russia. Outro programa usado é “AlgodeGrafos”, coordenado por Paulo Boaventura Netto,
Universidade Federal do Rio de Janeiro, Brasil.
25

6. Poliedros

Comecemos por definir a chamada projecção estereográfica que é uma bijecção entre uma
superfı́cie esférica à qual tiramos um ponto e o plano. Consideremos S 2 uma superfı́cie
esférica “pousada” num plano Π e seja N o pólo norte da superfı́cie. A projecção é então
definida da seguinte maneira: se P é um ponto de S 2 \ {N } a projecção P 0 é o ponto do
plano que pertence à recta definida por P e N .

S
Π P′

Usando esta projecção e a sua inversa podemos transformar a representação de um grafo


finito na superfı́cie esférica (rodando a superfı́cie esférica, podemos sempre supor que o pólo
norte não pertence a essa representação) na representação do grafo no plano e vice-versa. Se
as arestas só se intersectarem nos vértices numa das representações então o mesmo é válido
na outra representação. Uma tal representação de um grafo na superfı́cie esférica divide-a
em regiões, a que chamamos faces. A representação do mesmo grafo no plano (usando a
projecção estereográfica) divide o plano em regiões, sendo apenas uma delas ilimitada (a que
corresponde à região da superfı́cie esférica que contém o pólo norte).
Em particular fica demonstrado o teorema de Euler para grafos que admitem uma repre-
sentação na superfı́cie esférica do tipo referido.
Por outro lado, se tivermos um poliedro convexo e o colocarmos dentro de uma superfı́cie
esférica podemos projectá-lo na superfı́cie esférica e depois no plano. Obtemos assim uma
representação plana de um grafo que tem tantos vértices e arestas quantos os vértices e as
arestas do poliedro e que divide o plano em tantas regiões quantas as faces do poliedro.

Corolário 6.1 (Teorema de Euler). Num poliedro convexo o número de vértices menos o
número de arestas mais o número de faces é igual a 2. 

De seguida vamos usar este resultado para mostrar alguns resultados sobre poliedros
convexos. No que segue entendemos que as faces dos poliedros são polı́gonos regulares.
Vamos começar por mostrar que o cubo, o tetraedro, o octaedro, o dodecaedro e o icosae-
dro são os únicos sólidos platónicos, isto é, poliedros regulares cujas faces têm todas o mesmo
número de arestas e cujos vértices têm todos o mesmo número de arestas neles incidentes.
26

A seguinte tabela apresenta estes sólidos acima referidos, indicando o grau dos vértices e
o número de arestas de cada um deles. Podemos também “confirmar” da fórmula de Euler.

Forma Cubo T etraedro Octaedro Dodecaedro Icosaedro


Elemento “terra” “fogo” “ar” “matéria celeste” “água”

Arestas/face 4 3 3 5 3
Grau dos vértices 3 3 4 3 5

Faces 6 4 8 12 20
Arestas 12 6 12 30 30
Vértices 8 4 6 20 12

V −A+F 2 2 2 2 2

Teorema 6.2. Os únicos sólidos platónicos são o cubo, o tetraedro, o octaedro, o dodecaedro
e o icosaedro.

Demonstração. Sejam n, k ∈ N e P um poliedro convexo cujas faces são polı́gonos regulares


com n lados e em cujos vértices incidem k arestas. Vejamos que P é um dos 5 poliedros
referidos na tabela. Note-se que:
• k ≥ 3 e n ≥ 3, pois as faces do poliedro são polı́gonos;
• os ângulos dos polı́gonos medem π(n−2)
n ;
• a soma dos ângulos incidentes em cada vértice é menor que 2π, pois o poliedro é
convexo;
• n é igual a 3, 4 ou 5, uma vez que da desigualdade kπ(n−2)
n < 2π (usando os pontos
3π(n−2)
anteriores) tiramos n < 2π, porque k ≥ 3 e, finalmente n < 6;
• k V = 2 A, contando as arestas usando os graus dos vértices;
• n F = 2 A, contando as arestas usando o número de lados das faces.
Temos assim o seguinte sistema nas incógnitas n, k, V, A, F ∈ N

k
A = V
 

 kV = 2A 
 2
 nF = 2A  F k
= V

 

n
V −A+F = 2 ou seja k k

1− 2 + n V = 2
n ∈ {3, 4, 5}
 





 n ∈ {3, 4, 5}
k ≥ 3
 
k ≥ 3

A terceira equação pode ser escrita na forma


27

• (10 − 3k) V = 20 se n = 5;
• (4 − k) V = 8 se n = 4;
• (6 − k) V = 12 se n = 3.
Recorde-se que k é um inteiro maior ou igual a 3 e que V é um inteiro positivo. As
hipóteses possı́veis são as que aparecem na tabela
n k V A F Sólido

5 3 20 30 12 Dodecaedro
5 ≥4 −− −− −−
4 3 8 12 6 Cubo
4 ≥4 −− −− −−
3 5 12 30 20 Icosaedro
3 4 6 12 8 Octaedro
3 3 4 6 4 Tetraedro
3 ≥6 −− −− −−

Fica assim completa a demonstração. 

Os sólidos platónicos admitem 3 esferas concêntricas peculiares: uma inscrita, que é tan-
gente a cada face no centro da face (raio r); uma tangente a cada aresta no ponto médio da
aresta (raio ρ); uma circunscrita que passa em todos os vértices (raio R). A seguinte tabela
dá a área (S) e o volume (V ) de um sólido platónico bem como os raios das três esferas
referidas em função da medida das arestas do sólido platónico (a).

Cubo Tetraedro Octaedro pDodecaedro Icosaedro


1

6

6 1
√ √
3

r 2 a 12 a 6 a 20 250 + 110 5 a 12 (3 + 5) a

2

2 1 1
√ 1

ρ 2 a 4 a 2 a 4 (3 + 5) a 4 (1 + 5) a

3

6

2

3
√ p
1

R 2 a 4 a 2 a (1 + 5) a 10 + 2 5 a
√ √ p4 √
4

S 6a2 3 a2 2 3 a2 3 25 + 10 5 a2 5 3 a2

2

2 1
√ 5

V a3 12 a3 3 a3 4 (15 + 7 5) a
3
12 (3 + 5) a3

Há sólidos convexos cujas faces são polı́gonos de tipo diferente mas ainda assim existe
uma regularidade nos vértices. Por exemplo nos seguintes sólidos

cada vértice é vértice de 1 triângulo e de 2 octógonos, no primeiro sólido e de 2 triângulos


e 2 quadrados no segundo. Os sólidos com esta regularidade (qualquer que seja n ≥ 3, o
número de polı́gonos com n lados que “incide” num vértice não depende do vértice) dizem-
se arquimedianos. Existem 13 destes sólidos, 6 dos quais obtidos “truncando os sólidos
platónicos junto aos vértices”. Note-se que se “truncarmos” um cubo a meio das arestas
obtemos o sólido representado à direita, na figura acima. Se “truncarmos” o cubo mais perto
dos vértices obtemos o outro sólido.
28

A tı́tulo de exemplo vamos apresentar os sólidos arquimedianos cujas faces são pentágonos
ou hexágonos.
Se P é um poliedro nessas condições então: tem f5 faces que são pentágonos e f6 faces
que são hexágonos; cada um dos seus vértices é vértice de s pentágonos e de t hexágonos.
Usando o mesmo tipo de argumento que no caso dos sólidos platónicos temos:
• s + t ≥ 3, isto é, cada vértice é vértice de pelo menos 3 polı́gonos;
• 6 f6 + 5 f5 = 2 A, contando as arestas usando o número de lados das faces;
• (s + t) V = 2 A, contando as arestas usando os graus dos vértices;
• a soma dos ângulos incidentes em cada vértice é menor que 2π, pois o poliedro é
convexo;
• a soma dos ângulos incidentes em cada vértice é igual a 3π 2π
5 s + 3 t;
• 9 s + 10 t ≤ 30, usando os dois pontos anteriores.
Como s, t ∈ N e s + t ≥ 3 as soluções da desigualdade 9 s + 10 t ≤ 30 são: s = 2 e t = 1;
s = 1 e t = 2. Em qualquer um dos casos, usando a fórmula de Euler obtemos sucessivamente
2 6 f6 +5 f5 
 

 V = 3 A  V =
 3  V = 2 f6 + 20
  
A = 6 f6 +5
2
f5
A = 6 f6 +5 2
f5 A = 3 f6 + 30

 
 


V − A + (f5 + f6 ) = 2

f5 = 12 f5 = 12
Deste modo podemos concluir que o poliedro tem 12 faces que são pentágonos.
Primeiro caso: s = 2 e t = 1. Deste modo cada vértice do poliedro é vértice de um e
um só dos f6 hexágonos. Em particular V = 6 f6 . Substituindo no sistema acima, obtemos
f6 = 5 e A = 45. Note-se que isto prova apenas que a existir um poliedro nestas condições,
ele tem 5 faces que são hexágonos e 12 faces que são pentágonos. Mostra-se, usando outro
argumento para além da fórmula de Euler, que não há nenhum sólido com esta propriedade.
Segundo caso: s = 1 e t = 2. Deste modo cada vértice do poliedro é vértice de um e
um só dos 12 pentágonos. Em particular V = 5 f5 = 60. Substituindo no sistema acima,
obtemos f6 = 20 e A = 90.
Contrariamente ao caso anterior existe um poliedro nestas condições: o icosaedro truncado
(a “bola de futebol”) cuja imagem é apresentada de seguida

Note-se também que não há dois pentágonos com uma aresta em comum e que cada vértice
é vértice de um pentágono e de dois hexágonos.
Este sólido é também a estrutura molecular do fulereno (carbono 60, descoberto em 1985
e que deu origem ao prémio Nobel da Quı́mica em 1996). A imagem da direita é de um selo
comemorativo do centésimo aniversário dos prémios Nobel.
29

Exercı́cios

É muito fácil inventar exercı́cios de rotina. Vejamos algumas questões tipo.

a) Começamos por escolher um grafo G = (V, A, ϕ) que pode ser um dos dados nas
aulas ou outro qualquer (é sempre fácil definir grafos) e podemos verificar se o grafo:
é bipartido; pode ser colorido com 3 cores; admite um caminho ou um circuito eu-
leriano; admite um caminho ou ciclo hamiltoniano; é planar; é isomorfo a um outro
grafo dado.

b) Começamos por escolher um grafo G = (V, A, ϕ) e pedimos, por exemplo, para cal-
cular: os grafos da forma G − e e G − v, em que e ∈ A e v ∈ V ; o diâmetro de G; o
número máximo de arestas que se lhe podem retirar mantendo a conectividade (se
G for conexo); quantas arestas é necessário tirar ao grafo para obter uma árvore;
quantas arestas é necessário aumentar para tornar o grafo euleriano; o ciclo de maior
comprimento; as pontes; o número de árvores geradores; os grafos obtidos por con-
tracção de arestas.

c) Queremos saber se existem grafos com determinadas condições. Por exemplo: com
uma dada sequência para o grau dos seus vértices, com eventuais restrições sobre G;
isomorfos ao seu grafo complementar, com 6 vértices e sem ciclos de comprimento 3.

O aluno deve responder a estas duas primeiras questões para os grafos que foram referidos
nas aulas, Pn , Cn , Wn . Kn , Kn,m , os grafos platónicos, o grafo de Petersen e o de Tutte,
para além de outros que imagine. A tı́tulo de exemplo vou definir (mais) alguns grafos.
30

É claro que estes 3 últimos grafos podem ser generalizados começando por considerar o
rectângulo com outra malha (n linhas e m colunas). O segundo grafo é um “cilindro” e o
terceiro é um “toro”. Poderı́amos também a partir do “cilindro” ligar as arestas da “coluna”
da direita com as arestas da “coluna” da esquerda por ordem trocada, obtendo assim o que
se chama uma “garrafa de Klein”. Mas isto (cilindros toros, garrafas de Klein) faz parte de
outra história.

Como se pode ver, alguns destes exemplos foram construı́dos a partir de dois outros grafos
acrescentando algumas arestas a unir vértices dos dois grafos.
Definição Dado um grafo simples G chamamos grafo complementar de G e denotá-mo-lo
por G, como sendo o grafo simples com os mesmos vértices que G e tal que dois vértices em
G estão unidos se e só se não estiverem unidos em G.
Definição Dado um grafo G define-se L(G) como o grafo simples cujos vértices são as
arestas de G, estando dois vértices de L(G) ligados se e só se as arestas de G correspondentes
forem adjacentes em G.

Exercı́cios.
1) Encontre, todos os grafos
a) com 3 vértices e 3 arestas;
b) com 3 vértices e 7 arestas;
c) com 5 vértices, sendo apenas 1 com grau 3.
2) Encontre, a menos de isomorfismo, todos os grafos simples com 3, 4 e 5 vértices.
3) Dê um exemplo, ou mostre que não existe, de um grafo simples:
a) com 4 vértices, de graus 1, 3, 3, 3;
b) com 6 vértices, de graus 1, 2, 2, 4, 4, 5;
c) com 6 vértices cujos graus são 1, 4, 4, 4, 4, 3.
d) com 5 vértices e sem arestas adjacentes;
e) com 11 vértices, todos eles de grau 5;
f) com 31 arestas, 13 vértices, 3 dos quais de grau 1 e 7 de grau 4;
g) em que não há dois vértices com o mesmo grau. E se o grafo for finito?
h) com 13 vértices, tendo exactamente 10 deles grau par;
i) com 12 vértices, tendo exactamente 10 deles grau par;
j) com tantos vértices como arestas.
O que muda se retirarmos a hipótese de o grafo ser simples?
4) Num grupo de 9 pessoas podem cada uma delas cumprimentar exactamente 3 pes-
soas?
31

5) Num grupo de 6 pessoas é ou não verdade que é sempre possı́vel escolhermos 3 delas
que se conhecem todas umas às outras ou tal que nenhuma das 3 conhece as outras?
6) Sejam G um grafo bipartido simples e u, v ∈ VG . É verdade que gr u + gr v ≤ |VG |?
E se u e v forem adjacentes?
2
7) Mostre que um grafo simples com n vértices e mais do que n4 arestas não é bipartido.
8) Quais os grafos bipartidos simples cujo complementar também é bipartido?
9) Mostre que um grafo simples finito é bipartido se e só se não tem ciclos de compri-
mento ı́mpar.
10) Qual o maior número possı́vel de arestas dos grafos bipartidos completos com m
vértices?
11) Mostre que todo o grafo simples com n vértices é um subgrafo de Kn .
12) É ou não verdade que um subgrafo de um grafo bipartido é ainda bipartido?
13) Mostre que todo o grafo simples bipartido finito é um subgrafo de um grafo da forma
Kn,m com n, m ∈ N.
14) (Ver Exercı́cio 50) Mostre que cada uma seguintes propriedades sobre um grafo é um
invariante de isomorfismo (isto é, o grafo tem essa propriedade se e só se qualquer
outro grafo que lhe seja isomorfo também a tem). No que segue n, m ∈ N.
a) tem n vértices;
b) tem m arestas;
c) tem n de vértices com grau m;
d) é bipartido;
e) tem dois vértices, um de grau n e outro de grau m, que são adjacentes;
f) tem n vértices de grau m;
g) tem dois vértices de grau n e m que não são adjacentes.
15) Mostre que o grafo de Petersen é isomorfo a cada um dos grafos representados por

16) Verifique se os grafos

são isomorfos.
17) Sejam G e H dois grafos simples isomorfos. Mostre que G e H são isomorfos e o
mesmo acontece com L(G) e L(H).
32

18) Verifique que: se G é isomorfo ao “tetraedro” então L(G) é isomorfo ao “octaedro”.


19) Verifique que o grafo complementar de L(K5 ) é isomorfo ao grafo de Petersen.
Mostre que, se G é um grafo simples com n vértices então |AG | + |AG | = n2 .

20)
21) Mostre que, se G é um grafo finito simples com n vértices e que tem tantas arestas
como o seu grafo complementar então n ou n − 1 é múltiplo de 4. Conclua que não
existe um grafo simples com 6 vértices que é isomorfo ao seu complementar.
22) Seja G um grafo simples que é isomorfo a G. Mostre que:
a) Se G tem 4 vértices então G é isomorfo a P4 ;
b) Se G tem 5 vértices então G é isomorfo a C5 ou ao grafo representado na figura

23) Seja 
G um grafo simples. Mostre que o número de arestas de L(G) é igual a
X gr v 
.
2
v∈VG
24) Seja G um grafo com 6 vértices, todos com grau 3. Mostre que:
a) Se G não tem ciclos de comprimentos 3 então é isomorfo a K3,3 .
b) Se G tem ciclos de comprimento 3 então é isomorfo ao grafo representado por

25) Mostre que num grafo conexo existe um caminho que passa por todos os vértices.
26) Desenhe um grafo conexo com 8 vértices e com o menor número possı́vel de arestas.
27) Mostre que num grafo simples conexo com n vértices e m arestas temos
 
n
n−1≤m≤ .
2
28) Mostre que todo o caminho simples num grafo G é um trilho ou é da forma (u, e, v, e, u)
em que u, v ∈ V e e ∈ A.
29) Mostre que o caminho mais curto entre dois vértices num grafo não pode repetir
vértices nem arestas.
30) Mostre que todo o grafo simples com n vértices todos de grau maior ou igual a n−1 2
é necessariamente conexo.
31) Sejam m, n ∈ N tais que n < m e n é par. É ou não verdade que existe um grafo
conexo simples com m vértices tendo exactamente n deles grau ı́mpar?
32) Sejam n ∈ N e G um grafo simples com 2n vértices, v1 , . . . , vn , u1 , . . . , un e sem ciclos
de comprimento 3.
a) Mostre que G tem no máximo n2 arestas. Sugestão: Considere u e v, dois
vértices de G que sejam adjacentes e aplique indução sobre o grafo G − {u, v}.
b) Construa um grafo G nas condições referidas e com n2 arestas.
33

33) Seja G um grafo simples. Mostre que:


a) G ou G é conexo;
b) se G não é conexo então o diâmetro de G é no máximo 2;
c) se G e G são conexos e o diâmetro de G é maior ou igual a 3 então o diâmetro
de G é no máximo 3;
d) se G e G são isomorfos então o diâmetro de G é no máximo 3.
34) Um grafo diz-se biconexo se for conexo e se lhe retirarmos qualquer vértice e arestas
incidentes, o grafo obtido é conexo.
a) Mostre que, se G é um grafo biconexo simples com n vértices então G é isomorfo
a Cn ou então tem mais do que n arestas.
b) Dê um exemplo de um grafo simples biconexo com n vértices, 2n − 5 arestas e
de diâmetro 2, para n ≥ 5. Comece por considerar alguns casos para n.
35) Dado um grafo finito G seja g(G) o comprimento do menor ciclo simples em G.
Mostre que g(G) é menor ou igual ao dobro do diâmetro de g, mais 1.
36) Mostre que, se G é um grafo simples conexo mas não completo então existem vértices
u, v, w tais que u e v são adjacentes, v e w são adjacentes mas u e w não são
adjacentes.
37) Dê exemplos ou mostre que não existem de:
a) uma árvore com 6 vértices e 8 arestas;
b) um grafo desconexo com 10 vértices e 8 arestas;
c) um grafo desconexo com 12 vértices, 18 arestas e nenhum ciclo;
d) um grafo conexo com 4 vértices, 6 arestas e exactamente 2 ciclos.
38) Encontre, a menos de isomorfismo, todas as árvores com no máximo 7 vértices.
39) Quantas árvores geradores não isomorfas existem em K2,n ? E em K3,3 ? E no grafo
representado no Exercı́cio 24?
40) Mostre que num grafo conexo sem lacetes que não seja uma árvore existem pelo
menos duas árvores geradoras.
41) Mostre que se G é uma árvore então:
X
a) (2 − gr v) = 2;
v∈V
b) a média dos graus dos vértices é igual a 2(1 − n1 ) em que n = |V |;
c) se existir um vértice de grau m então existem pelo menos m vértices de grau 1.
d) para cada m ∈ N0 dê um exemplo de uma árvore com um vértice de grau m e
exactamente m vértices de grau 1.
42) Mostre que toda a árvore é um grafo bipartido. Existem n, m ∈ N tais que Kn,m é
uma árvore bipartida?
43) Quais as árvores finitas que são isomorfas ao seu grafo complementar?
44) Quais as árvores finitas cujos vértices têm o todos o mesmo grau?
45) Dado n ∈ N encontre uma árvore infinita cujos vértices têm todos grau n.
34

46) Seja G um grafo simples conexo. Mostre que G tem um único ciclo se e só se existe
e ∈ AG tal que G − e é uma árvore se e só se o número de arestas e de vértices de G
é igual.
47) Mostre que uma árvore tem diâmetro 2 se e só se for isomorfo a K1,n para algum
n ∈ N.
48) Mostre que, se num grafo todos os vértices têm grau maior dou igual a 2 então G
admite um ciclo.
49) Verifique quais dos grafos representados nestes apontamentos admitem caminhos/circuitos
hamiltonianos/eulerianos?
50) Mostre que as seguintes propriedades sobre um grafo são um invariante de isomor-
fismo (ver Exercı́cio 14).
a) é conexo;
b) se lhe tirarmos qualquer aresta fica desconexo;
c) tem um ciclo de um certo comprimento;
d) tem um certo número de componentes conexas;
e) é euleriano;
f) é hamiltoniano.
51) Mostre que Kn é hamiltoniano.
52) Encontre um grafo não hamiltoniano com 7 vértices, todos com grau pelo menos 3.
53) Mostre que se G é um grafo euleriano então L(G) é hamiltoniano.
54) Quais dos grafos Kn,m são hamiltonianos?
55) Mostre que, se G é um grafo simples euleriano, então L(G) é euleriano.
56) Verifique que o grafo L(K4 ) é euleriano apesar de K4 ser simples e não euleriano.
57) Seja n ∈ N. Considere o grafo simples Qn cujos vértices são os n-uplos cujas entra-
das são zeros e uns tais que dois vértices são adjacentes se diferirem apenas numa
coordenada. Por exemplo, Q2 tem a seguinte representação:
(0, 1) (1, 1)

(0, 0) (1, 0)

a) Faça uma representação de Q3 e conclua que é isomorfo ao “cubo”.


b) Mostre que Qn é um grafo hamiltoniano (comece com os casos n = 2, 3, 4).
58) Pretende-se mostrar o seguinte resultado.
Se n > 2 e G um grafo simples com n vértices e tal que gr(u) + gr(v) ≥ n sempre
que u e v são vértices não adjacentes, então G é hamiltoniano.
Passos da demonstração (que será feita por absurdo):
• suponha que G é um contra-exemplo com o maior número de arestas possı́vel;
• mostre que existem dois vértices, v1 e vn que não são adjacentes (isto é: G é
diferente de Kn );
35

• acrescente uma aresta a G unindo v1 a vn , obtendo assim um grafo H. Conclua


que H é hamiltoniano;
• mostre que existe em G um caminho do tipo

•v1 −→ •v2 −→ •v3 · · · · · · •vn−1 −→ •vn ,

em que V (G) = {v1 , v2 , . . . , vn };


• considere
– S = {i ≥ 2 : existe, em G um aresta que une v1 a vi };
– T = {i ≥ 2 : existe, em G um aresta que une vn a vi−1 }.
Mostre que S ∩ T 6= ∅ (neste passo deve usar a hipótese sobre G);
• conclua que G admite um caminho hamiltoniano.
59) Dê um exemplo de um grafo euleriano não planar.
60) Dê um exemplo de um grafo conexo não planar com 7 vértices;
61) Mostre que se retirarmos uma aresta ao grafo K3,3 ou ao grafo K5 obtemos um
grafo planar. Encontre uma representação planar desses grafos e que as arestas são
representadas por segmentos de recta.
62) Desenhe um grafo bipartido com 15 vértices e 18 arestas que não seja planar.
63) Sejam v, a, r ∈ N tais que v − a + r = 2. Mostre que existe um grafo conexo planar
com v vértices, a arestas e cuja representação planar divide o plano em r regiões.
64) Mostre que, se G é um grafo simples com 11 vértices então G ou o seu complementar
não é planar.
65) Fazendo subdivisões nas arestas de K5 e/ou K3,3 e acrescentando, se necessário, mais
arestas arestas, encontre grafos simples, conexos e não planares com n vértices e m
arestas, sendo
a) m − n = 5 e n > 5;
b) m − n = 3 e n > 6;
c) n = 6 e 11 ≤ m ≤ 15;
d) n = 7 e 12 ≤ m ≤ 21.
(ver exercı́cio anterior) Dado n ≥ 5 e 10 ≤ m ≤ n2 encontre um grafo simples

66)
conexo e não planar com n vértices e m arestas.
(ver exercı́cio anterior) Dado n ≥ 6 e 9 ≤ m ≤ n2 encontre um grafo simples conexo

67)
e não planar com n vértices e m arestas.
68) Seja G um grafo simples planar tal que se acrescentarmos uma aresta ao grafo o grafo
obtido não é simples ou não é planar. Consideremos uma representação planar de G.
Mostre que as regiões definidas pela representação planar do grafo são delimitadas
por um ciclo de comprimento 3.
69) Para n ∈ N seja G o grafo simples cujos vértices são {1, 2, . . . , n} e tal que existe
uma aresta a ligar os vértices i e j, com i < j se e só se i e j são primos entre si.
Desenhe uma representação dos grafos Gn , para n ≤ 8. Algum destes grafos não é
planar?
36

70) Verifique que o grafo representado a seguir e o seu complementar são planares

71) Considere o grafo G representado na figura

a) Existe algum subgrafo de G homeomórfico a K5 ? E a K3,3 ?


b) O grafo G pode ser contraı́do em K5 ? E em K3,3 ?
c) Para que inteiros n o grafo Cn é um subgrafo de G? E se for Pn no lugar de
Cn ?
72) Considere o grafo G representado na figura

a) Defina um caminho fechado no grafo que passa por todos os vértices sem re-
petição.
b) Retire uma aresta do grafo de modo a obter um grafo planar.
c) Mostre que o grafo obtido de G por eliminação do vértice 4 é planar.
d) Verifique que o grafo G não é planar.
73) Considere o grafo simples G com a representação seguinte

5 3

6 2

7 1

8 12

9 11

10

a) Defina um caminho que passe por todos os vértices, sem repetição e sem usar
as arestas representadas por arcos de circunferência.
b) Apresente uma representação planar do grafo G (de preferência usando segmen-
tos de recta para representar as arestas)
c) Mostre que se acrescentarmos a G uma aresta unindo os vértices 4 e 10 obtemos
um grafo não planar. Sugestão: Considere os vértices 1, 3, 4, 5, 7 e 10.
37

74) Considere o grafo G representado na figura

4 5 6

1 2 3

a) Defina um caminho no grafo que passa por todas as arestas sem repetição.
b) Diga se o grafo G é euleriano. Justifique.
c) Apresente uma representação planar do grafo obtido de G por remoção da aresta
que une os vértices 1 e 3.
d) Mostre que o K5 é um subgrafo do grafo obtido a partir de G por contracção
da aresta que une 1 a 3.
e) Mostre que o grafo K3,3 é um subgrafo de G.
75) Considere o grafo simples G com a representação seguinte

3 2

8 9

4 7 10 1

12 11

5 6

a) Mostre que o grafo obtido a partir de G−{7, 8, 9, 10} por eliminação dos vértices
de grau 2 não é planar.
b) Retire as 6 arestas do circuito 1 → 9 → 3 → 7 → 5 → 6 → 1 e verifique que o
grafo obtido é planar.
c) Retire as 5 arestas do caminho 1 → 9 → 3 → 7 → 5 → 6 e verifique que o grafo
obtido não é planar.
d) Mostre que se retirarmos 3 arestas ao grafo G o grafo obtido não é planar.
76) Verifique se o grafo representado a seguir é planar
38

77) Considere o grafo simples G com a representação seguinte


7

6 5

1 4
0

2 3

a) Defina um caminho em G que passe por todos os vértices de G sem repetição e


do qual os vértices 0 e 7 não sejam extremidades.
b) Encontre uma representação plana (de preferência com as arestas a serem re-
presentadas por segmentos de recta) do grafo G − e em que e é a aresta que une
os vértices 0 e 7.
c) Defina um caminho em G que passe por todas as arestas sem repetição (basta
dizer qual a sequência dos vértices por onde o caminho passa).
d) O grafo G − {0, 6} é isomorfo ao grafo W5 ? Justifique sucintamente.
e) Calcule uma representação do grafo L(H) em que H = G − {1, 4, 5, 0}.
78) Encontre várias demonstrações de que os seguintes grafos não são isomorfos

79) Considere um grafo planar finito G. Mostre usando indução sobre o número de
vértices de G e a Proposição 5.8 que os vértices de G podem ser colorido com 6
cores de modo a que dois quaisquer vértices adjacentes estão coloridos com cores
diferentes. Observação: Com um pouco mais de trabalho pode-se mostrar que
bastam 5 cores. De facto um dos teorema mais famosos na teoria de grafos diz que
bastam 4 cores para colorir um grafo nas condições referidas. Note-se também que
este resultado é equivalente a mostrar que qualquer mapa no plano (nas condições
“usuais”) pode ser pintado com 4 cores de modo a que dois paı́ses diferentes sejam
pintados com cores diferentes.

Você também pode gostar