MC405 – Teoria dos Grafos MC878 – Teoria e Aplicações de Grafos Orlando Lee Resumo Na disciplina MO405/MC878 veremos vários teoremas e provas/demonstrações desses. Este texto é um pequeno resumo descrevendo algumas técnicas de prova/demonstração. Ele não pretende ser abrangente muito menos completo. Suporemos que o leitor esteja familiarizado com os seguintes conceitos: conjuntos, funções, números (inteiros, racionais, reais), lógica proposicional etc. Tudo isto e muito mais podem ser encontrados em K. H. Rosen, Discrete Mathematics and its applications, McGraw-Hill, 2003. Se você não possui familiaridade com esses conceitos, eu recomendo fortemente (e urgentemente) que você leia pelo menos o Capı́tulo 1 desse livro. 1 Teoremas e demonstrações Na disciplina MO405/MC878 veremos vários teoremas e provas/demonstrações desses. Algumas provas serão omitidas por serem complexas, mas de modo geral, um teorema que se preze possui uma prova. Um teorema é uma afirmação ou sentença que pode ser provada/demonstrada (veja abaixo). Teorema é um nome chique para proposição, fato ou resultado. Um lema é tipicamente um teorema cuja prova é simples e que serve para demonstrar um teorema mais complicado. Um corolário é um teorema que é conseqüência imediata de outro teorema. Uma conjectura é uma afirmação que nós não sabemos se é verdadeira ou falsa (no caso, “nós” quer dizer a comunidade cientı́fica). Certo. . . Mas o que é uma prova/demonstração? Eis uma explicação dada por Paulo Feofiloff [1]: • Uma prova é uma seqüência de sentenças. 1 • Cada sentença é o uma afirmação (por exemplo, “n é primo” ou “o grafo H é conexo” ou “existe um caminho com extremos u e v”) ou uma definição de variáveis (por exemplo, “seja p um número primo maior que 2” ou “seja v um vértice não-isolado” ou “seja X o conjuntos dos vértices que blá blá blá”). • Cada afirmação é uma conseqüência lógica simples das afirmações anteriores (o leitor deve ser capaz de perceber e verificar isso facilmente). • Cada afirmação ou definição só envolve variáveis que foram definidas em alguma sentença anterior. • A última sentença é a declaração do fato que você pretende provar. Apresentamos vários exemplos de prova/demonstração na próxima seção. Um teorema tem tipicamente a seguinte forma: se A então B, onde • A é uma afirmação ou conjunto de afirmações que chamamos de hipótese e • B é uma afirmação ou conjunto de afirmações que chamamos de tese ou conclusão. Outra forma de dizer isto é: A implica B. Em linguagem de lógica A implica B é equivalente à expressão ¬A ∨ B. A expressão ¬A significa a negação de A e ∨ é o operador lógico “ou” (“or”). Em português, isto significa que para mostrar que A implica B ou que ¬A ∨ B é verdade, temos que mostrar que se A for verdadeira então B também deve ser verdadeira. Eis alguns exemplos: 1. Se n é um inteiro par par então 3n + 1 é ı́mpar. 2. Se o grafo G tem grau mı́nimo 2 então G contém um circuito. Em alguns enunciados, a hipótese fica implı́cita: 1. A equação x2 + bx + c = 0 possui no máximo duas raı́zes reais. 2. Existem infinitos números primos. 2 3. Toda árvore tem pelo menos duas folhas. 4. Existem infinitos grafos 3-regulares sem aresta-de-corte. Alguns teoremas têm a forma: A se e somente se B. Neste caso, é preciso provar as duas implicações: se A então B e se B então A. Eis alguns exemplos: 1. Um inteiro n é par se e somente se n2 é par. 2. Um grafo G é bipartido se e somente se não contém circuitos ı́mpares. 2 2.1 Métodos de prova Prova direta Como o nome diz, este é o método direto. Supomos que vale a hipótese e tentamos chegar na tese/conclusão. Teorema 2.1. Se n é um inteiro ı́mpar então n2 é um inteiro ı́mpar. Demonstração. Suponha que n seja um inteiro ı́mpar. Então existe algum inteiro k tal que n = 2k + 1. Logo, n2 = (2k + 1)2 = 4k 2 + 4k + 1 = 2(2k 2 + 2k) + 1. Portanto, n2 é um inteiro ı́mpar. 2.2 Prova indireta Este método também é conhecido por prova pela contra-positiva. A idéia do método consiste no seguinte: em vez de provar que se A então B, provamos que se B não vale então A não vale. Em linguagem de lógica, isto equivale a provar que se ¬B então ¬A ou que ¬B implica ¬A. Teorema 2.2. Se 3n + 2 é ı́mpar então n é ı́mpar. 3 Demonstração. Suponha que a tese não vale, ou seja, n é par. Então existe um inteiro k tal que n = 2k. Logo, 3n + 2 = 3(2k) + 2 = 6k + 2 = 2(3k + 1), e assim, 3n + 2 é par (ou seja, não é ı́mpar). Como chegamos à negação da hipótese, a implicação original é verdadeira. 2.3 Prova por contradição Este método é bastante poderoso, embora seja um tanto confuso para quem não está acostumado. A idéia é a seguinte: em vez de provar que se A então B, supomos que A vale e B não vale e tentamos chegar a uma conclusão absurda (por exemplo, concluı́mos que A não vale ou chegamos a alguma coisa claramente sem sentido como 0 = 1). Isto mostra que a afirmação se A então B tem que ser verdadeira pois verificamos não ser possı́vel A ser verdade e B ser falso (esta é a negação de se A então B). √ Teorema 2.3. O número 2 é irracional. √ Demonstração. Suponha por contradição (ou por absurdo) que 2 seja racional. Então existem inteiros p e q sem fatores em comum tais que √ 2 = p/q (ou seja, a fração p/q está reduzida). Então elevando os dois lados da equação ao quadrado obtemos 2 = p2 /q 2 . Portanto, 2q 2 = p2 . Isto significa que p2 é par e portanto p é par. Além disso, como p é par, então existe algum inteiro k tal que p = 2k. Logo, 2q 2 = 4k 2 , e assim, q 2 = 2k 2 . Isto significa que q 2 é par e portanto q é par. Acabamos de mostrar que tanto p √ quanto q são divisı́veis por 2. Isto contraria nossa hipótese inicial de que 2 = p/q com p e q sem fatores em √ comum. Portanto, 2 é irracional. 4 2.4 Prova por análise de casos A prova de alguns teoremas consiste em particionar o universo de possibilidades em um número finito de casos e então provar a veracidade de cada um desses. Para provar um caso qualquer técnica pode ser usada, inclusive uma nova subdivisão em casos. Teorema 2.4. Se x e y são inteiros com mesma paridade então x + y é par. Demonstração. Há dois casos que devem ser analisados: Caso 1: x e y são pares. Então existem inteiros m e n tais que x = 2m e y = 2n. Logo, x + y = 2m + 2n = 2(m + n), e assim x + y é par. Caso 2: x e y são ı́mpares. Então existem inteiros p e q tais que x = 2p+1 e y = 2q + 1. Logo, x + y = (2p + 1) + (2q + 1) = 2(p + q + 1), e assim x + y é par. Portanto, se x e y têm a mesma paridade, então x + y é par. 2.5 Prova por construção Alguns teoremas afirmam a existência de certos objetos. Um método para provar um teorema deste tipo é simplesmente exibir um objeto da forma desejada. Teorema 2.5. Existem inteiros x, y e z tais que x2 + y 2 = z 2 . Demonstração. Tome x = 3, y = 4 e z = 5. Então 32 + 42 = 9 + 16 = 25 = 52 . Teorema 2.6. Existe um número infinito de inteiros x, y e z tais que x2 + y2 = z2. Demonstração. Basta considerar o conjunto {(3n, 4n, 5n) : n ∈ N}. 5 Prova não-construtiva de existência. método na disciplina, mas eis um exemplo. Não veremos muito este Teorema 2.7. Existem irracionais x e y tais que xy é racional. √ √ √2 Demonstração. Já sabemos que 2 é irracional. Considere o número 2 . Sabemos que ele é racional ou irracional. Se ele for racional, então existem √ dois irracionais x e y tais que xy √é racional, mais exatamente x = 2 e √ 2 √ 2 y = 2. for podemos tomar √ Por outro lado, se √ irracional, √ então √ √ √ √ √ √ 2 √ 2 ( 2 2 2) = 2 = 2. x = 2 e y = 2 e assim, xy = ( 2 ) 2 = 2 Esta prova é não-construtiva pois não encontramos irracionais √ x e y tais √ y que x é racional.√ Em vez disso, mostramos que ou o par x = 2, y = 2 √ 2 √ ou o par x = 2 , y = 2 tem a propriedade desejada, mas não sabemos qual! 3 Contra-exemplos Um modo de mostrar que uma afirmação se A então B não é verdadeira é exibir um contra-exemplo. Ou seja, exibir um objeto que satisfaz A mas não satisfaz B. n Considere por exemplo a afirmação: para todo n ≥ 1, 22 + 1 é primo. Isto é verdade para n = 1, 2, 3, 4 (estou contando apenas, não é tão fácil de 5 ver. . . ) mas não vale para n = 5 já que 22 + 1 = 232 + 1 = 4294967297 = 641 × 6700417 não é primo. Assim, n = 5 é um contra-exemplo para a afirmação acima. Este exemplo mostra também que para provar um teorema não é suficiente verificar que vale para alguns casos particulares. 4 Conjecturas Uma conjectura é uma afirmação que não sabemos se é verdadeira ou falsa. A seguinte conjectura é bem famosa e está em aberto há mais de 300 anos! 6 Conjectura 4.1 (Goldbach). Todo inteiro par maior que 2 pode ser escrito como uma soma de dois primos. É fácil testar isso para números pares pequenos: 4 = 2 + 2, 6 = 3 + 3, 8 = 3 + 5, 10 = 3 + 7 etc. No entanto este método não serve para provar a conjectura já que há um número infinito de números pares. Entretanto, note que para mostrar que a conjectura é falsa bastaria exibir um contra-exemplo. Referências [1] P. Feofiloff. Página da disciplina de Teoria dos Grafos no IME-USP. http://www.ime.usp.br/~pf/mac5770-2005/tarefas.html [2] K. H. Rosen. Discrete Mathematics and its applications, McGrawHill, 2003. 7