n
z
n
.
2
2
2
2
2
2
2
z 2
2
2
1
Acotación de los ceros de un polinomio.
Aladar Peter Santha
§0. Introducción.
Si C a bi / a, b R, i 2 1 es el cuerpo de los números complejos, teniendo en cuenta la
representación de los números complejos en el plano (Figura 0.1)
z
a bi
i
O
r
a
b
Figura 0.1
, resulta que a r cos , b rsen . Así se llega a la forma trigonométrica:
z
r cos
i sen
(r
z
0,
2k
2k , k
Z )
, donde r es el módulo y es el argumento del número complejo z .
Si z1 r1 cos 1 i sen 1 y z2 r2 cos 2 i sen 2 entonces se tienen las fórmulas siguientes:
z1 z 2 r1r2 cos( 1
2 ) i sen ( 1
2 , z
r n cos n
i sen n ,
z1 z 2
z1
z 2
, arg z1 z 2
arg z1
arg z 2 , z n
, arg z n
n arg z
Lema 0.1: Cualesquiera que sean los números reales a1 , b1 , a2 , b2
a1a2
b1b2
2
a1
b12 a2
2
b2
(01)
En efecto, para comparar dos números reales positivos es suficiente comparar sus cuadrados:
a1a2 b1b2
2 2 2 2
a1 a2 b1 b2
2a1a2 b1b2
2
a1
b12 a2
2
b2
2
2
a1
b12 a2
2
b2
2 2
a1 a2
2 2
a1 b2
b12 a2
b12 b2
a1b1 a2 b2
2
2
a1
b12 a2
2
b2
2
a1b2
a2 b1
2
0
Teorema 0.1: Si z1 a1 ib1 y z 2 a2 ib2 entonces
z1
z 2
z1
z 2
(0.2)
En efecto, para comparar los números reales positivos z1 z 2
sus cuadrados:
y z1
hay que comparar
z1
z 2
2
a1 a2
2
b1 b2
2
z1
2
z 2
2
2 a1a2 b1b2
z1
z 2
2
z1
2
z 2
2
2 z1
z 2
Según el lema 0.1,
z1
z 2
2
z1
z 2
2
2
a1 a 2
b1b2
2
a1
b12 a 2
2
b2
2 a1 a 2
b1b2
2
a1
b12 a 2
2
b2
0
, de donde resulta la desigualdad (02).
Observación 0.1: Por recurrencia se puede demostrar que
z1
z 2
? z n
z1
z 2
?
z n
(0.3)
Teorema 0.2 z1 a1 ib1 y z 2 a2 ib2 entonces
z1
z 2
z1
z 2
(0.4)
2
2
z1
z 2
z1
*
f x
1
1
k
2
Tal como en el teorema 0.1, para comparar dos números reales positivos es suficiente
comparar sus cuadrados. Puesto que
z1
z 2
2
a1 a2
2
b1 b2
2
2
a1
2 2 2
a2 b1 b2
2 a1a2 b1b2
z1
z 2
2
z1
2
z 2
2
2 z1 z 2
2
a1
2
a 2
b12
2
b2
2
2 a1
b12 a 2
2
b2
, según el lema 0.1, resulta que
z1
z 2
2
z1
z 2
2
2 a1 a 2
b1b2
2
a1
b12 a 2
2
b2
0
Observación 0.2: Puesto que
z 2 , del teorema 0.2 resulta que
z1
z 2
z1
z 2
§1. Cotas de los módulos de los ceros de una función polinomio compleja.
Sea C el cuerpo de los números complejos y sea f : C
coeficientes complejos, definida por
C una función polinomio con
f ( x)
a0 x n
a1 x n
1
? an 1 x an
(a0
0) .
(1.1)
Definición 1.1: Se dice que L
R es una cota superior de los módulos de los ceros de f si
L , cualquiera que sea el cero no nulo
de f .
Definición 1.2: Se dice que l
R* es una cota inferior de los módulos de los ceros de f si
l , cualquiera que sea el cero no nulo
de f .
Teorema 1.1: Si a
max a1 , ? , an , entonces
x
1
a
a0
f x
0
Demostración: Puesto que
x
1
a
a0
1
x 1
a0
a
, según las relaciones (0.4) y (0.2) resulta que
a0 x n a1 x n 1 ? an 1 x an
a0 x n
a1 x n
? an 1 x an
a0 x n
a0 x n
a1 x
n 1
a x
n 1
?
?
x
1
an
1
x
an
a0 xn
a
x
x
n
1
1
a0
x
n
a
a0
a
x
n
1
a0
0
Observación 1.1: Si an
an
? an
k 1
0 y an
0 1 k
n , resulta que
k
f ( x) x a0 x
n k
? an k
, y así los ceros de la función g, definida por
g ( x) a0 x n k ? an k an k 0
, son justamente los ceros no nulos de f . Así, el cálculo de L y l
reduce al mismo cálculo para la función g .
para la función f se
xi
1
1
x
.
L'
1
1
1
l
3
Teorema 1.2: Si f : C C es una función polinomio compleja con coeficientes complejos,
definida por (1.1), donde an 0 , entonces cualquiera que sea el cero de f , tendremos
, donde
l
L
L 1
a
a0
y a
max a1 , ? , an
(1.2)
l
an
an
b
y b
max a0 , ? , an
1
(1.3)
Demostración: Si x
L , entonces según el teorema 1.1 resulta que f (x) 0 y así x no
puede ser un cero de f . Por tanto, L es una cota superior de los ceros de f .
Si xi i 1, ? , n son las raíces de f ,
i 1, ? , n son los ceros de f1 ( x) x n f
Si L' es una cota superior de los módulos de los ceros de f1 x , entonces
1
xi
1
xi
L'
xi
1
L'
i 1, ,? , n
Por tanto l
es una cota inferior de los módulos de los ceros de f . Luego, puesto que
f1 ( x)
an x n
an 1 x n
? a1 x a0 ,
, según la fórmula (1.2),
L' 1
b
an
donde b
max a0 , ? , an
y así
1
L'
an
an
b
y
xa
x3
A
B
O
C
D
x
C1
x1
C2
x 2
Figura 1.1
4
Observación 1.2: Intuitivamente, el teorema 1.2 tiene el significado siguiente: los ceros de la
función f , definida por la relación (1.2) y que verifica la condición an 0 , están situados en
la corona circular determinada por dos circunferencias C1 y C2 de centro O y de radios l y L ,
respectivamente, tal como se ve en la figura 1.1.
Observación 1.3: Puesto que R C las fórmulas (1.2) y (1.3) sirven también para calcular las
cotas de los ceros complejos o reales de un polinomio con coeficientes reales. El código
necesario para calcular las cotas (1.2) y (1.3) es el siguiente:
Public Function CotasCerosPC(ByRef p10() As Double, p20() As Double) As Variant
Dim i As Integer, z As Integer, e As Integer, gq As Integer
Dim a As Double, b As Double, r(2) As Double, md() As Double
Dim p1() As Double, p2() As Double
gp = UBound(p10())
If p10(gp) = 0 And p20(gp) = 0 Then
gp = CerosFinalesCD(p10(), p20())
ReDim p1(gp), p2(gp)
For i = 0 To gp: p1(i) = p10(i): Next i
For i = 0 To gp: p2(i) = p20(i): Next i
Else
p1() = p10(): p2() = p20()
End If
ReDim md(gp) As Double
For i = 0 To gp
md(i) = Sqr(p1(i) * p1(i) + p2(i) * p2(i))
Next i
' Método Anónimo
' r(1) cota superior de los módulos de lo ceros
' r(2) cota inferior de los módulos de los ceros
'For i = 0 To gp
a = md(1)
For i = 2 To gp
If md(i) > a Then a = md(i)
Next i
b = md(0)
For i = 1 To gp – 1
If md(i) > b Then b = md(i)
Next i
r(1) = 1 + a / md(0)
r(2) = md(gp) / (b + md(gp))
r(1) = (Int(r(1) * 100) + 1) / 100
r(2) = (Int(r(2) * 100) – 1) / 100
If r(2) < 0 Then r(2) = 0
CotasCerosPC = r()
End Function
- – – – – – – – – – – – – – – – – – – – – – – – – – – – – – – – – – – – – – —
Public Function CerosFinalesC(ByRef p1() As Double, ByRef p2() As Double) As Integer
' Contar los coeficientes nulos al final del polinomio
Dim i As Integer, z As Integer, grado As Integer
Dim q() As Double, gq As Integer
grado = UBound(p1())
If p1(grado) = 0 And p2(grado) = 0 Then
i = grado: z = 0
Do Until p1(i) 0 Or p2(i) 0 Or i = 0
i = i – 1: z = z + 1
Loop
End If
gq = grado – z
CerosFinalesC = gq
Ejemplo 1.1: Utilizando la función CotasCerosPC
complejos:
en el caso del polinomio con coeficientes
P( Z )
2 3i Z 5
5 7i Z 4
1 4i Z 3
6 7i Z 2
12 5i Z
4 3i
Resulta que 3.39 (0.26) es una cota superior (inferior) de los módulos de los ceros complejos.
Observación 1.4: En el caso de los polinomios duales (con coeficientes de la forma
2
R
r
.
5
(a b , a, b
R ,
0 y
0) no se puede establecer una cota superior de los módulos de sus ceros
(tal como se ha hecho en el caso de los polinomios complejos). Para justificar esta afirmación basta
con presentar un polinomio dual que tiene infinidad de ceros y cuyos módulos forman un conjunto
que no está acotado superiormente. En efecto, si se considera el polinomio sencillo
P X
2 X
1
X
4 3
X
4 3
2 X
1
x 4
2
2 X 3
15
X 2
24 8
16 16
, entonces teniendo en cuenta que para todos los números duales de la forma xr
4 r , r
xr
4
2
r
2
r
2
2
r
2
0 0 , resulta que
P xr
0 , y lim xr
r
lim
16 r 2
Evidentemente esto ocurre siempre cuando el polinomio tiene por lo menos un par de ceros duales
conjugados.
Observación 1.5: El polinomio P(X ) de la observación 1.4 es de grado 3 y tiene infinidades de ceros.
Por tanto para los polinomios con coeficientes duales el teorema de DAlembert no es válido (es
decir el número de los ceros duales de un polinomio dual no es siempre igual con su grado).
§.2. Cotas de los ceros reales de una función polinomio real.
Sea f : R
R la función polinomio real definida por
f ( x) a0 x n a1 x n 1 ? an 1 x an
(2.1)
Definición 2.1: L1 R es una cota superior de los ceros estrictamente positivos de f si no
hay ningún cero de este tipo mayor o igual que L1 .
Definición 2.2: L3 R
es una cota inferior de los ceros estrictamente positivos de
f si no hay ningún cero de éste tipo menor o igual que L3 .
Observación 2.1: Si L1 es una cota superior de los ceros estrictamente positivos, entonces
cualquier número real positivo mayor que L1 , es una cota superior de ellos. De manera
análoga, cualquier número real positivo menor que L3 , es una cota inferior de los ceros
estrictamente positivos de f . Obviamente nos interesa el menor valor posible de L1 o bien el
mayor valor posible de L3 .
Observación 2.2: Evidentemente, 0 es una cota superior de los ceros estrictamente positivos
de f si, y solamente si, f no tiene ceros de este tipo. De manera análoga,
es una cota
inferior de los ceros estrictamente positivos de f si, y solamente si, no hay ceros de este tipo.
Definición 2.3: L2 R es una cota inferior de los ceros estrictamente negativos de f si no
hay ningún cero de este tipo menor o igual que L2 .
Definición 2.4: L4 R
es una cota superior de los ceros estrictamente negativos de
f si no hay ningún cero de éste tipo mayor o igual que L4.
Observación 2.3: Si L2 es una cota inferior de los ceros estrictamente negativos, entonces
cualquier número real negativo menor que L2 , es una cota inferior de ellos. De manera
análoga, cualquier número real negativo mayor que L4 , es una cota superior de los ceros
estrictamente negativos de f . Obviamente, en este caso también nos interesan el mayor y el
menor valor posible de L2 y L4 , respectivamente.
Observación 2.4: Obviamente, 0 es una cota inferior de los ceros estrictamente negativos de
f si, y solamente si, f no tiene ceros de este tipo. De manera análoga,
es una cota
6
superior de los ceros estrictamente negativos de f si, y solamente si, f no tiene ningún cero
de este tipo.
Observación 2.5: Si en la definición (2.1) de f tenemos
an ? an k 1 0 y an k 0 ,
, entonces,
f ( x) x k a0 x n k ? an k ,
, y sea g : R
R definida por
g ( x) a0 x n k ? an k .
Puesto que el conjunto de los ceros no nulos de f coincide con el conjunto de los ceros de g,
el cálculo de L1 , L2 L3 y L4 para f se reduce al cálculo de las mismas cotas para g .
Teorema 2.1: Si la función polinomio f está definida por la relación (2.1) y an 0 ,
entonces
L1 1
a
a0
, L3
an
an b
, L2
L1 y L4
L3
(2. 2)
, donde
a max a1 , ? , an
y b max a0 , ? , an 1
Demostración: Según el teorema 1.2, los ceros complejos no nulos de f (entre ellos los ceros
reales) tienen que ser situados en el interior de la corona circular determinada por las
circunferencias C1 y C2 de centro O y de radios L3 y L1 , respectivamente (ver figura 1.1). Los
puntos de corte de estas circunferencias con el eje Ox tienen las abscisas
xA
L1 , xB
L3 , xC L3 y xD L1 , respectivamente. Entonces es obvio que, fuera del
intervalo C , D no puede existir ningún cero estrictamente positivo, mientras que fuera del
intervalo A , B no pueden existir ceros estrictamente negativos. Así, quedan demostradas
las fórmulas (2.2) y la codificación de los cálculos es la siguiente:
Public Function AnonimoPR(ByRef p0() As Double) As Variant
' MÉTODO ÁNÓNIMO
Dim a As Double, b As Double, gp As Integer, y(4) As String
Dim p() As Double, res(4) As String, xx(4) As Double
p() = CerosFinalesR(p0)
gp = UBound(p())
a = Abs(p(1))
For i = 2 To gp
If Abs(p(i)) > a Then
a = Abs(p(i))
End If
Next i
b = Abs(p(0))
For i = 1 To gp – 1
If Abs(p(i)) > b Then
b = Abs(p(i))
End If
Next i
xx(1) = 1 + a / Abs(p(0)): xx(1) = Redondeo(xx(1), 1): xx(2) = -xx(1)
xx(3) = Abs(p(gp) / (Abs(p(gp) + b))): xx(3) = Redondeo(xx(3), 3): xx(4) = -xx(3)
For i = 1 To 4: y(i) = FormatoNumero(xx(i)): Next i
res(4) = y(1) ' Cota superior ceros positivos
res(1) = y(2) ' Cota inferior ceros negativos
res(3) = y(3) ' Cota inferior ceros positivos
res(2) = y(4) ' Cota superior ceros negativos
Anonimo = res()
End Function
———————– –
7
Public Function CerosFinalesR(ByRef p() As Double) As Variant
' Supresión de ceros al final del polinomio
Dim i As Integer, z As Integer, grado As Integer
Dim q() As Double, gq As Integer
grado = UBound(p())
If p(grado) = 0 Then
i = grado: z = 0
Do Until p(i) 0 Or i = 0
i = i – 1: z = z + 1
Loop
End If
gq = grado – z
ReDim q(gq)
For i = 0 To gq: q(i) = p(i): Next i
CerosFinalesR = q()
End Function
——————–
Public Function Redondeo(ByVal ls As Double, ByVal k As Integer)
' REDONDEO DE LAS COTAS
Dim valor As Double
valor = ls * 100
If valor Int(valor) Then ' hay más que 2 decimales
If k = 2 Or k = 3 Then
ls = (Int(valor) – 1) / 100
Else
ls = (Int(valor) + 1) / 100
End If
End If
Redondeo = ls
End Function
Ejemplo 2.1: Si se considera el polinomio siguiente con coeficientes reales:
P X
31X 5 123 X 4
47 X 3 84 X 2
72 X
65
, según el código anterior resulta que si
es un cero real del polinomio entonces
4.97, 0.33
0.33,4.97
Los módulos de los ceros complejos pertenecen al intervalo: (0.33 , 4.97)
Teorema 2.2: Sea K3 una cota superior de los ceros estrictamente positivos de la función
polinomio
f 3 : x
x n f
1
x
Si K 3 0 ,1/ K 3 es una cota inferior de los ceros estrictamente positivos de f . Si K 3 0 , la
cota inferior de los ceros estrictamente positivos de f es el
, es decir, no hay tales ceros.
Demostración: Primero, si
es un cero estrictamente positivo de f , entonces 1 / es un
cero estrictamente positivo de f 3 :
f 3
1
n
f
0
Si K 3 0 , f 3 no tiene ceros estrictamente positivos y así f tampoco tendrá ceros de este
tipo. Por tanto, en este caso el
f . Si K3 > 0, entonces
es una cota inferior de los ceros estrictamente positivos de
x
K 3
f
1
x
0
(2.3)
Puesto que
8
0
y
1
K 3
1
y
K 3
, según (2.3), resulta que
0
y
1
K 3
f y
0 .
Así pues, f no tiene ceros estrictamente positivos menores o iguales que 1 / K3 . Por tanto,
1 / K3 es una cota inferior de los ceros estrictamente positivos de f .
Teorema 2.3: Si K 2 es una cota superior de los ceros estrictamente positivos de la función
polinomio
f 2 : x
f x ,
, entonces K 2 es una cota inferior de los ceros estrictamente negativos de f .
Demostración: Dado que
, y que
x K 2
f x
0
, resulta que
y
K 2
y K 2
y
K 2
f y
0 .
De esta última implicación resulta que f no puede tener ningún cero estrictamente negativo,
menor o igual que K 2 . Por tanto K 2 es una cota inferior de los ceros estrictamente
negativas de f .
Teorema 2.4: Sea K 4 una cota superior de los ceros estrictamente positivos de la función
polinomio
f 4 : x
x n f
1
x
, entonces 1 / K 4 ó
es una cota superior de los ceros estrictamente negativos de f ,
según que K 4 0 ó K 4 0 , respectivamente.
Demostración: Si
es un cero estrictamente negativo de f , entonces 1/ es un cero
estrictamente positivo de f 4 , puesto que
f 4
1
1
n
f
0
Si K 4 0 , entonces f 4 no tiene ceros estrictamente positivos y, por tanto, f tampoco tendrá
raíces de este tipo, es decir, el
negativos de f .
Si K 4 0 , teniendo en cuenta que
será una cota superior para los ceros estrictamente
x
K 4
f
1
x
0
, y que
1
K 4
y
0
1
y
K 4
, se obtiene que
1 / K 4
k
k
k
9
1
K 4
y
0
f y
0 .
Con otras palabras, f no tiene ceros estrictamente negativos mayores o iguales que
y así 1 / K 4 es una cota superior para los ceros estrictamente negativos de f .
De los últimos tres teoremas resulta que es bastante hallar métodos para el cálculo de las
cotas superiores de los ceros estrictamente positivos de una función polinomio, puesto que el
cálculo de los otras cotas se reduce a esto.
Dado que en los tiempos anteriores a la aparición de los ordenadores las cotas calculadas con
las fórmulas (2.2) no eran consideradas de las mejores, en el caso de los polinomios reales se
han buscado otros métodos más satisfactorios.
Teorema 2.5 (de Lagrange): Si la función polinomio no nula f , definida por (2.1), cumple
la condición
ai 0 i 0, 1, ? , n
(2.4)
, entonces 0 es una cota superior de los ceros estrictamente positivos de f puesto que para
cualquier x 0 resulta que f x 0 , es decir, f no tiene ceros estrictamente positivos.
Si a0 0 y no todos los coeficientes restantes son mayores o iguales que 0, sea ak el primer
coeficiente negativo y sea A el mayor número entre los valores absolutos de los coeficientes
negativos. Entonces
L 1 k
A
a0
, es una cota superior de los ceros estrictamente positivas de f .
En efecto, en este último caso, sustituyendo en la expresión de f x los coeficientes positivos
a1 , a2 , ? , ak 1 con ceros y los coeficientes ak , ? an con A, f x decrecerá, y así tendremos:
f ( x) a0 x n
? ak 1 x n
k 1
ak x n
? an
a0 x n
A x n
? x 1
Por otra parte,
x 1
k
A
a0
x 1
k
A
a0
, y por tanto,
f x
a0 x
n
A x n k 1 1
x 1
a0 x
n
Ax n k 1
x 1
f x
x n k 1
x 1
a0 x k
1
x 1
A
x n k 1
x 1
a0 x 1
A
f x
x n k 1 a0 A
x 1 a0
A
0
Así pues, si x L , f x no puede anularse y por tanto, L es una cota superior de los ceros
estrictamente positivos de f .
El procedimiento siguiente calcula las cotas de los ceros reales según el método basado en el
teorema anterior.
Public Function Lagrange1(ByRef p0() As Double) As Variant
10
'—— PRIMER MÉTODO DE LAGRANGE ——-
Dim i As Integer, j As Integer, k As Integer, sw As Integer, w As Integer
Dim cs As Double, gp As Integer, ic(4) As Integer, t As Double
Dim p() As Double, res(4) As String, ct() As Double, h() As Double
ic(1) = 4: ic(2) = 1: ic(3) = 3: ic(4) = 2
p() = CerosFinalesR(p0())
gp = UBound(p())
ct() = Transformaciones(p())
For k = 1 To 4
ReDim h(gp)
j = 0: sw = 0
For i = 1 To gp
If ct(i, k) < 0 Then
h(j) = Abs(ct(i, k))
j=j+1
If sw = 0 Then
w = i: sw = 1
End If
End If
Next i
t = h(0)
For i = 1 To j – 1
If h(i) > t Then t = h(i)
Next i
If sw = 0 Then
cs = 0
Else
cs = 1 + Abs(t / ct(0, k)) ^ (1 / w)
End If
res(ic(k)) = RutinaCotas(cs, k)
Next k
Lagrange1 = res()
End Function
————————————–
Public Function Transformaciones(ByRef p0() As Double) As Variant
Dim gp As Integer, e As Integer, k As Integer
Dim ct() As Double, p() As Double, i As Integer
p() = CerosFinales(p0())
gp = UBound(p())
ReDim ct(gp, 4)
For i = 0 To gp: ct(i, 1) = p(i): Next i
' TRANSFORMACIONES DEL POLINOMIO
'Dim i As Integer, z As Integer, e As Integer
' Transformación de X en -X
e = gp Mod 2
For i = 0 To gp
If e 0 Then
ct(i, 2) = (-1) ^ (i + 1) * ct(i, 1)
Else
ct(i, 2) = (-1) ^ i * ct(i, 1)
End If
Next i
' Transformación de X en 1/X y de X en -1/X
For i = 0 To gp
ct(i, 3) = ct(gp – i, 1)
ct(i, 4) = ct(gp – i, 2)
Next i
For k = 1 To 4
If ct(0, k) < 0 Then
For i = 0 To gp
ct(i, k) = -ct(i, k)
Next i
End If
Next k
Transformaciones = ct()
End Function
—————————————-
Public Function RutinaCotas(ByVal cs As Double, ByVal k As Integer) As String
Dim res As String
If k = 1 Then
'Cota superior ceros positivos
cs = Redondeo(cs, k): res = FormatoNumero(cs)
f ( x)
*
11
End If
If k = 2 Then
'Cota inferior ceros negativos
cs = Redondeo(-cs, k): res = FormatoNumero(cs)
End If
If k = 3 Then
'Cota inferior ceros positivos
If cs 0 Then
cs = Redondeo(1 / cs, k): res = FormatoNumero(cs)
Else
res = "+infinito"
End If
End If
If k = 4 Then
'Cota superior ceros negativos
If cs 0 Then
cs = Redondeo(-1 / cs, k): res = FormatoNumero(cs)
Else
res = "-infinito"
End If
End If
RutinaCotas = res
End Function
—————————————-
Public Function FormatoNumero(ByVal x As Double) As String
Dim xx As String
xx = Str$(x)
If Abs(x) >= 1 Then
FormatoNumero = Str$(x)
Else
If Left$(xx, 1) = "-" Then
FormatoNumero = "-0" + Right$(xx, Len(xx) – 1)
Else
If x = 0 Then
FormatoNumero = Str$(0)
Else
FormatoNumero = "0" + Right$(xx, Len(xx) – 1)
End If
End If
End If
End Function
Ejemplo 2.2: Si
2×12 3×11 4×10 7 x 9 10×8 8x 7 9x 6 5x 5 4x 4 6x 3 2x 2 2x 7
, y es uno de sus ceros reales entonces
3.25 , 0.45
0.4 , 6
Teorema 2.6 (de Lagrange): Si f es la función polinomio definida por (2.1) y a0 0 ,
existe c R* tal que f c 0 y en la sucesión de los coeficientes no nulos hay exactamente
un par de números consecutivos de signos contrarios, entonces
x c
f (x) 0 ,
, es decir, c es una cota superior de los ceros estrictamente positivos de f .
Demostración: Dado que
a0 0 y lim f x
x
, existirá r
R tal que f x sea mayor que cero para x mayor que r. Por tanto c podría ser
cualquier número real mayor que r. Luego, según las hipótesis, existirá en la sucesión de los
coeficientes un término ak tal que ak 0 y que este término separe los términos positivos de
los negativos.
Si ak t es el primer término negativo no nulo, entonces
k
t
k
t
t
R
*
12
f x
a0 x n
? ak x n
ak 1 x n
k 1
?
an
x n
k
a0 x k
? ak
ak
x
?
an
x
x n
k
g x
h x
, donde
g ( x)
a0 x k
? ak
h x
ak
x t
?
an .
x k
Teniendo ahora en cuenta que de x c 0 resultan las desigualdades:
x n k c n k , g ( x) g (c) y h( x) h(c) ,
, de x c 0 y de f c 0 resultará que
f ( x) x n k g ( x) h( x) c n k g (c) h(c) 0 .
Así, c es una cota superior de los ceros estrictamente positivos de f .
Si la función polinomio f está definida por la relación (2.1) y a0 0 entonces se puede
escribir a f x de la manera siguiente:
f ( x) f1 ( x) f 2 ( x) ? f m ( x) ,
, donde las funciones polinomios f i i 1, ? , m o bien tienen todos los coeficientes
positivos o bien verifican las condiciones del teorema (2.6). Por ejemplo, si
f x 5x 9 9×8 2x 6 4x 5 33x 4 2x 3 7 x 1
, entonces las funciones f1 , f 2 , f 3 se definen de la manera siguiente:
f1 x
5x 9 9×8
f 2 x
f 3 x
2x 6 4x 5
7 x 1
33x 4
2x 3
, y obviamente,
f x
f1 x f 2 x f 3 x .
Si ci
i 1, ? , m son tales que f i ci 0 i 1, ? , m , y c
x ci
f i (x) 0
max c1 , c2 ,? , cm ,
, cualquiera que sea i 1, ? , m . Por tanto, tendremos también
x c
f (x) 0 ,
, y así c será una cota superior de los ceros estrictamente positivas de f .
Si en el ejemplo anterior se observa que
f1 x x8 5x 9
f 2 x
f 3 x
x 3 2x 3 4x 2 33x 2
7 x 1
, entonces se verifica fácilmente que c1 2 , c2 4 y c3 1 . Por tanto 4 es una cota superior
de los ceros estrictamente positivos de f .
Observación 2.6: Si a0 0 , entonces teniendo en cuenta que f y f tienen los mismos
ceros, para hallar una cota superior de los ceros estrictamente positivos de f , hay que aplicar
13
el mismo procedimiento que antes, pero para la función f .
El método expuesto en el teorema 2.6 se puede codificar de la manera siguiente:
Public Function Lagrange2(ByRef p0() As Double) As Variant
' —– SEGUNDO MÉTODO DE LAGRANGE —–
Dim i As Integer, j As Integer, k As Integer, ic(4) As Integer
Dim sg As Integer, ng As Integer, sw As Integer, gp As Integer
Dim ps As Single, cs As Double, a As Double, fa As Double
Dim i1() As Integer, f1() As Double, ct() As Double
Dim p() As Double, res(4) As String
ic(1) = 4: ic(2) = 1: ic(3) = 3: ic(4) = 2
p() = CerosFinalesR(p0())
gp = UBound(p())
ct() = Transformaciones(p())
For k = 1 To 4
' ==== NÚMERO DE LOS GRUPOS
sg = 1: j = 0
For i = 0 To gp
If ct(i, k) < 0 Or sg 1 Then
If ct(i, k)