Análise de Algoritmos

Documentos relacionados
Indução Matemática. Matemática Discreta. Indução Matemática. Mayara Midori Omai e Sheila Morais de Almeida UTFPR-PG. Abril

Matemática Discreta. Teoria de Conjuntos - Parte 2. Profa. Sheila Morais de Almeida. abril DAINF-UTFPR-PG

Análise de Algoritmos

Teoria dos Conjuntos. Matemática Discreta. Teoria dos Conjuntos - Parte I. Profa. Sheila Morais de Almeida DAINF-UTFPR-PG.

Indução Matemática. Profa. Sheila Morais de Almeida. junho DAINF-UTFPR-PG

Relações de Recorrência

Cálculo de Predicados. Matemática Discreta. Profa. Sheila Morais de Almeida DAINF-UTFPR-PG. março

Invariantes de Laço. Profa. Sheila Morais de Almeida. junho DAINF-UTFPR-PG

Lógica Proposicional

Regras de Inferência. Matemática Discreta. Profa. Sheila Morais de Almeida DAINF-UTFPR-PG. março

INE5403 FUNDAMENTOS DE MATEMÁTICA DISCRETA

Lógica Proposicional

Cálculo de Predicados. Matemática Discreta. Profa. Sheila Morais de Almeida DAINF-UTFPR-PG. março

11º ano - Indução matemática

Elementos de Matemática Finita

INE5403 FUNDAMENTOS DE MATEMÁTICA DISCRETA

Soluções dos exercícios propostos

PCC104 - Projeto e Análise de Algoritmos

Indu c ao Matem atica Indu c ao Matem atica T opicos Adicionais

Análise I Solução da 1ª Lista de Exercícios

Módulo Tópicos Adicionais. Recorrências

Algoritmos de aproximação - Problema de cobertura por conjuntos

Indução Matemática. George Darmiton da Cunha Cavalcanti CIn - UFPE

Lógica Matemática - Indução

Algoritmos gulosos (greedy)

Teoria dos Grafos. Coloração de Vértices

Matemática Discreta para Ciência da Computação

Teoria dos Grafos. Valeriano A. de Oliveira, Socorro Rangel, Silvio A. de Araujo. Capítulo 16: Grafos Planares. Departamento de Matemática Aplicada

Análise Combinatória. Matemática Discreta. Prof Marcelo Maraschin de Souza

Matemática Discreta - 05

Sumário. 2 Índice Remissivo 9

RESOLUÇÃO DCC-UFRJ MATEMÁTICA COMBINATÓRIA 2006/2 PROVA Considere a soma. S n = n 2 n 1

Problema de seleção de atividades. Aula 14. Exemplo. Algoritmos Gulosos. Algoritmos Gulosos. Intervalo: par ordenado de números

Teoria dos Conjuntos. (Aula 6) Ruy de Queiroz. O Teorema da. (Aula 6) Ruy J. G. B. de Queiroz. Centro de Informática, UFPE

INE5403 FUNDAMENTOS DE MATEMÁTICA DISCRETA

Projeto de Algoritmos por Indução

Axiomatizações equivalentes do conceito de topologia

Elementos de Matemática Finita

Grafos e Algoritmos Raimundo Macêdo. Teorema de Hall (Prova por Indução)

Lista de Exercícios 9 (Extra): Soluções Grafos

Matemática Discreta. Lógica Proposicional. Profa. Sheila Morais de Almeida. agosto DAINF-UTFPR-PG

Alguns comentários. Segunda prova. Programação dinâmica em grafos. Guloso em grafos. Algoritmos p. 1

Algoritmos Greedy. Pedro Ribeiro 2014/2015 DCC/FCUP. Pedro Ribeiro (DCC/FCUP) Algoritmos Greedy 2014/ / 40

15 - Coloração Considere cada um dos grafos abaixo:

Matemática para Ciência de Computadores

XXXV Olimpíada Cearense de Matemática Nível 3 - Ensino Médio

Projeto e Análise de Algoritmos Aula 8: Algoritmos Gulosos (5)

Método Guloso. Troco mínimo. Paulo Eustáquio Duarte Pinto (pauloedp arroba ime.uerj.br) junho/2012. Troco mínimo. Troco mínimo

Capítulo 2. Conjuntos Infinitos. 2.1 Existem diferentes tipos de infinito

Roteiro da segunda aula presencial - ME

Matemática Discreta - 07

Produtos de potências racionais. números primos.

Soluções dos Exercícios do Capítulo 2

Teoria dos Grafos. Valeriano A. de Oliveira Socorro Rangel Departamento de Matemática Aplicada.

5COP096 TeoriadaComputação

Teoria dos Grafos. Edson Prestes

INE5403 FUNDAMENTOS DE MATEMÁTICA DISCRETA

Matemática Discreta. Aula nº 22 Francisco Restivo

Análise na Reta - Verão UFPA 1a lista - Números naturais; Corpos ordenados

Árvores Árvores Geradoras de Custo Mínimo 0/16

Aula 6: Dedução Natural

Estruturas de Dados 2

Bases Matemáticas. Como o Conhecimento Matemático é Construído. Aula 2 Métodos de Demonstração. Rodrigo Hausen. Definições Axiomas.

Problema do Caminho Mínimo

Teoria dos Grafos. Valeriano A. de Oliveira, Socorro Rangel, Silvio A. de Araujo. Departamento de Matemática Aplicada

Capítulo 2. Conjuntos Infinitos

A resolução desses problemas pode geralmente ser feita com o seguinte procedimento: Problemas de divisibilidade 1

2 Erro comum da indução. 3 Corretude de Algoritmos. > Indução Forte X Indução Fraca Erro comum da indução Corretude de Algoritmos 0/17

Coloração de intervalos

Teoria dos Grafos. Valeriano A. de Oliveira, Socorro Rangel, Silvio A. de Araujo. Departamento de Matemática Aplicada

MA21: Resolução de Problemas - gabarito da primeira prova

Axiomas da Geometria Diferencial: Incidência Axioma I 1 : Para todo ponto P e para todo ponto Q distinto de P, existe uma única reta l que passa por

Matemática Discreta - 07

14 Coloração de vértices Considere cada um dos grafos abaixo:

Estruturas Discretas

A equação da circunferência

Gabriel Coutinho DCC035 - Pesquisa Operacional Lista 6

Matemática Discreta - 06

Predicados e Quantificadores

Teoria dos Grafos. Edson Prestes

Projeto de Algoritmos e Indução Matemática

Teoria Combinatória dos Números

Algoritmos Gulosos. Norton T. Roman

Dedução Indução Contra-exemplos Contradição Contrapositiva Construção Diagonalização

Polos Olímpicos de Treinamento. Aula 7. Curso de Teoria dos Números - Nível 2. Aula de Revisão e Aprofundamento. Prof.

3. Resolução de problemas por meio de busca

LISTA DE EXERCÍCIOS. Humberto José Bortolossi

Transcrição:

Análise de Algoritmos Indução Matemática - parte II Profa. Sheila Morais de Almeida DAINF-UTFPR-PG setembro - 2015

Indução Matemática - Exemplo 1 Provar que se S é um conjunto finito com n elementos, n Z 1, então S tem 2 n subconjuntos. Base: Quando n = 0, S = {}. Subconjuntos de S: {}. Pelo enunciado, S tem 2 0 = 1 subconjunto. A fórmula é condizente com o que verificamos. Portanto, o enunciado está correto quando n = 0. 1 Z denota o conjunto dos números inteiros não-negativos

Indução Matemática - Exemplo 1 Provar que se S é um conjunto finito com n elementos, n Z, então S tem 2 n subconjuntos. Hipótese de Indução: Suponha que S é um conjunto com k elementos, k Z, então S tem 2 k subconjuntos. Passo: Considere um conjunto S com k + 1 elementos. S'

Indução Matemática - Exemplo 1 Provar que se S é um conjunto finito com n elementos, n Z, então S tem 2 n subconjuntos. Seja a um dos elementos em S. Sabemos que a existe, pois S tem k + 1 elementos e k Z. S' a

Indução Matemática - Exemplo 1 Provar que se S é um conjunto finito com n elementos, n Z, então S tem 2 n subconjuntos. O conjunto S a tem k elementos. Pela hipótese de indução, S a tem 2 k subconjuntos. S'-a a

Indução Matemática - Exemplo 1 Provar que se S é um conjunto finito com n elementos, n Z, então S tem 2 n subconjuntos. Cada subconjunto X S a é um subconjunto de S, assim como o subconjunto X {a}. S' X a

Indução Matemática - Exemplo 1 Provar que se S é um conjunto finito com n elementos, n Z, então S tem 2 n subconjuntos. Cada subconjunto X S a é um subconjunto de S, assim como o subconjunto X {a}. S' X X a X U a

Indução Matemática - Exemplo 1 Provar que se S é um conjunto finito com n elementos, n Z, então S tem 2 n subconjuntos. Cada subconjunto X S a é um subconjunto de S, assim como o subconjunto X {a}. Então, S tem o dobro do número de subconjuntos de S a. Portanto, S tem 2(2 k ) subconjuntos, isto é, 2 k+1 subcojuntos. Como essa quantidade de subconjuntos corresponde ao valor que se obtém ao aplicar a fórmula do enunciado para n = k + 1, então a fórmula está correta.

Indução Matemática - Exemplo 2 Provar que n j=1 A j = n j=1 A j, sempre que A 1, A 2,..., A n forem subconjuntos de um universo U, com n 2. Base: n = 2 A1 A2 A1 A2 U U A 1 A 2 U A1 A 2 U

Indução Matemática - Exemplo 2 Provar que n j=1 A j = n j=1 A j, sempre que A 1, A 2,..., A n forem subconjuntos de um universo U, com n 2. Base: n = 2 A1 A2 A1 A2 U U A 1 A2 A1 A2 U A 1 U A 2

Indução Matemática - Exemplo 2 Provar que n j=1 A j = n j=1 A j, sempre que A 1, A 2,..., A n forem subconjuntos de um universo U, com n 2. Hipótese de indução: k j=1 A j = k j=1 A j, onde A 1, A 2,..., A k são subconjuntos de um universo U, com k 2. Passo: k+1 j=1 A j = k j=1 A j Ak+1

Indução Matemática - Exemplo 2 Provar que n j=1 A j = n j=1 A j, sempre que A 1, A 2,..., A n forem subconjuntos de um universo U, com n 2. Passo: k+1 j=1 A j = k j=1 A j Ak+1 Observe que k j=1 A j é um conjunto e A k+1 é um conjunto. Como está provado na base que 2 j=1 A j = 2 j=1 A j, tem-se: k+1 j=1 A j = k j=1 A j Ak+1 = k j=1 A j Ak+1 Pela hipótese de indução, k j=1 A j = k j=1 A j, portanto: k j=1 A j Ak+1 = k j=1 A j Ak+1 = k+1 j=1 A j.

Indução Matemática - Exemplo 3 Problema de Escalonamento Suponha que exista um grupo de palestras com horários pré-agendados. Gostaríamos de realizar o maior número de palestras possíveis no salão de conferências principal. Como escolher quais as palestras que serão apresentadas nesse salão?

Indução Matemática - Exemplo 3 Problema de Escalonamento - Algoritmo Guloso Entrada: inteiro n e conjunto de palestras t 1, t 2,..., t n, onde cada tarefa t i começa no tempo b i e termina no tempo e i. Passo 1: Ordene as tarefas em ordem não-decrescente de término: S = (e 1, e 2,..., e n ), de forma que e 1 e 2... e n. Passo 2: Inicie o conjunto C de palestras agendadas: C = {t 1 }. Passo 3: Remova e 1 de S: S = (e 2, e 3,..., e n ). Passo 4: Para i de 2 a n faça: Se b i é maior que o término da última tarefa incluída em C, então C = C {t i }. Remova e i de S. Passo 5: Apresente o conjunto de tarefas C.

Indução Matemática - Exemplo 3 Problema de Escalonamento - Algoritmo Guloso Prove que o algoritmo guloso do Problema do Escalonamento é ótimo, ou seja, sempre seleciona o maior número de palestras possíveis para a sala de conferências principal. Vamos provar P(m): se o algoritmo escolhe m palestras para a sala principal de um conjunto qualquer, então m é o número máximo de palestras que poderiam ocorrer na sala principal.

Indução Matemática - Exemplo 3 Vamos provar P(m): se o algoritmo escolhe m palestras para a sala principal de um conjunto qualquer, então m é o número máximo de palestras que poderiam ocorrer na sala principal. Base: Se m = 1. O algoritmo escolhe a palestra t 1 para a sala principal (Passo 2). Como as palestras estavam ordenadas em ordem não-decrescente de tempo de término (Passo 1), t 1 é a palestra que termina mais cedo. Observe que todas as outras palestras, que foram descartadas sem serem incluídas em C, obrigatoriamente terminam junto com ou após t 1, ou seja, no tempo e 1 ou depois.

Indução Matemática - Exemplo 3 Lembre: todas as outras palestras, que foram descartadas sem serem incluídas em C, obrigatoriamente terminam no tempo e 1 ou depois. Como as palestras foram descartadas, pelo Passo 4 toda palestra t i, para 2 i n, tem tempo de início menor ou igual a e 1. Então todas as palestras t i, 2 i n, estariam ocorrendo no tempo e 1 e não podem usar a sala principal ao mesmo tempo. Portanto, o algoritmo está correto ao escolher apenas uma palestra.

Indução Matemática - Exemplo 3 Vamos provar P(m): se o algoritmo escolhe m palestras para a sala principal de um conjunto qualquer, então m é o número máximo de palestras que poderiam ocorrer na sala principal. Hipótese de indução: Se o algoritmo escolhe k palestras para a sala principal de um conjunto qualquer, então k é o número máximo de palestras que poderiam ocorrer na sala principal. Passo: Suponha que o algoritmo escolhe k + 1 palestras para a sala principal de um conjunto qualquer. Pela prova da base, sabemos que nenhuma palestra que comece antes de e 1 pode ser escolhida. Portanto, considere o conjunto Q das palestras que se iniciam após e 1.

Indução Matemática - Exemplo 3 Portanto, considere o conjunto Q das palestras que se iniciam após e 1. Observe que excetuando-se t 1, as demais k palestras escolhidas pelo algoritmo pertencem à Q (pelo Passo 4). Pela hipótese de indução, se o algoritmo escolhe k palestras para a sala principal pertencentes ao conjunto Q, então k é o máximo de palestras que podem ocorrer na sala principal dentre as pertencentes a Q. Como Q contém todas as palestras que poderiam ser escolhidas após e 1, o número máximo de palestras que podem ocorrer na sala principal é k + 1.

Indução Matemática - Exemplo 4 Prove que uma postagem que custa pelo menos $12, 00 sempre pode ser feita utilizando-se selos postais que custam $4, 00 e $5, 00. Base: Se o custo da postagem é $12, basta usar 3 selos que custam $4, 00. Hipótese de indução: Uma postagem que custa $k, k inteiro e k 12, pode ser feita utilizando-se selos postais que custam $4, 00 e $5, 00. Passo: Considere uma postagem que custa $k + 1. Pela hipótese de indução, a postagem que custa $k pode ser feita com selos que custam $4 e $5.

Indução Matemática - Exemplo 4 Pela hipótese de indução, a postagem que custa $k pode ser feita com selos que custam $4 e $5. Se a postagem que custa $k utiliza algum selo que custa $4, substitua-o por um selo que custa $5. Se a postagem que custa $k usa somente selos que custam $5, então essa postagem usa pelo menos 3 selos que custam $5, já que k 12. Então troque 3 selos que custam $5 por quatro selos que custam $4..

Indução Matemática - Exemplo 5 Prove que em uma cerca com n estacas existem n 1 seções, para n inteiro, n 1.

Indução Matemática - Exemplo 5 Prove que em uma cerca com n estacas existem n 1 seções, para n inteiro, n 1. Base: Suponha que a cerca tem 1 estaca (n = 1). Não há seções. Coincide com o enunciado que diz que há n 1 = 1 1 = 0 seções.

Indução Matemática - Exemplo 5 Prove que em uma cerca com n estacas existem n 1 seções, para n inteiro, n 1. Hipótese de indução: Se a cerca tem k estacas, k inteiro positivo, então a cerca tem k 1 seções. Passo: Considere uma cerca com k + 1 estacas.... 1 2 3 4 k k+1

Indução Matemática - Exemplo 5 Prove que em uma cerca com n estacas existem n 1 seções, para n inteiro, n 1. Remova a última estaca da cerca.... 1 2 3 4 k Observe que a cerca que restou tem k estacas e uma seção a menos. Pela hipótese de indução, a cerca com k estacas tem k 1 seções.

Indução Matemática - Exemplo 5 Prove que em uma cerca com n estacas existem n 1 seções, para n inteiro, n 1. Remova a última estaca da cerca.... 1 2 3 4 k Pela hipótese de indução, a cerca com k estacas tem k 1 seções. Então a cerca antes de removermos a estaca tinha k seções.

Referências Kenneth ROSEN. Discrete Mathematics and Its Applications. McGraw-Hill Education, 6th edition (July 26, 2006).