|
|
||||
Elon
Lages Lima
O conceito de grafo é simples, porém fértil em aplicações e problemas atraentes. Ele já foi abordado, nesta Revista, em pelo menos três ocasiões: no número 3, quando o Prof. G. de La Penha descreveu o problema das pontes de Königsberg, no número 10 (implicitamente), quando o Prof. J. B. Pitombeira tratou da questão de determinar o número de regiões em que n retas em posição geral decompõem o plano e, no número 11, quando este mesmo autor estudou o problema de ligar água, luz e telefone em três casas. Creio que nossos leitores apreciarão uma análise do problema das pontes. E, para aproveitar o embalo, ofereceremos soluções diferentes para os outros dois problemas acima mencionados. É sempre instrutivo ter diversas alternativas para resolver questões interessantes.
Imaginemos um rio, com duas margens A e B. No rio, duas ilhas C e D. A ilha C está ligada a cada uma das margens por duas pontes. Em cada margem, há também uma ponte para a ilha D. A sétima ponte liga as ilhas entre si. O problema das sete pontes de Königsberg consiste em achar um caminho, ao longo do qual um pedestre, partindo de uma das margens ou de qualquer das ilhas, percorra todas as pontes, sem passar mais de uma vez por qualquer uma delas. Este problema foi resolvido, em 1735, pelo matemático suíço Leonhard Euler. Ele fez a observação fundamental de que, para efeito da questão proposta, as margens e as ilhas são como se fossem pontos A, B, C, D. As pontes são como arcos que têm esses pontos como extremidades. Tudo se resume a analisar o diagrama ao lado, onde os arcos ligam os pontos, de acordo com a disposição das pontes dada no enunciado do problema. O desenho da figura 2, é provavelmente, o primeiro exemplo de um grafo a ocorrer como modelo matemático para resolver um problema, que agora se exprime assim: partindo de um dos vértices A, B, C, ou D, achar um caminho que percorra todo o grafo sem passar mais de uma vez pelo mesmo arco. De um modo geral, um grafo é isto: um conjunto finito de pontos, chamados os vértices do grafo, e um conjunto finito de arcos, chamados as arestas do grafo. As extremidades de cada aresta devem ser vértices. Além disso, duas arestas quaisquer do grafo não podem ter pontos interiores em comum: ou são disjuntas ou se tocam apenas numa ou em duas das extremidades. Euler chamou atenção para uma noção muito simples, porém crucial, que é a ordem de um vértice do grafo. A ordem de um vértice é o número de arcos que emanam dele. Por exemplo, no grafo das pontes de Königsberg, o vértice C tem ordem 5, enquanto os demais vértices A, B e D têm todos ordem 3. Um caminho num grafo G é uma sequência finita = (A0 , A1 ..., Ap), onde os Ai são vértices de G e, para cada i = 1, 2, ... p, Ai - 1 e Ai são extremidades de uma aresta de G. Diz-se, neste caso, que o caminho parte do vértice A0 e, percorrendo as arestas A0Al, AlA2, ... Ap-1Ap, termina no vértice Ap. Um caminho chama-se unicursal quando não percorre a mesma aresta mais de uma vez. Um grafo G chama-se unicursal quando existe um caminho unicursal que percorre todas as arestas de G. Observe-se que um caminho unicursal pode passar várias vezes pelo mesmo vértice. Toda vez que um caminho unicursal chegar a um vértice, deve sair dele por um arco diferente daquele por onde chegou. (A menos que esse vértice seja o fim do caminho.) Portanto, se um caminho unicursal percorrer todas as arestas do grafo, os vértices desse grafo, com exceção do início e do fim do caminho, devem ter todos um número par de arestas emanando deles, isto é, devem ter ordem par. O vértice que serviu de início e o que serviu de fim para o caminho têm ordem ímpar. Se o início e o fim do caminho coincidirem (isto é, se o caminho for fechado), então todos os vértices do grafo, sem exceção, têm ordem par. Concluímos então que se um grafo é unicursal, ou todos os seus vértices têm ordem par ou exatamente dois vértices têm ordem ímpar. No primeiro caso, todo caminho unicursal é fechado. No segundo caso, um caminho unicursal deve começar num dos vértices de ordem ímpar e terminar no outro. Segue-se, daí, que o grafo da figura 2 não é unicursal, pois seus quatro vértices têm todos ordem ímpar. Fica, então, resolvido o problemas das sete pontes: é impossível percorrê-las todas, sem passar duas vezes por alguma ponte.
Observação: A cidade de
Kónigsberg ficava na Prússia, região do leste da Alemanha. Hoje, ela se
chama Kaliningrad, pertence à União Soviética e já é possível percorrer
todas as suas pontes sem passar mais de uma vez por cada uma delas. É
que foi construída uma nova ponte. A bem da verdade, devemos esclarecer
também que, de fato, Euler não mencionada ilha D. No seu mapa há
uma península D, a partir da qual o rio Pregel se bifurca, depois
de passar pela ilha C (que se chama Kneiphof)- Mas é claro que o
problema fica bem mais fácil de enunciar se substituirmos a península
por uma ilha, o que não faz diferença alguma do nosso ponto de vista.
Voltando às antigas pontes de Kónigsberg, podemos trocar o ponto de vista terrestre pelo aquático e indagar: seria possível a um barqueiro (ou nadador) no rio passar por baixo das sete pontes sem passar mais de uma vez sob nenhuma delas? Esta questão, ao que parece, nunca foi considerada por Euler. O leitor interessado pode, entretanto, tomar seu lápis e papel. Se tiver um pouco de paciência vai conseguir uma rota adequada para o barqueiro, como por exemplo a da figura 3. Tendo sido bem-sucedido em sua tentativa, o leitor pode indagar se foi apenas uma questão de sorte ou se existe uma razão matemática que permita ao barqueiro cruzar as pontes, do mesmo modo que proíbe o pedestre de percorrê-las. Seria possível reformular este segundo problema em termos de grafos, como fizemos com o primeiro? Existe sim, a razão matemática. É, sim, possível enquadrar o barqueiro no contexto dos grafos. Vejamos como. Um grafo no plano divide esse plano em regiões. Por exemplo, o grafo da figura 2 determina cinco regiões. A região exterior, que naquela figura indicamos com o algarismo 1, e mais quatro regiões limitadas, as quais indicamos com os algarismos 2, 3, 4 e 5 na figura. Usando essas regiões, pode-se, a partir de um grafo G, construir um novo grafo G*, chamado o dual de G. Os vértices de G* são tantos quantas são as regiões de G. Dois vértices do novo grafo G* estarão ligados por uma aresta se, e somente se, as regiões correspondentes de G forem adjacentes (isto é, tiverem uma ou mais arestas de G em comum).
Por
exemplo, seja G o grafo da figura 2. Para formar o grafo dual
G* tomamos cinco vértices, correspondentes às cinco regiões 1, 2, 3,
4 e 5. A região 1, no grafo G, é adjacente a todas as outras.
Logo devemos traçar arestas em G* ligando o vértice 1 a todos os outros
quatro. As regiões, 2 e 3, 3 e 4, 4 e 5 são adjacentes. Então devem
existir arestas em G* ligando os vértices com esses números. Por outro
lado, não há outros pares de regiões adjacentes. Logo não há outras
arestas em G*. O grafo G*, dual daquele na figura 2, está desenhado na
figura 4. Note-se que, no grafo G*, apenas dois vértices (3 e 4) têm ordem ímpar (ambos têm ordem 3). Os vértices 2 e 5 têm ordem 2 e o vértice 1 tem ordem 4. Portanto G* cumpre a condição necessária para ser unicursal. (Na verdade, essa condição é também suficiente para um grafo conexo, como provaremos depois.) Mais ainda:,um caminho unicursal no grafo G* deve começar num dos vértices 3 ou 4 e terminar no outro. Isto justifica matematicamente por que um barqueiro pode passar por baixo das sete pontes de Königsberg sem repetir nenhuma delas, mas um pedestre não pode fazer seu passeio unicursal ao longo dessas pontes. É que o grafo G não é unicursal, enquanto seu dual G* é. Além disso, o percurso do barqueiro deve começar ao lado da ponte que liga as duas ilhas e terminar do outro lado dessa mesma ponte. De um modo geral, juntamente com o problema de percorrer todas as arestas de um grafo plano, pode-se sempre considerar o problema dual de, partindo de uma das regiões por ele determinadas, descrever um caminho que corte todas as arestas uma única vez. Isto corresponde a indagar se o grafo dual é unicursal. O leitor é convidado a desenhar diferentes grafos e examinar, para cada um deles, a possibilidade de traçar um caminho unicursal, no grafo ou no seu dual.
Demonstramos, acima, que um grafo unicursal tem 0 ou 2 vértices com
ordem ímpar. Isto foi usado para resolver o problema das sete pontes de
Königsberg. Mas, para resolver o problema dual, tivemos necessidade de
utilizar a recíproca desse fato. Talvez alguns leitores se interessem em
saber como demonstrá-la. O teorema é o seguinte:
Um
grafo conexo que tenha 0 ou 2 vértices de ordem ímpar é unicursal. (Conexo significa que 2 quaisquer de seus vértices podem ser ligados por um caminho contido no grafo.) Seja G um grafo conexo, com 0 ou 2 vértices ímpares. Seja um caminho unicursal em G começando num vértice de ordem ímpar, se tal vértice houver, ou em qualquer vértice no caso contrário. Tomemos com o maior número possível de vértices entre todos os caminhos que têm o mesmo início que . Evidentemente, o vértice final de coincidirá com o inicial, se não houver vértices de ordem ímpar, ou com o outro vértice de ordem ímpar, no caso contrário. Se X não percorrer todo o grafo G, tomemos um vértice v fora de e, a partir dele, um caminho que o ligue a um vértice w em e que não tenha arestas em comum com . O vértice v tem ordem par. Logo, percorrendo, a partir de w, este segundo caminho, podemos prolongá-lo além de v e, continuando sempre a partir dele, sem percorrer nenhuma aresta de , poderemos sempre seguir em frente e só pararemos quando retornarmos ao vértice w. Aí prosseguiremos na antiga rota e teremos um caminho unicursal começando no mesmo vértice que , porém com um número maior de arestas que . Uma contradição, que demonstra o teorema.
A pergunta formulada acima não admite uma resposta única. Com 3 retas distintas, por exemplo, podemos dividir o plano em 4, 6 ou 7 regiões, conforme se vê na figura 5.
A
formulação correta do problema, para que ele tenha uma resposta única,
é a seguinte: qual é o número máximo de regiões em que n retas
dividem o plano? Evidentemente, o número máximo de regiões ocorre
quando essas retas estão situadas de modo a terem o número máximo
possível de pontos de intersecção. Esse número máximo acontece quando:
Neste
caso, diz-se que as n retas dadas estão em posição geral.
Dadas
n retas em posição geral, para determinar o número R de
regiões em que elas dividem o plano, procederemos da seguinte maneira.
Em primeiro lugar, traçamos um círculo tão grande que contenha em seu
interior todos os pontos de intersecção das
n retas. Os
requisitos 1º) e 2º) acima asseguram que, para cada duas das n
retas dadas, há um ponto de intersecção e vice-versa. Logo, o número dos
pontos de intersecção, todos
Na figura 6, temos quatro retas em posição geral. Seus 6 pontos de intersecção estão no interior do círculo ali traçado. Agora consideremos o grafo plano G, obtido quando desprezamos as partes das retas que ficam no exterior do círculo que traçamos. Os vértices de G são as intersecções das n retas duas a duas e mais os 2n pontos em que essas n retas intersectam a circunferência: ao todo, temos V = 2n + n(n l)/2 vértices no grafo G. As arestas de G são os 2n arcos de círculo correspondentes e mais os segmentos de reta interiores ao círculo. Sobre cada uma das n retas há n + 1 vértices, a saber: os n 1 pontos de intersecção dessa reta com as n 1 outras e os 2 pontos em que ela corta a circunferência. Logo, temos n segmentos, isto é, n arestas do grafo G, sobre cada uma das n retas dadas. Ao todo, são n2 arestas de G interiores ao círculo, com o total de A = n2 + 2n arestas em G. O número R de regiões em que as n retas dadas dividem o plano é igual ao número de regiões determinadas pelo grafo G menos uma, que é a região exterior ao círculo. A fórmula de Euler diz que se um grafo com V vértices e A arestas decompõe o plano em F regiões, tem-se V A + F = 2 (RPM 11, p. 13).
Um problema muito popular, desde meus tempos de ginásio, consiste em propor que se ligue, em três casas, água, luz e telefone, a partir de 3 centrais diferentes. Casas, centrais, e ligações estão no mesmo plano. Não se permite que as ligações se cruzem. Não é possível fazer isto. Uma demonstração dessa impossibilidade foi apresentada pelo Professor J. B. Pitombeira no número 11 da RPM, usando a fórmula de Euler. No que se segue, daremos uma demonstração diferente do mesmo resultado, sem fazer uso daquela fórmula. Representaremos as centrais de água, luz e telefone pelas letras A, L, T e as três casas por pontos X, Y e Z. Comecemos ligando água e luz às casas X e Y. Obteremos um "quadrilátero" XAYL, cujos lados podem ser curvilíneos. A central telefônica T pode estar dentro ou fora deste quadrilátero. Isto não fará diferença alguma mas, para fixar as idéias, suponhamos que esteja fora, como na fig. 7. Liguemos o telefone nas casas X e Y. Ficamos com dois "quadriláteros" adjacentes XAYL e XLYT, os quais decompõem o plano em três regiões, que designamos por 1, 2 e 3. (As regiões e 2 são interiores aos quadriláteros, enquanto a região 3 é exterior.) A terceira casa, Z, deverá estar numa dessas três regiões. Examinemos cada uma das possibilidades. Se Z estiver na região 1, poderemos ligar-lhe água e luz porém não telefone. Se estiver na região 2, ficará com luz e telefone, mas sem água. Finalmente, se Z estiver na região 3, poderá ter água e telefone, mas não terá luz. Portanto, as nove ligações não podem ser todas feitas sem que se cruzem, e o problema está resolvido. |