Sunteți pe pagina 1din 8

5 Polinomios de una variable En esta seccin, hablaremos de polinomios de una variable y el estudio del algorito de la divisin de la secundaria.

Este simple algoritmo tiene algunas sorprendentemente y profunda consecuencias, por ejemplo, lo vamos a utilizar para determinar la estructura de los ideales de k[x] y para explorar la idea de un mximo comn divisor. La teora desarrollada nos permitir resolver, en el caso especial de polinomios en k[x], la mayora de los problemas planteados en anteriores secciones. Tambin vamos a empezar a comprender el importante papel desempeado por los algoritmos. En este momento de sus carreras matemticas, la mayora de los alumnos ya han visto una variedad de algoritmos, aunque el trmino "algoritmo" no podria haber sido usado. De manera informal, un algoritmo es un conjunto especfico de instrucciones para la manipulacin simblica o numrica de datos. Ejemplos de ello son las frmulas de derivacin del clculo y el mtodo de la reduccin de fila del lgebra lineal. Un algoritmo tiene entradas, que son objetos los cuales son usados por el algoritmo, y los resultados, que son los resultados del algoritmo. En cada etapa de ejecucin, el algoritmo debe especificar exactamente lo que el siguiente paso ser. Cuando estamos estudiando un algoritmo, por lo general que presentar en "pseudocdigo" lo que har que la estructura formal sea ms fcil de entender. Pseudocdigo es similar al lenguaje de programacin Pascal, y una breve discusin se da en el Apndice B. Otra de las razones para el uso de pseudocdigo es que indica como el algoritmo puede ser programado en una computadora. Tendramos Tambin que mencionar que la mayora de los algoritmos de este libro se aplican en los sistemas de lgebra computacional como AXIOM, Macsyma, Maple, Mathematica, y REDUCE. Apndice C tiene ms informacin sobre estos programas. Comenzamos discutiendo el algoritmo de la divisin de polinomios en k [x]. Un crucial componente de este algoritmo es la nocin del trmino "principal" de un polinomio en una variable. La definicin exacta es la siguiente. Definicin 1. Dado un polinomio no nulo f k[x], sea

donde [por lo tanto, m = grad (f)]. Entonces decimos que ( ) el termino principal de f, escribimos . Por ejemplo, si , entonces, si f y g son polinomios no nulos, entonces ( )

es

. Observe tambin que

divide Ahora podemos describir el algoritmo de la divisin. Proposicin 2: (El algoritmo de la divisin). Sea k un cuerpo y sea g un polinomio distinto de cero en , -. Entonces, cada , - se puede escribir como donde q, r k[x], y, o bien o grad(r) < grad(g). Por otra parte, Q y R son nicos, y hay un algoritmo para encontrar Q y R.

Prueba. Aqu est el algoritmo para encontrar Q y R, presentado en pseudocdigo:

La declaracion WHILE. . . DO significa hacer las operaciones hasta que la expresin entre el WHILE y DO se vuelve falsa. Las declaraciones q: =. . . y r: =. . . indican que estamos definiendo o redefiniendo los valores de Q y R. Tanto Q y R son las variables de este algoritmo que cambian el valor en cada paso. Tenemos que mostrar que el algoritmo termina y que los valores finales de Q y R tienen las propiedades requeridas. (Para una discusin ms completa de pseudocdigo, vea el Apndice B) Para ver por qu funciona el algoritmo, primero note que es vlido para los primeros valores de Q y R, y que cada vez que se redefine Q y R, la igualdad sigue siendo cierta. Esto es debido a la identidad

luego, tenga en cuenta que la declaracin WHILE DO termina cuando " y LT(g) divide LT(r)" es falsa, es decir, cuando ya sea r = 0 o LT(g) no divide LT(r). Por (1), esta ltimo afirmacin es equivalente a GRAD(r) < GRAD(g). As, cuando el algoritmo termina, se produce Q y R con las propiedades requeridas. No terminando el hecho; todava tenemos que demostrar que el algoritmo termina, es decir, que la expresin entre el WHILE y el DO eventualmente se convierte en falsa (de lo contrario, quedara atrapado en un bucle infinito). La observacin clave es que r-(LT (r)/LT(g))g es 0 o tiene menor grado que r. Para ver por qu, supongamos que:

y supongamos que m k. Entonces

y esto deduce que el grado de r debe bajar (o toda la expresin puede desaparecer). Dado que el grado es finito, se puede bajar a lo sumo un nmero finito de veces, lo que demuestra que el algoritmo termina. Para ver como este algoritmo corresponde al proceso aprendido en la escuela secundaria, considere la siguiente divisin parcialmente efectuada:

Aqu, F y G estn dadas por y , y ms importante es que los actuales (pero no definitivos) valores de q y r son Ahora note que las declaraciones:

en el WHILEDO Bucle corresponden exactamente con el siguiente paso en la divisin anterior. El paso final para demostrar la proposicin es mostrar que q y r son nicos. As que supongamos que , donde ambos r y r tienen grado menor que g (a menos que una o ambas sean 0). Si , Entonces grado(r-r) < grado(g). Por otra parte, ya que

tendramos

, y, en consecuencia,

Esta contradiccin obliga a que r = r, y, entonces (2) muestra que q = q. Esto completa la prueba de la proposicin. La mayora de los sistemas de lgebra computacional implementan el algoritmo anterior [con algunas modificaciones- ver DAVENPORT, SIRET,y TOURNIER(1993)] para divisin de polinomios. Un corolario til del algoritmo de la divisin concierne al nmero de races de un polinomio de una variable. Corolario 3. Si k es un cuerpo y f K[x] es un polinomio distinto de cero, entonces f tiene al menos grad (f) races en k. Prueba. Usaremos induccin sobre m=grad (f). Cuando m=0, f es una constante diferente de cero, y el corolario es evidentemente cierto. Supongamos ahora que el corolario es vlido para todos los polinomios de grado m-1, y f tiene grado m. Si f no tiene races en k, entonces estamos hechos. As que supongamos que a es una raz en K. Si dividimos f por x-a, entonces la Proposicin 2 nos dice que f=q(x-a)+r, donde r k desde x - a tienengrano uno. Para determinar r, evaluar ambos lados en x = a, lo que da 0 = f (a) = q(a)(a-a)+r=r. De ello se deduce que f=q(x-a). Tenga en cuenta tambin que q tiene grado m - 1. Sostenemos que cualquier raz de f otra que es tambin una raz de q. Para ver esto, sea una raz de f. Entonces 0=f(b)=q(b)(b - a) implica que q(b)=0 ya

que k es un cuerpo. Ya que q tiene como mximo m-1 races por nuestra hiptesis inductiva, f tiene a lo sumo m races en k. Esto completa la prueba. Corolario 3 se utiliz para probar la Proposicin 5 en el 1, que dice que ( ) * + cada vez que k es infinito. Este es un ejemplo de cmo un hecho geomtrico puede ser la consecuencia de un algoritmo. Tambin podemos utilizar la Proposicin 2 para determinar la estructura de todos los ideales de k[x]. Corolario 4. Si k es un cuerpo, entonces todos los ideales de k[x] se puede escribir en la forma para algunas f k[x]. Por otra parte, f es nica hasta la multiplicacin por una constante distinta de cero en k. , entonces se hacen desde . De lo Prueba. Tome un ideal I k[x]. Si contrario, Sea f un polinomio no nulo de grado mnimo contenido en I. Pediremos que . La inclusin es obvia ya que es un ideal. Vamos para el otro lado, tomamos g I. Por el algoritmo de la divisin (Proposicin 2), tenemos , donde sea r = 0 o el grad(r) < grad(f). Desde que es un ideal, y, por tanto, . Si r no es cero, entonces grad(r) < grad(f), que contradecira nuestra eleccin de f. Por lo tanto, r = 0, por lo que . Esto prueba que . Para el estudio de la unicidad, supongamos que . Entonces implica que para de algun polinomio Por lo tanto,

de manera que grad(f) grad(g). El mismo argumento con F y G intercambiados muestra grad(f) grad(g), y se deduce que grad(f) = grad(g). Entonces (3) implica grad(h) = 0, de modo que es una constante diferente de cero. En general, un ideal generado por un elemento se llama ideal principal. A la vista de Corolario 4, decimos que , - es un dominio de ideales principales, abreviado PID. La prueba del Corolario 4 nos dice que el generador de un ideal en K[x] es un polinomio distinto de cero de grado mnimo contenido en el ideal. Esta descripcin no es til en la prctica, pues requiere que verifiquemos el grado de todos los polinomios (hay infinitamente muchos) en el ideal. Hay una mejor manera de encontrar el generador? Por ejemplo, cmo encontramos un generador del ideal

La herramienta necesaria para resolver este problema es el mximo comn divisor. Definicin 5. Un mximo comn divisor de los polinomios f, g k[x] es un polinomio tal que: (I) h divide F y G. (Ii) Si p es otro polinomio que divide a f y g, entonces p divide h. Cuando tiene estas propiedades, escribimos = mcd (f, g). Estas son las principales propiedades de GCDs. Proposicin 6. Sea f, g k [x]. Entonces: (I) MCD (f, g) existe y es nica hasta la multiplicacin por una constante distinta de cero en k.

. (II)MCD (f, g) es un generador del ideal (III) Existe un algoritmo para encontrar mcd (f, g). . Dado que todos los ideales de K[x] es el principal (Corolario 4), Prueba. Tenga en cuenta el ideal existe , - tal que . Sostenemos que la es el MCD de f, g. Para ver esto, primero note que divide y ya que . As, la primera parte de Definicin 5 est satisfecha. A continuacin, supongamos que , - divide a F y G. Esto significa que , hay A, B, tales que y para algunos , -. Ya que . Sustituyendo, obtenemos

lo que demuestra que p divide h. Por lo tanto, h = mcd (f, g). Esto demuestra la existencia del MCD . Para probar la unicidad, supongamos que h fue otro MCD de f y g. Entonces, por la segunda parte de la definicin 5, h y h se dividen cada uno del otro. Esta facilidad implica que h es un mltiplo constante distinto de cero de h . Por lo tanto, la parte (i), del corolario esta probada, y la parte (ii) sigue por el camino en el cual encontramos h en el prrafo anterior. La prueba de la existencia que acabamos de dar no es til en la prctica. Depende de nuestra capacidad para . Como sealamos en la siguiente discusin al Corolario 4, el implica la encontrar un generador de comprobacin de los grados de infinitamente muchos polinomios. Afortunadamente, hay un algoritmo clsico, conocido como el algoritmo de Euclides, que calcula el MCD de dos polinomios en k [x]. Esto es lo que la parte (iii) de la proposicin trata. Vamos a necesitar la siguiente notacin. Sea f, g k[x], donde , y escribimos , donde Q y R son como en la Proposicin 2. Entonces colocamos r = resto (f, g). Ahora podemos afirmar el algoritmo de Euclides para encontrar el mcd (f, g):

Para ver por qu este algoritmo calcula el MCD, escribir Afirmamos que: (4) ( ) ( ) ( ).

como en la Proposicin 2.

Para probar esto, por la parte (ii) de la proposicin, basta para mostrar que los ideales iguales. Dejaremos este argumento sencillo como un ejercicio. Podemos escribir (4) de la forma ( Tenga en cuenta que grad (g) > grad (r) o r = 0. Si repitiendo este proceso. Por lo tanto, escribimos como antes, obtenemos: ( ) ) ( ).

son

, podemos hacer las cosas an ms pequeas como en la proposicin 2, y argumentando ( )

Donde el grad(r) > grad(r) o r = 0. Continuando de esta manera, obtenemos ( ) ( ) ( ) ( ) ( )

Donde o los grados decrecen ( ) ( ) ( ) ( )

o el proceso termina cuando uno de los r, r, r, se convierte en 0. Podemos ahora explicar como el algoritmo de Euclides trabaja. El algoritmo tiene variables h, s, y podemos ver estas variables en la ecuacin (5): los valores de h son los primeros polinomio en cada MCD, y los valores de s son los segundo. Usted debe verificar que en (5), al pasar de un MCD a otro es exactamente lo que se hace en el bucle WHILE . . . DO del algoritmo. As, en todas las etapas del algoritmo, MCD(h, s)=MCD(f, g). El algoritmo debe terminar porque el grado de s contina descendiendo, por lo que en alguna etapa, s = 0. obviamente, es igual a , Cuando esto sucede, tenemos que mcd (h, 0) = mcd (f, g), y desde que tenemos MCD(h, 0) = h. Combinando estas dos ltimas ecuaciones, se deduce que h= mcd (f, g) cuando s = 0. Esto prueba que h es el MCD de f y g cuando el algoritmo termina, y la prueba de la Proposicin 6 se ha completado. Podriamos mencionar que tambin existe una versin del algoritmo de Euclides para encontrar el MCD de dos nmeros enteros. La mayora de los sistemas de lgebra computacional tiene un comando para encontrar el MCD de dos polinomios (o enteros) los cuales utilizan una forma modificada del algoritmo de Euclides [ver DAVENPORT, SIRET y TOURNIER (1993) para obtener ms detalles]. Para ver un ejemplo de cmo funciona el algoritmo de Euclides, vamos a calcular el MCD de En primer lugar, utilizaremos el algoritmo de la divisin:

Luego, por la ecuacin (5), obtenemos ( ) ( ) ( ) ( )

Tenga en cuenta que este clculo del MCD responde a nuestra pregunta anterior de encontrar un generador del . A saber, la Proposicin 6 y ideal ( ) implica que:

En este punto, es natural preguntarse lo que ocurre para un ideal generado por tres o ms polinomios. Cmo encontrar un generador en este caso? La idea es ampliar la definicin de MCD a ms de dos polinomios. Definicin 7. Un mximo comn divisor de polinomios h tal que: (I) h divide (II) Si p es otro polinomio que divide es un polinomio

, entonces p dividide h. ).

Cuando h tiene estas propiedades, escribimos h = mcd ( Estas son las principales propiedades de estos MCD.

Proposicin 8. Sea , donde s 2. Entonces: (I) mcd ( ) existe y es nica hasta la multiplicacin por una constante distinta de cero en k. . (II) mcd ( ) es un generador del ideal ( )) (III) Si s 3, entonces MCD ( ) ( (IV) Existe un algoritmo para encontrar mcd ( ).

Prueba. Las pruebas de los puntos (i) y (ii) son similares a las pruebas que figuran en la Proposicin 6 y sern omitidas. Para probar la parte (iii), sea ( ). Dejamos como un ejercicio demostrar que:

En el punto (ii) de esta proposicin, vemos que ( ) (

( ) Entonces ( ) sigue de la parte de unicidad del Corolario 4, lo que demuestra lo que queremos. Por ltimo, tenemos que demostrar que existe un algoritmo para encontrar ( ). La idea bsica es combinar la parte (iii) con el algoritmo de Euclides. Por ejemplo, supongamos que queremos calcular el MCD de cuatro polinomios . Usando la parte (iii) de la proposicin dos veces, obtenemos

Entonces, si utilizamos el algoritmo de Euclides tres veces [una vez por cada MCD en la segunda lnea de (6)], obtenemos el MCD de . En los ejercicios, se le pedir escribir un pseudocdigo de un algoritmo que implemente esta idea para un nmero arbitrario de polinomios. La Proposicin 8 est probada. El comando MCD en la mayora de los sistemas de lgebra computacional slo maneja dos polinomios a la vez. Por lo tanto, para trabajar con ms de dos polinomios, tendr que utilizar el mtodo descrito en la prueba de la Proposicin 8. Por ejemplo, consideremos el ideal

Sabemos que el

) es un generador. Adems, puedes comprobar que

Resulta que

En trminos ms generales, dado

es claro que ahora tenemos un algoritmo para

encontrar un generador de . Para otra aplicacin de los algoritmos desarrollados aqu, tenga en cuenta el problema de la pertenencia del ideal desde 4: dado , - se encuentra en el ideal , existe un algoritmo para decidir si un polinomio dado ? La respuesta es s, y el algoritmo es fcil de describir. El . Entonces, puesto que

primer paso es usar MCD para encontrar un generador h de

es equivalente , slo tenemos que utiliza el algoritmo de la divisin para escribir , donde grad(r) < grad(h). De ello se deduce que f esta en el ideal si y slo si r = 0. Por ejemplo, supongamos que queremos saber si

Nos sawabove que x - 1 es un generador de este ideal de modo que nuestra pregunta puede expresarse de otra manera en cuanto a si

Dividiendo, encontramos que

y esto deduce que

no est en el ideal

. En el captulo

2, vamos a solucionar el problema de pertenencia a un ideal para polinomios en usando una estrategia similar: en primer lugar se encuentra una buena base del ideal (Llamada base de Groebner) y luego vamos a utilizar un algoritmo de la divisin generalizada para determinar si un polinomio esta en el ideal. En los ejercicios, veremos que en el caso de una variable, otros problemas que se plantearon en secciones anteriores pueden ser resueltos mediante algoritmos utilizando los mtodos descritos aqu.