Beruflich Dokumente
Kultur Dokumente
zeros de polinomios
Eduardo Colli
24/01/2008
1 Calculando a raiz quadrada
Como calcular a raiz quadrada a partir das quatro operacoes? Ha algumas respostas.
1.1 Algoritmo semelhante ao da divisao.
Existe um algoritmo semelhante ao da divisao. Para ilustra-lo e o leitor que o conhece
o identicar, reproduzimos abaixo uma gura retirada da Wikipedia:
1.2 Algoritmo da dicotomia
Ha tambem o metodo (intuitivo) de tentativa e erro, ou dicotomia. Pressupoe
comecar por um intervalo de certeza que contenha a raiz e renar esse intervalo: o
intervalo e dividido em dois e escolhe-se entre esses dois intervalos aquele que contem
a raiz. Para exemplicar, calculemos a raiz de 1037 por esse metodo. Sabemos
que30
2
= 900 e menor do que 1037 e que 40
2
= 1600 e maior. Entao a raiz de 1037
esta entre 30 e 40. Entao tentamos o ponto medio 35, cujo quadrado e 1225, valor que
ultrapassa 1037. Portanto a raiz esta entre 30 e 35, e assim por diante. A seguinte
tabela mostra esse processo de aproximacao para o calculo da raiz de 1037 usando
uma calculadora de 8 dgitos que trunca os resultados no oitavo dgito. Na primeira
coluna esta a etapa do algoritmo (o intervalo inicial e a etapa zero).
1
k s
2
s t t
2
0 900.00000 30.000000 40.000000 1600.0000
1 900.00000 30.000000 35.000000 1225.0000
2 900.00000 30.000000 32.500000 1056.2500
3 976.56250 31.250000 32.500000 1056.2500
4 1016.0156 31.875000 32.500000 1056.2500
5 1036.0351 32.187500 32.500000 1056.2500
6 1036.0351 32.187500 32.343750 1046.1181
7 1036.0351 32.187500 32.265625 1041.0705
8 1036.0351 32.187500 32.226562 1038.5512
9 1036.0351 32.187500 32.207031 1037.2928
10 1036.6638 32.197265 32.207031 1037.2928
11 1036.9783 32.202148 32.207031 1037.2928
12 1036.9783 32.202148 32.204589 1037.1355
13 1036.9783 32.202148 32.203368 1037.0569
14 1036.9783 32.202148 32.202758 1037.0176
15 1036.9979 32.202453 32.202758 1037.0176
16 1036.9979 32.202453 32.202605 1037.0077
17 1036.9979 32.202453 32.202529 1037.0028
18 1036.9979 32.202453 32.202491 1037.0004
19 1036.9992 32.202472 32.202491 1037.0004
20 1036.9997 32.202481 32.202491 1037.0004
21 1036.9997 32.202481 32.202486 1037.0001
22 1036.9999 32.202483 32.202486 1037.0001
23 1036.9999 32.202484 32.202486 1037.0001
24 1036.9999 32.202484 32.202485 1037.0000
Observe que, nessa calculadora, o resultado de 32.202485
2
e 1037 exato, por causa
do truncamento no oitavo dgito. Mas ao pedir a raiz de 1037 ela devolve 32.202484,
porque o valor verdadeiro da raiz esta entre os dois n umeros, e o truncamento traz o
resultado para o de baixo.
1.3 Estimativa do n umero de etapas para a dicotomia
Podemos saber a priori quantas etapas precisaremos para completar o algoritmo da
dicotomia, a partir do intervalo inicial de aproximacao. Essa estimativa nao leva em
conta os problemas de truncamento, portanto e apenas uma aproxima cao. Observe
que partimos de um intervalo de tamanho 10, e em cada etapa dividimos seu tamanho
2
por 2. Entao, na etapa k, seu tamanho sera
10
2
k
.
No exemplo mostrado, a raiz tem dois algarismos signicativos antes da vrgula,
portanto so podera ter 6 depois da vrgula, por causa das limitacoes da calculadora.
Entao teremos que reduzir o intervalo ao tamanho de 10
6
. Ou seja, o n umero k de
etapas sera tal que
10
2
k
10
6
.
Para calcular k tomamos o logaritmo (na base 10) dos dois lados:
log 10 k log 2 6 log 10 .
Como log 10 e igual a 1, entao
k
7
log 2
23.25 ,
valor que e compatvel com o efetivamente realizado na tabela acima.
1.4 Algoritmo dos babilonios
Na proxima secao passaremos a descrever o algoritmo usado pelos babilonios, que e
um algoritmo de aproximacao como o da dicotomia, mas de convergencia muito mais
rapida. Mostraremos tambem, mais adiante,que modernamente esse algoritmo e um
caso particular do Metodo de Newton, um algoritmo aplicado para se achar os zeros
de praticamente qualquer funcao.
2 Algoritmo dos babil onios
2.1 Medias aritmetica e geometrica
A media aritmetica simples entre dois n umeros quaisquer a e b e denida por
a + b
2
.
Podemos escrever
a + b
2
= a +
b a
2
e, notando que
b = a +
b a
2
+
b a
2
,
3
podemos interpretar a media aritmetica simples como o meio caminho aditivo entre
a e b. A media geometrica simples entre dois n umeros positivos a e b e denida por
ab .
Analogamente `a media aritmetica, podemos escrever
ab = a
b
a
e, notando que
b = a
b
a
b
a
,
podemos interpretar a media geometrica simples como o meio caminho multiplica-
tivo entre a e b.
2.2 Localizacoes relativas das medias aritmetica e geometrica
As medias aritmetica e geometrica de dois n umeros positivos a e b sao n umeros
diferentes, se eles forem distintos. Mas podemos saber um pouco mais sobre a posicao
da media geometrica com respeito `a media aritmetica. Peguemos em primeiro lugar
dois exemplos. Suponha a = 2 e b = 30. Entao a media aritmetica e 16 (o ponto medio
entre 2 e 30), e a media geometrica e
60 = 7.7 . . .. Neste caso a media geometrica
esta `a esquerda da aritmetica, e razoavelmente afastada dela, isto e, longe do centro
do intervalo entre 2 e 30. Agora suponha a = 11 e b = 12. Neste caso a media
geometrica e igual a 11.4891..., `a esquerda mas bem proxima do centro do intervalo.
Podemos mostrar facilmente que a media aritmetica e maior do que a media
geometrica, sempre que a e b sao distintos. Basta mostrar que o quadrado da media
aritmetica entre a e b e maior do que o quadrado da media geometrica entre os dois
n umeros, se a = b. Como? Subtraia o segundo quadrado do primeiro e desenvolva a
expressao:
a + b
2
2
ab =
1
4
(a
2
2ab + b
2
)
=
1
4
(a b)
2
.
Como a = b, (b a)
2
e um n umero positivo, e a armativa ca demonstrada. E
quanto `a proximidade (ou nao) do centro do intervalo? Uma maneira de medir essa
proximidade, em comparacao com o intervalo de a a b (vamos supora < b), e examinar
o quociente
ab a
b a
.
4
No numerador, vemos a distancia de a ate a media geometrica. No denominador, ve-
mos o comprimento do intervalo. Esse quociente e sempre menor do que
1
2
, porque a
media geometrica cai `a esquerda da aritmetica, que e o centro do intervalo. E sera tao
mais proximo de
1
2
quanto mais a media geometrica se aproximar do centro, relativa-
mente ao tamanho do intervalo (ou, por outro lado, tendera a zero quando a media
geometrica estiver muito proxima de a, em rela cao ao comprimento do intervalo).
Esse quociente pode ser manipulado da seguinte maneira:
ab a
b a
=
a
b
a
1
b
a
1
b
a
1
b
a
1
b
a
+ 1
=
1
b
a
+ 1
.
Quando b/a esta proximo de 1 entao sua raiz quadrada tambem esta e o quociente
se aproxima de
1
2
. Ou seja, a media geometrica se aproxima do centro do intervalo
quando b e a estao proximos (proporcionalmente a seus tamanhos).Ja se b e muitas
vezes maior do que a entao esse quociente ca muito pequeno, signicando que a
media geometrica se aproxima do extremo esquerdo do intervalo.
2.3 O truque dos babilonios
Vejamos o algoritmo dos babilonios aplicado `a extracao da raiz de 1037.
E preciso
comecar com um palpite, que chamaremos de x
0
. Por exemplo, podemos usar
x
0
= 30, que foi o palpite que usamos para comecar o algoritmo de dicotomia. A
ideia aqui e melhorar recursivamente o palpite, para aprimorar a aproxima cao da
raiz. Ou seja, do palpite x
0
chegaremos no palpite x
1
, e depois no palpite x
2
, e assim
por diante, ate nao conseguirmos mais melhorar o palpite se a precisao de nossas
contas for nita (o processo seria innito se nao tivessemos a limita cao do n umero
de algarismos signicativos).
Como se faz a melhora no palpite? Tome por exemplo o palpite inicial x
0
= 30.
O primeiro passo e encontrar o n umero auxiliar y
0
que tem a seguinte propriedade:
a media geometrica de x
0
com y
0
deve ser exatamente igual `a raiz de 1037. Isto e:
x
0
y
0
=
1037 .
5
Mas se elevarmos os dois lados dessa expressao ao quadrado, e dividirmos os dois
lados por x
0
, chegaremos `a conclusao de que
y
0
=
1037
x
0
.
No nosso exemplo, esse n umero e aproximado por 34.566666 (usando a calculadora
de 8 dgitos que trunca no ultimo). Veja que a raiz buscada e a media geometrica
entre x
0
e
1037
x
0
, mas nao podemos calcular a media geometrica porque nao temos
como obter a raiz. Entao aproximamos essa media geometrica pela media aritmetica
dos dois n umeros e esse passara a ser nosso novo palpite, chamado de x
1
. Tudo isso
pode ser resumido na expressao
x
1
=
1
2
(x
0
+
1037
x
0
) .
Para simplicar as explica coes, consideraremos que a deni cao de x
1
inclui as operacoes
de truncamento no oitavo dgito que a calculadora realiza. O resultado, neste caso, e
x
1
= 32.283333 .
Para continuar a melhorar o palpite, reinserimos x
1
na formula acima como se fosse
x
0
, para obter x
2
:
x
2
=
1
2
(x
1
+
1037
x
1
) = 32.202586 .
Fazemos o mesmo para chegar em x
3
:
x
3
=
1
2
(x
2
+
1037
x
2
) = 32.202484
e, ao tentar obter x
4
da mesma forma, percebemos que x
4
= x
3
!! Observe que esse e
o valor obtido para a raiz de 1037 no metodo da dicotomia, mas desta vez chegamos
a ele em 3 etapas!
2.4 Por que funciona?
Falando empiricamente, a explica cao esta logo acima, quando estudamos a posicao
relativa da media geometrica. Em primeiro lugar, quanto mais x
k
estiver proximo do
valor correto, mais y
k
tambem estara. Pensando no caso da raiz de 1037 (mas isso se
aplica a qualquer n umero c do qual estejamos extraindo a raiz), x
k
estar proximo de
1037 signica
1037
x
k
1 .
6
Entao
y
k
1037
=
1037/x
k
1037
=
1037
x
k
1 .
Como x
k
e y
k
estao proximos de
1037 entao estao proximos entre si e portanto
a media aritmetica esta muito proxima da media geometrica entre x
k
e y
k
(que e
a
2
b .
Veja que a nota cao em fracoes tambem e possvel:
3
a
2
b =
a
2
b
1
3
= a
2
3
b
1
3
.
Em geral, a media geometrica ponderada e da forma
a
p
b
q
,
com p, q > 0 e p + q = 1.
3.2 Algoritmo para a raiz c ubica
Ilustremos a generaliza cao do algoritmo dos babilonios para razes c ubicas, calculando
3
x
2
k
y
k
seja
3
x
n1
k
y
k
=
n
c ,
isto e,
y
k
=
c
x
n1
k
,
onde c e o n umero positivo do qual se quer extrair a raiz, e a formula de recorrencia
ca
x
k+1
=
1
n
(n 1)x
k
+
c
x
n1
k
.
3.4 Praticando
Nao e difcil inventar os proprios exerccios para praticar o que foi discutido acima.
Basta escolher a ordem da raiz e o n umero do qual se quer extrair a raiz e sair
calculando. Tente com diferentes palpites iniciais x
0
! Por exemplo:
Exerccio. Calcule
5
f(x
k
)
m(x
k
)
,
isto e,
(x) = x
f(x)
m(x)
e a formula de recorrencia do Metodo de Newton.
4.3 Inclinacao da reta tangente
A funcao m(x) e comumente denotada por f
n
0
x
n
+
n
1
x
n1
h+
n
2
x
n2
h
2
+. . .+
n
n 1
xh
n1
+
n
n
h
n
,
onde
n
i
=
n!
(n i)!i!
e lembrando que j! signica o fatorial de j:
j! = j (j 1) (j 2) 2 1 .
Vale lembrar que os coecientes da expansao acima sao os n umeros que aparecem na
n-esima linha do Triangulo de Pascal: (1 2 1) para n = 2, (1 3 3 1) para n = 3,
(1 4 6 4 1) para n = 4, etc. Aqui, o importante sera reter que o coeciente de x
n
e 1 e o coeciente de x
n1
h e n. Ou seja,
(x + h)
n
= x
n
+ nx
n1
h + termos com h
i
, i 2 .
Entao
(x + h)
n
x
n
h
= nx
n1
+ termos com h
i
, i 1 .
13
Esses termos com h
i
, i 1, vao todos a zero quando h tende a zero. Portanto
m(x) = nx
n1
para f(x) = x
n
. Note que isso inclui os casos n = 2 e n = 3. Inclui tambem n = 1:
m(x) = 1 x
11
= 1, isto e, o graco de f(x) = x tem inclina cao 1 para todo x. O
caso n = 0 tem que ser tratado separadamente: f(x) = x
0
e a funcao constante igual
a 1, portanto m(x) = 0 para todo x.
4.5 Inclinacao para funcoes polinomiais
Um polinomio e uma soma de fun coes do tipo x
j
, multiplicadas por coecientes a
j
:
f(x) = a
0
x
0
+ a
1
x
1
+ a
2
x
2
+ . . . + a
n1
x
n1
+ a
n
x
n
.
Ao calcularmos a inclinacao das secantes, usamos o mesmo procedimento feito para
cada x
j
individualmente. Nao e difcil concluir que
m(x) = a
1
+ 2a
2
x + 3a
3
x
2
+ . . . + (n 1)a
n1
x
n2
+ na
n
x
n1
.
Um truque mnemonico e lembrar que o termo constante desaparece e que nos
demais termos a
j
x
j
a potencia desce como fator multiplicativo e e reduzida em
uma unidade, cando (j 1)a
j
x
j1
. Por exemplo, se f(x) = 2x
3
x
2
+5x +1 entao
m(x) = 6x
2
2x + 5.
Outro exemplo e f(x) = x
n
c, a funcao que tem raiz em
n
c. Neste caso,
m(x) = nx
n1
, e e essa funcao de inclinacao que usaremos para obter explicitamente
a formula de recorrencia do Metodo de Newton.
4.6 Voltando ao Metodo de Newton: f ormula de recorrencia para
extracao de razes e razes de polin omios
4.6.1 Extracao de razes
Como vimos, a formula de recorrencia do Metodo de Newton e
(x) = x
f(x)
m(x)
; .
Quando procuramos
n
(n 1)x +
c
x
n1
.
Pronto! Isto e exatamente o que tnhamos para a generalizacao do algoritmo dos
babilonios para razes de ordem n!
4.6.2 Resolvendo numericamente equacoes de segundo grau sem Baskhara
Tome por exemplo a equacao 2x
2
6x+3 = 0. Todos podem imediatamente resolve-
la e chegar nas solu coes
3
3
2
= 0.6339746 . . . e
3+
3
2
= 2.3660254 . . .. Sem uma
calculadora que extraia raiz quadrada, os valores numericos podem ser obtidos depois
de aplicar o algoritmo babilonio para calcular
3.
O Metodo de Newton permite encontrar os valores numericos das solu coes direta-
mente. Como f(x) = 2x
2
6x+3 entao m(x) = 4x6, logo a formula de recorrencia
e
(x) = x
2x
2
6x + 3
4x 6
.
A formula pode ser simplicada (coloque tudo sob o mesmo denominador e junte ou
cancele termos) para
(x) =
2x
2
3
4x 6
.
Agora precisamos escolher palpites iniciais e iterar com essa formula. Pelo menos
dois palpites terao que ser usados, pois ha duas razes a encontrar. Porem pode
acontecer de precisarmos mais do que 2, se encontrarmos dois palpites que levam `a
mesma solucao.
Por exemplo, escolhendo x
0
= 1 teremos: x
1
= 0.5, x
2
= 0.625, x
3
= 0.6339285,
x
4
= 0.6339746 e x
5
= x
4
na calculadora de 8 dgitos. E escolhendo x
0
= 3 teremos:
x
1
=, x
2
=, x
3
= e x
4
= x
5
.
15
5 Encontrando todas as razes reais de um polin omio
com o Metodo de Newton
Uma questao nao foi discutida ate agora: como devemos escolher um palpite x
0
para
comecar a iteracao do Metodo de Newton? A pergunta se faz pertinente principal-
mente quando uma funcao f tem mais do que uma raiz. Como podemos garantir
que a itera cao nos leve para uma ou para qualquer outra das razes? Como podemos
ter certeza de que achamos todas, sem ter o recurso de fazer previamente um graco
aproximado da funcao? Mesmo gracos nao sao de muita valia por nao termos certeza
se a fun cao se comporta de maneira estranha sem que detectemos as estranhezas por
falta de precisao no graco.
Embora o leitor pense que sempre podemos esbo car o graco antes de achar as
razes, deve pensar na possibilidade de que as razes devam ser encontradas de modo
automatico, por um algoritmo computacional. Um algoritmo serviria para resolver
enormes quantidades de equacoes, quando isso se zer necessario.
Infelizmente nao ha uma maneira fechada de criar tais algoritmos sem restringir o
universo de funcoes estudadas. No entanto, veremos que isso e possvel, por exemplo,
quando se trata de funcoes polinomiais.
ESTE TEXTO SER
E evidente que nas secoes que tratam de radiciacao convem que o leitor primeiro ex-
traia algumas razes, escolhendo valores a esmo. Os proximos exerccios servirao para
complementar o entendimento deste texto. E prevenindo-me daqueles que criticarao a
falta de respostas aos exerccios, ja aviso que para mim isto e uma questao ideologica!
Espero que se contentem com as sugestoes dadas...
Exerccio 1. Supondo que b > a > 0 e n 2, mostre que a media geometrica
n
a
n1
b
e menor do que a media aritmetica
n1
n
a+
1
n
b. Isto generaliza as consideracoes feitas
sobre o posicionamento da media geometrica simples em relacao ` a media aritmetica
simples. Sugestoes: (i) primeiro coloque a em evidencia nas duas medias e mostre
que o problema se reduz a mostrar que, para todo r > 1,
1 +
1
n
(r 1)
n
> r ;
(ii) mostre essa desigualdade provando por inducao que
1 +
1
n
(r 1)
j
> 1 +
j
n
(r 1) ,
16
para j = 2, 3, . . . , n.
Exerccio 2. Mostre que, no algoritmo babilonio para razes de qualquer ordem,
x
k+1
e sempre maior do que a raiz procurada, independentemente de x
k
ser maior ou
menor do que ela. Conclua que, independentemente da posic ao do palpite inicial x
0
,
todos os iterados x
1
, x
2
, etc, sao maiores do que a raiz procurada. Sugestao: use o
resultado sobre o posicionamento da media geometrica em relacao `a media aritmetica
obtido no exerccio acima.
Exerccio 3. Este exerccio se destina a dar argumentos mais convincentes de que
o algoritmo babilonio para a raiz quadrada funciona, nao importa qual seja o palpite
inicial x
0
, desde que seja positivo. Pelo exerccio acima, se c e o n umero positivo do
qual se pretende extrair a raiz quadrada, ent ao x
k
e maior do que
c, para k 1.
Mostre que, para k 1,
x
k+1
c <
1
2
(x
k
c)
Mais uma vez, o segredo e observar a posicao das medias. Da conclua que o metodo
sempre levar a `a solu cao.
Exerccio 4. Generalize o resultado do exerccio anterior para razes de ordem qual-
quer.
Exerccio 5. Observe que o algoritmo de dicotomia melhora a precisao da aprox-
imacao com fator
1
2
em cada etapa. No Exerccio 3 mostra-se que o algoritmo ba-
bilonio da raiz quadrada tem no mnimo se tem esse fator de aproximacao. No
entanto, vimos na pratica que a aproximacao do algoritmo babil onio e bem mais
rapida, signicando que zemos uma estimativa muito pessimista da velocidade de
convergencia. Este exerccio servira para mostrar porque o algoritmo e tao rapido.
Primeiro mostre que
x
k+1
c =
1
2x
k
(x
k
c)
2
.
Para isso, use a expressao de x
k+1
na forma como aparece no Metodo de Newton,
subtraindo
c, e ent ao tente colocar em evidencia o fator (x
k
c)
2
. Depois observe
que para k 1 tem-se x
k
c, logo
1
2x
k
1
2
c
. Da que
|x
k+1
c|
|x
k
c|
1
2
c
|x
k
c| ,
ou seja, o fator de diminuicao da distancia `a soluc ao e proporcional `a pr opria
distancia. Diz-se neste caso que a convergencia e quadratica (diferentemente da
convergencia geometrica em que o fator de reducao e aproximadamente constante,
como no caso do algoritmo de dicotomia).
17
Exerccio 6. Neste exerccio vamos considerar, para o calculo da raiz c ubica, a
possibilidade de usar medias (aritmetica e geometrica) ponderadas com
1
3
para x
k
e
2
3
para y
k
. Ou seja, y
k
e tal que
3
x
k
y
2
k
=
3
c
e
x
k+1
=
1
3
(x
k
+ 2y
k
) .
Veja que, como y
k
tem que ser igual a
c
x
k
, e preciso calcular uma raiz quadrada
em cada etapa do algoritmo. Calcule
3
x
j
k
y
l
k
=
c
a dependencia em x
k
e c nao envolva nenhuma raiz.
Exerccio 8. Mostre que o Metodo de Newton aplicado `a funcao f(x) =
x
2
c
1 da o
mesmo algoritmo para
c que f(x) = x
2
c.
Exerccio 9. O que o Metodo de Newton produz quando o aplicamos a funcoes que
nao tem nenhuma raiz? Examine o caso f(x) = x
2
+ 1. Primeiro pense no Metodo
de Newton de forma geometrica e depois escreva a formula de recorrencia. Mostre
que se x > 0 entao (x) <
x
2
, e que se x < 0 entao (x) >
x
2
. Em que condicoes x e
(x) tem sinais opostos? Mostre que, a nao ser que x
k
= 0 para algum k, a seq uencia
dos x
k
s alterna de sinal innitas vezes, e visita o intervalo (1, 1) tambem innitas
vezes. Mostre que a seq uencia x
k
nao pode convergir para zero (a nao ser que x
k
seja
exatamente igual a zero para algum k).
18