Você aplica \(1000\) reais a \(1\%\) ao mês: no mês seguinte tem \(1010\), depois \(1020{,}10\), depois \(1030{,}30\ldots\) Do outro lado, quem financia um carro sabe que o saldo devedor deste mês é o do mês anterior menos a parcela, mais os juros sobre o que ainda resta. Em ambos os casos, calcular o valor do mês 12 exige conhecer o do mês 11 — não há atalho direto. Sequências assim, onde cada termo depende dos anteriores, são chamadas de relações de recorrência.
Mas o conceito vai além das finanças. Quantos movimentos são necessários para resolver a Torre de Hanoi com \(n\) discos? Uma simples equação, \(T_n = 2T_{n-1} + 1\), contém a resposta completa. Esse é o poder das relações de recorrência: descrever uma sequência inteira a partir de uma regra local.
Neste artigo vamos definir formalmente o conceito, ver exemplos clássicos e aprender o método de substituição para obter fórmulas fechadas — expressões diretas que calculam o \(n\)-ésimo termo sem depender dos anteriores. Ao final, veremos também a equação característica, técnica que estende o repertório para recorrências de ordem 2.
Por que as Relações de Recorrência? #
Sequências definidas em termos de si mesmas aparecem em toda a ciência da computação e matemática discreta:
- Análise de algoritmos recursivos — a complexidade do merge sort, do quicksort e da Torre de Hanoi é expressa naturalmente por recorrências; resolvê-las dá a notação \(O\) do algoritmo.
- Contagem combinatória — o número de caminhos num grid, triangulações de polígonos e partições de inteiros satisfazem recorrências que permitem calcular termos grandes a partir de pequenos.
- Modelagem de crescimento — populações de coelhos (Fibonacci), crescimento com juros compostos e modelos epidemiológicos básicos são todos relações de recorrência.
- Programação dinâmica — técnica que substitui recursão exponencial por memoização linear; a validade da abordagem depende de verificar que a recorrência tem subestrutura ótima.
- Linguagens formais e compiladores — gramáticas livres de contexto geram linguagens cujo número de derivações satisfaz recorrências; analisar sua complexidade usa as mesmas ferramentas deste artigo.
O Que é uma Relação de Recorrência? #
Uma relação de recorrência é uma fórmula que relaciona um termo \(a_n\) a alguns de seus predecessores \(a_{n-1}, a_{n-2}, \ldots\). Também chamada de equação de diferenças.
Para determinar completamente a sequência, precisamos das condições iniciais — os valores de \(a_1, a_2, \ldots\) que servem como ponto de partida.
Exemplo simples: As somas parciais \(S_n = 1 + 2 + \cdots + n\) satisfazem
$$S_n = S_{n-1} + n, \quad S_1 = 1$$A cada passo, basta acrescentar \(n\) ao valor anterior.
Exemplo: Expressões Aritméticas Válidas #
Considere expressões formadas por dígitos (\(0{-}9\)) e símbolos aritméticos
(\(+,-,\times,\div\)), obedecendo duas regras: a expressão deve começar e terminar
com dígito, e dois símbolos não podem aparecer consecutivamente. Chamamos
essa sequência de “válida” no sentido sintático — as regras verificam apenas a
estrutura da string, não o significado matemático. Assim, 5÷0 é contada como
válida (obedece as duas regras), mesmo que a divisão por zero seja indefinida.
Por exemplo:
| Expressão | Válida? | Motivo |
|---|---|---|
0187 |
✓ | só dígitos |
1+99 |
✓ | começa e termina com dígito, sem símbolos consecutivos |
5×3– |
✗ | termina com símbolo |
6÷+2 |
✗ | dois símbolos consecutivos (\(\div\) e \(+\)) |
Seja \(N_k\) o número de expressões válidas de comprimento \(k\).
Condições iniciais: \(N_0 = 0\), \(N_1 = 10\) (os dígitos \(0{-}9\))
Construção da recorrência:
Para obter uma expressão de comprimento \(k\) a partir de expressões menores, há duas estratégias:
- Acrescentar um dígito (10 opções) à direita de uma expressão de comprimento \(k-1\): contribuição \(10 N_{k-1}\)
- Acrescentar símbolo + dígito (\(4 \times 10 = 40\) opções) à direita de uma expressão de comprimento \(k-2\): contribuição \(40 N_{k-2}\)
O diagrama a seguir sintetiza as duas estratégias e a fórmula resultante:

Verificando para \(k = 3\)
Queremos contar expressões de comprimento 3. As duas estratégias produzem:
Estratégia 1 — acrescentar um dígito a uma expressão de comprimento 2
(\(N_2 = 100\) expressões, como 01, 19, 53…):
Exemplos gerados: 017, 195, 530…
Estratégia 2 — acrescentar símbolo + dígito a uma expressão de comprimento 1 (\(N_1 = 10\) expressões, os dígitos \(0{-}9\)):
$$40 \times N_1 = 40 \times 10 = 400$$Exemplos gerados: 1+9, 5×3, 0÷7…
Total: \(N_3 = 1000 + 400 = 1.400\) ✓
Calculando os primeiros termos:
| \(k\) | \(N_k\) |
|---|---|
| 0 | 0 |
| 1 | 10 |
| 2 | 100 |
| 3 | 1.400 |
| 4 | 18.000 |
Em \(N_k = 10N_{k-1} + 40N_{k-2}\), cada termo depende dos dois termos anteriores. Chamamos isso de recorrência de ordem 2. Os exemplos a seguir — Torre de Hanoi e outros — dependem apenas do termo imediatamente anterior (ordem 1), e é para esse caso que o método de solução por substituição apresentado neste artigo funciona bem. Para recorrências de ordem 2 existe uma técnica específica, a equação característica, apresentada ao final deste artigo.
A Sequência de Fibonacci: Problema dos Coelhos #
O problema clássico de Fibonacci (1202): uma colônia de coelhos cresce segundo as regras:
- Começa com 1 par recém-nascido
- Todo par com ≥ 2 meses de vida produz 1 novo par por mês
- Nenhum coelho morre
Seja \(F_n\) o número de pares ao final do mês \(n\). Os pares no mês \(n\) são:
- Os que existiam no mês anterior (\(F_{n-1}\) pares)
- Os novos nascidos neste mês, que correspondem aos pares com ≥ 2 meses no mês anterior (\(F_{n-2}\) pares)
| \(n\) | 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 10 | 11 | 12 | 13 |
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| \(F_n\) | 1 | 1 | 2 | 3 | 5 | 8 | 13 | 21 | 34 | 55 | 89 | 144 | 233 |
Ao final de 13 meses: 233 pares.
A árvore de famílias abaixo mostra como cada par adulto gera um novo par a cada mês, tornando visível por que \(F_n = F_{n-1} + F_{n-2}\):
flowchart TD
subgraph m1 ["Mês 1 — F₁ = 1"]
A["par A (novo)"]
end
subgraph m2 ["Mês 2 — F₂ = 1"]
B["par A (adulto)"]
end
subgraph m3 ["Mês 3 — F₃ = 2"]
C["par A"]
D["par B (novo)"]
end
subgraph m4 ["Mês 4 — F₄ = 3"]
E["par A"]
F["par B (adulto)"]
G["par C (novo)"]
end
subgraph m5 ["Mês 5 — F₅ = 5"]
H["par A"]
I["par B"]
J["par C (adulto)"]
K["par D (novo)"]
L["par E (novo)"]
end
A --> B
B --> C
B -->|gera| D
C --> E
D --> F
C -->|gera| G
E --> H
F --> I
G --> J
E -->|gera| K
F -->|gera| L
Torre de Hanoi #
O puzzle da Torre de Hanoi foi proposto por Édouard Lucas em 1883. São dados \(n\) discos de tamanhos diferentes empilhados em ordem decrescente em um eixo. O objetivo é transferir todos para outro eixo, usando um eixo auxiliar, obedecendo:
- Mover apenas um disco por vez (sempre do topo)
- Nunca colocar um disco maior sobre um menor
Seja \(T_n\) o número mínimo de movimentos para \(n\) discos.
A figura abaixo mostra o estado inicial (todos os discos no Peg 1) e o estado final desejado (todos no Peg 2) para \(n = 3\):

Exemplo concreto: n = 3
Antes de pensar em fórmulas, vamos ver o que acontece passo a passo com 3 discos. Cada seta na figura abaixo representa um único movimento — sempre o disco do topo de um eixo para o topo de outro, respeitando a regra de nunca colocar um disco maior sobre um menor. A leitura segue da esquerda para a direita na linha superior (Estados 0 → 3), desce para o Estado 4, e volta da direita para a esquerda na linha inferior (Estados 4 → 7):

Foram necessários exatamente 7 movimentos para transferir os 3 discos.
Encontrando o padrão recursivo
Olhando com atenção para os 7 movimentos, percebemos uma estrutura em três blocos:
- Movimentos 1–3 (Estados 0 → 3): os 2 discos menores migram do Peg 1 para o Peg 3, usando o Peg 2 como auxiliar — exatamente \(T_2 = 3\) movimentos.
- Movimento 4 (Estado 3 → 4): o disco maior vai sozinho do Peg 1 para o Peg 2 — 1 movimento.
- Movimentos 5–7 (Estados 4 → 7): os 2 discos menores migram do Peg 3 para o Peg 2, usando o Peg 1 como auxiliar — novamente \(T_2 = 3\) movimentos.
Total: \(T_3 = 3 + 1 + 3 = 7\). ✓
Esse mesmo raciocínio se aplica para qualquer \(n\): para mover \(n\) discos, sempre precisamos (1) resolver o problema de tamanho \(n-1\), (2) mover o disco maior, e (3) resolver novamente o problema de tamanho \(n-1\). O diagrama abaixo sintetiza esse algoritmo recursivo — cada bloco rotulado \(T_{n-1}\) representa um subproblema completo com vários movimentos individuais, não um único passo:

Formalizando:
$$T_n = 2T_{n-1} + 1, \quad T_1 = 1$$Calculando os primeiros valores:
| \(n\) | 1 | 2 | 3 | 4 |
|---|---|---|---|---|
| \(T_n\) | 1 | 3 | 7 | 15 |
A árvore de chamadas de \(T(3)\) torna a recorrência visível: cada nó \(T(k)\) desdobra-se em dois filhos \(T(k-1)\) mais uma unidade, até atingir o caso base \(T(1) = 1\):
flowchart TD T3["T(3) = 7"] T2a["T(2) = 3"] M1["+1"] T2b["T(2) = 3"] T1a["T(1) = 1"] M2["+1"] T1b["T(1) = 1"] T1c["T(1) = 1"] M3["+1"] T1d["T(1) = 1"] T3 --> T2a & M1 & T2b T2a --> T1a & M2 & T1b T2b --> T1c & M3 & T1d
Método de Substituição #
O método de substituição consiste em aplicar a relação de recorrência repetidamente, substituindo cada termo pela sua própria recorrência, até emergir um padrão geral.
Toda aplicação do método segue as mesmas cinco etapas:
| Etapa | O que fazer |
|---|---|
| 1. Escrever a recorrência | Expressar \(T(n)\) em termos de \(T(n-1)\) (ou \(T(n-2)\) etc.) com condição inicial |
| 2. Substituir iterativamente | Substituir \(T(n-1)\) pela própria recorrência, depois \(T(n-2)\), e assim por diante |
| 3. Reconhecer o padrão | Generalizar a expressão para \(T(n)\) em função de \(T(n-k)\) e das constantes acumuladas |
| 4. Usar a condição inicial | Quando \(k = n-1\) (ou equivalente), substituir o caso base para eliminar \(T\) |
| 5. Verificar por indução | Provar que a fórmula obtida está correta para todo \(n\) usando o PIM |
O diagrama abaixo sintetiza o fluxo do método:
flowchart LR E1["1. Escrever
a recorrência"] --> E2["2. Substituir
iterativamente"] E2 --> E3["3. Reconhecer
o padrão"] E3 --> E4["4. Usar a
condição inicial"] E4 --> E5["5. Verificar
por indução"] E5 --> FEC(["fórmula fechada ✓"])
Resolvendo a Torre de Hanoi #
$$T_n = 2T_{n-1} + 1$$Substituindo iterativamente:
$$T_n = 2T_{n-1} + 1 = 2(2T_{n-2}+1)+1 = 2^2 T_{n-2} + 2 + 1$$$$= 2^2(2T_{n-3}+1)+2+1 = 2^3 T_{n-3} + 2^2 + 2 + 1 = \cdots$$$$= 2^{n-1} T_1 + 2^{n-2} + \cdots + 2 + 1 = 2^{n-1} + \sum_{k=0}^{n-2} 2^k = 2^{n-1} + (2^{n-1} - 1) = 2^n - 1$$Fórmula fechada: \(T_n = 2^n - 1\)
Verificação por indução:
Base (\(n=1\)): \(T_1 = 1 = 2^1 - 1\) ✓
HI: \(T_k = 2^k - 1\)
Passo (\(n = k+1\)):
$$T_{k+1} = 2T_k + 1 \stackrel{\text{HI}}{=} 2(2^k - 1) + 1 = 2^{k+1} - 2 + 1 = 2^{k+1} - 1$$Portanto, \(T_n = 2^n - 1\), que é o que queríamos demonstrar. \(\blacksquare\)
Lucas propôs o problema com 64 discos, afirmando que o fim do mundo ocorreria quando os monges terminassem de movê-los. Com a fórmula: \(T_{64} = 2^{64} - 1 \approx 1{,}8 \times 10^{19}\) movimentos. Mesmo a 1 movimento por segundo, levaria mais de 580 bilhões de anos.
Aplicação: Torre de Hanoi em Python
A solução recursiva implementa diretamente os três passos do algoritmo:
def hanoi(n, origem="A", destino="C", auxiliar="B"):
if n == 1:
print(f"Mover disco 1: {origem} → {destino}")
return 1
total = hanoi(n - 1, origem, auxiliar, destino)
print(f"Mover disco {n}: {origem} → {destino}")
total += 1 + hanoi(n - 1, auxiliar, destino, origem)
return total
print(hanoi(3)) # imprime os 7 movimentos e retorna 7A prova por indução valida o código passo a passo:
| Etapa | Na prova | No código |
|---|---|---|
| Base | \(T_1 = 1\) | if n == 1: return 1 — 1 disco, 1 movimento |
| HI | \(T_k = 2^k - 1\) movimentos | hanoi(n-1, ...) retorna o valor correto (por hipótese) |
| Passo | \(T_n = 2T_{n-1} + 1\) | total = hanoi(n-1,...) + 1 + hanoi(n-1,...) |
Chamar hanoi(64) levaria o mesmo tempo astronômico calculado acima — a prova
mostra que \(2^n - 1\) movimentos é o mínimo possível, não apenas o que o
algoritmo faz.
Exemplo: Ovais no Plano #
São dados \(n\) ovais no plano obedecendo duas condições:
- Quaisquer dois ovais se cruzam em exatamente 2 pontos distintos
- Nenhum ponto pertence a três ou mais ovais simultaneamente (sem ponto triplo)
Em quantas regiões esses \(n\) ovais dividem o plano?
A figura abaixo mostra os casos \(n = 1, 2, 3\) com as regiões numeradas e os pontos de interseção marcados (pontos coloridos = interseções entre os pares de ovais):

Observando os casos concretos:
| \(k\) | Ovais anteriores | Interseções com as anteriores | Novos arcos | Novas regiões | Total \(a_k\) |
|---|---|---|---|---|---|
| 1 | 0 | — | — | — | 2 (base) |
| 2 | 1 | 2 pontos | 2 arcos | 2 | 4 |
| 3 | 2 | 4 pontos | 4 arcos | 4 | 8 |
| 4 | 3 | 6 pontos | 6 arcos | 6 | 14 |
Por que cada nova oval acrescenta exatamente \(2(k-1)\) regiões?
Quando a \(k\)-ésima oval entra no plano, ela cruza cada uma das \(k-1\) ovais anteriores em exatamente 2 pontos — criando \(2(k-1)\) pontos de interseção sobre ela. Esses pontos dividem a borda da nova oval em \(2(k-1)\) trechos de curva (chamados de arcos) — cada um deles é o segmento da borda entre dois pontos de interseção consecutivos.
A chave é que cada arco fica inteiramente dentro de uma única região já existente (pois as fronteiras já existentes são cruzadas apenas nos pontos de interseção). Ao atravessar essa região, o arco a divide em duas, criando exatamente 1 nova região por arco.
Exemplo concreto (\(k = 3\), oval laranja no painel \(n=3\)): A oval laranja cruza a oval azul em 2 pontos (pontos verdes) e a oval magenta em 2 pontos (pontos violetas) — 4 pontos no total, que dividem a borda da laranja em 4 arcos. Cada arco corta uma das 4 regiões existentes ao meio: \(4 + 4 = 8\) regiões. ✓
Seja \(a_k\) o número de regiões com \(k\) ovais:
$$a_k = a_{k-1} + 2(k-1), \quad a_1 = 2$$Resolvendo por substituição:
$$a_n = 2 + \sum_{k=2}^{n} 2(k-1) = 2 + 2\sum_{j=1}^{n-1} j = 2 + 2 \cdot \frac{(n-1)n}{2} = 2 + n(n-1)$$Fórmula fechada: \(a_n = n^2 - n + 2\)
Verificando: \(a_1 = 1 - 1 + 2 = 2\) ✓, \(a_2 = 4 - 2 + 2 = 4\) ✓, \(a_3 = 9 - 3 + 2 = 8\) ✓, \(a_4 = 16 - 4 + 2 = 14\) ✓
Indo além: recorrências de ordem 2 #
O método de substituição resolve recorrências onde cada termo depende apenas do anterior. Para recorrências lineares homogêneas de ordem 2 — onde cada termo é combinação linear dos dois anteriores, sem termos independentes — existe uma técnica sistemática chamada equação característica: supomos que a solução tem a forma \(a_n = r^n\) e descobrimos quais valores de \(r\) satisfazem a recorrência. O pipeline abaixo resume o fluxo completo para o caso de raízes distintas (\(\Delta \neq 0\)):
flowchart LR R["recorrência linear
homogênea de ordem 2"] --> S["supor
aₙ = rⁿ"] S --> Q["equação
característica"] Q --> Ro["raízes distintas
r₁ ≠ r₂"] Ro --> G["solução geral
A·r₁ⁿ + B·r₂ⁿ"] G --> CI["condições
iniciais"] CI --> FC(["fórmula fechada ✓"])
Para raízes repetidas (\(\Delta = 0\)), a forma correta é \((A + Bn) \cdot r^n\); esse caso não ocorre nos exemplos deste artigo.
Fibonacci #
A recorrência \(F_n = F_{n-1} + F_{n-2}\) com \(F_1 = F_2 = 1\).
Substituindo \(F_n = r^n\) na recorrência:
$$r^n = r^{n-1} + r^{n-2}$$Dividindo ambos os lados por \(r^{n-2}\) (com \(r \neq 0\)):
$$r^2 = r + 1 \implies r^2 - r - 1 = 0$$Pela fórmula quadrática:
$$r = \frac{1 \pm \sqrt{1 + 4}}{2} = \frac{1 \pm \sqrt{5}}{2}$$As duas raízes são \(\varphi = \dfrac{1+\sqrt{5}}{2} \approx 1{,}618\) (razão áurea) e \(\psi = \dfrac{1-\sqrt{5}}{2} \approx {-0{,}618}\). Como as duas são soluções independentes, a solução geral é qualquer combinação linear delas:
$$F_n = A\,\varphi^n + B\,\psi^n$$Usando \(F_1 = 1\) e \(F_2 = 1\) para determinar \(A\) e \(B\):
Passo 1 — subtrair as equações das condições iniciais:
$$F_2 - F_1 = A(\varphi^2 - \varphi) + B(\psi^2 - \psi) = 0$$Como \(\varphi^2 - \varphi = \varphi(\varphi - 1) = 1\) e \(\psi^2 - \psi = 1\) (ambas raízes satisfazem \(r^2 = r+1\)), isso dá \(A + B = 0\), logo \(B = -A\).
Passo 2 — substituir \(B = -A\) em \(F_1 = 1\):
$$A(\varphi - \psi) = 1 \implies A = \frac{1}{\varphi - \psi} = \frac{1}{\sqrt{5}}$$Obtemos a fórmula de Binet:
$$F_n = \frac{\varphi^n - \psi^n}{\sqrt{5}}$$O artigo anterior da série demonstra essa fórmula por indução forte.
Expressões Aritméticas #
A recorrência \(N_k = 10N_{k-1} + 40N_{k-2}\) com \(N_0 = 0\) e \(N_1 = 10\).
Substituindo \(N_k = r^k\) e dividindo por \(r^{k-2}\):
$$r^2 - 10r - 40 = 0 \implies r = \frac{10 \pm \sqrt{100 + 160}}{2} = 5 \pm \sqrt{65}$$A solução geral é \(N_k = A(5+\sqrt{65})^k + B(5-\sqrt{65})^k\). Usando as condições iniciais:
- \(N_0 = 0 \implies A + B = 0 \implies B = -A\)
- \(N_1 = 10 \implies A \cdot 2\sqrt{65} = 10 \implies A = \dfrac{\sqrt{65}}{13}\)
Fórmula fechada:
$$N_k = \frac{\sqrt{65}}{13}\left[\left(5+\sqrt{65}\right)^k - \left(5-\sqrt{65}\right)^k\right]$$Verificando contra a tabela:
- \(N_1 = \dfrac{\sqrt{65}}{13} \cdot 2\sqrt{65} = \dfrac{130}{13} = 10\) ✓
- \(N_2 = \dfrac{\sqrt{65}}{13} \cdot 20\sqrt{65} = \dfrac{1300}{13} = 100\) ✓
O contraste com o Fibonacci é instrutivo: a mesma técnica produz resultados de elegâncias muito diferentes. Fórmulas fechadas existem sempre para recorrências lineares — mas nem sempre são bonitas.
Tabela-Resumo #
Os resultados provados neste artigo, reunidos para consulta rápida:
| Sequência | Base | Recorrência | Fórmula Fechada |
|---|---|---|---|
| Fibonacci | \(F_1 = F_2 = 1\) | \(F_n = F_{n-1} + F_{n-2}\) | \(F_n = \dfrac{\varphi^n - \psi^n}{\sqrt{5}}\) (Binet) |
| Torre de Hanoi | \(T_1 = 1\) | \(T_n = 2T_{n-1} + 1\) | \(T_n = 2^n - 1\) |
| Ovais no plano | \(a_1 = 2\) | \(a_n = a_{n-1} + 2(n-1)\) | \(a_n = n^2 - n + 2\) |
| Somas parciais | \(S_1 = 1\) | \(S_n = S_{n-1} + n\) | \(S_n = n(n+1)/2\) |
| Expressões aritméticas | \(N_0 = 0,\ N_1 = 10\) | \(N_k = 10N_{k-1} + 40N_{k-2}\) | \(N_k = \dfrac{\sqrt{65}}{13}\left[(5+\sqrt{65})^k - (5-\sqrt{65})^k\right]\) |
Exercícios #
Pratique montando e resolvendo recorrências pelo método de substituição. Os exercícios 1 e 2 seguem o modelo dos exemplos vistos; os exercícios 3 e 4 exigem mais atenção à montagem da recorrência e à verificação algébrica.
Exercício 1 — Torre de Hanoi dupla
Variante do Hanoi: \(2n\) discos de \(n\) tamanhos, dois de cada tamanho. As regras são as mesmas do Hanoi clássico.
(a) Monte a relação de recorrência. (b) Resolva pelo método de substituição.
Soluções:
(a) Para mover \(2n\) discos: mover os \(2(n-1)\) menores (\(T(n-1)\) movimentos), mover os 2 maiores (2 movimentos), mover os \(2(n-1)\) menores de volta (\(T(n-1)\) movimentos).
$$T(1) = 2, \quad T(n) = 2T(n-1) + 2 \text{ para } n \geq 2$$(b) Por substituição iterativa:
$$T(n) = 2T(n-1) + 2 = 2^i T(n-i) + \sum_{k=1}^i 2^k$$Para \(i = n-1\):
$$T(n) = 2^{n-1} \cdot T(1) + \sum_{k=1}^{n-1} 2^k = 2^n + (2^n - 2) = \mathbf{2^{n+1} - 2}$$
Exercício 2 — Regiões ilimitadas por retas
Seja \(a_n\) o número de regiões ilimitadas criadas por \(n\) retas em posição geral (sem paralelas nem ponto triplo).
(a) Ilustre para \(n = 0, 1, 2, 3, 4\). (b) Monte e resolva a recorrência.
Soluções:
(a) Cada nova reta acrescenta 2 regiões ilimitadas (uma em cada extremidade):
| \(n\) | \(a_n\) |
|---|---|
| 0 | 1 |
| 1 | 2 |
| 2 | 4 |
| 3 | 6 |
| 4 | 8 |
(b) \(a_n = a_{n-1} + 2\), com \(a_0 = 1\), \(a_1 = 2\).
Por substituição: \(a_n = a_1 + 2(n-1) = 2 + 2n - 2 = \mathbf{2n}\)
Exercício 3 — Verificação por indução
Dada a recorrência \(a_n = a_{n-1} + 2a_{n-2}\) com \(a_1 = 1\) e \(a_2 = 3\), verifique por indução forte que a fórmula fechada é:
$$a_n = \frac{1}{3}(-1)^n + \frac{2}{3} \cdot 2^n$$Demonstração:
Base: \(a_1 = \dfrac{-1}{3} + \dfrac{4}{3} = 1\) ✓ \quad \(a_2 = \dfrac{1}{3} + \dfrac{8}{3} = 3\) ✓
HIF: a fórmula vale para todo \(i \leq k\) com \(k \geq 2\).
Passo indutivo (\(n = k+1\)):
$$a_{k+1} = a_k + 2a_{k-1} \stackrel{\text{HIF}}{=} \left[\frac{1}{3}(-1)^k + \frac{2}{3} \cdot 2^k\right] + 2\left[\frac{1}{3}(-1)^{k-1} + \frac{2}{3} \cdot 2^{k-1}\right]$$$$= \frac{1}{3}\bigl[(-1)^k + 2(-1)^{k-1}\bigr] + \frac{2}{3}\bigl[2^k + 2^k\bigr]$$$$= \frac{1}{3}(-1)^{k-1}(-1+2) + \frac{2}{3} \cdot 2^{k+1} = \frac{1}{3}(-1)^{k+1} + \frac{2}{3} \cdot 2^{k+1}$$Portanto, \(a_n = \dfrac{1}{3}(-1)^n + \dfrac{2}{3} \cdot 2^n\), que é o que queríamos demonstrar. \(\blacksquare\)
Exercício 4 — Planta imortal
Uma planta vive eternamente, mas se reproduz apenas uma vez, logo após o 1º ano de vida. Começando com 1 planta no ano 1, qual é o número de plantas no ano \(n\)?
(a) Escreva a relação de recorrência. (b) Resolva e dê a fórmula fechada.
Soluções:
(a) No ano \(n\), a planta do ano \(n-1\) gera 1 nova planta, enquanto todas as outras continuam vivas:
$$a_1 = 1, \quad a_n = a_{n-1} + 1 \text{ para } n \geq 2$$(b) Por substituição: \(a_n = a_1 + (n-1) = \mathbf{n}\)
Próximos passos #
Com indução (simples e forte) e relações de recorrência no repertório, você tem as ferramentas fundamentais para raciocinar sobre estruturas definidas recursivamente. O próximo passo é a combinatória — a matemática da contagem. A próxima série, A Arte de Contar, usa esses fundamentos para construir a teoria das permutações, arranjos, combinações e o Binômio de Newton.