Você está na página 1de 9

EQUAÇÕES DE RECORRÊNCIA

Héctor Soza Pollman - Universidade Católica do Norte -


Antofagasta, Chile

◆ Nível Avançado

Frenqüentemente em teoria da Computação (ver exemplo [2]), ao analisar


o tempo de execução de um algoritmo (ou o espaço ocupado na memória pelos
dados), obtemos uma (ou mais) equações discretas, chamadas de Equações de
Recorrência, cuja incógnita é uma função inteira f(n), que geralmente é uma
função do tamanho n do problema (por exemplo: a quantidade de dados a ordenar
se é um algoritmo de ordenamento). Esta equação resulta ser uma relação entre
f(n) e seus valores prévios, como são f(n – 1), f(n / 2), ou outro. Além disso se
conhecemos o algoritmo analisado com detalhe, podemos estabelecer um valor de
bordo num ponto dado (como f(0) por exemplo). Neste artigo são apresentados
alguns dos métodos desenvolvidos para resolver este tipo de equações, as quais
aparecem em ordem de dificuldade.

Os tipos de equações de recorrência a serem consideradas são as


seguintes, em que a incógnita é a sucessão x n com n ≥ 0 :

1. EQUAÇÃO LINEAR DE PRIMEIRA ORDEM COM COEFICIENTES


DE VALOR INTEIRO 1.

O tipo mais simples de equação de recorrência de primeira ordem é:


x n +1 = x n + bn , n ≥ 0
em que x 0 e a sucessão bn são dados do problema. Sua resolução faz uso da
propriedade telescópica da soma obtendo:
n −1
x n = x 0 + ∑ bi , n ≥1
i =0

Exemplo: Para a equação: x n +1 = x n + 2 n , n ≥ 0, com x 0 =1, obtemos


n
x n = 2 , n ≥ 0.

2. EQUAÇÃO LINEAR DE PRIMEIRA ORDEM COM COEFICIENTES


CONSTANTES.

A equação linear de primeira ordem com coeficientes constantes é:


a n x n = bn x n −1 + c n , n ≥ 0
em que x 0 e as sucessões numéricas a n , bn e c n são dados do problema (as
sucessões a n e bn não devem ser nulas). Para resolver esta equação ela deve ser
multiplicada pelo fator S n (chamado fator somante):
S n a n x n = S n bn x n −1 + S n c n
Impõe-se a condição:
S n bn = S n −1 a n −1 (1)
com o qual obtemos:
S n a n x n = S n −1 a n −1 x n −1 + S n c n

Observa-se que a equação anterior se reduz a uma de primeiro tipo, e que sua
solução é:
n
1
xn = ( S 0 a 0 x 0 + ∑ S i c i ), n ≥ 0
S n an i =1

O fator somante é obtido a partir da condição (1) e considerando que S 0 =1 :


a a ...a a
S n = n −1 n −2 1 0 , n ≥ 1
bn bn −1 ...b2 b1

EXEMPLO: AS TORRES DE HANOI.


Dadas três varetas e n discos de distintos tamanhos colocados na primeira vareta
em ordem de tamanho (do menor ao maior), mover estes n discos desde a vareta
inicial até a terceira usando a segunda como auxiliar, sem colocar um disco de
tamanho maior sobre um de tamanho menor (para maiores explicações ver [4]).
Se x n é a quantidade de movimentos para levar os n discos da primeira a terceira
vareta, podemos provar, ao analisar como são distribuídos os movimentos, que,
se x n é a quantidade de movimentos para mover os n discos desde a primeira à
terceira vareta (com n ≥0), então:
x n = 2 x n −1 + 1, n ≥1
com x 0 = 0. De fato, dada uma solução do problema de Hanoi com n – 1 discos
em x n −1 movimentos, podemos mover os n – 1 primeiros discos para a segunda
vareta, depois mover o último disco para a terceira vareta e por fim mover os
n −1 primeiros discos para a terceira vareta, gastando
x n −1 + 1 + x n −1 = 2 x n −1 + 1 movimentos. Neste caso temos que o fator somante
1
resulta ser: S n = n . Logo, a solução da equação das torres de Hanoi é:
2
x n = 2 n − 1, n ≥ 0
Observamos, por exemplo, que para n = 3 devem ser realizados 7 movimentos.
Deixamos como exercício para o leitor provar que é impossível resolver este
problema usando uma quantidade menor de movimentos.

3. EQUAÇÕES HOMOGÊNEAS DE PRIMEIRA ORDEM COM


COEFICIENTES CONSTANTES.

Considere a equação:
a k x n +k + a k −1 x n +k −1 + ... + a 0 x n = 0, n ≥ 0 (2)
em que a 0 ,..., a k são sucessões independentes de n, e os valores de x i são
conhecidos para i = 0, ..., k – 1 (correspondem aos valores de bordo). Supondo
que a equação (2) admite uma solução do tipo: x n = λn , em que λ é um
parâmetro inteiro, e substituindo em (2) temos:
a k λn +k + a k −1 λn +k −1 + ... + a 0 λn = 0
Se λ ≠ 0 então obtemos a equação característica associada a equação (2):
a k λk + a k −1λk −1 + ... + a 0 λ0 = 0
Vamos mostrar que se esta equação tem as raízes complexas λ1 ,..., λr com
multiplicidades α1 ,α2 ,..., αr ∈N , respectivamente, então as soluções de (2)
são exatamente as seqüências (x n ) da forma
xn = Q1 ( n)λ1n + Q2 (n)λn2 +... + Qr (n)λnr ,
onde Q1 ,..., Qr são polinômios com grau (Qi ) < αi , 1 ≤ i ≤ r (em particular,
se λi é uma raíz simples então Qi é constante).
Seja P ( x ) = a k x k + a k −1 x k −1 + ... + a 0 um polinômio.
Dizemos que uma seqüência ( x n ) n∈N satisfaz a propriedade Rec ( P ( x )) se
a k x n +k + a k −1 x n +k −1 + ... + a 0 x n = 0, ∀n ∈N . Não é difícil verificar os
seguintes fatos:

i) Se ( X n ) e (Yn ) satisfazem Rec ( P ( x )) e c ∈C então ( Z n ) = X n + cY n


satisfaz Rec ( P ( x )) .
ii) Se Q( x) = br X r + br −1 X r −1 + ... + b0 e ( X n ) satisfaz Rec ( P ( x )) então
( X n ) satisfaz Rec ( P ( x )Q ( x))
(isso segue de
r
∑b j (a k X n + j +k + a k −1 X n + j +k −1 + ... + a 0 X n + j ) = 0, ∀n ∈N )
j =0

iii) ( X n ) satisfaz Rec ( P ( x )) se e só se (Yn ) = X n λn ( ) satisfaz Rec


k
( P (λX )) (substitua X n + j =λn + j Yn + j em ∑a j X n+ j = 0).
j =0
n
iv) Se S n = ∑ x k então ( x n ) satisfaz Rec ( P ( x )) se e só se ( S n ) satisfaz
k =0
Rec (( x −1) P ( x )) (escreva x n + j +1 =S n + j +1 − S n + j e substitua em
n
∑a j x n + j +1 = 0).
j =0

Por iii), para ver que, para todo polinômio Q ( x ) de grau menor que m,
X n = Q ( n)λn satisfaz Rec (( x − λ) m ), basta ver que (Yn ) = ( Q ( n) ) satisfaz
Rec (( x −1) m ), o que faremos por indução. Isso é claro se m = 1, e em geral, se
~
Z n = Yn +1 − Yn = Q ( n + 1) − Q (n), como Q ( x) =Q ( x +1) −Q ( x) tem
grau menor que m – 1, ( Z n ) satisfaz Rec (( x −1) m −1 ) (por hipótese de
indução), e logo, por (iv), (Yn ) satisfaz Rec (( x −1) m ). Essa observação,
combinada com ii), mostra que se ( P ( x) = ( x − λ1 ) α1 ( x − λ 2 ) α 2 ...( x − λ r ) α r , e
r
grau (Qi ) < αi para 1 ≤ i ≤ r então x n = ∑ Qi ( n)λi satisfaz Rec ( P ( x )) .
n

i =1
Para ver que se ( x n ) satisfaz Rec ( P ( x )) então x n é da forma acima,
usaremos indução novamente.

Supomos λ1 ≠ 0 e tomamos Yn = X n λ1n , Z n = Yn +1 − Yn (com Z 0 = Y0 ).


Por iii) e iv), Z n satisfaz Rec ( P (λ1 x ) ( x −1)) e, portanto por hipótese de
~ ~ ~
indução, Z n = Q1 ( x) + Q2 ( x )( λ2 λ1 ) n + ... + Qr ( x )( λr λ1 ) n , onde grau
~ ~
Qi <αi para 2 ≤ i ≤ r e grau Q1 <α1 −1.
Para terminar a prova, vamos mostrar que se existem polinômios
P1 , P2 ,..., Pk tais que Yn +1 − Yn = P1 ( n) + P2 ( n) β2n + ... + Pk ( n) βkn
(onde 1, β2 ,..., βk são complexos distintos e Pi ≠ 0, ∀i ≥ 2 ) então
~ ~ ~ ~ ~
Yn = P1 (n) + P2 ( n) β2n + ... + Pk (n) βkn , onde P1 ,..., Pk são polinômios
~ ~
com grau Pi =grau Pi para i ≥ 2 e grau P1 =grau P1 +1, por indução
na soma dos graus dos polinômios Pi , onde convencionamos que o grau do
polinômio nulo é –1.
(no nosso caso temos β i = λi λ1 , e como X n = λ1n Yn o resultado segue
imediatamente).

Para provar essa afirmação observamos inicialmente que, se a soma dos graus de
Pi é –1, então Yn +1 − Yn = 0, ∀n, e logo, Yn é constante e, em geral,
consideramos 2 casos:

a) P1 ( x ) = c m x m + c m −1 x m −1 + ... + c 0 , c m ≠ 0. Nesse caso definimos


m +1
~ c n
Yn = Yn − m , e temos
m +1
~ ~
Yn +1 − Yn = Q1 ( n) + P2 (n) β1n + ... + Pk ( n) βkn , com grau Q <m. Por
~
hipótese de indução, Yn (e logo Yn ) é da forma desejada.

b) P2 ( x ) = d s x s + d s −1 x s −1 + ... + d 0 , d s ≠ 0. Nesse caso, definimos


~ d n s λn2
Yn = Yn − s , e temos
λ2 −1
~ ~
Yn +1 − Yn = P1 ( n) + Q (n) β2n + P3 (n) β3n + ... + Pk ( n) βkn ,
~
com grau Q <s. Por hipótese de indução, Yn (e logo Yn ) é da forma
desejada.

Exemplo: x n = sen ( nα ) satisfaz uma recorrência linear. De fato,


x n +1 = sen (nα + α ) = sen ( nα ) cos α + cos( nα ) sen α ⇒
x n +2 = sen ( nα + 2α ) = sen ( nα ) cos 2α + cos( nα ) sen 2α ⇒
sen 2α sen 2α
⇒ x n +2 − x n +1 = (cos 2α − cos α ) x n , ou seja,
sen α sen α
x n +2 = 2 cos αX n +1 − X n . Note que x n não parece ser da forma geral descrita
nesta seção, mas de fato,
e inα − e −inα 1 1 1 1
xn = = (e iα ) n − (e −iα ) n = (cos α + isen α ) n − (cos α − isen α ) n
2i 2i 2i 2i 2i
Obs. Se ( x )
n satisfaz Rec (( x −1 ) P ( x )) , onde
P ( x) = a n x k + a k −1 x k −1 + ... + a 0 , então, se definirmos
Yn = a k x n +k + a k −1 x n +k −1 + ... + a 0 x n , teremos Yn +1 =Yn , ∀n ∈N , ou
seja, Yn é constante. Assim, a k x n +k + ... + a 0 x n é um invariante da seqüência
x n , o que é uma observação útil para muitos problemas olímpicos. Veja o
problema 3 da IMO.

EXEMPLO: OS NÚMEROS DE FIBONACCI.

A sucessão que lhes dá origem é: f n +2 = f n +1 + f n , n ≥ 0


em que f 0 e f 1 são dados. Ao aplicar o método analisado, considerando f 0
= 0 e f 1 =1, obtemos o polinômio característico λ2 − λ −1 = 0, cujas soluções
são:
1+ 5 1− 5
λ1 = , λ2 =
2 2
Considerando as condições do bordo a solução geral da equação de Fibonacci é
(ver [3]):
1
fn = (λ1n − λn2 ), n ≥ 0
5

Observa-se que os valores associados a esta sucessão são todos inteiros. Por
exemplo: f 3 = 2, f 4 = 3, etc. Podemos comprovar que, se n converge a infinito
então λ2 converge a zero, portanto, f n é da ordem de λ1n , e a fração
f n +1 f n converge a λ1 .

4. EQUAÇÕES NÃO HOMOGÊNEAS DE PRIMEIRA ORDEM COM


COEFICIENTES CONSTANTES.

A equação mencionada é do tipo:


a k x n +k + a k −1 + ... + a 0 x n = y n ,
onde a 0 , a1 ,..., a k são constantes e y n satisfaz uma equação homogênea de
primeira ordem com coeficientes constantes.
Supondo que y n satisfaça
b y n + + b−1 y n +−1 + ... + b0 y n = 0,
onde b0 , b1 ,..., b são constantes, observamos que
b ( a k x m ++k + ... + a 0 x m + ) +
b−1 ( a k x m +−1+k + ... + a 0 x m +−1 ) + ...
b0 ( a k x m +k + ... + a 0 x m ) = 0,
ou seja, temos uma equação homogênea de primeira ordem com coeficientes
constantes.
Pode-se demonstrar que a equação característica da recorrência é:
(a k x k + a k −1 x k −1 + ... + a 0 ) ⋅ (b x  + b−1 x −1 + ... + b0 ) = 0.

Exemplo 1: Considere a seguinte equação de recorrência

 1, s en é m u l dt i4epn, ≥l 1o;
xn − xn− 1 = 
 0, c a cs o n t r á r i o
x 0 = 0.

 1, s en é m u l t di pe4 ls,oa t i safr ae zc o r ar ê. n c i


yn = 
 0, c a sc oo n t r á r i o
y n + 4 = y n ⇔ y n + 4 − y n = 0, n ≥ 0. Assim,
( x n +4 − x n +3 ) − ( x n − x n −1 ) = 0 ⇔
x n +4 − x n +3 − x n + x n −1 = 0 e
x 0 = 0; x1 − x 0 = 0 ⇔ x1 = 0;
x 2 − x1 = 0 ⇔ x 2 = 0;
x 3 − x 2 = 0 ⇔ x 3 = 0;
x 4 − x3 = 1 ⇔ x 4 = 1.
A equação característica é x 5 − x 4 − x +1 = 0 ⇔ ( x 4 −1) ⋅ ( x −1) = 0 a qual
possui as raízes 1 (raiz dupla); –1; i ; – i. Ou seja,
x n = ( An + B ) ⋅ 1n + C ⋅ ( −1) n + D ⋅ i n + E ⋅ ( −1) n ,
A, B, C, D, E constantes.
De fato, considerando as condições de bordo,
n 3 ( −1) n (1 + i ) n (1 − i )
xn = − + + ⋅i + ⋅ ( −i ) n ⇔
4 8 8 8 8
n i n ((1 + i ) + ( −1) n (1 − i )) + ( −1) n − 3
xn = +
4 8
n 
(É interessante notar que, na verdade, x n =  .)
4 

Exemplo 2: Seja a seguinte equação de recorrência, que considera logaritmos em


base 2:

f ( n) = 2 f ( n ) + log 2 log 2 n, n ≥ 3
f ( 2) =1
Neste caso aplicamos uma troca de variável para ir desta equação a uma equação
linear, e poder resolvê-la, o qual significa que haverá solução só para os valores
de n que tome com este cambio. Este é:
n = 2 2 , n = 2 2 , log 2 log 2 n = k
k k −1

Ao efetuar essas substituições na equação obtemos:


x k − 2 x k −1 = k (3)
onde:
k
x k = f ( n) = f (2 2 )
0
x 0 = f (2 2 ) = 1

A equação (3) é uma equação não homogênea. Procedendo como acima ∆


obtemos:
x k +2 − 4 x k +1 + 5 x k − 2 x k −1 = 0

cuja solução considerando a condição do bordo é:


x k = −2 − k + 3 ⋅ 2 k , k ≥ 0

Logo, voltando a variável n original, a solução final é:


f (n) = 3 log 2 n − log 2 log 2 n − 2, n = 2 2 , k ≥ 0
k
A solução só tem resultados inteiros para os valores de n mencionados. Por
exemplo: f ( 4) = 3, f (16 ) =8, etc. Deixamos a prova deste fato como
exercício para o leitor.

Você também pode gostar