A matriz de incidência
Definição
Seja G um grafo com vértices 1, …, n e arestas e1, …, em. Cada aresta liga dois vértices distintos, dois vértices são ligados por no máximo uma aresta, e cada aresta recebe uma orientação: ela sai de um dos seus vértices e chega ao outro. A matriz de incidência de G é a matriz A de tamanho m × n tal que, se a aresta ei sai do vértice j e chega ao vértice k, então aij = −1, aik = +1 e as demais entradas da linha i são nulas.
Seguimos a convenção do livro-texto, com uma linha por aresta; muitos textos de teoria dos grafos usam a transposta dessa matriz. Um vetor x ∈ ℝn associa a cada vértice j a coordenada xj, que chamamos de potencial do vértice. Se a aresta ei sai do vértice j e chega ao vértice k, a coordenada i de Ax é xk − xj, a diferença de potencial ao longo da aresta. Do mesmo modo, um vetor y ∈ ℝm associa a cada aresta ei a sua coordenada i, que chamamos de fluxo na aresta, positivo no sentido da seta. A coordenada j de ATy é o fluxo total que chega ao vértice j menos o fluxo total que sai dele.
Um caminho é uma sequência de vértices em que cada vértice é ligado ao seguinte por uma aresta, qualquer que seja a orientação dela. O grafo G é conexo quando dois vértices quaisquer são ligados por um caminho. A componente conexa de um vértice é o conjunto formado por ele e pelos vértices ligados a ele por caminhos. Cada vértice pertence a exatamente uma componente conexa.
Um ciclo de G é formado por pelo menos três vértices distintos, percorridos em sequência, e pelas arestas que ligam cada um deles ao seguinte e o último ao primeiro. O ciclo não depende do vértice de partida nem do sentido em que é percorrido. Escolhido um dos dois sentidos de percurso, o vetor do ciclo é o vetor de ℝm cuja coordenada i é +1 se a aresta ei é percorrida no sentido da sua seta, −1 se ela é percorrida no sentido contrário e 0 se ela não pertence ao ciclo. O outro sentido de percurso dá o vetor oposto. Alguns ciclos são independentes quando os seus vetores são LI. O número de ciclos independentes de G é a maior quantidade de ciclos independentes que se pode escolher em G.
Espaço nulo e ciclos
Teorema
Seja A a matriz de incidência de um grafo conexo com n vértices e m arestas. Então:
- N(A) = {λ(1, 1, …, 1)T : λ ∈ ℝ}, o conjunto dos vetores constantes; logo o posto de A é r = n − 1;
- os vetores dos ciclos pertencem a N(AT) e geram N(AT), cuja dimensão é m − r = m − n + 1; logo o número de ciclos independentes é m − n + 1.
Por quê. (1) Pela fórmula da coordenada i de Ax, a equação Ax = 0 diz que as duas pontas de cada aresta têm o mesmo potencial. Num grafo conexo, dois vértices quaisquer são ligados por um caminho, e o potencial não muda ao longo dele; logo x é constante. Reciprocamente, todo vetor constante satisfaz Ax = 0. Então dim N(A) = 1, e o posto é r = n − dim N(A) = n − 1.
(2) Primeiro, o vetor y de um ciclo pertence a N(AT). Pela fórmula acima, a coordenada j de ATy soma as coordenadas de y nas arestas que chegam ao vértice j e subtrai as coordenadas de y nas arestas que saem dele. Se o vértice j não está no ciclo, nenhuma aresta do ciclo toca j, e essa coordenada é 0. Se j está no ciclo, o percurso chega a j por uma aresta e sai por outra. A aresta de chegada contribui com +1: se a sua seta aponta para j, ela é percorrida no sentido da seta e a sua coordenada +1 é somada; se a sua seta sai de j, ela é percorrida no sentido contrário e a sua coordenada −1 é subtraída. Do mesmo modo, a aresta de saída contribui com −1. Logo ATy = 0.
Depois, os ciclos geram N(AT). Uma árvore geradora de G é um conjunto de arestas de G que liga todos os n vértices e não contém ciclo. Ela pode ser obtida a partir de um vértice qualquer, acrescentando um vértice de cada vez, ligado por uma aresta de G a um vértice já alcançado; assim, ela tem n − 1 arestas. Cada uma das m − n + 1 arestas fora da árvore forma, com o caminho da árvore que liga as suas pontas, um ciclo, chamado ciclo fundamental. Os vetores dos ciclos fundamentais são LI, pois cada um tem coordenada não nula numa aresta fora da árvore em que os outros têm coordenada nula. São m − n + 1 = dim N(AT) vetores LI de N(AT), logo formam uma base (Aula 7).
Se o grafo tiver várias componentes conexas, o mesmo argumento, aplicado a cada componente, mostra que N(A) é formado pelos vetores constantes em cada componente. A dimensão de N(A) é o número de componentes, e o posto é n menos esse número. Os vetores dos ciclos continuam gerando N(AT): basta tomar uma árvore geradora de cada componente.
Suponha agora que o grafo seja conexo e esteja desenhado no plano sem cruzamentos de arestas. Chame de f o número de regiões em que o desenho divide o plano, contando a região ilimitada. A fórmula de Euler diz que n − m + f = 2. Então o número de regiões limitadas, f − 1, é igual a m − n + 1, o número de ciclos independentes.
Exemplo
No grafo Quadrado com uma diagonal, as arestas são e1: 1 → 2, e2: 2 → 3, e3: 3 → 4, e4: 4 → 1 e e5: 1 → 3, e a matriz de incidência é
A = −11000−11000−11100−1−1010.
O grafo é conexo, então N(A) é gerado por (1, 1, 1, 1)T, o posto é r = 3 e dim N(AT) = 5 − 3 = 2. O grafo tem três ciclos: os triângulos 1 → 2 → 3 → 1 e 1 → 3 → 4 → 1 e o quadrado 1 → 2 → 3 → 4 → 1. Os vetores dos dois triângulos, percorridos nesses sentidos, são
y1 = (1, 1, 0, 0, −1)T,
y2 = (0, 0, 1, 1, 1)T,
e o vetor do quadrado, percorrido nesse sentido, é y1 + y2 = (1, 1, 1, 1, 0)T. Há três ciclos, mas o número de ciclos independentes é 2, como prevê a conta m − n + 1 = 5 − 4 + 1 = 2.
Na bancada: na parte Em dimensão n, escolha Quadrado com uma diagonal no painel Grafos prontos. No painel Ciclos (espaço nulo à esquerda), o controle Ciclo escolhe o ciclo 1 ou o ciclo 2, e a leitura abaixo dele mostra os vetores y1 e y2 deste exemplo. O quadro A matriz de incidência A contorna as linhas das arestas do ciclo escolhido. Os blocos abaixo da figura do quadro O grafo mostram o posto, a dimensão de N(A) e o número de ciclos independentes.