Você está na página 1de 8

Universidade Federal do Vale do So Francisco Curso de Engenharia da Computao

Matemtica Discreta - 06
Prof. Jorge Cavalcanti jorge.cavalcanti@univasf.edu.br www.univasf.edu.br/~jorge.cavalcanti www.twitter.com/jorgecav

Recursividade e relaes de recorrncia

Recursividade e Relaes de Recorrncia


Definies Recorrentes
Uma definio onde o item a ser definido aparece como parte da definio chamada de definio recorrente ou definio por recorrncia ou ainda definio por induo. Como definir algo em torno de si mesmo?
1.

2.

Uma base, ou condio bsica, onde alguns casos simples (pelo menos um) do item que est sendo definido so dados explicitamente. Um passo de induo ou recorrncia, onde novos casos do item que est sendo definido so dados em funo dos casos anteriores.

O item 1 nos d o comeo, fornecendo casos simples e concretos. O item 2 nos permite construir novos casos, a partir dos simples e ainda outros casos a partir desses novos e assim por diante.
3

Recursividade e Relaes de Recorrncia Sequncias definidas por Recorrncia


Uma sequncia S uma lista de objetos que so numerados em uma determinada ordem.
Existe um primeiro objeto, um segundo e assim por diante. S(k) denota o k-simo objeto da sequncia. Uma sequncia definida por recorrncia nomeando-se o primeiro valor (ou alguns primeiros) na sequncia e depois definindo os demais valores subsequentes em termos dos valores anteriores.

Recursividade e Relaes de Recorrncia Sequncias definidas por Recorrncia


Ex. 01:A seqncia S definida por recorrncia por
1.S(1)

=2 = 2S(n -1) para n 2 Pela proposio 1, S(1) = 2. Depois, pela proposio 2, o segundo objeto em S S(2) = 2S(1) = 2(2)=4. Novamente, pela proposio 2, S(3)=2S(2) = 2(4) = 8. Continuando desse modo, vemos que a sequncia S : 2, 4, 8, 16, 32...
2.S(n)

Uma regra como a da proposio 2, que define um valor de uma sequncia em termos de um ou mais valores anteriores uma relao de recorrncia.

Recursividade e Relaes de Recorrncia Sequncias definidas por Recorrncia


Ex. 02:A seqncia T definida por recorrncia por
1.T(1) 2.T(n)

=1 = T(n -1) + 3 para n 2 Escreva os cinco primeiros valores da sequncia T.

Ex. 03: A famosa sequncia de Fibonacci uma sequncia de nmeros definida por recorrncia por:
F(1) = 1 F(2) = 1 F(n) = F(n-2) + F(n-1), para n>2 Nesse caso, so dados os dois primeiros valores e relao de recorrncia define o n-simo valor em termos dos dois valores precedentes. Na sua forma mais geral, a relao de recorrncia a soma de F em seus dois valores anteriores.

Ex. 04: Escreva os oito primeiros valores da sequncia de Fibonacci.

Recursividade e Relaes de Recorrncia Sequncias definidas por Recorrncia


Ex. 05: Prove diretamente que, na sequncia de Fibonacci, a frmula F(n+4)=3F(n+2) F(n), para todo n 1, verdadeira. A relao de recorrncia da sequncia de Fibonacci pode ser escrita como: F(n+2)=F(n)+F(n+1) ou, F(n+1) = F(n+2) F(n) (1) Logo, F(n+4)=F(n+2)+F(n+3) F(n+4)=F(n+2)+F(n+2)+F(n+1) //Reescrevendo F(n+3) F(n+4)=F(n+2)+ F(n+2)+[F(n+2)-F(n)] // de (1) F(n+4)=3F(n+2)-F(n)

Recursividade e Relaes de Recorrncia Sequncias definidas por Recorrncia


Ex. 06: Prove diretamente que, na sequncia de Fibonacci, a frmula F(n+1)+F(n-2) = 2F(n), para todo n 3, verdadeira.
Da relao de Recorrncia: F(n+1)=F(n-1) + F(n) e F(n)=F(n-1)+F(n-2) = F(n-1)+F(n) + F(n-2) = [F(n-1)+F(n-2)] + F(n) =F(n)+ F(n) = 2F(n) Observar que s vlida porque n 3.

Recursividade e Relaes de Recorrncia Sequncias definidas por Recorrncia


Ex. 07: Prove diretamente que, na sequncia de Fibonacci, a frmula F(n+3)=2F(n+1) + F(n), para todo n 1, verdadeira.

Recursividade e Relaes de Recorrncia Operaes definidas por Recorrncia


Certas operaes comuns em objetos podem ser definidas de forma recorrente, conforme os exemplos a seguir: Ex. 08: Uma definio recorrente da operao de exponenciao an de um nmero real no nulo a, onde n um inteiro no negativo :
1. 2.

a0=1 an=(an-1)a para n1

Ex. 09: Uma definio recorrente para a multiplicao de dois inteiros positivos m e n :
1. 2.

m(1) = m m(n) = m(n-1) + m para n2


10

Recursividade e Relaes de Recorrncia


Resolvendo Relaes de Recorrncia
Tomando por base novamente o Exemplo 01 Ex.01: A seqncia S definida por recorrncia por
S(1) = 2 S(n) = 2S(n -1) para n 2 (1) (2)

Como: S(1) = 2 = 21 S(2) = 4 = 22 Soluo em S(3) = 8 = 23 forma fechada para a relao de S(4) = 16 = 24 recorrncia (2) e assim por diante, vemos que sujeita condio bsica (1) n S(n) = 2 (3) possvel calcular diretamente S(n) sem ter que calcular explicitamente ou por recorrncia.
11

Recursividade e Relaes de Recorrncia Resolvendo Relaes de Recorrncia


Relaes de recorrncia so usadas em programas computacionais, estudos de decaimento qumico, crescimento populacional etc. Seria bom encontrar sempre solues fechadas! Uma tcnica para resolver relaes de recorrncia uma abordagem do tipo expandir, conjecturar e verificar.
Essa tcnica usa repetidamente a relao de recorrncia para expandir a expresso a partir do n-simo termo at que se tenha uma idia da forma geral. Aps obtida a forma geral, a conjectura provada por induo matemtica.
12

Recursividade e Relaes de Recorrncia


Resolvendo Relaes de Recorrncia
Ex. 10: Considere novamente a seqncia S
S(1) = 2 S(n) = 2S(n -1) para n 2 (1) (2)

Desconsiderando que j sabemos a soluo fechada, vamos usar a abordagem de expandir, conjecturar e verificar para encontrar a soluo.
A relao S(n) = 2S(n -1) estabelece que um elemento S pode ser substitudo por duas vezes o elemento anterior. Seguindo essa receita, expandimos para n, n-1, n-2, assim por diante: S(n) = 2S(n -1) = 2[2S(n -2)] = 22S(n-2) = 22[2S(n-3)] = 23S(n-3) Olhando o padro que est se formando, conjecturamos que, aps k expanses, a equao tem a forma: S(n) = 2kS(n-k) 13

Recursividade e Relaes de Recorrncia Resolvendo Relaes de Recorrncia


Ex. 10: Forma geral da expanso: S(n) = 2kS(n-k) A expanso dos elementos de S em funo dos elementos anteriores pra quando n-k=1 (significa que estamos com o ltimo e o penltimo elemento da relao).
n-k =1 ento, k=n-1 e nesse ponto temos: S(n) = 2n-1S[n-(n-1)] = 2n-1S(1) 2n-1(2) = 2n que a soluo em forma fechada

A soluo encontrada apenas a conjectura, que precisa ser confirmada, ou seja devemos provar que S(n)=2n para n 1.
Provaremos usando a induo matemtica.
14

Recursividade e Relaes de Recorrncia Resolvendo Relaes de Recorrncia


Ex. 10: Provar que S(n) = 2n para n 1.
Base da induo S(1) = 21 verdadeiro 2. Hiptese da induo S(k) = 2k 3. Devemos provar que S(k+1) = 2k+1 S(k+1) = 2S(k) S(k+1) =2(2k) S(k+1) =2k+1 Isso prova que a soluo fechada encontrada est correta.
1.

15

Você também pode gostar