Teoria de números/Eficiência do algoritmo de Euclides: diferenças entre revisões
[edição não verificada] | [edição verificada] |
Correção de typos e formatação geral, typos fixed: substituido → substituído utilizando AWB |
m hack obsoleto: as fórmulas já aparecem em PNG e não há mais como exibi-las em HTML nem MathML (futuramente teremos MathJax) |
||
Linha 6: | Linha 6: | ||
Recorde-se que o algoritmo baseia-se na construção da sequência: |
Recorde-se que o algoritmo baseia-se na construção da sequência: |
||
:<math>a = r_0 \ge b = r_1 > r_2 > \ldots > r_k > r_{k+1} = 0 |
:<math>a = r_0 \ge b = r_1 > r_2 > \ldots > r_k > r_{k+1} = 0</math> |
||
cujos termos verificam as seguintes igualdades: |
cujos termos verificam as seguintes igualdades: |
||
{| cellpadding=0px cellspacing=6px |
{| cellpadding=0px cellspacing=6px |
||
|- |
|- |
||
|align=center width=50px|'''1''' ||align=right| <math>r_0 = |
|align=center width=50px|'''1''' ||align=right| <math>r_0 =</math> || width=200px | <math>r_1q_0+r_2</math> || <math>0 \le r_2<r_1</math> |
||
|- |
|- |
||
|align=center|'''2''' ||align=right| <math>r_1 = |
|align=center|'''2''' ||align=right| <math>r_1 =</math> || <math>r_2q_1+r_3</math> || <math>0 \le r_3<r_2</math> |
||
|- |
|- |
||
| ||align=right| <math>\vdots |
| ||align=right| <math>\vdots</math> || || |
||
|- |
|- |
||
|align=center|'''k-1''' ||align=right| <math>r_{k-2} = |
|align=center|'''k-1''' ||align=right| <math>r_{k-2} =</math> || <math>r_{k-1}q_{k-2}+r_{k}</math> || <math>0 \le r_{k}<r_{k-1}</math> |
||
|- |
|- |
||
|align=center|'''k''' ||align=right| <math>r_{k-1} = |
|align=center|'''k''' ||align=right| <math>r_{k-1} =</math> || <math>r_{k}q_{k-1}+r_{k+1} = r_{k}q_{k-1}</math> || pois <math>0 = r_{k+1}<r_{k}</math> |
||
|} |
|} |
||
O algoritmo fornece <math>(a,b) = r_k |
O algoritmo fornece <math>(a,b) = r_k</math>, que é o último resto não nulo, obtido em <math>k</math> passos (divisões). |
||
Uma observação importante é que o [[Teoria de números/Divisibilidade#Algoritmo da divisão (de Euclides)|resto de uma divisão]] é sempre menor que a metade do dividendo: |
Uma observação importante é que o [[Teoria de números/Divisibilidade#Algoritmo da divisão (de Euclides)|resto de uma divisão]] é sempre menor que a metade do dividendo: |
||
:<math>r_0 = r_1q_0+r_2 \ge r_1+r_2 > 2r_2 |
:<math>r_0 = r_1q_0+r_2 \ge r_1+r_2 > 2r_2</math> |
||
Sendo a primeira desigualdade válida porque <math>q_0\ge 1 |
Sendo a primeira desigualdade válida porque <math>q_0\ge 1</math> e a segunda porque <math>r_1>r_2</math>. Deste modo, tem-se |
||
:<math>r_0 > 2r_2 |
:<math>r_0 > 2r_2</math> |
||
:<math>r_1 > 2r_3 |
:<math>r_1 > 2r_3</math> |
||
:<math>r_2 > 2r_4 |
:<math>r_2 > 2r_4</math> |
||
:<math>r_3 > 2r_5 |
:<math>r_3 > 2r_5</math> |
||
e em geral |
e em geral |
||
:<math>r_{k}>2r_{k+2} |
:<math>r_{k}>2r_{k+2}</math>, para cada <math>k\ge 0</math>. |
||
Assim, comparando os termos cujos índices são pares, segue: |
Assim, comparando os termos cujos índices são pares, segue: |
||
:<math>r_{0}<a/2 |
:<math>r_{0}<a/2</math> |
||
:<math>r_{2}<r_{0}/2<a/4 |
:<math>r_{2}<r_{0}/2<a/4</math> |
||
:<math>r_{4}<r_{2}/2<r_{0}/4<a/8 |
:<math>r_{4}<r_{2}/2<r_{0}/4<a/8</math> |
||
:<math>\ldots |
:<math>\ldots</math> |
||
{{Wikipedia|Progressão geométrica#Progressão geométrica decrescente}} |
{{Wikipedia|Progressão geométrica#Progressão geométrica decrescente}} |
||
Por indução, resulta para cada termo: |
Por indução, resulta para cada termo: |
||
:<math>r_{2j}<a/2^{j+1} |
:<math>r_{2j}<a/2^{j+1}</math> |
||
De modo análogo, ao comparar os termos ímpares, e usar novamente indução, segue: |
De modo análogo, ao comparar os termos ímpares, e usar novamente indução, segue: |
||
:<math>r_{2j+1}<a/2^{j+1} |
:<math>r_{2j+1}<a/2^{j+1}</math> |
||
Com isso, a sequência dos <math>r_j |
Com isso, a sequência dos <math>r_j</math> decresce ''geometricamente'', pois <math>a</math> está fixado. O fato de ser uma sequência decrescente já havia sido demonstrado quando se justificou o funcionamento do algoritmo de Euclides. A novidade aqui é a ''velocidade'' com que a sequência decresce. Pelos cálculos anteriores, os restos diminuem, no mínimo, tão rápido quanto os termos da progressão geométrica <math>( a,\frac{a}{2}, \frac{a}{4}, \frac{a}{8}, \frac{a}{16}, \ldots )</math>. |
||
A questão colocada era: ''Quantas divisões são necessárias para que o resto <math>r_{k+1} |
A questão colocada era: ''Quantas divisões são necessárias para que o resto <math>r_{k+1}</math> seja zero?'' |
||
Analisando a progressão geométrica dada anteriormente, conclui-se que algum de seus termos é menor do que <math>1 |
Analisando a progressão geométrica dada anteriormente, conclui-se que algum de seus termos é menor do que <math>1</math>. Nesse caso, o resto correspondente será nulo, e o algoritmo para. Para ser mais exato, como |
||
:<math>\frac{a}{2^{x}} < 1 \Leftrightarrow a < 2^{x} \Leftrightarrow \log_2 a < x |
:<math>\frac{a}{2^{x}} < 1 \Leftrightarrow a < 2^{x} \Leftrightarrow \log_2 a < x </math> |
||
o menor índice inteiro <math>t |
o menor índice inteiro <math>t</math> que torna <math>\frac{a}{2^t}</math> menor que <math>1</math> é |
||
:<math>t = \lfloor \log_2 a \rfloor + 1 |
:<math>t = \lfloor \log_2 a \rfloor + 1</math> |
||
Onde <math>\lfloor \alpha \rfloor |
Onde <math>\lfloor \alpha \rfloor</math> denota o maior inteiro que não supera <math>\alpha</math> (a [[w:Parte inteira|parte inteira]] de <math>\alpha</math>). |
||
Então <math>r_{2t} < \frac{a}{2^{t+1}} < \frac{a}{2^{t}} < 1 |
Então <math>r_{2t} < \frac{a}{2^{t+1}} < \frac{a}{2^{t}} < 1</math>, e consequentemente <math>r_{2t} = 0</math>, pois os restos são números inteiros não-negativos. |
||
Assim, sabendo que o algoritmo para exatamente quando <math>r_{k+1} = 0 |
Assim, sabendo que o algoritmo para exatamente quando <math>r_{k+1} = 0</math>, conlui-se que tal índice <math>k+1</math> não pode ser maior que <math>2t</math>, em símbolos: |
||
:<math>k+1 \le 2(\lfloor \log_2 a \rfloor + 1) |
:<math>k+1 \le 2(\lfloor \log_2 a \rfloor + 1)</math> |
||
Para melhor compreender o significado dessa estimativa, considere que <math>a |
Para melhor compreender o significado dessa estimativa, considere que <math>a</math> tem <math>N</math> dígitos decimais. Então: |
||
:<math>10^{N-1}\le a < 10^N |
:<math>10^{N-1}\le a < 10^N</math> |
||
Aplicando o logaritmo em ambos os membros da segunda desigualdade, resulta |
Aplicando o logaritmo em ambos os membros da segunda desigualdade, resulta |
||
:<math>\log_2 a < N\cdot\log_2 10 |
:<math>\log_2 a < N\cdot\log_2 10</math> |
||
Logo, <math>k+1 \le 2 (\lfloor\log_2 a\rfloor +1)< 2N\cdot\log_2 10 + 2 |
Logo, <math>k+1 \le 2 (\lfloor\log_2 a\rfloor +1)< 2N\cdot\log_2 10 + 2</math>, que para valores grandes de <math>N</math> é aproximadamente <math>6,6N</math>. |
||
Embora esta não seja a melhor aproximação para <math>k |
Embora esta não seja a melhor aproximação para <math>k</math>, já é bastante útil, pois mostra que o número de etapas cresce linearmente com o número de dígitos de <math>a</math>. |
||
=== O pior caso === |
=== O pior caso === |
||
<!-- Foi mostrado que a sequência dos restos decresce geometricamente, ou seja, além de ser verdade que |
<!-- Foi mostrado que a sequência dos restos decresce geometricamente, ou seja, além de ser verdade que |
||
:<math>a \ge b > r_0 > r_1 > \ldots > r_k > r_{k+1} = 0 |
:<math>a \ge b > r_0 > r_1 > \ldots > r_k > r_{k+1} = 0</math> |
||
tem-se |
tem-se |
||
* <math>r_{2j }<a/2^{j+1} |
* <math>r_{2j }<a/2^{j+1}</math> |
||
* <math>r_{2j+1}<a/2^{j+1} |
* <math>r_{2j+1}<a/2^{j+1}</math> |
||
--> |
--> |
||
Para obter uma estimativa mais precisa do número de etapas que o algoritmo de Euclides leva para determinar o MDC de dois números, será considerada a seguinte questão: |
Para obter uma estimativa mais precisa do número de etapas que o algoritmo de Euclides leva para determinar o MDC de dois números, será considerada a seguinte questão: |
||
:''Qual é o menor valor de <math>a |
:''Qual é o menor valor de <math>a</math> para o qual o algoritmo leva <math>n</math> passos?'' |
||
Veja alguns exemplos utilizando a representação matricial do algoritmo: |
Veja alguns exemplos utilizando a representação matricial do algoritmo: |
||
Para <math>n=1 |
Para <math>n=1</math>: |
||
:<math>\begin{bmatrix} a \\ b \end{bmatrix} = \begin{bmatrix} q_0 & 1\\ 1 & 0 \end{bmatrix} \cdot \begin{bmatrix} d \\ 0 \end{bmatrix} |
:<math>\begin{bmatrix} a \\ b \end{bmatrix} = \begin{bmatrix} q_0 & 1\\ 1 & 0 \end{bmatrix} \cdot \begin{bmatrix} d \\ 0 \end{bmatrix}</math> |
||
Para <math>n=2 |
Para <math>n=2</math>: |
||
:<math>\begin{bmatrix} a \\ b \end{bmatrix} = \begin{bmatrix} q_0 & 1\\ 1 & 0 \end{bmatrix} \cdot \begin{bmatrix} q_1 & 1\\ 1 & 0 \end{bmatrix} \cdot \begin{bmatrix} d \\ 0 \end{bmatrix} = \begin{bmatrix} q_0q_1+1 & q_0\\ q_1 & 1 \end{bmatrix} \cdot \begin{bmatrix} d \\ 0 \end{bmatrix} |
:<math>\begin{bmatrix} a \\ b \end{bmatrix} = \begin{bmatrix} q_0 & 1\\ 1 & 0 \end{bmatrix} \cdot \begin{bmatrix} q_1 & 1\\ 1 & 0 \end{bmatrix} \cdot \begin{bmatrix} d \\ 0 \end{bmatrix} = \begin{bmatrix} q_0q_1+1 & q_0\\ q_1 & 1 \end{bmatrix} \cdot \begin{bmatrix} d \\ 0 \end{bmatrix}</math> |
||
Para <math>n=3 |
Para <math>n=3</math>: |
||
:<math>\begin{bmatrix} a \\ b \end{bmatrix} = \begin{bmatrix} q_0q_1+1 & q_0\\ q_1 & 1 \end{bmatrix} \cdot \begin{bmatrix} q_2 & 1\\ 1 & 0 \end{bmatrix} \cdot \begin{bmatrix} d \\ 0 \end{bmatrix} = \begin{bmatrix} q_0q_1q_2+q_0+q_2 & q_0q_1+1\\ q_1 & 1 \end{bmatrix} \begin{bmatrix} d \\ 0 \end{bmatrix} |
:<math>\begin{bmatrix} a \\ b \end{bmatrix} = \begin{bmatrix} q_0q_1+1 & q_0\\ q_1 & 1 \end{bmatrix} \cdot \begin{bmatrix} q_2 & 1\\ 1 & 0 \end{bmatrix} \cdot \begin{bmatrix} d \\ 0 \end{bmatrix} = \begin{bmatrix} q_0q_1q_2+q_0+q_2 & q_0q_1+1\\ q_1 & 1 \end{bmatrix} \begin{bmatrix} d \\ 0 \end{bmatrix}</math> |
||
É fácil perceber que <math>a |
É fácil perceber que <math>a</math> é mínimo quando os valores <math>q_0,\ldots, q_{k-1} </math> forem todos iguais a <math>1</math>, cada entrada da matriz é um polinômio nas variáveis <math>q_j</math> (que são positivas), e cujos coeficiêntes são <math>1</math> (se puder, acrescente uma justificativa mais formal). |
||
Se cada quociente for substituído por <math>1 |
Se cada quociente for substituído por <math>1</math> na fórmula de recorrência |
||
:<math>r_{j-1} = r_jq_{j-1} + r_{j+1} |
:<math>r_{j-1} = r_jq_{j-1} + r_{j+1}</math> |
||
Esta passará a ser: |
Esta passará a ser: |
||
:<math>r_{j-1} = r_j + r_{j+1} |
:<math>r_{j-1} = r_j + r_{j+1}</math> |
||
Que vale para <math>j |
Que vale para <math>j</math> satisfazendo <math>1\le j\le k</math>. |
||
A nova relação lembra a fórmula que define a [[w:Sequência de Fibonacci|sequência de Fibonacci]], embora esteja "ao contrário". |
A nova relação lembra a fórmula que define a [[w:Sequência de Fibonacci|sequência de Fibonacci]], embora esteja "ao contrário". |
||
Linha 112: | Linha 112: | ||
A sequência de fibonacci é definida pelas seguintes equações: |
A sequência de fibonacci é definida pelas seguintes equações: |
||
* <math>F_0 = 0 |
* <math>F_0 = 0</math> |
||
* <math>F_1 = 1 |
* <math>F_1 = 1</math> |
||
* <math>F_k = F_{k-1} + F_{k-2} |
* <math>F_k = F_{k-1} + F_{k-2}</math> |
||
Assim, seus primeiros termos são: <math>0, 1, 1, 2, 3, 5, 8, 13, 21, 34, \ldots |
Assim, seus primeiros termos são: <math>0, 1, 1, 2, 3, 5, 8, 13, 21, 34, \ldots</math> |
||
Também é possível demonstrar que é válida a [[w:Fórmula de Binet|fórmula de Binet]]: |
Também é possível demonstrar que é válida a [[w:Fórmula de Binet|fórmula de Binet]]: |
||
:<math>F_n = \frac{\varphi ^n - \hat{\varphi}^n}{\sqrt{5}} |
:<math>F_n = \frac{\varphi ^n - \hat{\varphi}^n}{\sqrt{5}}</math> |
||
onde: |
onde: |
||
* <math>\varphi = \frac{1 + \sqrt{5}}{2} \approx 1.618 |
* <math>\varphi = \frac{1 + \sqrt{5}}{2} \approx 1.618</math>, que é conhecido como o [[w:número de ouro|número de ouro]]; |
||
* <math>\hat{\varphi} = \frac{1 - \sqrt{5}}{2} = \approx -0.618 |
* <math>\hat{\varphi} = \frac{1 - \sqrt{5}}{2} = \approx -0.618</math> |
||
}} |
}} |
||
{{Tarefa|Conferir se o expoente k+1 está correto ou se deveria ser k, na próxima equação}} |
{{Tarefa|Conferir se o expoente k+1 está correto ou se deveria ser k, na próxima equação}} |
||
Matricialmente, as condições <math>q_0 = 1,\ldots, q_{k-1} = 1 |
Matricialmente, as condições <math>q_0 = 1,\ldots, q_{k-1} = 1</math> produzem as seguintes igualdades: |
||
:<math>\begin{bmatrix} a \\ b \end{bmatrix} = \overbrace{ \begin{bmatrix} \mathbf{1} & 1\\ 1 & 0 \end{bmatrix}\cdot \begin{bmatrix} \mathbf{1} & 1\\ 1 & 0 \end{bmatrix}\cdot \ldots \cdot \begin{bmatrix} \mathbf{1} & 1\\ 1 & 0 \end{bmatrix} } \cdot \begin{bmatrix} d \\ 0 \end{bmatrix} = \begin{bmatrix} \mathbf{1} & 1\\ 1 & 0 \end{bmatrix}^{k+1} \cdot \begin{bmatrix} d \\ 0 \end{bmatrix}</math>, sendo que <math>d=(a,b) |
:<math>\begin{bmatrix} a \\ b \end{bmatrix} = \overbrace{ \begin{bmatrix} \mathbf{1} & 1\\ 1 & 0 \end{bmatrix}\cdot \begin{bmatrix} \mathbf{1} & 1\\ 1 & 0 \end{bmatrix}\cdot \ldots \cdot \begin{bmatrix} \mathbf{1} & 1\\ 1 & 0 \end{bmatrix} } \cdot \begin{bmatrix} d \\ 0 \end{bmatrix} = \begin{bmatrix} \mathbf{1} & 1\\ 1 & 0 \end{bmatrix}^{k+1} \cdot \begin{bmatrix} d \\ 0 \end{bmatrix}</math>, sendo que <math>d=(a,b)</math>. |
||
Com um simples uso do [[w:Indução matemática|princípio de indução finita]], consegue-se: |
Com um simples uso do [[w:Indução matemática|princípio de indução finita]], consegue-se: |
||
:<math>\begin{bmatrix} \mathbf{1} & 1\\ 1 & 0 \end{bmatrix}^n = \begin{bmatrix} F_{n+1} & F_{n}\\ F_{n} & F_{n-1} \end{bmatrix} |
:<math>\begin{bmatrix} \mathbf{1} & 1\\ 1 & 0 \end{bmatrix}^n = \begin{bmatrix} F_{n+1} & F_{n}\\ F_{n} & F_{n-1} \end{bmatrix}</math>, desde que <math>n\ge 1</math>. |
||
Deste modo, |
Deste modo, |
||
:<math>\begin{bmatrix} a \\ b \end{bmatrix} = \begin{bmatrix} F_{k+2} & F_{k+1}\\ F_{k+1} & F_{k} \end{bmatrix} \cdot \begin{bmatrix} d \\ 0 \end{bmatrix} = \begin{bmatrix} d\cdot F_{k+2} \\ d\cdot F_{k+1} \end{bmatrix}</math> |
:<math>\begin{bmatrix} a \\ b \end{bmatrix} = \begin{bmatrix} F_{k+2} & F_{k+1}\\ F_{k+1} & F_{k} \end{bmatrix} \cdot \begin{bmatrix} d \\ 0 \end{bmatrix} = \begin{bmatrix} d\cdot F_{k+2} \\ d\cdot F_{k+1} \end{bmatrix}</math> |
||
Como <math>d=(a,b)\ge 1 |
Como <math>d=(a,b)\ge 1</math>, segue que |
||
* <math>a\ge F_{k+2} |
* <math>a\ge F_{k+2}</math> |
||
* <math>b\ge F_{k+1} |
* <math>b\ge F_{k+1}</math> |
||
{{Teorema |
{{Teorema |
||
|Dado <math>n\ge 1 |
|Dado <math>n\ge 1</math>, sejam <math>a</math> e <math>b</math> os <u>menores números</u> tais que o algoritmo de Euclides aplicado a <math>a</math> e <math>b</math> leva exatamente <math>n</math> passos, então <math>a=F_{n+2}</math> e <math>b=F_{n+1}</math>. |
||
}} |
}} |
||
==== Exemplificando ==== |
==== Exemplificando ==== |
||
Para determinar o valor de <math>(F_7, F_6) = (13, 8) |
Para determinar o valor de <math>(F_7, F_6) = (13, 8)</math>, seria necessário efetuar cinco divisões: |
||
:{| |
:{| |
||
|- |
|- |
||
|align=right| <math>13 = 8\cdot1 + 5 |
|align=right| <math>13 = 8\cdot1 + 5</math> |
||
|- |
|- |
||
|align=right| <math>8 = 5\cdot1 + 3 |
|align=right| <math>8 = 5\cdot1 + 3</math> |
||
|- |
|- |
||
|align=right| <math>5 = 3\cdot1 + 2 |
|align=right| <math>5 = 3\cdot1 + 2</math> |
||
|- |
|- |
||
|align=right| <math>3 = 2\cdot1 + \mathbf{1} |
|align=right| <math>3 = 2\cdot1 + \mathbf{1}</math> |
||
|- |
|- |
||
|align=right| <math>2 = \mathbf{1}\cdot2 + 0 |
|align=right| <math>2 = \mathbf{1}\cdot2 + 0</math> |
||
|} |
|} |
||
Logo, <math>(13,8) = 1 |
Logo, <math>(13,8) = 1</math>. Aproveitando este exemplo, observe que: |
||
:<math>\begin{bmatrix} 13 \\ 8 \end{bmatrix} = \begin{bmatrix} 13 & 8\\ 8 & 5 \end{bmatrix} \cdot \begin{bmatrix} 1 \\ 0 \end{bmatrix} = \begin{bmatrix} F_{5+2} & F_{5+1}\\ F_{5+1} & F_5 \end{bmatrix} \cdot \begin{bmatrix} 1 \\ 0 \end{bmatrix} = \begin{bmatrix} 1 & 1\\ 1 & 0 \end{bmatrix}^{5+1} \cdot \begin{bmatrix} 1 \\ 0 \end{bmatrix} |
:<math>\begin{bmatrix} 13 \\ 8 \end{bmatrix} = \begin{bmatrix} 13 & 8\\ 8 & 5 \end{bmatrix} \cdot \begin{bmatrix} 1 \\ 0 \end{bmatrix} = \begin{bmatrix} F_{5+2} & F_{5+1}\\ F_{5+1} & F_5 \end{bmatrix} \cdot \begin{bmatrix} 1 \\ 0 \end{bmatrix} = \begin{bmatrix} 1 & 1\\ 1 & 0 \end{bmatrix}^{5+1} \cdot \begin{bmatrix} 1 \\ 0 \end{bmatrix}</math> |
||
No entanto, se qualquer dos números for menor, o algoritmo requer menos etapas. Por exemplo, ao determinar <math>(13, 7) |
No entanto, se qualquer dos números for menor, o algoritmo requer menos etapas. Por exemplo, ao determinar <math>(13, 7)</math> tem-se: |
||
:{| |
:{| |
||
|- |
|- |
||
|align=right| <math>13 = 7\cdot1 + 6 |
|align=right| <math>13 = 7\cdot1 + 6</math> |
||
|- |
|- |
||
|align=right| <math>7 = 6\cdot1 + \mathbf{1} |
|align=right| <math>7 = 6\cdot1 + \mathbf{1}</math> |
||
|- |
|- |
||
|align=right| <math>6 = \mathbf{1}\cdot6 + 0 |
|align=right| <math>6 = \mathbf{1}\cdot6 + 0</math> |
||
|} |
|} |
||
Donde, <math>(13,7) = 1 |
Donde, <math>(13,7) = 1</math>. |
||
Já o cálculo de <math>(12, 8) |
Já o cálculo de <math>(12, 8)</math> é ainda mais simples: |
||
:{| |
:{| |
||
|- |
|- |
||
|align=right| <math>12 = 8\cdot1 + \mathbf{4} |
|align=right| <math>12 = 8\cdot1 + \mathbf{4}</math> |
||
|- |
|- |
||
|align=right| <math>8 = \mathbf{4}\cdot2 + 0 |
|align=right| <math>8 = \mathbf{4}\cdot2 + 0</math> |
||
|} |
|} |
||
Portanto, <math>(12,8) = 4 |
Portanto, <math>(12,8) = 4</math>. |
||
== Melhorando as estimativas == |
== Melhorando as estimativas == |
||
Linha 187: | Linha 187: | ||
=== Teorema de Lamé === |
=== Teorema de Lamé === |
||
{{Teorema |
{{Teorema |
||
|O número de passos (de divisões) no algoritmo de Euclides com entradas <math>u |
|O número de passos (de divisões) no algoritmo de Euclides com entradas <math>u</math> e <math>v</math> é limitado superiormente por <math>5</math> vezes a quantidade de dígitos decimais em <math>min(u,v)</math>. |
||
}} |
}} |
||
Linha 197: | Linha 197: | ||
{{tarefa|Incluir breve biografia sobre Lamé.}} |
{{tarefa|Incluir breve biografia sobre Lamé.}} |
||
Para demonstrar o [[w:teorema de Lamé|teorema de Lamé]], é importante ter em mente algumas propriedades relacionadas a [[w:sequência de Fibonacci|sequência de Fibonacci]] e ao [[w:Proporção áurea|número de ouro]]: |
Para demonstrar o [[w:teorema de Lamé|teorema de Lamé]], é importante ter em mente algumas propriedades relacionadas a [[w:sequência de Fibonacci|sequência de Fibonacci]] e ao [[w:Proporção áurea|número de ouro]]: |
||
:<math>\varphi = \frac{1 + \sqrt{5}}{2} \approx 1.618 |
:<math>\varphi = \frac{1 + \sqrt{5}}{2} \approx 1.618</math> |
||
Tem-se: |
Tem-se: |
||
* <math>\varphi^2 = \varphi + 1 |
* <math>\varphi^2 = \varphi + 1</math> |
||
{{Demonstração|A verificação é direta, exigindo cálculos bastante simples.}} |
{{Demonstração|A verificação é direta, exigindo cálculos bastante simples.}} |
||
* <math>F_n = \frac{\varphi^n}{\sqrt{5}} |
* <math>F_n = \frac{\varphi^n}{\sqrt{5}}</math>, arredondado para o inteiro mais próximo. |
||
{{Demonstração |
{{Demonstração |
||
|Utilizando a fórmula de Binet, basta observar que o módulo de <math>\hat{\varphi} |
|Utilizando a fórmula de Binet, basta observar que o módulo de <math>\hat{\varphi}</math> é menor que <math>1</math>, e consequentemente, quando <math>n \to \infty</math>, tem-se <math>\hat{\varphi}^n \to 0</math> |
||
}} |
}} |
||
* <math>F_n \ge \varphi^{n-1} |
* <math>F_n \ge \varphi^{n-1}</math> |
||
{{Demonstração |
{{Demonstração |
||
|A justificativa será dada por indução: |
|A justificativa será dada por indução: |
||
# <math>F_1 = 1 \ge 1 = \varphi^0 |
# <math>F_1 = 1 \ge 1 = \varphi^0</math> |
||
# Se for verdade que <math>F_n \ge \varphi^{n-1} |
# Se for verdade que <math>F_n \ge \varphi^{n-1}</math>, então: |
||
:<math>F_{n+1} = F_{n}+F_{n-1} \ge \varphi^{n-1} + \varphi^{n-2} = \varphi^{n-2}(\varphi + 1) = \varphi^{n-2}\varphi^2 = \varphi^{n} |
:<math>F_{n+1} = F_{n}+F_{n-1} \ge \varphi^{n-1} + \varphi^{n-2} = \varphi^{n-2}(\varphi + 1) = \varphi^{n-2}\varphi^2 = \varphi^{n}</math> |
||
}} |
}} |
||
* <math>\log \varphi < \frac{1}{5} |
* <math>\log \varphi < \frac{1}{5}</math> |
||
{{Demonstração |
{{Demonstração |
||
|De fato, valem as seguintes equivalências: |
|De fato, valem as seguintes equivalências: |
||
<math>\log \varphi < \frac{1}{5} \Leftrightarrow 5\log \varphi < 1 \Leftrightarrow \log \varphi^5 < 1 |
<math>\log \varphi < \frac{1}{5} \Leftrightarrow 5\log \varphi < 1 \Leftrightarrow \log \varphi^5 < 1 </math> |
||
Mas <math>\varphi^5 =5\varphi + 3 |
Mas <math>\varphi^5 =5\varphi + 3</math> (verifique a partir de <math>\varphi^2 = \varphi + 1</math>), e <math>\varphi > \frac{8}{5} </math> pois |
||
:<math>\varphi > \frac{8}{5} \Leftrightarrow \frac{1 + \sqrt{5}}{2} > \frac{8}{5} \Leftrightarrow 5(1 + \sqrt{5}) > 16 \Leftrightarrow 5\sqrt{5} > 11 \Leftrightarrow 125 = 25 \cdot 5 > 121 |
:<math>\varphi > \frac{8}{5} \Leftrightarrow \frac{1 + \sqrt{5}}{2} > \frac{8}{5} \Leftrightarrow 5(1 + \sqrt{5}) > 16 \Leftrightarrow 5\sqrt{5} > 11 \Leftrightarrow 125 = 25 \cdot 5 > 121</math> |
||
Sendo que esta última desigualdade é verdadeira. |
Sendo que esta última desigualdade é verdadeira. |
||
}} |
}} |
||
Como foi visto anteriormente, quando <math>(a,b) |
Como foi visto anteriormente, quando <math>(a,b)</math> é exige exatamente <math>n</math> passos, é tem-se <math>a\ge F_n+2</math> e <math>b\ge F_n+1</math>. Logo, |
||
:<math>a\ge F_n+2 \ge \varphi^{n+1} |
:<math>a\ge F_n+2 \ge \varphi^{n+1}</math> |
||
Aplicando o logaritmo em ambos os menbros, segue: |
Aplicando o logaritmo em ambos os menbros, segue: |
||
:<math>(n+1)\log \varphi \le \log a |
:<math>(n+1)\log \varphi \le \log a</math> |
||
ou seja |
ou seja |
||
:<math>n\le \frac{\log a}{\log \varphi} = \log_{\varphi}a |
:<math>n\le \frac{\log a}{\log \varphi} = \log_{\varphi}a</math> |
||
Mas <math>\frac{1}{\log \varphi} < 5 |
Mas <math>\frac{1}{\log \varphi} < 5</math>, então: |
||
:<math>n\le \frac{1}{\log \varphi}\cdot \log a < 5\log_{\varphi}a < 5N |
:<math>n\le \frac{1}{\log \varphi}\cdot \log a < 5\log_{\varphi}a < 5N</math>, onde <math>N</math> é o número de dígitos de <math>a</math> |
||
== Demonstração da fórmula de Binet == |
== Demonstração da fórmula de Binet == |
||
Nesta seção, será deduzida a [[w:Fórmula de Binet|fórmula de Binet]]: |
Nesta seção, será deduzida a [[w:Fórmula de Binet|fórmula de Binet]]: |
||
:<math>F_n = \frac{1}{\sqrt{5}}\left ( \left ( \frac{1+\sqrt{5}}{2} \right )^n - \left ( \frac{1-\sqrt{5}}{2} \right )^n \right ) = \frac{\varphi ^n - \hat{\varphi}^n}{\sqrt{5}} |
:<math>F_n = \frac{1}{\sqrt{5}}\left ( \left ( \frac{1+\sqrt{5}}{2} \right )^n - \left ( \frac{1-\sqrt{5}}{2} \right )^n \right ) = \frac{\varphi ^n - \hat{\varphi}^n}{\sqrt{5}}</math> |
||
onde <math>\varphi = \frac{1 + \sqrt{5}}{2} |
onde <math>\varphi = \frac{1 + \sqrt{5}}{2}</math> e <math>\hat{\varphi} = \frac{1 - \sqrt{5}}{2}</math>. |
||
A principal razão para se utilizar está fórmula, em vez da definição recursiva da sequência de Fibonacci, é que ela permite a obtenção de um termo da sequência <u>sem precisar calcular os anteriores</u>. |
A principal razão para se utilizar está fórmula, em vez da definição recursiva da sequência de Fibonacci, é que ela permite a obtenção de um termo da sequência <u>sem precisar calcular os anteriores</u>. |
||
{{Demonstração |
{{Demonstração |
||
|A relação entre os termos da sequência pode ser descrita matricialmente da seguinte forma: |
|A relação entre os termos da sequência pode ser descrita matricialmente da seguinte forma: |
||
:<math>\begin{bmatrix} F_{n+1} \\ F_{n} \end{bmatrix} = \begin{bmatrix} 1 & 1\\ 1 & 0 \end{bmatrix} \cdot \begin{bmatrix} F_{n} \\ F_{n-1} \end{bmatrix} |
:<math>\begin{bmatrix} F_{n+1} \\ F_{n} \end{bmatrix} = \begin{bmatrix} 1 & 1\\ 1 & 0 \end{bmatrix} \cdot \begin{bmatrix} F_{n} \\ F_{n-1} \end{bmatrix}</math> |
||
Para simplificar, será adotada a seguinte notação: |
Para simplificar, será adotada a seguinte notação: |
||
:<math>Q = \begin{bmatrix} 1 & 1\\ 1 & 0 \end{bmatrix} |
:<math>Q = \begin{bmatrix} 1 & 1\\ 1 & 0 \end{bmatrix}</math> |
||
A partir de um simples argumento de indução (veja [[#Exercícios|exercício 1]]), obtem-se: |
A partir de um simples argumento de indução (veja [[#Exercícios|exercício 1]]), obtem-se: |
||
:<math>\begin{bmatrix} F_{n+1} \\ F_{n} \end{bmatrix} = Q^n \cdot \begin{bmatrix} F_{1} \\ F_{0} \end{bmatrix} |
:<math>\begin{bmatrix} F_{n+1} \\ F_{n} \end{bmatrix} = Q^n \cdot \begin{bmatrix} F_{1} \\ F_{0} \end{bmatrix}</math> |
||
Neste ponto, recorre-se à [[Álgebra linear]], para obter um jeito simples de calcular o produto acima. |
Neste ponto, recorre-se à [[Álgebra linear]], para obter um jeito simples de calcular o produto acima. |
||
Se puder ser escrito |
Se puder ser escrito |
||
:<math>\begin{bmatrix} 1 \\ 0 \end{bmatrix} = \alpha v+\alpha'v' |
:<math>\begin{bmatrix} 1 \\ 0 \end{bmatrix} = \alpha v+\alpha'v'</math>, com <math>v</math> e <math>v'</math> sendo auto-vetores de <math>Q</math>, ou seja, vetores não nulos tais que <math>Qv = \lambda_1 v</math> e <math>Qv' = \lambda_2 v'</math>, será possível obter: |
||
:<math>\begin{bmatrix} F_{n+1} \\ F_{n} \end{bmatrix} = Q^n(\alpha v + \alpha' v') = \alpha (Q^n v) + \alpha' (Q^n v') = \alpha (\lambda_1^n v) + \alpha' (\lambda_2^n v') |
:<math>\begin{bmatrix} F_{n+1} \\ F_{n} \end{bmatrix} = Q^n(\alpha v + \alpha' v') = \alpha (Q^n v) + \alpha' (Q^n v') = \alpha (\lambda_1^n v) + \alpha' (\lambda_2^n v')</math> |
||
A partir daí será bastante simples conseguir a fórmula explicita para <math>F_n |
A partir daí será bastante simples conseguir a fórmula explicita para <math>F_n</math> (a segunda componente do vetor à esquerda), pois <math>v, v', \alpha, \alpha', \lambda_1, \lambda_2</math> seriam constantes. |
||
É, portanto, necessário determinar essas constantes, a começar pelos auto-valores de <math>Q |
É, portanto, necessário determinar essas constantes, a começar pelos auto-valores de <math>Q</math>. Tem-se: |
||
:<math>\begin{bmatrix} 1 & 1\\ 1 & 0 \end{bmatrix} \cdot \begin{bmatrix} x \\ y \end{bmatrix} = \lambda \begin{bmatrix} x \\ y \end{bmatrix} \Leftrightarrow \left\{\begin{matrix} |
:<math>\begin{bmatrix} 1 & 1\\ 1 & 0 \end{bmatrix} \cdot \begin{bmatrix} x \\ y \end{bmatrix} = \lambda \begin{bmatrix} x \\ y \end{bmatrix} \Leftrightarrow \left\{\begin{matrix} |
||
x & + & y & = & \lambda x\\ |
x & + & y & = & \lambda x\\ |
||
x & & & = & \lambda y |
x & & & = & \lambda y |
||
\end{matrix}\right. |
\end{matrix}\right.</math> |
||
Logo <math>\lambda y + y = \lambda^2 y |
Logo <math>\lambda y + y = \lambda^2 y</math>, ou seja, <math>(\lambda^2 -\lambda - 1)\cdot y = 0</math> |
||
Assim, <math>y=0 |
Assim, <math>y=0</math> (que implica <math>x=0</math>) ou <math>\lambda^2 -\lambda - 1 = 0</math>. O primeiro caso não é de interesse, pois auto-vetores não são nulos. |
||
Note que a equação acima possui duas raízes: |
Note que a equação acima possui duas raízes: |
||
* <math>\lambda_1 = \varphi = \frac{1 + \sqrt{5}}{2} |
* <math>\lambda_1 = \varphi = \frac{1 + \sqrt{5}}{2}</math> |
||
* <math>\lambda_2 = \hat{\varphi} = \frac{1 - \sqrt{5}}{2} |
* <math>\lambda_2 = \hat{\varphi} = \frac{1 - \sqrt{5}}{2}</math> |
||
Além disso, se <math>\lambda |
Além disso, se <math>\lambda</math> é raiz da equação, então para cada <math>y\not = 0</math>, o vetor |
||
:<math>\begin{bmatrix} \lambda y \\ y \end{bmatrix} = y \begin{bmatrix} \lambda \\ 1 \end{bmatrix} |
:<math>\begin{bmatrix} \lambda y \\ y \end{bmatrix} = y \begin{bmatrix} \lambda \\ 1 \end{bmatrix}</math> é um auto-vetor de <math>Q</math>. |
||
Em particular, se <math>y=1 |
Em particular, se <math>y=1</math>, os auto-vetores correspondentes a cada raiz da equação quadrática são: |
||
* <math>v = \begin{bmatrix} \varphi \\ 1 \end{bmatrix} |
* <math>v = \begin{bmatrix} \varphi \\ 1 \end{bmatrix}</math> |
||
* <math>v'= \begin{bmatrix} \hat{\varphi} \\ 1 \end{bmatrix} |
* <math>v'= \begin{bmatrix} \hat{\varphi} \\ 1 \end{bmatrix}</math> |
||
De modo que <math>Qv = \varphi v |
De modo que <math>Qv = \varphi v</math> e <math>Qv' = \hat{\varphi} v'</math> |
||
Resta escrever <math>\begin{bmatrix} 1 \\ 0 \end{bmatrix} = \alpha v+\alpha'v' |
Resta escrever <math>\begin{bmatrix} 1 \\ 0 \end{bmatrix} = \alpha v+\alpha'v'</math> conforme se pretendia. Isso é fácil, já que são conhecidos <math>v = \begin{bmatrix} \varphi \\ 1 \end{bmatrix}</math> e <math>v'= \begin{bmatrix} \hat{\varphi} \\ 1 \end{bmatrix}</math>: |
||
:<math>\left\{\begin{matrix} |
:<math>\left\{\begin{matrix} |
||
1 & = & \alpha \varphi & + & \alpha' \hat{\varphi}\\ |
1 & = & \alpha \varphi & + & \alpha' \hat{\varphi}\\ |
||
0 & = & \alpha & + & \alpha' |
0 & = & \alpha & + & \alpha' |
||
\end{matrix}\right. |
\end{matrix}\right.</math> |
||
Da segunda equação, segue que <math>\alpha' = -\alpha |
Da segunda equação, segue que <math>\alpha' = -\alpha</math>. Substituindo esse valor na primeira equação, resulta: |
||
<math>1 = \alpha \varphi - \alpha' \hat{\varphi} = \alpha (\varphi - \hat{\varphi}) |
<math>1 = \alpha \varphi - \alpha' \hat{\varphi} = \alpha (\varphi - \hat{\varphi})</math> |
||
Como <math>\hat{\varphi} = 1 - \varphi |
Como <math>\hat{\varphi} = 1 - \varphi</math> (verifique!), tem-se <math>1 = \alpha (\varphi - 1 + \varphi) = \alpha (2\varphi - 1) = \alpha \sqrt{5}</math>. Logo, <math>\alpha = \frac{1}{\sqrt{5}}</math>. |
||
Assim, <math>\begin{bmatrix} 1 \\ 0 \end{bmatrix} = \frac{1}{\sqrt{5}}(v - v') |
Assim, <math>\begin{bmatrix} 1 \\ 0 \end{bmatrix} = \frac{1}{\sqrt{5}}(v - v')</math>. Em consequência: |
||
:<math>\begin{bmatrix} F_{n+1} \\ F_{n} \end{bmatrix} = \alpha (\lambda_1^n v) + \alpha' (\lambda_2^n v') = \frac{1}{\sqrt{5}} (\varphi^n \begin{bmatrix} \varphi \\ 1 \end{bmatrix}) - \frac{1}{\sqrt{5}} (\hat{\varphi}^n \begin{bmatrix} \hat{\varphi} \\ 1 \end{bmatrix}) |
:<math>\begin{bmatrix} F_{n+1} \\ F_{n} \end{bmatrix} = \alpha (\lambda_1^n v) + \alpha' (\lambda_2^n v') = \frac{1}{\sqrt{5}} (\varphi^n \begin{bmatrix} \varphi \\ 1 \end{bmatrix}) - \frac{1}{\sqrt{5}} (\hat{\varphi}^n \begin{bmatrix} \hat{\varphi} \\ 1 \end{bmatrix})</math> |
||
Em particular, escrevendo a igualdade entre as segundas coordenadas desses vetores, obtem-se a fórmula desejada: |
Em particular, escrevendo a igualdade entre as segundas coordenadas desses vetores, obtem-se a fórmula desejada: |
||
:<math>F_n = \frac{1}{\sqrt{5}}(\varphi ^n - \hat{\varphi}^n) |
:<math>F_n = \frac{1}{\sqrt{5}}(\varphi ^n - \hat{\varphi}^n)</math> |
||
}} |
}} |
||
== Exercícios == |
== Exercícios == |
||
# Verifique, utilizando o princípio de indução, que: |
# Verifique, utilizando o princípio de indução, que: |
||
#:<math>\begin{bmatrix} F_{n+1} \\ F_{n} \end{bmatrix} = \begin{bmatrix} 1 & 1\\ 1 & 0 \end{bmatrix}^n \cdot \begin{bmatrix} F_{1} \\ F_{0} \end{bmatrix} |
#:<math>\begin{bmatrix} F_{n+1} \\ F_{n} \end{bmatrix} = \begin{bmatrix} 1 & 1\\ 1 & 0 \end{bmatrix}^n \cdot \begin{bmatrix} F_{1} \\ F_{0} \end{bmatrix}</math> |
||
# Escreva outra demonstração para a fórmula de Binet, utilizando o princípio de indução. |
# Escreva outra demonstração para a fórmula de Binet, utilizando o princípio de indução. |
||
Edição atual desde as 20h43min de 27 de fevereiro de 2012
Neste capítulo, será discutido quão eficiente é o algoritmo de Euclides para o cálculo do MDC. De forma mais precisa, se forem dados dois números inteiros:
- Quantas etapas (divisões) do algoritmo são necessárias para que um resto seja zero?
Fazendo estimativas[editar | editar código-fonte]
Recorde-se que o algoritmo baseia-se na construção da sequência:
cujos termos verificam as seguintes igualdades:
1 | |||
2 | |||
k-1 | |||
k | pois |
O algoritmo fornece , que é o último resto não nulo, obtido em passos (divisões).
Uma observação importante é que o resto de uma divisão é sempre menor que a metade do dividendo:
Sendo a primeira desigualdade válida porque e a segunda porque . Deste modo, tem-se
e em geral
- , para cada .
Assim, comparando os termos cujos índices são pares, segue:
Por indução, resulta para cada termo:
De modo análogo, ao comparar os termos ímpares, e usar novamente indução, segue:
Com isso, a sequência dos decresce geometricamente, pois está fixado. O fato de ser uma sequência decrescente já havia sido demonstrado quando se justificou o funcionamento do algoritmo de Euclides. A novidade aqui é a velocidade com que a sequência decresce. Pelos cálculos anteriores, os restos diminuem, no mínimo, tão rápido quanto os termos da progressão geométrica .
A questão colocada era: Quantas divisões são necessárias para que o resto seja zero?
Analisando a progressão geométrica dada anteriormente, conclui-se que algum de seus termos é menor do que . Nesse caso, o resto correspondente será nulo, e o algoritmo para. Para ser mais exato, como
o menor índice inteiro que torna menor que é
Onde denota o maior inteiro que não supera (a parte inteira de ).
Então , e consequentemente , pois os restos são números inteiros não-negativos.
Assim, sabendo que o algoritmo para exatamente quando , conlui-se que tal índice não pode ser maior que , em símbolos:
Para melhor compreender o significado dessa estimativa, considere que tem dígitos decimais. Então:
Aplicando o logaritmo em ambos os membros da segunda desigualdade, resulta
Logo, , que para valores grandes de é aproximadamente .
Embora esta não seja a melhor aproximação para , já é bastante útil, pois mostra que o número de etapas cresce linearmente com o número de dígitos de .
O pior caso[editar | editar código-fonte]
Para obter uma estimativa mais precisa do número de etapas que o algoritmo de Euclides leva para determinar o MDC de dois números, será considerada a seguinte questão:
- Qual é o menor valor de para o qual o algoritmo leva passos?
Veja alguns exemplos utilizando a representação matricial do algoritmo:
Para :
Para :
Para :
É fácil perceber que é mínimo quando os valores forem todos iguais a , cada entrada da matriz é um polinômio nas variáveis (que são positivas), e cujos coeficiêntes são (se puder, acrescente uma justificativa mais formal).
Se cada quociente for substituído por na fórmula de recorrência
Esta passará a ser:
Que vale para satisfazendo .
A nova relação lembra a fórmula que define a sequência de Fibonacci, embora esteja "ao contrário".
Este módulo tem a seguinte tarefa pendente: Conferir se o expoente k+1 está correto ou se deveria ser k, na próxima equação |
Matricialmente, as condições produzem as seguintes igualdades:
- , sendo que .
Com um simples uso do princípio de indução finita, consegue-se:
- , desde que .
Deste modo,
Como , segue que
- Teorema
Dado , sejam e os menores números tais que o algoritmo de Euclides aplicado a e leva exatamente passos, então e .
Exemplificando[editar | editar código-fonte]
Para determinar o valor de , seria necessário efetuar cinco divisões:
Logo, . Aproveitando este exemplo, observe que:
No entanto, se qualquer dos números for menor, o algoritmo requer menos etapas. Por exemplo, ao determinar tem-se:
Donde, .
Já o cálculo de é ainda mais simples:
Portanto, .
Melhorando as estimativas[editar | editar código-fonte]
Sabendo qual é o pior caso para a aplicação do algoritmo de Euclides, pode-se deduzir uma melhor estimativa de sua eficiência. Uma análise mais elaborada que aquela apresentada no início do capítulo fornece o seguinte resultado:
Teorema de Lamé[editar | editar código-fonte]
- Teorema
O número de passos (de divisões) no algoritmo de Euclides com entradas e é limitado superiormente por vezes a quantidade de dígitos decimais em .
Gabriel-Lamé |
Este módulo tem a seguinte tarefa pendente: Incluir breve biografia sobre Lamé. |
Para demonstrar o teorema de Lamé, é importante ter em mente algumas propriedades relacionadas a sequência de Fibonacci e ao número de ouro:
Tem-se:
Demonstração |
---|
A verificação é direta, exigindo cálculos bastante simples. |
- , arredondado para o inteiro mais próximo.
Demonstração |
---|
Utilizando a fórmula de Binet, basta observar que o módulo de é menor que , e consequentemente, quando , tem-se |
Demonstração |
---|
A justificativa será dada por indução:
|
Demonstração |
---|
De fato, valem as seguintes equivalências:
Mas (verifique a partir de ), e pois Sendo que esta última desigualdade é verdadeira. |
Como foi visto anteriormente, quando é exige exatamente passos, é tem-se e . Logo,
Aplicando o logaritmo em ambos os menbros, segue:
ou seja
Mas , então:
- , onde é o número de dígitos de
Demonstração da fórmula de Binet[editar | editar código-fonte]
Nesta seção, será deduzida a fórmula de Binet:
onde e .
A principal razão para se utilizar está fórmula, em vez da definição recursiva da sequência de Fibonacci, é que ela permite a obtenção de um termo da sequência sem precisar calcular os anteriores.
Demonstração |
---|
A relação entre os termos da sequência pode ser descrita matricialmente da seguinte forma:
Para simplificar, será adotada a seguinte notação: A partir de um simples argumento de indução (veja exercício 1), obtem-se: Neste ponto, recorre-se à Álgebra linear, para obter um jeito simples de calcular o produto acima. Se puder ser escrito
A partir daí será bastante simples conseguir a fórmula explicita para (a segunda componente do vetor à esquerda), pois seriam constantes. É, portanto, necessário determinar essas constantes, a começar pelos auto-valores de . Tem-se: Logo , ou seja, Assim, (que implica ) ou . O primeiro caso não é de interesse, pois auto-vetores não são nulos. Note que a equação acima possui duas raízes: Além disso, se é raiz da equação, então para cada , o vetor
Em particular, se , os auto-vetores correspondentes a cada raiz da equação quadrática são: De modo que e Resta escrever conforme se pretendia. Isso é fácil, já que são conhecidos e : Da segunda equação, segue que . Substituindo esse valor na primeira equação, resulta: Como (verifique!), tem-se . Logo, . Assim, . Em consequência: Em particular, escrevendo a igualdade entre as segundas coordenadas desses vetores, obtem-se a fórmula desejada: |
Exercícios[editar | editar código-fonte]
- Verifique, utilizando o princípio de indução, que:
- Escreva outra demonstração para a fórmula de Binet, utilizando o princípio de indução.
Por enquanto, não há muitos exercícios sobre este capítulo. O leitor está convidado a adicionar mais ítens a essa seção, para ajudar a melhorar o texto.