• Share
  • Email
  • Embed
  • Like
  • Save
  • Private Content
Matematica discreta fasciculo_3_v06
 

Matematica discreta fasciculo_3_v06

on

  • 10,710 views

 

Statistics

Views

Total Views
10,710
Views on SlideShare
10,071
Embed Views
639

Actions

Likes
7
Downloads
437
Comments
0

3 Embeds 639

http://www.cursoraizes.com.br 607
http://sitebuilder.yola.com 28
http://cleanlou.blogspot.com 4

Accessibility

Categories

Upload Details

Uploaded via as Adobe PDF

Usage Rights

© All Rights Reserved

Report content

Flagged as inappropriate Flag as inappropriate
Flag as inappropriate

Select your reason for flagging this presentation as inappropriate.

Cancel
  • Full Name Full Name Comment goes here.
    Are you sure you want to
    Your message goes here
    Processing…
Post Comment
Edit your comment

    Matematica discreta fasciculo_3_v06 Matematica discreta fasciculo_3_v06 Document Transcript

    • Universidade Federal Rural de PernambucoReitor: Prof. Valmar Corrêa de AndradeVice-Reitor: Prof. Reginaldo BarrosPró-Reitor de Administração: Prof. Francisco Fernando Ramos CarvalhoPró-Reitor de Extensão: Prof. Paulo Donizeti SiepierskiPró-Reitor de Pesquisa e Pós-Graduação: Prof. Fernando José FreirePró-Reitor de Planejamento: Prof. Rinaldo Luiz Caraciolo FerreiraPró-Reitora de Ensino de Graduação: Profª. Maria José de SenaCoordenação de Ensino a Distância: Profª Marizete Silva SantosProdução Gráfica e EditorialCapa e Editoração: Allyson Vila Nova, Rafael Lira e Italo AmorimRevisão Ortográfica: Marcelo MeloIlustrações: Allyson Vila Nova e Diego AlmeidaCoordenação de Produção: Marizete Silva Santos
    • Sumário Plano da Disciplina ...............................................................................6 Ementa ...........................................................................................6 Objetivo Geral.................................................................................6 Objetivos Específicos .....................................................................6 Conteúdo Programático..................................................................6 Referências ....................................................................................7 Apresentação ........................................................................................8 Capítulo 1 - Função: uma ferramenta importante ............................10 1.1 O que é função? ......................................................................... 11 1.2 Domínio e Contradomínio ........................................................... 11 1.3 Função Injetora ...........................................................................13 1.4 Função sobrejetora .....................................................................13 1.5 Função bijetora ...........................................................................14 1.6 Função inversa ...........................................................................15 1.7 Função composta .......................................................................17 1.8 Seqüência ...................................................................................20 Capítulo 2 - Recursão: um método de definição .............................27 2.1 Recursão ....................................................................................27
    • Capítulo 03 - Teoremas e Técnicas de Provas .................................45 3.1 Estratégias de Provas.................................................................47 3.1.1 Prova Direta.........................................................................47 3.1.2 Prova Indireta ......................................................................48 3.1.3 Prova por contradição (Redução ao absurdo) ....................49Capítulo 04 - Princípio de Indução Finita .........................................53
    • Plano da DisciplinaEmenta Conjuntos. Introdução à Lógica Matemática. Portas Lógicas. Somatório. Princípiosde Contagem. Matrizes. Relações. Funções. Recursão. Técnicas de provas. InduçãoMatemática.Objetivo Geral O objetivo geral é abordar conteúdos selecionados da Matemática Discreta querealizam interface com o curso de Sistema de Informação, visando dar a base paraa compreensão de conceitos de estruturas de dados, bem como, para dar suporte naconstrução de algoritmos em seus diferentes níveis de complexidade.Objetivos Específicos • Aprender a encontrar modelos matemáticos que representem certos problemas concretos (noções de modelagem matemática), em especial quando estes se referem a situações práticas • Familiarizar-se com a escrita matemática formal e a linguagem computacional • Representar fenômenos na forma algébrica e na forma gráfica • Conhecer técnicas de resolução de problemas • Desenvolver a capacidade de raciocínio abstrato (lógico-matemático).Conteúdo Programático Módulo 1 – Fascículo 1 Carga horária do Módulo 1: 20 h • Conjuntos. • Introdução à Lógica Matemática. • Portas Lógicas.
    • Módulo 2 – Fascículo 2 Carga horária do Módulo 2: 20 h Somatório. Princípios de Contagem. Matrizes. Relações Módulo 3 – Fascículo 3 Carga horária do Módulo 3: • Funções. • Recursão. Técnicas de provas. • Indução Matemática.Referências GERSTING, Judith L. Fundamentos Matemáticos para a Ciência da Computação. Tradução Valéria de Magalhães Lorio. Rio de Janeiro: LTC, 2004. SChEINERMAN, Edward R. Matemática Discreta: uma introdução. Tradução de Alfredo Alves de Farias. São Paulo: Pioneira Thomson Learning, 2003. Livros de referência: ABE, Jair Minoro; PAPAVERO, Nelson. Teoria intuitiva dos conjuntos. São Paulo McGraw hill:, 1997 ALENCAR Filho, Edgard de. Iniciação à Lógica Matemática. São Paulo: Nobel, 1995. ROSS, Kenneth A; WRIGhT, Charles R. B. Discrete Mathematics. Prentice hall, 1999. TRUSS, J. K. Discrete mathematics for computer scientist. Addison Wesley. 1999. LIPSChUTZ, Seimour; LIPSON, Marc Lars. Teoria e Problemas de Matemática Discreta. Porto Alegre: Bookman, 2004
    • Apresentação Caro (a) cursista, Seja bem-vindo (a) ao terceiro módulo de Matemática Discreta! Ao finalizar a disciplina, abordaremos, neste terceiro fascículo, alguns temasrelevantes em aplicações nas áreas de informática, como função, recursão, teoremas etécnicas de provas e o princípio de indução matemática. No primeiro capítulo, você estudará as funções. Estudaremos as funções injetoras,sobrejetoras, bijetoras e a função inversa. Apresentaremos exemplos de funçõesutilizadas na informática tais como seqüências numéricas, a função mod e a funçãohash. No segundo capítulo, você descobrirá o que é uma definição recursiva ou indutiva.Serão apresentados exemplos de seqüências e funções definidas recursivamente,objetivando introduzir o conceito de um algoritmo recursivo. No terceiro capítulo, você terá oportunidade de conhecer diversas técnicas de provasde proposições matemáticas, muito úteis na resolução de problemas da disciplina. Por fim, no quarto capítulo será abordado o princípio de indução matemática que éusado quando se quer provar afirmações sobre propriedades dos números naturais. Esperamos que você tenha bom proveito neste terceiro fascículo, estudando comafinco os assuntos e realizando todos os exercícios propostos. Bons estudos!
    • Matemática Discreta Capítulo 1 - Função: uma ferramenta importante Disponível em http://www.ipea.gov.br A figura acima representa o gráfico de uma função que relaciona o percentual da renda total do Brasil auferido em 2004 pelos x% dos brasileiros de menor renda. Constata-se que a renda total dos 60% de menor renda representou apenas 20% da renda total do país e que 60% da renda total correspondem a 20% dos brasileiros de maior renda. Esta curva é chamada Curva de Lorenz e faz parte da prova do ENADE que examinou os estudantes dos cursos das áreas de computação e informática no ano de 2008. O conceito de funções é largamente empregado em todos os ramos de atividade, por isso é comum os testes de avaliação conter questões versando sobre o assunto. No caso da computação e informática, a sua importância torna- se clara quando queremos associar a cada elemento de um conjunto um elemento particular de outro conjunto. Desta forma, podemos definir seqüências e somas, estabelecer relações de causa e efeito, processar informações dos mais diferentes tipos, além de estimar o tempo necessário para que um computador realize uma determinada tarefa num determinado algoritmo. 10
    • Matemática Discreta1.1 O que é função? Sejam A e B dois conjuntos. Uma função de A em B é a associaçãode exatamente um elemento de B a cada elemento de A. As seguintesnotações são usadas: f: A → B, se f é uma função de A em B. f(a) = b, se b é o único elemento de B associado pela função f aoelemento a de A.1.2 Domínio e Contradomínio Se f é uma função de A em B, diz-se que A é o domínio de f e B éo contradomínio de f. Se f(a) = b, diz-se que b é a imagem de a porf. Chama-se também de imagem de f o conjunto de todas as imagensdos elementos de A, denotado por Im(f). Se f é uma função de A emB, diz-se que f mapeia A em B. A figura acima apresenta uma função cujo domínio é A = {1, 4, 7}e contradomínio B ={1, 4, 6, 7, 8, 9, 12} e conjunto imagem Im(f) = {6,9, 12}. Apresentaremos a seguir exemplos de funções, a maioriaempregada em construções nas áreas de computação. Exemplo 1. Consideremos que f seja uma função que associa umnúmero a cada um dos cursos de uma faculdade, de modo que essenúmero represente a demanda (relação candidato/vaga) para cadaum dos seus cursos no Vestibular de 2009. Se domínio da funçãof é o conjunto C = {Administração, Direito, Sistema de Informação,Fonoaudiologia, Fisioterapia, Psicologia, Relações Internacionais,Turismo}. O contradomínio é o conjunto dos números reais. Podemosescrever, por exemplo, f(Direito) = 7,8; f(Administração) = 2,6;f(Fisioterapia) = 7,4 ; f(Psicologia) = 5,4 e f(Sistemas de Informação) 11
    • Matemática Discreta = 2,0, f(Relações Internacionais) = 1,4, f(Fonoaudiologia) = 1,7, f(Turismo) 2,4. Exemplo 2. Seja S o conjunto de todas as pessoas do Recife cadastradas na Receita Federal e T o conjunto de todos os CPF. A função f: S → T associa cada pessoa x ao seu CPF y. Exemplo 3. Se f é uma função de Z para Z que associa a cada inteiro o seu quadrado. Neste caso, f(x) = x2, onde o domínio é o conjunto dos números inteiros, assim como o contradomínio é conjunto dos números inteiros. A imagem de f é constituída de todos os inteiros não negativos. Exemplo 4. Em linguagens de programação, domínio e o contradomínio das funções são sempre especificados. Tomemos por exemplo a declaração de uma função em Pascal seguinte: function QUAD (x: real): real Ela especifica que o domínio da função QUAD é o conjunto dos números reais e o contradomínio é o conjunto dos números reais. Exemplo 5. A definição de função inclui função de mais de uma variável. Podemos ter uma função f: A1xA2xA3 → B, que associa a cada terno do produto cartesiano A1xA2xA3 um elemento de B. Por exemplo, f : Z x N x {1, 2} → Z, dada por f(x, y, z) = xy +z . Podemos escrever: f(-4, 3, 1) = (-4)3 + 1 = -64 + 1 = 63. Exemplo 6. A função chão f(x) = x associa a cada número real x o maior inteiro menor ou igual a x. A função teto g(x) = x associa a cada real x o menor inteiro maior ou igual a x. Ambas são funções de R em Z. Como exemplo, temos: f(2,35) = 2,35 = 2, f(0,9) = 0, g(4,78) = 4,78 = 5 e g(-1,3) = -1. Exemplo 7. Considere x um número real. O valor inteiro de x, denotado por INT(x), converte x em um inteiro deletando a parte fracionária de x. É uma função de R em Z. Exemplos: INT(7,85) = 7 INT(-4,9) = -4. Exemplo 8. O valor absoluto de um número real x, denotado por ABS(x) é definido como o maior dos valores entre x e –x. É uma função de R em R+. Pois, ABS(-3) = 3, ABS(4,7) = 4,7 e ABS(0) = 0. Exemplo 9. Dado um inteiro positivo m, a função f : N → N definida por f(x) = resto da divisão euclidiana de x por m, m > 0, será denotada por f(x) = xmod m. É também chamada função mod m. 12
    • Matemática Discreta Por exemplo, para m = 5, temos que: f(7) = 7mod 5 = 2, f(2) = 2mod 5 = 2, f(13) = 13mod 5 = 3, f(8) = 3, f(10) = 10mod 5 = 0, f(5) = 5mod 5 = 0.1.3 Função Injetora Uma função f é dita injetora (ou injetiva) se, e somente se, x ≠ yentão f(x) ≠ f(y), para quaisquer x e y do domínio de f. Figura 1 Figura 2 O gráfico mostrado na figura acima à esquerda, ilustra uma funçãodefinida no conjunto A em B. Como elementos diferentes do domínioa função tem imagens diferentes, então f é injetora. A figura acima àdireita ilustra uma função não injetora, pois existem dois elementosdiferentes com a mesma imagem. Exemplo 10. A função f: N em N tal que f(n) = 2n é uma função n ninjetora, pois se n1 ≠ n2 então 2 1 ≠ 2 2 . Mas a função f(x) = x2, definidaem Z, não é injetora, pois se tomarmos x = -2 e x = 2, obteremos f(2)= f(-2) = 4. Exemplo 11. A função f: N em N, tal que f(n) = nmod 3 é uma funçãoque não é injetora, pois, existem diferentes valores de N com a mesmaimagem. De fato, f(0) = 0, f(3) = 0, f(6) = 0, f(1) = 1, f(4) = 1, f(9) = 1,f(2) = 2, f(5) = 2, f(11) = 2.1.4 Função sobrejetora Uma função f de A em B é dita sobrejetora se e somente se paracada elemento b∈B existe um elemento a∈A tal que f(a) = b. 13
    • Matemática Discreta O gráfico da figura acima à esquerda ilustra uma função de A em B. Como para cada um dos três elementos do contradomínio B faz parte do conjunto imagem de f, a função é sobrejetora. O gráfico acima à direita ilustra uma função que não é sobrejetora, pois existem elementos no conjunto B que não são imagem de nenhum elemento de A. Observe que a figura à esquerda é o gráfico de uma função sobrejetora, mas não injetora! 1.5 Função bijetora Uma função é dita bijetora se ela é injetora e sobrejetora. O gráfico acima refere-se a uma função f de X = {a, b, c, d} em Y = {A, B , C, D}, com f(a) = A, f( b) = B, f(c) = C e f(d) = D. Como cada valor do domínio a função tem um valor diferente de imagem e como cada um dos elementos do contradomínio faz parte do conjunto imagem da função, ele é ao mesmo tempo injetora e sobrejetora, ou seja, bijetora. Outro exemplo de função bijetora pode ser construído considerando como domínio um grupo de pessoas e como contradomínio o conjunto 14
    • Matemática Discretadas impressões digitais dessas pessoas. É impossível que duaspessoas compartilhem exatamente as mesmas impressões digitais.Além disso, todas as impressões digitais pertencem a não mais queuma pessoa.1.6 Função inversa Seja f uma função bijetora de A em B. A função inversa de f éa função que associa a um elemento b∈B um único elemento a∈Atal que f(a) = b. Esta função é representada por f-1. Nesse casoescrevemos f-1(b) = a A figura abaixo ilustra a função inversa da função f de X = {a, b, c,d} em Y = {A, B, C, D}, com f(a) = A, f(b) = B, f(c) = C e f(d) = D. Assim, temos f-1(A) = a, f-1(B) = b, f-1(C) = c e f-1(D) = d. Exemplo 12. A função mod tem muitas aplicações em MatemáticaDiscreta e Ciência da Computação. Uma das mais importantesaplicações envolve a criptologia, que trata do estudo das mensagenssecretas. Uma das formas de escrever mensagens secretas é associaruma letra do nosso alfabeto a outra letra. Por exemplo, cada letra donosso alfabeto (que contém 26 letras) está associada a sua posiçãono alfabeto. Por exemplo, a letra A ocupa a posição 0, a letra B aposição 1 e a letra E, a posição 4, de modo que Z ocupa a posição25. 15
    • Matemática Discreta a b c d e f g h i j k l m 0 1 2 3 4 5 6 7 8 9 10 11 12 n o p q r s t u v w x y z 13 14 15 16 17 18 19 20 21 22 23 24 25 Assim, podemos construir uma mensagem secreta por meio da troca de uma letra que ocupa a posição p pela letra que ocupa a 3ª posição após a letra p. Assim: A função definida por f(p) = (p + 3)mod 26 tem a ação de cifrar a mensagem por meio da troca da letra de posição p pela letra que ocupa a posição representada pelo número (p + 3)mod 26. Se quisermos enviar a seguinte mensagem “O SPORT ESTÁ EM ALTA”, faríamos a seguinte mensagem codificada: 17 21 18 17 20 22 7 21 22 3 7 15 3 14 22 3 R V S R U X h V X D h P D O W D Ao receber a mensagem, para decodificar, o receptor usaria a função inversa de f, dada por f-1(p) = (p-3)mod 26. De modo que f-1(17) = (17 - 3)mod 26 = 14mod 26 = 14 f-1(21) = (21-3)mod 26 = 18 e, assim por diante, de modo que a mensagem decifrada seria: 14 18 15 14 17 19 4 18 19 0 4 12 0 11 19 0 O S P O R T E S T Á E M A L T A 16
    • Matemática Discreta Atenção Uma função injetora, mas não sobrejetora, não é inversível, pois não temos como associar cada elemento do contradomínio com o elemento correspondente no domínio. Isto ocorre porque para alguns pontos do contradomínio, esta associação não existe, conforme pode ser observado na figura 4. Analogamente, uma função sobrejetora, mas não injetora, não é inversível, pois pelo menos para um ponto do contradomínio, teremos dois pontos correspondentes, conforme pode ser observado na figura 3.1.7 Função composta Considere a função g de A em B e a função f de B em C, a funçãocomposta de f e g é a composição das funções f e g, escrita f o g,definida como: (f o g) (x) = f (g(x)) A figura abaixo ilustra o conceito de composição de funções f e g. Exemplo 13. Sejam f e g as funções do conjunto dos inteiros noconjunto dos inteiros, definidas como: f(x) = 5x + 2 e g(x) = -2x + 4.Qual a composição f o g? E g o f? (f o g) (x) = f (-2x + 4) = 5(-2x + 4) + 2 = -10x + 20 + 2 = -10x + 22 17
    • Matemática Discreta (g o f) (x) = g(5x + 2) = -2(5x + 2) + 4 = -10x – 4 + 4 = -10x Exemplo 14. Neste exemplo, recordaremos a representação de números nas bases decimal, binária e hexadecimal. Considere a função f definida no conjunto dos números naturais escritos na base decimal por f(x) = xbase 2 e g(x) = xbase 16. A função composta f(g(x)) transforma um número natural escrito na base dez em um número natural na base dois. Assim: para x = 21base 10, temos f(g(21base 10)) = f(15base 16) = 10101base 2. para x = 10base 10, temos f(g(10)) = f(A) = 1010base 2. para x = 200base 10, temos f(g(200)) = f(C8) = 11001000base 2. Exemplo 15. Se quisermos armazenar e recuperar informações de forma eficiente em termos de espaço de armazenamento e de tempo de recuperação, podemos supor que os dados estejam armazenados em uma tabela e usar a chave de identificação (por exemplo, a matrícula de alunos, CPF, RG, etc). Quando o número de entradas identificadas pelas chaves é muito superior ao número de registros efetivamente armazenados (como o cadastro de clientes de uma empresa usando o CPF como chave), como podemos proceder, sem que isso resulte em um espaço de armazenamento excessivamente grande? Suponha que o conjunto das chaves identificáveis C = {k1, k2, k3, ... , km}, n seja o número de entradas na tabela e que m seja possivelmente muito maior que n, podemos definir uma função hash: C → {1, 2, 3, ... , n}, dito função de endereçamento, função de randomização ou função de hashing, da seguinte forma: hash (k) = (kmod n) + 1 Considere uma chave de identificação numérica constituída de números entre 0 e 1000 e uma tabela de armazenamento com entradas de 1 a 17. Assim, a função de hash que podemos definir é hash (k) = (kmod 17) + 1 Abaixo apresentamos um conjunto de valores de chaves e os correspondentes endereços de armazenamento, calculados pela função hash: Chave k 365 634 2178 7615 730 974 2065 1222 3417 Endereço 9 6 3 17 17 6 9 16 1 18
    • Matemática Discreta A função ideal é aquela que gera para cada chave um endereçodiferente, isto é, uma função injetiva, de modo que se k1 ≠ k2 se tenhaf(k1) ≠ f(k2). A função hash, acima definida, não é injetora, de modo que podegerar o mesmo endereço para chaves diferentes, correndo assimcolisões na alocação dos dados. Observe que hash(365) = hash(2065)= 9, hash(7615) = hash(730) = 17. Para se obter o efeito de umafunção injetora no cálculo do endereçamento serão utilizados métodosde tratamento de colisões que são estudados em profundidade nadisciplina Estruturas de Dados. Exemplo 16. Existem vários métodos de tratamento de colisões.Um deles chama-se endereçamento aberto. Nesse caso, é necessárioque m > n e consiste em procurar sucessivos endereços alternativospara o novo registro até que um endereço livre seja encontrado. Usa-se uma função hi(k) com i variando de 0 até n-1: hi(k) = ((k)mod n + f(i))mod n onde f(i) pode ser f(i) = i, f(i) = i2, etc. Se tomarmos hi(k) = ((k)mod 7 + i)mod 7 teremos um endereçamentoaberto com teste linear. Para armazenar seqüencialmente os registroscom chaves {33, 44, 63, 66, 84, 93} teremos: k i hi(k) = (kmod 7 + i)mod 7 Situação 33 0 hi(33) = (33mod 7 + 0)mod 7 = (5 + 0)mod 7 = 5mod 7 = 5 ok 44 0 hi(44) = (44mod 7 + 0)mod 7 = (2 + 0)mod 7 = 2mod 7 = 2 ok 63 0 hi(63) = (63mod 7 + 0)mod 7 = (0 + 0)mod 7 = 0mod 7 = 0 ok 66 0 hi(66) = (66mod 7 + 0)mod 7 = (3 + 0)mod 7 = 3mod 7 = 3 ok 84 0 hi(84) = (84mod 7 + 0)mod 7 = (0 + 0)mod 7 = 0mod 7 = 0 Colisão 1 hi(84) = (84mod 7 + 1)mod 7 = (1 + 0)mod 7 = 1mod 7 = 1 ok 93 0 hi(93) = (93mod 7 + 0)mod 7 = (2 + 0)mod 7 = 2mod 7 = 2 Colisão 1 hi(93) = (93mod 7 + 1)mod 7 = (2 + 1)mod 7 = 3mod 7 = 3 Colisão 2 hi(93) = (93mod 7 + 2)mod 7 = (2 + 2)mod 7 = 4mod 7 = 4 ok Os dados serão alocados nos seguintes endereços: 0 1 2 3 4 5 6 63 84 44 66 93 33 19
    • Matemática Discreta 1.8 Seqüência Uma seqüência é uma função definida em um subconjunto dos números naturais com imagens num subconjunto dos números reais. A imagem de um número natural n é denotada por F(n). Usamos a notação {F(n)} para descrever uma seqüência. O termo F(n) é o termo de ordem n ou termo geral da seqüência (definição fechada). 1 Exemplo 16: Considere a seqüência cujo termo geral é F(n) = . n 1 1 A lista dos termos da seqüência é F(1) = 1, F(2) = , F(3) = , F(4) 2 3 1 1 = , F(5) = . 4 5 Exemplo 17. a) Os cinco primeiros termos da seqüência definida por A(n) = 2 + 3(n-1) são: A1 = 2, A2 = 5, A3= 8, A4= 11, A5 = 14. Observe que trata-se de uma Progressão Aritmética (PA) cujo termo inicial é 2 e razão r = 3. Lembre-se que, uma P.A. de termo inicial A1 e razão r, tem termo geral A(n) = A1 + (n-1).r b) Os cinco primeiros termos da seqüência definida por A(n) = 3. 2n-1 são: A1 = 3, A2 = 6, A3 = 12, A4 = 24, A5 = 48. Trata-se de uma Progressão Geométrica (PG) cujo termo inicial é 3 e razão q = 2. 20
    • Matemática Discreta Recorde que, uma PG de termo inicial A1 e razão q, tem termogeral A(n) = A1.qn-1. Exemplo 18. Calcular os termos A1, A2, A3 e A4 das seguintesseqüências {An} cujo termo geral Na, n ≥ 1, é definido por: a) An = n2 b) An = 1 + 10n c) An = (-1)n.n d) An = 2n + 1 e) An = n! f) An = 2 + 3(n-1) Solução: a) 1, 4, 9, 16 b) 11, 101, 1001, 10001 c) -1, 2, -3, 4 d) 3, 5, 9, 17 e) 1, 2, 6, 24 f) 2, 5, 8, 11 Exemplo 19. Escrever uma definição fechada (ou termo geral) paraas seguintes seqüências numéricas: a) 19, 14, 9, 4, ... b) 400, 200, 100, 50, ... c) 17, 27, 37, 47, 57, ... d) 7, 97, 997, 9997, ... e) 2, -2, 2, -2, 2, ... f) 1, 1/3, 1/5, 1/7, 1/9, ... g) 1, 3, 6, 10, 15, ... h) 1, 2, 5, 10, 17, ... Solução: 400 a) A(n) = 24 – 5n , n ≥ 1 b) A(n) = ,n≥1 2n−1 c) A(n) = 7 + 10n, n ≥ 1 d) A(n) = 10n - 3, n ≥ 1 1 e) A(n) = (-1)n + 1 . 2, n ≥ 1 f) A(n) = ,n≥1 2n − 1 n(n + 1) g) A(n) = ,n≥1 h) A(n) = 1 + (n - 1)2, n ≥ 1 2 Aprenda Praticando - Exercício Proposto 1.1 Agora é com você... Apresentamos vários exercícios sobre função.Você deve procurar solucioná-los e caso tenha alguma dificuldadediscuta com seus colegas nos chats que foram formados. Além disso, 21
    • Matemática Discreta procure orientação dos professores executores e tutores da disciplina nos fóruns de discussão. Apresentaremos as respostas dos exercícios de números pares. 1. Verificar se cada uma das funções definidas abaixo é injetora, sobrejetora e bijetora: a) f : {1, 2, 3} → {a, b, c} f = {(1,a), (2,b), (3,c)} b) g : {1, 2, 3} → {a, b, c, d} g = {(1,a), (2,b), (3,c)} c) h ; {1, 2, 3} → {1, 2, 3} h = {(1, 2) , (2,1), (3,2)} d) p : N → N p (j) = j2 + 2 e) m : N → N m(x) = (x)mod 5 f) q : N → N q(j) = 1 se j é ímpar q(j) = 0 se j é par g) r : N → {0, 1} r(j) = 1 se j é ímpar r(j) = 0 se j é par h) t : {0, 1, 2, 3, ..., 6} → {0, 1, 2, 3, ..., 6} t(x) = (3x)mod 7 i) f : Z → Z tal que f(x) = 10 + x j) f: N → N tal que f(x) = 10 + x k) g: Z → Z tal que f(x) = x/2 se x é par e f(x) = (x - 1)/2 se x é impar. l) f: N → Z tal que f(x) = - x/2 se n é par e f(x) = (x + 1)/2 se x é impar. 2. Determine quais das seguintes funções de R em R são bijetoras. Apresente a função inversa, quando existir. a) f(x) = 3x + 4 b) f(x) = -3x2 + 7 c) f(x) = (x+1) / (x2+2) d) f(x) = x5 –1 e) f(x) = x 3. Para cada uma das funções bijetora f de R em R, encontre a inversa f-1. a) f(x) = 2x b) f(x) = x3 c) f(x) = (2x + 4)/3 4. Dê uma fórmula explícita para uma função do conjunto dos inteiros Z com imagens no conjunto dos inteiros Z tal que seja: a) injetora e não sobrejetora. b) sobrejetora e não injetora. 22
    • Matemática Discreta c) injetora e sobrejetora. d) não injetora e não sobrejetora. 5. Sejam f, g: N → N, definidas por f(x) = x + 1 e g(x) = 3x Calcule o seguinte: a) f o g b) g o f c) f o f d) g o g e) f o g o f f) g o g o f 6. Sejam f e g as funções do conjunto dos inteiros no conjuntodos inteiros, definidas como: f(x) = 5x + 2 e g(x) = -2x + 4. Qual acomposição de f o g e g o f? 7. As funções a seguir são aplicações de R em R. Forneçaequações que descrevam as funções compostas g o f e f o g paracada item. a) f(x) = 6x3 , g(x)= 2x b) f(x) =x , g(x) = x 8. As funções a seguir são aplicações de R em R. Forneçaequações que descrevam as funções compostas g o f e f o g paracada item. a) f(x) = (x-1)/2 , g(x) = 4x2 x +1 x −1 b) f(x) = , g(x) = x −1 x +1 9. Para cada uma das seguintes funções de hash, abaixo, mostrecomo os dados seriam inseridos na ordem dada supondo inicialmentecélulas vazias. Use tratamento de colisões o endereçamento abertocom teste linear. a) hash(x) = (xmod 11 + i)mod 11, células indexadas de 0 a 10, dados:53, 13, 281, 743, 377, 20, 10, 796. b) hash(x) = (xmod 17 + i)mod 17 células indexadas de 0 a 16, dados:714, 631, 26, 373, 775, 906, 509, 2032, 42, 4, 136, 1028. 10. Armazenar seqüencialmente os registros com chaves {33, 44,65, 66, 84, 93} numa tabela hash de tamanho 7 com tratamento decolisões endereçamento aberto com teste quadrático, dado por hi(k) =(kmod 7 + i2)mod 7, i = 0, 1, 2, 3, 4, 5, 6. 23
    • Matemática Discreta Respostas dos Exercícios 1.1 x−4 2. a) f(x) = 3x + 4 é bijetora e a função inversa é f-1(x) = . 3 b) f(x) = -3x2 + 7 não é uma função injetora, pois, f(2) = f(-2) = -5. Além disso, não é sobrejetora em R. De fato, não existe x∈R, tal que f(x) = 10. c) f(x) = (x+1) / (x2+2) não é sobrejetora. Por exemplo, não existe x∈R, tal que f(x) = 1. Se existisse, teríamos, (x+1)/(x2+2) = 1, ou seja, x2 + 2 = x + 1, que acarreta x2 - x + 1 = 0. Esta equação não tem solução real, pois ∆ = b2 - 4ac = -3. d) f(x) = x5 – 1 é bijetora. A inversa é f-1(x) = 5 x +1. e) f(x) = x não é injetora nem sobrejetora. Observe que f(1,3) = f(1,4) = 1 e que não existe x∈R tal que f(x) = 0,5. 4. a) f(x) = 3x + 1 se x ≥ 0, f(x) = 3x + 2 se x < 0 b) f(x) = x2 se x > 0, f(x) = -x2 + 8, se x ≤ 0. c) f(x) = 2x + 1 se x∈Z d) f(x) = x2 + 2 se x∈Z 6. (f o g)(x) = f(-2x + 4) = 5(-2x + 4) + 2 = -10x + 20+ 2 = -10x + 22 (g o f) (x) = g (5x + 2) = -2(5x + 2) + 4 = -10x – 4 + 4 = -10x 2 x −1  x −1  8. a) g(f(x)) = g( )= 4  = ( x − 1)2 2  2  4 x2 −1 f(g(x)) = f(4x ) = 2 2 x +1 −1 1 x +1 x −1 = b) g(f(x)) = g( )= x −1 x +1 x +1 x −1 x −1 +1 x −1 ) = x +1 f(g(x)) = f( = −x x +1 x −1 −1 x +1 24
    • Matemática Discreta 10. k i h(k) = (kmod 7 + i2)mod 7 Situação 33 0 h(33) = (33mod 7 + 02)mod 7 = (5 + 0)mod 7 = 5 ok 44 0 h(44) = (44mod 7 + 02)mod 7 = (2 + 0)mod 7 = 2 ok 65 0 h(65) = (65mod 7 + 02)mod 7 = (2 + 0)mod 7 = 2 Colisão 1 h(65) = (65mod 7 + 12)mod 7 = (2 + 1)mod 7 = 3 ok 66 0 h(66) = (66mod 7 + 02)mod 7 = (3 + 0)mod 7 = 3 Colisão 1 h(66) = (66mod 7 + 12)mod 7 = (3 + 1)mod 7 = 4 ok 84 0 h(84) = (84mod 7 + 02)mod 7 = (0 + 0)mod 7 = 0 ok 93 0 h(93) = (93mod 7 + 02)mod 7 = (2 + 0)mod 7 = 2 Colisão 1 h(93) = (93mod 7 + 12)mod 7 = (2 + 1)mod 7 = 3 Colisão 2 h(93) = (93mod 7 + 22)mod 7 = (2 + 4)mod 7 = 6 ok Os dados serão alocados nos seguintes endereços: 0 1 2 3 4 5 6 84 44 65 66 33 93 Conclusão No primeiro capítulo deste fascículo você aprendeu sobre asfunções, como podem ser utilizadas em aplicações da informática ecomputação. Em particular, conheceu a função mod e a função hash,que serão empregadas em aplicações da disciplina Estrutura deDados. Saiba Mais Você poderá aprender muito mais sobre funções, consultando osseguintes livros e sites: GERSTING, Judith L. Fundamentos Matemáticos para a Ciência 25
    • Matemática Discreta da Computação. Tradução Valéria de Magalhães Iorio. Rio de Janeiro: LTC, 2004. LIPSChUTZ, Seimour; LIPSON, Marc Lars. Teoria e Problemas de Matemática Discreta. Porto Alegre: Bookman, 2004. SChEINERMAN, Edward R. Matemática Discreta: uma introdução. Tradução de Alfredo Alves de Farias. São Paulo: Pioneira Thomson Learning, 2003. Orientação de Estudos O exemplo 12 deste capítulo versou sobre processos de transmissão de informações de forma segura, como por exemplo, informações de dados financeiros pela internet. Nesse processo usamos uma chave de codificação. Daí, a informação é codificada e enviada ao receptor. Ao recebê-la, o receptor pode decodificá-la usando uma chave de decodificação. No sistema criptográfico com chave pública, a chave de decodificação pode ser obtida da chave de decodificação. O sistema criptográfico com chave pública inventado por R. L. Rivest, A. Shamir e L. Adleman usa a função mod e alguns conceitos da teoria dos números inteiros. Se você tem interesse no assunto, leia os livros acima indicados que tratam do assunto de uma forma muito simples e visite os seguintes sites: http://www.upis.br/revistavirtual/Cavalcante_%20Teoria%20dos%20 N%FAmeros%20e%20Criptografia_2005_UPIS.pdf http://www.infowester.com/criptografia.php http://domenico-deri.sites.uol.com.br/exemplos.html http://www.penta.ufrgs.br/gere96/segur/cripto_.htm 26
    • Matemática DiscretaCapítulo 2 - Recursão: ummétodo de definição O que é recursão? A figura acima é um triângulo eqüilátero. No seu interior, maiortriângulo eqüilátero branco de lado L1 tem em cada um de seus lados, L1vértices de um triângulo eqüilátero de lado L2 = . Por sua vez, cada 2triângulo eqüilátero de lado L2, tem em cada um dos seus lados, vértices L2de triângulos eqüiláteros de lados L3 = , e assim sucessivamente. 2De modo que a figura mostra uma sucessão de triângulos eqüiláteros Ln−1de lados Ln = , onde o lado de cada triângulo é metade do lado 2do triângulo anterior. Essa é uma figura construída por recorrência! Faremos agora uma definição de recursão.2.1 Recursão Uma definição na qual o item que está sendo definido aparececomo parte da definição é chamada definição recursiva ou indutiva.Isto é, o item é definido por meio de uma regra que permite calcularqualquer caso do item em função do item ou dos itens anteriores. Assim, uma definição recursiva é constituída de duas partes: a) Um passo inicial, onde alguns casos simples do item que estásendo definido são dados explicitamente e, 27
    • Matemática Discreta b) Um passo indutivo ou recursivo, onde os outros casos do item que está sendo definido são dados em termos dos casos anteriores. Como podemos fazer uso de uma definição recursiva? Podemos usar recursão para definir funções ou operações, algoritmos, conjuntos e seqüências. Atenção Lembre-se: Toda definição recursiva é constituída por duas partes. A primeira parte é do passo inicial, onde serão fornecidos os dados iniciais do item que se define. A segunda parte é o passo recursivo, onde é feita de forma recorrente o calcule dos demais itens em termos dos itens anteriores. Exemplo 1: Uma seqüência é definida recursivamente, explicitando-se seu primeiro valor (ou seus primeiros valores) e, a partir daí, definindo-se outros valores na seqüência em termos dos valores iniciais. A seqüência 3, 6, 12, 24, ... é definida recursivamente por: Passo inicial: A(1) = 3 Passo Recursivo: A(n) = 2 . A(n-1), para n ≥ 2 O cálculo do 5º termo se faz assim: A(5) = 2 . A(4) A(4) = 2 . A(3) A(3) = 2 . A(2) A(2) = 2 . A(1) A(1) = 3 A(2) = 2 . 3 = 6 A(3) = 2 . 6 = 12 A(4) = 2 . 12 = 24 A(5) = 2 . 24 = 48 28
    • Matemática Discreta Exemplo 2: A seqüência 2, 5, 8, 11, 14, ... é definida recursivamentepor: Passo inicial: A(1) = 2 Passo recursivo: A(n) = A(n-1) + 3, para n ≥ 2 Para calcular recursivamente o quinto termo A(5) procedemosassim: A(5) = A(4) + 3 A(4) = A(3) + 3 A(3) = A(2) + 3 A(2) = A(1) + 3 A(1) = 2 A(2) = 2 + 3 = 5 A(3) = 5 + 3 = 8 A(4) = 8 + 3 = 11 A(5) = 11 + 3 = 14 Exemplo 3: A seqüência de Fibonacci é definida recursivamentepor: Passo inicial: F(1) = 1, F(2) = 1 Passo recursivo: F(n)= F(n-1) + F(n-2), n ≥ 3 é constituída dostermos 1, 1, 2, 3, 5, 8 ,13, 21, 34, ... Calcule recursivamente F(6). F(6) = F(5) + F(4) F(5) = F(4) + F(3) F(4) = F(3) + F(2) F(3) = F2) + F(1) F(2) = 1 F(1) = 1 F(3) = 1 + 1 = 2 F(4) = 2 +1 = 3 29
    • Matemática Discreta F(5) = 3 + 2 = 5 F(6) = 5 +3 = 8 Exemplo 4: Uma função pode ser definida por recursividade. Por exemplo, a função MDC calcula o máximo divisor comum de dois inteiros positivos, pode ser definida assim: MDC(x, y) = y se x ≥ y e xmod y = 0 MDC(x, y) = MDC(y,x) se x < y MDC(x, y) = MDC(y, xmod y) caso contrário. O cálculo do MDC de x = 72 e y = 20 se processa dessa maneira: MDC (72, 20) = MDC(20, 12) = MDC (12, 8) = MDC(8, 4) = 4 Exemplo 5. Recursão em programação refere-se a um procedimento ou função que chama a si mesmo, um módulo recursivo. Para alguns tipos de problemas um módulo recursivo possibilita soluções mais simples e “naturais”, conforme exemplo seguinte: {Função recursiva para multiplicação de dois inteiros. Efetua a multiplicação por somas sucessivas.} função multiplica (m, n: inteiro): inteiro {Executa multiplicação utilizando somas sucessivas. Entrada: dois operandos m e n e assume que n > 0 Saída: Retorna m * n inicio {multiplica} se n = 1 então multiplica : = m senão multiplica : = m + multiplica (m , n –1); fim {multiplica} Observação: Para definir um módulo recursivo, precisamos identificar dois elementos: o passo recursivo e a condição de parada. No exemplo citado, a condição de parada é satisfeita quando n = 1, enquanto o passo recursivo aparece na linha “multiplica: = m + multiplica (m, n – 1)” onde aparece a função chamando ela mesma. De um modo geral, um módulo recursivo segue o algoritmo seguinte: 30
    • Matemática Discreta se <condição de parada é satisfeita> então Resolva senão Divida o problema num caso mais simples utilizando recursão. No exemplo acima, qual o valor de saída para m = 5 e n = 4? multiplica(5,4) = 5 + multiplica(5,3) multiplica(5,3) = 5 + multiplica(5,2) multiplica(5,2) = 5 + multiplica(5,1) multiplica(5,1) = 5 multiplica(5,2) = 5 = 5 = 10 multiplica(5,3) = 5 + 10 = 15 multiplica(5,4) = 5 + 15 = 20 Exemplo 6. Forneça uma definição recursiva para cada uma dasseguintes sequências: a) 7, 97, 997, 9997, ... b) sequência T(n) de números triangulares: T(1) = 1 T(2) = 3 T(3) = 6 T(4) = 10 n=1 n=2 n=3 n=4 c) 231 é um número triangular? d) Quais os números triangulares entre 200 e 300? a) A seqüência 7, 97, 997, 9997, ... tem termo geral A(n) = 10n – 3,com n ≥ 1. Logo, podemos escrever A(n-1) = 10n-1 -7, de modo que: 10 . A(n-1) = 10(10n-1 – 3) = 10n – 30 = (10n – 3) - 27 = A(n) – 27. Assim, A(n) = 10.A(n-1) + 27 para n ≥ 2, A(1) = 7 é a definiçãorecursiva da seqüência. 31
    • Matemática Discreta b) Observe que T(1) = 1, T(2) = T(1) + 2, T(3) = T(2) + 3, logo T(n) = T(n-1) + n , para n ≥ 2. A definição recursiva é T(1) = 1, T(n) = T(n-1) + n, n ≥ 2. n2 + n c) Uma fórmula fechada para T(n) é T(n) = para n ≥ 1 (Prove). 2 Assim, para 231 seja um número triangular, devemos encontrar n tal n2 + n que 231 = . Isto é, n2 + n - 462 = 0. Resolvendo a equação, 2 −1 ± 1 + 1848 −1 ± 43 temos que n = = . Assim, T(21) = 231. 2 2 d) 231, 253, 276 e 300. Exemplo 7. A função chão f(x) = x associa a cada número real x o maior inteiro menor ou igual a x. Definimos a seqüência T por: T(1) = 1 T(n) = 2 . T ( n/2 ) para n ≥ 2. Vamos calcular recursivamente T(73). T(73) = 2 . T( 73/2 ) = 2 . T(36) = T(36) = 2 . T ( 36/2 ) = 2 . T(18) = T(18) = 2 . T ( 18/2 ) = 2 . T(9) T(9) = 2 . T ( 9/2 ) = 2 . T (4) T(4) = 2 . T ( 4/2 ) = 2 . T(2) T(2) = 2 . T ( 2/2 ) = 2 . T(1) T(1) = 1 T(2) = 2 . 1 = 2 T(4) = 2 . 2 = 4 T(9) = 2 . 4 = 8 T(18) = 2 . 8 = 16 T(36) = 2 . 16 = 32 T(73) = 2 . 32 = 64 Exemplo 8. Considere o seguinte algoritmo recursivo em C que 32
    • Matemática Discretaordena os elementos de uma lista L= [L(1), L(2), L(3), ... , L(j)] onde j éo comprimento da lista:Lista ORD(lista L, int J) if (J == 1) { return L; A lista está ordenada, imprima a lista. } else if (J > 1) { Procure o índice I entre 1 e J do maior elemento tal que L(I) > L(J) Troque L(I) por L(J) return ORD(L, J-1); } Simule a saída para a entrada L= [2, 7, 4, -3, 8, 5] e j = 6 Solução: ORD([2, 7, 4, -3, 8, 5], 6) = [2, 7, 4, -3, 5, 8] ORD([2, 7, 4, -3, 5, 8], 5) = [2, 5, 4, -3, 7, 8] ORD([2, 5, 4, -3, 7, 8], 4) = [2, -3, 4, 5, 7, 8] ORD([2, -3, 4, 5, 7, 8], 3) = [2, -3, 4, 5, 7, 8] ORD([2, -3, 4, 5, 7, 8], 2) = [-3, 2, 4, 5, 7, 8] ORD([2, -3, 4, 5, 7, 8], 1) = [-3, 2, 4, 5, 7, 8] Exemplo 9. Considere a função F definida no conjunto dos númerosnaturais do seguinte modo: F(1) = 1 F(n) = n + F(n-1) para n ≥ 2. Vamos calcular F(5). F(5) = 5 + F(4) = 5 + 4 + F(3) = 5 + 4 + 3 + F(2) = 5 + 4 + 3 + 3 + 2 + F(1) =5+4+3+2+1 = 5 + 4 + 3 + 2 + 1 = 15. Você percebeu que F(n) é a soma de todos os números inteirospositivos menores ou iguais a n? n Assim, F(n) = ∑ i = 1+ 2 + 3 + 4 + 5 + ... + n. i =1 33
    • Matemática Discreta Aprenda Praticando - Exercício Proposto 2.1 Chegou a sua vez! Apresentamos vários exercícios sobre recursão. Você deve tentar solucioná-los e caso tenha alguma dificuldade, discuta com seus colegas nos chats que foram formados. Procure orientação dos professores executores e tutores da disciplina nos fóruns de discussão, caso persistam dúvidas. Apresentaremos a seguir resposta dos exercícios de numeração par. 1. Nos exercícios seguintes, calcular o quinto termo das seqüências dadas: a) A(1) = 10, A(n) = A(n-1) + 10, para n ≥ 2. b) A(1) = 1, A(n) = 1 , para n ≥ 2. A.(n − 1) 34
    • Matemática Discreta c) B(1) = 1, B(n) = B(n-1) + n2, para n ≥ 2. d) A(1) = 1, A(n) = A(n-1) + 1 , para n ≥ 2. n e) P(1) = 1, P(n) = n2.P(n-1) + (n-1), para n ≥ 2. f) D(1) = 3, D(2) = 5, D(n) = (n-1).D(n-1) + (n-2).D(n-2), para n ≥ 3. 2. Calcule recursivamente o sexto termo de cada uma dasseqüências definidas abaixo: a) A(1) = 1, A(n) = A(n-1) + 2, n ≥ 2. b) A(1) = 1, A(n) = 3.A(n-1), n ≥ 2. c) A(1) = 2, A(n) = [A(n-1)]2, n ≥ 2. d) A(1) = 91, A(n) = A(n-1) + 9.10n, n ≥ 2. e) A(1) = 3, A(n) = -2.A(n-1), n ≥ 2. f) A(1)= 3, A(n) = 3.A(n-1) + 7, n ≥ 2. 3. Forneça uma definição recursiva para: a) a progressão geométrica com termo inicial 7 e razão 3. b) a progressão aritmética com termo inicial -12 e razão 5. c) o fatorial n!, n ≥ 1. d) o produto de dois números inteiros positivos. e) o MDC de dois números naturais a e b, a < b. f) a seqüência 5, 9, 13, 17, ... g) a seqüência 4, 2, 1 ,½, ¼ , ... h) a seqüência a, 2a + b, 3a + 2b, 4a + 3b, ... i) a seqüência a, 2a - b, 3a - 2b , 4a - 3b, ... j) a seqüência An = 3n - 1 com n > 0 k) a seqüência A(n) = n2 com n > 0 l) a seqüência A(n) = n2 + n + 1 m) a seqüência 1, -1, 1, -1, ... n) a divisão de dois inteiros positivos. 35
    • Matemática Discreta o) a seqüência 1 , 1 + 1 , 1 + 1 + 1 , 1 + 1 + 1 + 1 , ... 0! 0! 1! 0! 1! 2! 0! 1! 2! 3! p) a seqüência 2, 92, 992, 9992, ... 4. Uma quantia de 500 unidades monetárias foi investida em uma conta remunerada a uma taxa de juro composto anual de 10%. Descreva a definição recursiva para P(n), a quantia na conta no início do n-ésimo ano. 5. A seqüência de números 16, 144, ..., 304, ..., ..., 768, 1232, 2000 é uma subseqüência finita obtida da seqüência de Fibonacci. Descubra os termos que estão faltando. 6. Que valor é computado pelo seguinte algoritmo, para um valor de entrada especificado? int F(int n) { if (n == 1) return 1 else return n + 2*F(n-1); } Qual o valor de saída para a entrada n = 6? 7. Que valor é computado pelo seguinte algoritmo, para um valor de entrada especificado? int MDC( int a, int b) { if a = 0 return b else return MDC (bmod a, a) } Qual o valor de saída para a = 20 e b = 72? Qual o valor de saída para a = 232 e b = 432? 8. Que valor é computado pelo seguinte algoritmo, para um valor de entrada especificado? int FIB (int n) { if (n == 0) return 0 else if (n == 1) return 1 36
    • Matemática Discreta else return = FIB(n-1) + FIB(n-2);} Qual o valor de saída para n = 6? 9. A função teto g(x) = x associa a cada real x o menor inteiromaior ou igual a x. Definimos uma seqüência T por: a) T(1)= 1 b) T(n) = 2 . T ( n/2 ) para n ≥ 2. Calcule recursivamente T(85). 10. Definimos a sequência FACT da seguinte forma: FACT (0) = 1. FACT (n+1) = (n+1) . FACT (n), para n ≥ 0. Escreva os seis primeiros termos de FACT. 11. Considere a relação de recorrência dada por: 1 2 Y0 = 1, Yn+1 =  Yn +  , onde n ≥ 0. 2 Yn  Essa relação produz uma seqüência de valores tais que pode serusado para aproximar 2 com qualquer grau de precisão. 12. Considere a seqüência definida recursivamente por: F(1) = 1 e F(n) = 1 , para n > 1. F (n − 1) + 1 a) Ache os valores dos seis primeiros termos dessa seqüência. b) Observe o numerador de cada um dos termos da parte (a). Que seqüência formam? 13. Que valor é computado pelo seguinte algoritmo para um valorde entrada especificado?int Q(int a, int b) { if a < b return 0 else return Q(a-b, b) + 1;} Qual o valor de saída para Q(15,2)? E para Q(5,5)? E Q(5861,7)? 37
    • Matemática Discreta 14. Considere o seguinte algoritmo recursivo: int MAX (int A, int B) { if (A == 0) or (B == 0) return A + B else return MAX(A-1, B-1) + 1; } Calcule o valor de retorno para a entrada A = 7 e B = 13? 15. Considere o seguinte algoritmo recursivo que ordena os elementos de uma lista L= [L(1), L(2), L(3), ... , L(j)] onde j é o comprimento da lista: Lista ORD(lista L, int J) { if (j == 1) return L //A lista está ordenada. Imprima a lista. else if j > 1 //Procure o índice I entre 1 e J do maior elemento tal que L(I) > L(J) //Troque L(I) por L(J) return ORD(L, J-1) } Simule a saída para a entrada L = [10, 7, 9, 5, 0, -5, -2] e j = 7 16. Considere o seguinte algoritmo recursivo. int COMB(int n, int p) { if (n == p) or (p == 0 ) return 1 else return COMB(n-1, p-1) + COMB(n-1, p); } Calcule o valor de saída para a entrada de n = 6 e p = 3. O que calcula COMB para quaisquer inteiros não negativos n e p? 17. As figuras abaixo mostram quantos pedaços obtemos com n cortes numa pizza: 38
    • Matemática Discreta Dê uma definição recursiva para o número de pedaços P(n) emfunção do número de cortes n. Resp. n=1 n=2 n=3 n=4 P(n) = 2 P(n) = 4 P(n) = 7 P(n) = 11 Definição recursiva P(1) = 2 P(n) = P(n-1) + n, para n ≥ 2 18. Forneça uma definição fechada e uma definição recursiva paracada uma das seguintes sequências: a) 9, 99, 999, 9999, ... b) sequência P(n) de números pentagonais: ... n=1 n=2 n=3 n=4 n=5 P(1) = 1 P(2) = 5 P(3) = 12 P(4) = 22 P(5) = 5 19. Ache uma definição fechada (fórmula) para as seguintesseqüências definidas recursivamente por: Resultados importantes que podem ser usados: (a1 + an )n A soma dos termos de uma PA: Sn = 2 a1 (q n − 1) A soma dos termos de uma PG: Sn = q −1 39
    • Matemática Discreta a) S(1) = 1, S(n) = 3.S(n-1) + 1 , n ≥ 2 b) S(1) = 1, S(n) = 2 – S(n-1), n ≥ 2. c) S(1) = 1, S(n) = 3.S(n-1) + n, n ≥ 2 d) S(1) = 0, S(2) = 1, S(n)= S (n − 1) + S (n − 2) , n ≥ 2 2 20. Considere o seguinte algoritmo recursivo: Função F(n: inteiro): inteiro Se n < 5 então Retorne 3*x Senão Retorne 2*F(n-1) + 7 Fim Se Fim Calcular F(4), F(5), F(12). 21. Considere o seguinte algoritmo recursivo: Função F(n: inteiro, m: inteiro): inteiro Se n < m então Retorne -3 Senão Retorne F(n-m, m+3) + m Fim Se Fim Calcular F(2,7), F(5,3) e F(15,3). 40
    • Matemática Discreta http://www.interaula.com/matweb/alegria/fibon//seqfib1.htm Respostas dos Exercícios 2.12. a) 11 b) 243 c) 4.294.967.296 d) 9999991 e) -64 f) 523 41
    • Matemática Discreta 4. P(0) = 500 P(n) = 1,1.P(n-1), n ≥ 1. 6. 187 8. 8 10. 1, 2, 6, 24, 120, 720 12. a) 1, 1 , 2, 3, 5, 8 2 3 5 8 13 b) Formas a seqüência de Fibonacci. 14. MAX(7, 13) = MAX(6, 12) + 1 MAX(6, 12) = MAX(5, 11) + 1 MAX(5, 11) = MAX(4,10) + 1 MAX(4, 10) = MAX(3,9) + 1 MAX(3, 9) = MAX(2,8) + 1 MAX(2, 8) = MAX(1, 7) + 1 MAX(1,7) = MAX(0, 6) + 1 MAX(0,6) = 6 MAX(1,7) = 7 MAX(2, 8) = 8 MAX(3, 9) = 9 MAX(4, 10) = 10 MAX(5, 11) = 11 MAX(6, 12) = 12 MAX(7, 13) = 13 A função MAX retorna o maior valor entre A e B. 16. a) 20 b) O algoritmo retorna C 18. a) S(n) = 10n – 1, para n ≥ 1 é uma definição fechada para a seqüência 9, 99, 999, 9999, ... 42
    • Matemática Discreta Uma definição recursiva é: S(1) = 1, S(n) = 10.S(n-1) + 9, para n ≥2 b) Observe que: P(1) = 1 P(2) = 5 = 1 + 4 = P(1) + 4 P(3) = 12 = 1 + 4 + 7 = P(2) + 7 P(4) = 22 = 1 + 4 + 7 + 10 = P(3) + 10 P(5) = 35 = 1+ 4 + 7 + 10 + 13 = P(4) + 13 ... P(n) = P(n-1) + 3n – 2, pois a seqüência 1, 4, 7, 10, 13, ... é uma PA de razão 3 e termo inicial 1, de modo que an = 1 + (n-1).3 = 1 + 3n - 3 = 3n - 2 Assim, a definição recursiva é: P(1) = 1, P(n) = P(n-1) + 3n -2 , para n ≥ 2 A definição fechada é obtida análoga: P(1) = 1 P(2) = 5 = 1 + 4 P(3) = 12 = 1 + 4 + 7 P(4) = 22 = 1 + 4 + 7 P(5) = 35 = 1+ 4 + 7 + 10 + 13 ... P(n) = 1 + 4 + 7 + 10 + 13 + ... (3n-2). Observe que P(n) é a soma dos termos de uma P.A. de termo inicial 1 e razão 3, logo P(n) = (1 + 3n − 2).n (3n − 1)n 3n 2 − n = = , para n ≥ 1. 2 2 2 20. F(4) = 12 F(5) = 2.F(4) + 7 = 2(12) + 7 = 31 F(6) = 2.F(5) + 7 = 62 + 7 = 69 43
    • Matemática Discreta Conclusão Você conheceu no segundo capítulo deste fascículo o método da recursão. Ele é usado na definição de funções, seqüências, algoritmos e diversos outros procedimentos computacionais. Aprendeu como formular um algoritmo recursivo em aplicações da informática e computação. Saiba Mais Você poderá aprender muito mais sobre recursão, consultando os seguintes livros e sites: GERSTING, Judith L. Fundamentos Matemáticos para a Ciência da Computação. Tradução Valéria de Magalhães Iorio. Rio de Janeiro: LTC, 2004. LIPSChUTZ, Seimour; LIPSON, Marc Lars. Teoria e Problemas de Matemática Discreta. Porto Alegre: Bookman, 2004. SChEINERMAN, Edward R. Matemática Discreta: uma introdução. Tradução de Alfredo Alves de Farias. São Paulo: Pioneira Thomson Learning, 2003. 44
    • Matemática DiscretaCapítulo 03 - Teoremas eTécnicas de Provas O que é um teorema? Você lembra o Teorema de Pitágoras, não é? A figura acima ilustramuito bem o que esse teorema afirma: A soma dos quadrados doscatetos de um triângulo retângulo é igual ao quadrado da hipotenusa.A figura acima ilustra uma prova desse teorema. Definimos um teorema como qualquer afirmação declarativasobre matemática, para a qual existe uma prova. Afirmações cujaveracidade não se pode garantir são chamadas de conjecturas. Os teoremas em geral são expressos sob a forma “se P então Q”(P → Q) onde P e Q podem representar sentenças compostas. Naafirmação “se P então Q”, P é chamado de hipótese e Q é a conclusão.Podemos escrever teoremas também na forma P ↔ Q onde se lê: “Pse e somente se Q”. Recorde que P ↔ Q é equivalente a (P → Q) ∧(Q → P). Por exemplo, considere a afirmação “Se x e y são números paresentão x + y é também um número par”. Aqui, a hipótese P é “x e y sãonúmeros pares” e a conclusão Q é “a soma x + y é um número par”.O teorema afirma que, se x e y são ambos pares então, x + y é umnúmero par. A sentença não exclui a possibilidade de x + y ser parquando x ou y não for par. Na verdade, se x e y não são pares entãox + y é par. A única circunstância em que a afirmação é falsa é quandoP é verdadeira (x e y pares) e Q é falsa (x + y ímpar). 45
    • Matemática Discreta Numa afirmação P → Q podemos ter a condição P verdadeira ou falsa e a condição Q verdadeira ou falsa. Se a afirmação P → Q é verdadeira temos o seguinte: Hipótese P Conclusão Q P→Q V (x = 2, y = 4) V (x + y = 6) possível V (x = 2, y = 4) F (x + y = 7) impossível F (x = 3, y = 5) V (x + y = 8) possível F (x = 2, y = 5) F (x + y = 7) possível Exemplo 1. Como podemos escrever afirmações sob a forma “Se P então Q”? Veja os exemplos: a) O produto de um inteiro ímpar e um inteiro par é par. Se x é um inteiro ímpar e y é um inteiro par então x.y é um inteiro par. b) O quadrado de um inteiro ímpar é ímpar. Se x um inteiro ímpar então x2 é impar. c) O quadrado de um inteiro primo não é primo. Se x é um número primo então x2 não é primo. d) A soma de um inteiro par com um ímpar é par. Se x é par e y é ímpar então x + y é ímpar. Exemplo 2. Suponha uma conjectura P → Q e queremos mostrar que é falsa. Devemos encontrar um contra-exemplo, ou seja, uma situação em que P é verdadeira e Q é falsa. No caso da afirmação “Se x é um número primo então x é ímpar”. Claramente trata-se de uma proposição falsa. Basta escolher x = 2. No exemplo acima, vimos que quando queremos refutar uma conjectura, um contra-exemplo é suficiente. Mas para provar uma afirmação, em geral, muitos exemplos não provam a suposição. A única exceção dessa situação ocorre quando uma afirmação é feita sobre um conjunto finito. Nesse caso, podemos verificar se a proposição é verdadeira para todos os elementos do conjunto. No caso da asserção: “Se um inteiro entre 2 e 13 é divisível por 4 então também é divisível por 2”, ela pode ser provada verdadeira quando mostramos que é verdadeira para cada um dos números inteiros entre 2 e 13. É claro que não podemos usar o mesmo procedimento para provar que “todo número inteiro divisível por 4 também é divisível por 2”. 46
    • Matemática Discreta3.1 Estratégias de Provas Diversas formas podem ser usadas para provar uma asserção dotipo “Se P então Q”. Abordaremos algumas delas.3.1.1 Prova Direta Quando você quer provar que uma proposição P → Q é verdadeiradeve-se supor que a hipótese P é verdadeira e deduzir que a conclusãoQ é verdadeira. Exemplo 3. Provar: “Se x e y são inteiros pares então x + y é par”. Prova: Suponha que x e y são inteiros pares (Hipótese). Isto significa quex e y são ambos divisíveis por 2. Logo, existem inteiros m e n tais quex = 2.m e y = 2.n. Como x + y = 2 . m + 2 . n = 2 . (m + n), concluímosque existe um inteiro c = m + n tal que x + y = 2.c. Portanto x + y é divisível por 2. Logo, x + y é par (Conclusão). Exemplo 4. “Se um inteiro é divisível por 6 então ele também édivisível por 3”. Prova: Seja x um inteiro divisível por 6. Então existe um inteiro k tal que x= 6 . k. Pondo 6 = 3 . 2, podemos escrever x = (3 . 2) . k = 3 . (2 . k). Como 2 . k é um inteiro e escrevendo 2 . k = m, temos que x = 3.m,com m inteiro. Logo, x é divisível por 3. Exemplo 5. Se x é um inteiro par então y = x + 5 é inteiro ímpar. Prova: Assumimos que x é um inteiro par. Então existe um inteiro n talque x = 2 . n. Como y = x + 5 então y = 2 . n + 5 = 2n + 4 + 1 = 2 . (n+2) + 1.Pondo n + 2 = m, temos que y = 2 . m + 1, onde m é um inteiro.Conseqüentemente, y é um número ímpar. Exemplo 6. A soma de um inteiro com o seu quadrado é um númeropar. Pondo na forma P → Q temos: Se x é um número inteiro então x+ x2 é par. 47
    • Matemática Discreta Prova: Seja x um número inteiro. Se x é par, então x = 2 . n e x2 = (2 . n)2 = 4 . n2, de modo que x + x2 = 2 . n + 4 . n2 = 2(n + 2n2). Pondo m = n + 2n2, temos que x + x2 = 2m. Conseqüentemente x + x2 é par. Se x é ímpar, x = 2.n + 1 para algum inteiro n. Assim, x + x2 = 2n + 1 +(2n + 1)2 = 2.n + 1 + 4n2 + 4.n + 1 = 4n2 + 6.n + 2 = 2(2n2 + 3n + 1). De modo que x + x2 = 2.m, onde m é o inteiro 2n2 + 3n + 1. Conseqüentemente x + x2 é par. 3.1.2 Prova Indireta Você deve lembrar que no fascículo 1 provamos algumas equivalências entre proposições. Uma delas foi que P → Q é logicamente equivalente a ¬Q → ¬P. A tabela seguinte mostra isso! P Q P→Q ¬Q ¬P ¬Q→¬P V V V F F V V F F V F F F V V F V V F F V V V V Assim, uma segunda estratégia de prova tem inicio quando assumimos que a conclusão Q é falsa e, então mostrar que a hipótese P é falsa. A afirmação ¬ Q → ¬ P é chamada de contra-positiva da afirmação P → Q. A prova indireta é também chamada de contra-positiva. Exemplo 7. Formularemos contra-positiva ¬ Q → ¬ P das seguintes proposições P → Q: a) P → Q: Se x é ímpar, então x2 é ímpar. ¬ Q → ¬ P: Se x2 não é ímpar então x não é ímpar. Equivalentemente podemos escrever: Se x2 é par então x é par. b) Se n é um inteiro ímpar então 3n + 5 é um inteiro par. P → Q: Se x é inteiro ímpar então 3x + 5 um inteiro é par. Exemplo 8. Use a prova indireta para provar a seguinte proposição P → Q: Se x é um número par, então x + 3 é ímpar. 48
    • Matemática Discreta A contra-positiva ¬ Q → ¬ P é “Se x +3 não é ímpar, então x não épar”. Isto é, se x + 3 é par, então x é ímpar. Inicialmente, suponha que x + 3 é par. Desse modo existe n∈Ztal que x + 3 = 2n. Assim, x = 2n – 3 = 2n – 4 + 1 = 2(n-2) + 1.Conseqüentemente x = 2.m + 1, onde m = n -2 é inteiro. Logo x éímpar. Exemplo 9. Prove pela contra-positiva que, se o quadrado de uminteiro é par então x é par. A contra-positiva de “n2 par → n par ” é “n ímpar → n2 ímpar”. Assuma que n = 2x + 1 com x inteiro. Então n2 = (2x + 1)2 = 4x2 + 4x + 1 = 2(2x2 + 2x) + 1 = 2.p + 1, ondep = 2x2 + 2x é inteiro. Assim, n2 é ímpar.3.1.3 Prova por contradição (Redução ao absurdo) Suponhamos que queremos provar P → Q. Sabemos, porém, que(P ∧ ¬Q) → Falso. Assim, para provarmos P → Q, admitimos P e nãoQ e mostraremos que isso implica algo falso. Veja tabela-verdadeabaixo: P Q P→Q ¬Q P ∧ ¬Q F (P ∧ ¬Q) → Falso V V V F F F V V F F V V F F F V V F F F V F F V V F F V Exemplo 10. Se x é um número par, então x + 3 é ímpar. Aqui, xé um número par é a hipótese P e a conclusão Q é x + 3 é ímpar. Admitimos P e não Q. Isto é, suponhamos que x é um número pare que x + 3 é par. Então, x = 2.n e x + 3 = 2.m para inteiros n e m. Assim, por um ladox = 2.n e por outro x = 2.m – 3 = 2.m – 4 + 1 = 2.(m-2) + 1, isto é x épar e x é ímpar, o que é uma contradição. Assim x + 3 é impar. Exemplo 11. O conjunto dos números primos é infinito. Suponha que o conjunto dos números primos seja finito. Entãoexistem n primos, a saber: p1, p2, p3, ... , pn. 49
    • Matemática Discreta Considere o número x = p1, p2, p3, ... , pn + 1. O número x não é divisível por nenhum dos primos p1, p2, p3, ... , pn (deixa resto 1). Logo, x é mais um primo além dos n primos existente inicialmente. O que é uma contradição. Logo, é verdadeira a proposição de que existem infinitos primos. Aprenda Praticando - Exercício Proposto 3.1 1. Forneça um contra-exemplo para: a) Se x é um inteiro par e y é um inteiro ímpar então o produto x.y é impar. b) Se um número inteiro é primo então o seu quadrado é primo. 2. Forneça uma prova direta das seguintes afirmações: a) A soma de dois inteiros ímpares é par. b) A soma de um inteiro ímpar e um par é ímpar. c) O produto de dois inteiros consecutivos é par. d) O quadrado de um inteiro par é divisível por 4. 3. Dê uma prova direta para as seguintes proposições ou apresente um contra-exemplo. a) O produto de quaisquer três inteiros consecutivos é par. b) A soma de quaisquer três inteiros consecutivos é par. c) O produto de um inteiro pelo seu quadrado é par. d) A soma de um inteiro com o seu cubo é par. e) Se x é um inteiro primo então x + 4 é primo. f) Se a e b são inteiros tais que a divide b e b divide a então a = b. g) Se x é um inteiro positivo então x2 + x + 41 é primo. 4. Prove por contradição que: a) A soma de dois inteiros negativos é um inteiro negativo. 1 b) Se x é um número real tal que x > 0 então >0 x 50
    • Matemática Discreta c) Se a soma de dois números primos é primo então um dos primos deve ser 2. d) Se x é diferente de zero, então x2 é positivo. e) Se n é um inteiro tal que 3.n + 2 é par, então n é par. 5. Prove ou dê um contra-exemplo: a) Se x e y são números irracionais então o produto x.y é irracional. b) Se n é um inteiro positivo qualquer, então 2n + 1 é primo. c) Se n é um inteiro positivo, então n2 – 79n + 1601 é primo. 6. Prove que o quadrado de um inteiro par é um inteiro par,usando: a) prova direta. b) prova indireta c) prova por contradição. 7. Prove que se n é um inteiro ímpar então n3 + 5 é um inteiro par,usando: a) prova direta b) prova por contradição c) prova pela contra-positiva. 8. Prove ou dê um contra-exemplo: Se x e y são inteiros primos então x.y + 1 é primo Conclusão Ao final deste terceiro capitulo, você aprendeu sobre técnicas deprovas de teoremas. Dentre elas, destacamos a prova direta, a provapela contra-positiva, prova por contradição e aprendeu a fornecer umcontra-exemplo de uma proposição falsa. 51
    • Matemática Discreta Saiba Mais Caso você queira aprofundar seus conhecimentos sobre técnicas de provas, consulte os seguintes livros. GERSTING, Judith L. Fundamentos Matemáticos para a Ciência da Computação. Tradução Valéria de Magalhães Iorio. Rio de Janeiro: LTC, 2004. LIPSChUTZ, Seimour; LIPSON, Marc Lars. Teoria e Problemas de Matemática Discreta. Porto Alegre: Bookman, 2004. SChEINERMAN, Edward R. Matemática Discreta: uma introdução. Tradução de Alfredo Alves de Farias. São Paulo: Pioneira Thomson Learning, 2003. 52
    • Matemática DiscretaCapítulo 04 - Princípio deIndução Finita O Princípio de Indução Finita é uma técnica freqüentementeusada para demonstrar proposições sobre números inteiros positivosdo tipo ∀n∈N*, n∈N* → P(n), onde P(n) é uma propriedade relativaaos números inteiros positivos n. Algumas vezes nos defrontamos com afirmações envolvendo osnúmeros naturais, tais como: 1. P(n) : A soma dos n primeiros números ímpares é n2. “1 + 3 + 5 + ... + (2n-1) = n2” 2. P(n): A soma dos n primeiros números inteiros positivos é n(n + 1) . 2 n(n + 1) “1 + 2 + 3 + 4 + ...+ n = ” 2 3. P(n): 22n - 1 é divisível por 3, ∀n ≥ 1, n∈N Para verificar se tais afirmações são verdadeiras para qualquerinteiro n ≥ 1, não basta “testar” a veracidade das fórmulas substituindovalores específicos para n. Por mais que as igualdades ganhemcredibilidade, não poderemos garantir sua validade para algum valorde n que não tenha sido testado. Vejamos alguns exemplos: Exemplo 1. Calculando o valor numérico da expressão P(n) = n2 –n + 17 em vários casos particulares de números inteiros positivos n 53
    • Matemática Discreta os resultados encontrados são sempre números primos? Vejamos: Para n = 1, temos P(1) = 12 – 1 + 17 = 17 (primo) Para n = 2, temos P(2) = 22 – 2 + 17 = 19 (primo) Para n = 3, temos P(3) = 9 – 3 + 17 = 23 (primo) Para n = 4, temos P(4) = 16 – 4 + 17 = 29 (primo) ... Podemos afirmar que, para todo número inteiro positivo n, P(n) é um número primo? É claro que não! Continuando o cálculo até n = 16 encontraremos sempre números primos, porém, para n = 17 encontramos que P(17) = 172 - 17 + 17 = 172 = 17 . 17 que não é primo, pois é divisível por 17. Então, P(n) = n2 – n + 17 não é primo para todo inteiro positivo n. Exemplo 2. Ao somar os n primeiros números ímpares positivos. O que encontramos? Se tentarmos valores pequenos de n obtemos: S1 = 1 = 12 S2 = 1 + 3 = 22 S3 = 1 + 3 + 5 = 32 S4 = 1 + 3 + 5 + 7 = 42 S5 = 1 + 3 + 5 + 7 + 9 = 52 S6 = 1 + 3 + 5 + 7 + 9 + 11 = 62 S7 = 1 + 3 + 5 + 7 + 9 + 11 + 13 = 72 É fácil observar que obtemos quadrados como soma. Na verdade, pelos exemplos, a soma dos n primeiros números ímpares positivos é Sn = 1 + 3 + 5+ + 7 + ... + (2n-1) = n2. Mas a observação é válida apenas para os sete primeiros valores de n. Será que isso é válido para todos os valores de n? Como podemos provar essa afirmação? 54
    • Matemática Discreta A demonstração de que uma propriedade P, relativa aos númerosnaturais, é verdadeira para todo numero natural n ≥ 1, pode ser feitapelo método que chamamos de Princípio de Indução Finita, que podeser enunciado assim: Seja P(n) uma proposição que queremos provar que é verdadeira para todonúmero natural n ≥ 1. Se provarmos que: a) P(1) é verdadeira. b) Se P(k) verdadeira implica que P(k+1) é verdadeira, ∀k ≥ 1 então, a proposição P(n) é verdadeira, para todo inteiro n ≥ 1. Para melhor entender o princípio de indução finita vamos utilizar ametáfora do dominó. Se você tem uma longa fila de dominós em pé evocê puder assegurar que: 1. O primeiro dominó cairá quando se aplica uma força suficiente na peça do dominó. 2. Sempre que uma peça de domingo cair, a peça vizinha também cairá. Então você pode concluir que todas as peças de dominó cairão. Como é na prática o principio de indução finita? Alguns exemplosmostrarão isso. 55
    • Matemática Discreta Exemplo 3. Queremos provar que a proposição P(n) seguinte é verdadeira para todo numero natural n ≥ 1 P(n): 1 + 3 + 5 + 7 ... + (2n - 1) = n. Parte 1. Devemos provar que P(1) é verdadeira, isto é: 1 = 12 1=1 Parte 2. Supondo que P(n) é verdadeira para n = k, devemos mostrar que P(n) é verdadeira para n = k + 1. P(k) verdadeira significa que 1 + 3 + 5 + ... + (2k-1) = k2. Devemos mostrar que P(k+1) é também verdadeira, isto é, devemos mostrar que: P(k+1): 1 + 3 + 5 + ... + 2k-1 + 2(k+1) -1 = (k+1)2 Como 1 + 3 + 5 + ... + 2k-1 + 2(k+1) -1 = [1 + 3 + 5 + ... + 2k -1] + 2(k+1) -1 = k2 + 2k +1 = (hipótese) (k+1)2 Logo, pelo Princípio de Indução Finita, a fórmula vale para todo n ≥ 1. n(n + 1) Exemplo 4. Provar que 1 + 2 + 3 + 4 + ...+ n = , ∀n ≥ 1. 2 Parte 1. Vamos provar que P(I) é verdadeira. De fato, 1.(1 + 1) 1.(2) 1= ⇒1= ⇒ 1 = 1. 2 2 Parte 2. Suponha que P(n) seja verdadeira para n = k, isto é, que 1 k (k + 1) + 2 + 3 + 4 + ... + k = . 2 Queremos provar que P(k+1) é verdadeira, isto é, que 1 + 2 + 3 + 4 (k + 1)(k + 2) + ... + k + (k+1) = . 2 Como 1 + 2 + 3 + 4 + ... + k + (k+1) = [1 + 2 + 3 + 4 + ... + k] + (k+1) = 56
    • Matemática Discreta k (k + 1) + (k+1) = (Por hipótese) 2 k (k + 1) + 2(k + 1) = 2 (k + 1)(k + 2) 2 Logo, pelo Princípio de Indução Finita, a fórmula vale para todo n≥ 1. Exemplo 5. Mostre que a proposição P(n): 22n - 1 é divisível por 3,∀n ≥ 1, n∈N é verdadeira. Parte 1. Devemos provar que P(1) é verdadeira, isto é, que para n = 1, 22.1 – 1 é divisível por 3 (múltiplo de 3). De fato, 22.1 – 1 = 22 – 1 = 4 – 1 = 3 (múltiplo de 3). Parte 2. Suponha que P(n) seja verdadeira para n = k, isto é, que 22k - 1 é múltiplo de 3. Então 22k - 1 = 3.m para algum inteiro m. Quero provar que P(n) é verdadeira para n = k+1. Ou seja, queroprovar que 22(k+1) - 1 é múltiplo de 3. Como 22(k+1) - 1 = 22k+2 - 1 = 22k . 22 – 1 = 22k . 4 - 1 = 22k . 3 + 22k - 1 = 3. 22k + 22k -1 = 3. 22k + 3.m = 3(22k + m) múltiplo de 3. Logo, pelo Princípio de Indução Finita, a fórmula vale para todo n≥ 1. Exemplo 6. P(n): 2n ≥ n+1, ∀n∈N Parte 1. Para n = 0, tem-se que: 20 ≥ 0+1 1 ≥ 1 verdadeiro. Parte 2. Devemos mostrar que P(n) é verdadeira para n = k+1 sempre que P(n) é verdadeira para n = k. Ou seja, que 2k+1 ≥ k+2 sempre que 2k ≥ k +1 Ora, 2k+1 = 2. 2k ≥ 2(k+1) = (hipótese) 2k + 2 ≥ k + 2 57
    • Matemática Discreta Logo, pelo Princípio de Indução Finita, a fórmula vale para todo n ≥1 Exemplo 7. Seja S(n) o termo geral de uma seqüência tal que S(1) = 2 e S(n) = 3*S(n-1) - 1 para n > 1. a) Escreva os cinco primeiros termos de S. 3n + 1 b) Mostre por indução que S(n) = 2 Solução: a) S(1)= 2, S(2) = 3.S(1) - 1 = 3.2 - 1 = 5, S(3) = 3.S(2) - 1 = 3.5 - 1 = 14, S(4) = 3.S(3) - 1 = 3.14 - 1 = 41, S(5) = 3.S(4) - 1 = 3.41 - 1 = 122 3n + 1 b) Queremos provar que S(n) = 2 31 + 1 4 Parte 1. Para n = 1, temos que S(1) = = = 2. 2 2 Parte 2. Suponha que S(k) = 3k + 1 , queremos provar que S(k+1) 2 3k+1 + 1 = . 2 Ora, pelo passo recursivo temos que k S(k+1) = 3.S(k) – 1 = 3. 3 +1 - 1 2 3k +1 + 3 3k +1 + 3 − 2 3k +1 + 1 = −1 = = . 2 2 2 Exemplo 8. Prove por indução matemática que 23n – 1 é divisível por 7, ∀n ≥ 1, n∈N. Parte 1. É claro que para n = 1, 23.1 – 1 = 8 – 1 = 7 é divisível por 7. Parte 2. Suponha que para um inteiro k ≥ 1, 23k – 1 seja divisível por 7, ou seja, que existe inteiro m tal que 23k – 1 = 7m. Queremos provar que 23(k+1) – 1 é divisível por 7, isto é, que existe inteiro p tal que 23(k+1) – 1 = 3p. 58
    • Matemática Discreta De fato, 23(k+1) – 1 = 23k + 3 – 1 = 23k. 23 – 1 = 23k.8 - 1 = (23k. 7) + (23k – 1) Como 23k. 7 é divisível por 7 e 23k – 1 é divisível por 7 por hipótese,então 23(k+1) – 1 é divisível por 7, tendo em vista ser soma de doisnúmeros divisíveis por 7. Assim, podemos escrever 23(k+1) – 1 = 23k. 7 + 7m = 7(23k + m) = 7p, com p = 23k + m. Exemplo 9. Uma seqüência F(n) é definida recursivamente assim:F(1) = 3, F(n) = F(n-1) + n, para n>1. a) Quais os cinco primeiros termos de F? n2 + n + 4 b) Use indução para provar que F(n) = ,n≥1 2 a) F(1) = 3, F(2) = F(1) + 2 = 3 + 2 = 5, F(3) = F(2) + 3 = 5 + 3 = 8 F(4) = F(3) + 4 = 8 + 4 = 12, F(5) = F(4) + 5 = 12 + 5 = 17. n2 + n + 4 b) F(n) = ,n≥1 2 Queremos provar que a fórmula dá os termos da seqüência 3, 5,8, 12, 17, ... 12 + 1 + 4 6 Parte 1. Para n = 1 temos que F(1) = = = 3, a 2 2 fórmula está correta. k2 + k + 4 Parte 2. Suponha que F(k) = , queremos provar que 2 (k + 1)2 + (k + 1) + 4 F(k+1) = . 2 Ora, pela definição recursiva temos que F(k+1) = F(k) + k+1, logo,podemos escrever: k2 + k + 4 F(k+1) = +k+1 2 59
    • Matemática Discreta k 2 + k + 4 + 2k + 2 k 2 + 2k +1+ k +1+ 4 = + 2 2 (k +1)2 + (k +1) + 4 + . 2 Está completa a prova por indução. Aprenda Praticando - Exercício Proposto 4.1 1. Nos exercícios seguintes, use a indução matemática para demonstrar que os resultados abaixo indicados são válidos para qualquer inteiro positivo n. (n ≥ 1) a) 2 + 6 + 10 + ... + (4n - 2) = 2n2 b) 2 + 4 + 6 + ... + 2n = n(n + 1) c) 1 + 5 + 9 + ... + (4n - 3) = n(2n - 1) 60
    • Matemática Discreta n(n +1) n(n +1)(n + 2) d) 1 + 3 + 6 + ... + = 2 6 e) 4 + 10 + 16 + ... + (6n - 2) = n(3n + 1) 5n(n +1) f) 5 + 10 + 15 + ... + 5n = 2 n(n +1)(2n +1) g) 12 + 22 + 32 + ... + n2 = 6 n2 (n +1)2 h) 13 + 23 + 33 + ... + n3 = 4 n(2n −1)(2n +1) i) 12 + 32 + 52 + ... + (2n - 1)2 = 3 n(n +1)(2n + 7) j) 1.3 + 2.4 + 3.5 + ... + n(n+2) = 6 k) 1 + 1 + 1 + ... + 1 = n 1.2 2.3 3.4 n(n +1) n +1 1 + 1 + 1 + ... + 1 n l) = 1.3 3.5 5.7 (2n −1).(2n +1) 2n +1 m) 1.1! + 2.2! + 3.3! + ... + n.n! = (n+1)! - 1 2. No exercício anterior, escreva sob a forma de somatório, oprimeiro membro de cada uma das igualdades. 3. Prove por meio de indução matemática que as sentençasseguintes são verdadeiras para todo inteiro n ≥ 1. a) 32n + 7 é divisível por 8 b) 7n - 2n é divisível por 5 c) 13n - 6n é divisível por 7 d) 25n + 1 + 5n + 2 é divisível por 27 4. Considere a seqüência S(n) definida recursivamente por: S(1) = 1, S(n) = 2*S(n-1) + 1 para n > 1. Mostre por indução que S(n) = 2n – 1, para n ≥ 1. 5. Seja S(n) o termo geral de uma seqüência tal que: S(1) = 2 e S(n) = 3*S(n-1) – 1 para n > 1. a) Escreva os cinco primeiros termos de S 3n + 1 b) Mostre por indução que S(n) = 2 61
    • Matemática Discreta n 1 1  6. Descobrir e provar por indução uma fórmula para An =   com n ≥ 1. 0 1 7. A seqüência D(n) é definida assim: D(1) = 2, D(2) = 5, D(n) = 5.D(n-1) - 6.D(n-2), para n > 2. a) Escreva os cinco primeiros termos da seqüência. b) Mostre por indução que D(n) = 2n-1 + 3n-1 para n ≥ 1. Respostas dos Exercícios 4.1 2. n n a) ∑ (4i − 2) i =1 c) ∑ (4i − 3) i =1 n n e) ∑ (6i − 2) g) ∑i2 i =1 i =1 n n 1 i) ∑ (2i − 1) i =1 2 k) ∑ i(i + 1) i =1 n m) ∑ i.(i !) i =1 4. Para provar que S(n) = 2n –1, para n ≥ 1, provaremos inicialmente que a fórmula é válida para n = 1. De fato S(1) = 21 – 1 = 1. Agora, suponha que a fórmula é válida para um inteiro k ≥ 11. Isto é, S(k) = 2k – 1. Queremos provar que S(k+1) = 2k+1 – 1. Ora, pelo passo recursivo, temos que S(k+1) = 2.S(k) + 1 = 2. (2k – 1) + 1 = 2k+1 + 2 – 1 = 2k+1 + 1. 1 1 1  1 1  6. A1 =   = , 0 1 0 1 1 1  1 1  1 2  A2 =  . 0 1 0 1 = 0 1 ,  62
    • Matemática Discreta 1 2  1 1  1 3 A3 = 0 1 . 0 1 = 0 1  ...       1 n Conjectura: An =  , ∀n ≥ 1 0 1  1 1  Prova por indução: Para n = 1, A =  1 . 0 1 1 k  1 k + 1  1  Suponha Ak =   , queremos provar que Ak+1 = . 0 1  0  1 k + 1 1 k  1 1  1 k + 1 =   .  = 1  1  Ora, A k+1 =A .A=  k . 0  0 1  0 1 0  1 n Está provado por indução que An =  , ∀n ≥ 1. 0 1  Saiba Mais O Princípio de Indução Finita é usado também na correção dealgoritmos. Por exemplo, queremos saber se o procedimento descritopelo fluxograma abaixo termina para quaisquer que sejam os valoresdos dados de entrada. O algoritmo de Euclides é usado no cálculo do Máximo DivisorComum entre dois inteiros positivos m e n, conforme figura seguinte. 63
    • Matemática Discreta Mostrar que o procedimento acima termina para quaisquer valores dos dados de entrada, equivale a mostra que “Se no passo 2 do procedimento os valores de x e y são inteiros, então os passos 2, 3 e 4 serão executados apenas um número finito de vezes, com os cálculos terminando no passo 4”. Faremos a prova por indução sobre o valor de y. Parte 1. Se y = 1, então após o passo 2, r = 0. Assim, os passos 2, 3 e 4 são executados uma única vez e o cálculo termina no passo 4. Parte 2. Suponhamos que a proposição é verdadeira para qualquer x > 0 e qualquer y, tal que 1 ≤ y < k, e mostraremos que ela é verdadeira para y = k. Por definição de resto da divisão de números inteiros positivos, teremos depois da execução do passo 2, 0 ≤ r < k. Se r = 0, a execução 64
    • Matemática Discretatermina, numa única vez. Se r > 0, com a execução dos passos 3 e4, teremos x = k e y = r, e a execução volta ao passo 2. Assim, pelahipótese de indução, os passos 2, 3 e 4 serão executados um númerofinito p de vezes, com os cálculos finalizando no passo 4. De modoque, ao todo teremos p + 1 execuções para y = k. Concluímos entãoque o algoritmo termina para quaisquer valores das entradas. Caso você queira conhecer mais sobre o princípio de induçãofinita, notadamente em provas de correção de algoritmos, consulte asseguintes obras. GERSTING, Judith L. Fundamentos Matemáticos para a Ciência da Computação. Tradução Valéria de Magalhães Iorio. Rio de Janeiro: LTC, 2004. LIPSChUTZ, Seimour; LIPSON, Marc Lars. Teoria e Problemas de Matemática Discreta. Porto Alegre: Bookman, 2004. SChEINERMAN, Edward R. Matemática Discreta: uma introdução. Tradução de Alfredo Alves de Farias. São Paulo: Pioneira Thomson Learning, 2003. Conclusão Ao finalizar este fascículo, você teve oportunidade de conhecermais um método de prova de proposições relativas aos númerosnaturais: o princípio de indução finita. Você aplicará esse métodoquando quiser garantir que um algoritmo ou sua implementação estácorreta. Considerações Finais Ao final desse fascículo você aprendeu sobre as funções, o queé recursividade, como os teoremas podem ser provados usandoalgumas técnicas de provas e conheceu o princípio de indução finita,empregado quando se deseja verificar a veracidade de proposiçõesrelativas aos números inteiros. Em todos esses assuntos, foramabordados exemplos relacionados às áreas de Informática eComputação. Espero que você utilize esses métodos matemáticos nasolução de problemas de outras disciplinas do curso. 65
    • Matemática Discreta Referências ABE, J. M. Teoria Intuitiva dos Conjuntos. São Paulo: Makron, 199, 266p. GERSTING, J L. Fundamentos Matemáticos para a Ciências da Computação. 3 ed., Rio de Janeiro: LTC 1993; 512p. LIPSChUTZ, S, LIPSON, M. L. Teoria e Problemas de Matemática Discreta. 2 ed., Porto Alegre: Bookman, 2004, 511p. MENEZES, P. B. Matemática Discreta para Computação e Informática. Porto Alegre: Editora Sagra Luzzatto, 2004; 272p. PINTO, S. J. Tópicos de Matemática Discreta. Departamento de Matemática: Universidade de Aveiro, 1999;122p ROSEN, K. h. Discrete Mathematics and its Applications. 4 ED., New York: WCB/McGraw-hill, 1999, 654p. SChEINERMAN, E. R. Matemática Discreta - Uma Introdução. São Paulo: Thomson, 2003, 523p. http://www.interaula.com/matweb/alegria/fibon//seqfib1.htm http://www.upis.br/revistavirtual/Cavalcante_%20Teoria%20dos%20 N%FAmeros%20e%20Criptografia_2005_UPIS.pdf http://www.infowester.com/criptografia.php http://domenico-deri.sites.uol.com.br/exemplos.html http://www.penta.ufrgs.br/gere96/segur/cripto_.htm http://www.ipea.gov.br 66