lgebra y matem tica discreta - 2012 sesi n de pr cticas 1
TRANSCRIPT
Índice Introducción Estructuras Algebraicas Listas Los Números Enteros Polinomios
Álgebra y Matemática Discreta - 2012
Sesión de Prácticas 1
Leandro Marín
Dpto. de Matemática Aplicada
Facultad de Informática
2012
Índice Introducción Estructuras Algebraicas Listas Los Números Enteros Polinomios
1 Estructuras Algebraicas
2 Listas
3 Los Números Enteros
4 Polinomios
Índice Introducción Estructuras Algebraicas Listas Los Números Enteros Polinomios
El Programa sage
El programa sage es un paquete matemático de software libreque dispone de muchas funcionalidades. Vamos a empezar lasprácticas con él.
Índice Introducción Estructuras Algebraicas Listas Los Números Enteros Polinomios
El Programa sage
El programa sage es un paquete matemático de software libreque dispone de muchas funcionalidades. Vamos a empezar lasprácticas con él.
Se puede descargar libremente de la direcciónhttp://www.sagemath.org
Índice Introducción Estructuras Algebraicas Listas Los Números Enteros Polinomios
El Programa sage
El programa sage es un paquete matemático de software libreque dispone de muchas funcionalidades. Vamos a empezar lasprácticas con él.
Se puede descargar libremente de la direcciónhttp://www.sagemath.org
Existen multitud de recursos en internet, desde cursos paraestudiantes preuniversitarios hasta programas a nivel deinvestigación.
Índice Introducción Estructuras Algebraicas Listas Los Números Enteros Polinomios
La Estructura como Variable
Tenemos una gran cantidad de estructuras algebraicasdefinidas dentro de sage que podemos utilizar.
Índice Introducción Estructuras Algebraicas Listas Los Números Enteros Polinomios
La Estructura como Variable
Tenemos una gran cantidad de estructuras algebraicasdefinidas dentro de sage que podemos utilizar.
Una de las más sencillas es el conjunto de los números enterosZ. En sage este conjunto se denota por ZZ.
Índice Introducción Estructuras Algebraicas Listas Los Números Enteros Polinomios
La Estructura como Variable
Tenemos una gran cantidad de estructuras algebraicasdefinidas dentro de sage que podemos utilizar.
Una de las más sencillas es el conjunto de los números enterosZ. En sage este conjunto se denota por ZZ.
Si escribimos
ZZ
el programa nos responderá Integer Ring, es decir anillo delos números enteros.
Índice Introducción Estructuras Algebraicas Listas Los Números Enteros Polinomios
La Estructura como Variable
Tenemos una gran cantidad de estructuras algebraicasdefinidas dentro de sage que podemos utilizar.
Una de las más sencillas es el conjunto de los números enterosZ. En sage este conjunto se denota por ZZ.
Si escribimos
ZZ
el programa nos responderá Integer Ring, es decir anillo delos números enteros.
ZZ es una variable más del sistema.
Índice Introducción Estructuras Algebraicas Listas Los Números Enteros Polinomios
Operaciones con Enteros
Vamos a hacer algunas operaciones básicas en los númerosenteros. La suma, resta y multiplicación se realizan con lossímbolos habituales +, - y *.
Índice Introducción Estructuras Algebraicas Listas Los Números Enteros Polinomios
Operaciones con Enteros
Vamos a hacer algunas operaciones básicas en los númerosenteros. La suma, resta y multiplicación se realizan con lossímbolos habituales +, - y *.
Si escribimos
a = 6*7*8*9
print a
Índice Introducción Estructuras Algebraicas Listas Los Números Enteros Polinomios
Operaciones con Enteros
Vamos a hacer algunas operaciones básicas en los númerosenteros. La suma, resta y multiplicación se realizan con lossímbolos habituales +, - y *.
Si escribimos
a = 6*7*8*9
print a
obtendremos 3024.
Índice Introducción Estructuras Algebraicas Listas Los Números Enteros Polinomios
División
La división requiere un poco más de explicación, porquepodemos hacer la siguiente operación:
print a/16
Índice Introducción Estructuras Algebraicas Listas Los Números Enteros Polinomios
División
La división requiere un poco más de explicación, porquepodemos hacer la siguiente operación:
print a/16
y obtenemos 189 porque la división es exacta, pero si hacemos
print a/10
Índice Introducción Estructuras Algebraicas Listas Los Números Enteros Polinomios
División
La división requiere un poco más de explicación, porquepodemos hacer la siguiente operación:
print a/16
y obtenemos 189 porque la división es exacta, pero si hacemos
print a/10
obtenemos 15125
. En este caso la división no es exacta y nos hadejado la operación en forma fraccionaria.
Índice Introducción Estructuras Algebraicas Listas Los Números Enteros Polinomios
Cociente y Resto
El realidad este operador en los números enteros no es comoen otros lenguajes, el cociente de la división.
Índice Introducción Estructuras Algebraicas Listas Los Números Enteros Polinomios
Cociente y Resto
El realidad este operador en los números enteros no es comoen otros lenguajes, el cociente de la división.
Para obtener el cociente de la división tenemos que poner
print a // 10
con lo que obtenemos 302.
Índice Introducción Estructuras Algebraicas Listas Los Números Enteros Polinomios
Cociente y Resto
El realidad este operador en los números enteros no es comoen otros lenguajes, el cociente de la división.
Para obtener el cociente de la división tenemos que poner
print a // 10
con lo que obtenemos 302.
El resto de la división se calcula utilizando el símbolo %.
Índice Introducción Estructuras Algebraicas Listas Los Números Enteros Polinomios
El conjunto de los números racionales se denota QQ y el de losnúmeros reales RR.
Índice Introducción Estructuras Algebraicas Listas Los Números Enteros Polinomios
El conjunto de los números racionales se denota QQ y el de losnúmeros reales RR.
El conjunto de los números reales RR utiliza representacionesdecimales finitas del número.
Índice Introducción Estructuras Algebraicas Listas Los Números Enteros Polinomios
El conjunto de los números racionales se denota QQ y el de losnúmeros reales RR.
El conjunto de los números reales RR utiliza representacionesdecimales finitas del número.
Cuando tenemos un elemento en un conjunto y queremosllevarlo a otro, lo que hacemos es utilizar el nombre de laestructura, así por ejemplo
a = 1/3
b = RR(a)
print a
print b
nos dará los resultados 13
y 0.333333333333333.
Índice Introducción Estructuras Algebraicas Listas Los Números Enteros Polinomios
En realidad si escribimos
RR
nos dice Real Field with 53 bits of precision, esdecir, cuerpo de los números reales con 53 bits de precisión.
Índice Introducción Estructuras Algebraicas Listas Los Números Enteros Polinomios
En realidad si escribimos
RR
nos dice Real Field with 53 bits of precision, esdecir, cuerpo de los números reales con 53 bits de precisión.
Es una precisión suficientemente buena para la mayoría denuestras necesidades.
Índice Introducción Estructuras Algebraicas Listas Los Números Enteros Polinomios
En realidad si escribimos
RR
nos dice Real Field with 53 bits of precision, esdecir, cuerpo de los números reales con 53 bits de precisión.
Es una precisión suficientemente buena para la mayoría denuestras necesidades.
Si en alguna ocasión necesitamos ampliarla (o reducirla) esposible.
Índice Introducción Estructuras Algebraicas Listas Los Números Enteros Polinomios
Si intentamos forzar a que un elemento esté dentro de unaestructura en la que no puede estar, obtenemos un error, porejemplo, si ponemos ZZ(2/3) lo que obtenemos es un error
---------------------------------------------------------------------------
TypeError Traceback (most recent call last)
/home/leandro/docencia/AMD12/quickref/<ipython console> in <module>()
/usr/local/sage-5.0.beta6/local/lib/python2.7/site-packages/sage/structure/parent.so
/in sage.structure.parent.Parent.__call__ (sage/structure/parent.c:7886)()
/usr/local/sage-5.0.beta6/local/lib/python2.7/site-packages/sage/rings/rational.so
/in sage.rings.rational.Q_to_Z._call_ (sage/rings/rational.c:23746)()
TypeError: no conversion of this rational to integer
Índice Introducción Estructuras Algebraicas Listas Los Números Enteros Polinomios
Listas
Los objetos en sage se pueden agrupar en listas.
Índice Introducción Estructuras Algebraicas Listas Los Números Enteros Polinomios
Listas
Los objetos en sage se pueden agrupar en listas.
Una lista no es mas que una estructura en la que tenemosunos objetos en posiciones concretas. Por ejemplo
milista = [1,2,3]
asigna a la variable milista la lista formada por los números1, 2 y 3.
Índice Introducción Estructuras Algebraicas Listas Los Números Enteros Polinomios
Listas
Los objetos en sage se pueden agrupar en listas.
Una lista no es mas que una estructura en la que tenemosunos objetos en posiciones concretas. Por ejemplo
milista = [1,2,3]
asigna a la variable milista la lista formada por los números1, 2 y 3.
Los elementos están numerados desde 0, así milista[0 ]tendrá el valor 1, milista[1 ] tendrá el valor 2 ymilista[2 ] tendrá el valor 3.
Índice Introducción Estructuras Algebraicas Listas Los Números Enteros Polinomios
Listas
Los objetos en sage se pueden agrupar en listas.
Una lista no es mas que una estructura en la que tenemosunos objetos en posiciones concretas. Por ejemplo
milista = [1,2,3]
asigna a la variable milista la lista formada por los números1, 2 y 3.
Los elementos están numerados desde 0, así milista[0 ]tendrá el valor 1, milista[1 ] tendrá el valor 2 ymilista[2 ] tendrá el valor 3.
Los valores milista[n ] se pueden usar como variablesordinarias y hacer cualquier operación sobre ellas.
Índice Introducción Estructuras Algebraicas Listas Los Números Enteros Polinomios
Recorriendo Listas
La gran ventaja de tener los números en una lista, es quepodemos recorrer los elementos de la lista.
Índice Introducción Estructuras Algebraicas Listas Los Números Enteros Polinomios
Recorriendo Listas
La gran ventaja de tener los números en una lista, es quepodemos recorrer los elementos de la lista.
Si ponemos
minuevalista = [1,4,7,-1]
for x in minuevalista:
print x*x
Índice Introducción Estructuras Algebraicas Listas Los Números Enteros Polinomios
Recorriendo Listas
La gran ventaja de tener los números en una lista, es quepodemos recorrer los elementos de la lista.
Si ponemos
minuevalista = [1,4,7,-1]
for x in minuevalista:
print x*x
Nos escribirá los elementos 1,16,49 y 1.
Índice Introducción Estructuras Algebraicas Listas Los Números Enteros Polinomios
for,in,:,etc.
Hay varios puntos importantes en el código:
minuevalista = [1,4,7,-1]
for x in minuevalista:
print x*x
Índice Introducción Estructuras Algebraicas Listas Los Números Enteros Polinomios
for,in,:,etc.
Hay varios puntos importantes en el código:
minuevalista = [1,4,7,-1]
for x in minuevalista:
print x*x
Utilizamos for para recorrer la lista y decimos cómo queremosllamar a los elementos: los llamaremos x.
Índice Introducción Estructuras Algebraicas Listas Los Números Enteros Polinomios
for,in,:,etc.
Hay varios puntos importantes en el código:
minuevalista = [1,4,7,-1]
for x in minuevalista:
print x*x
Utilizamos for para recorrer la lista y decimos cómo queremosllamar a los elementos: los llamaremos x.
Por tanto x irá recorriendo cada uno de los valores de la lista.
Índice Introducción Estructuras Algebraicas Listas Los Números Enteros Polinomios
for,in,:,etc.
Hay varios puntos importantes en el código:
minuevalista = [1,4,7,-1]
for x in minuevalista:
print x*x
Utilizamos for para recorrer la lista y decimos cómo queremosllamar a los elementos: los llamaremos x.
Por tanto x irá recorriendo cada uno de los valores de la lista.
Después ponemos : y la siguiente línea tiene que estardesplazada a la derecha un número de espacios. Esedesplazamiento hace a sage reconocer que esas intruccionesestán en el bucle.
Índice Introducción Estructuras Algebraicas Listas Los Números Enteros Polinomios
El comando range
Las listas de números [ 0,1,2,3,...,n-1] se puedengenerar con el comando range(n)
Índice Introducción Estructuras Algebraicas Listas Los Números Enteros Polinomios
El comando range
Las listas de números [ 0,1,2,3,...,n-1] se puedengenerar con el comando range(n)
Si escribimos range(10) nos devolverá la lista[ 0, 1, 2, 3, 4, 5, 6, 7, 8, 9]
Índice Introducción Estructuras Algebraicas Listas Los Números Enteros Polinomios
El comando range
Las listas de números [ 0,1,2,3,...,n-1] se puedengenerar con el comando range(n)
Si escribimos range(10) nos devolverá la lista[ 0, 1, 2, 3, 4, 5, 6, 7, 8, 9]
Podemos usarlo directamente
for j in range(10):
print j
Índice Introducción Estructuras Algebraicas Listas Los Números Enteros Polinomios
El comando range
Las listas de números [ 0,1,2,3,...,n-1] se puedengenerar con el comando range(n)
Si escribimos range(10) nos devolverá la lista[ 0, 1, 2, 3, 4, 5, 6, 7, 8, 9]
Podemos usarlo directamente
for j in range(10):
print j
Nos escribirá todos los números desde el 0 al 9.
Índice Introducción Estructuras Algebraicas Listas Los Números Enteros Polinomios
El comando range (II)
Si escribimos range(3,6) nos devolverá [ 3,4,5].
Índice Introducción Estructuras Algebraicas Listas Los Números Enteros Polinomios
El comando range (II)
Si escribimos range(3,6) nos devolverá [ 3,4,5].
Notemos que el número 6 no se alcanza, en range(a,b) elprimer valor de la lista será a y el último b − 1.
Índice Introducción Estructuras Algebraicas Listas Los Números Enteros Polinomios
El comando range (II)
Si escribimos range(3,6) nos devolverá [ 3,4,5].
Notemos que el número 6 no se alcanza, en range(a,b) elprimer valor de la lista será a y el último b − 1.
También podemos hacer listas que en cada paso sumen unacantidad distinta de 1, por ejemplo
range(7,12 ,2)
Índice Introducción Estructuras Algebraicas Listas Los Números Enteros Polinomios
El comando range (II)
Si escribimos range(3,6) nos devolverá [ 3,4,5].
Notemos que el número 6 no se alcanza, en range(a,b) elprimer valor de la lista será a y el último b − 1.
También podemos hacer listas que en cada paso sumen unacantidad distinta de 1, por ejemplo
range(7,12 ,2)
Nos escribirá [ 7,9,11].
Índice Introducción Estructuras Algebraicas Listas Los Números Enteros Polinomios
El comando range (II)
Si escribimos range(3,6) nos devolverá [ 3,4,5].
Notemos que el número 6 no se alcanza, en range(a,b) elprimer valor de la lista será a y el último b − 1.
También podemos hacer listas que en cada paso sumen unacantidad distinta de 1, por ejemplo
range(7,12 ,2)
Nos escribirá [ 7,9,11].
También podemos is hacia abajo, por ejemplorange(10,0,-1)
Índice Introducción Estructuras Algebraicas Listas Los Números Enteros Polinomios
Comandos para Listas
Hay muchos comandos que podemos usar sobre listas. Vamosa ver algunos:
Índice Introducción Estructuras Algebraicas Listas Los Números Enteros Polinomios
Comandos para Listas
Hay muchos comandos que podemos usar sobre listas. Vamosa ver algunos:
Si milista es una variable que contiene una lista, entonces sulongitud es len(milista)
Índice Introducción Estructuras Algebraicas Listas Los Números Enteros Polinomios
Comandos para Listas
Hay muchos comandos que podemos usar sobre listas. Vamosa ver algunos:
Si milista es una variable que contiene una lista, entonces sulongitud es len(milista)
Si queremos saber el número de veces que un valor aparece enuna lista, milista.count(x) nos dice el número de veces quex aparece en milista (que también puede ser 0)
Índice Introducción Estructuras Algebraicas Listas Los Números Enteros Polinomios
Comandos para Listas
Hay muchos comandos que podemos usar sobre listas. Vamosa ver algunos:
Si milista es una variable que contiene una lista, entonces sulongitud es len(milista)
Si queremos saber el número de veces que un valor aparece enuna lista, milista.count(x) nos dice el número de veces quex aparece en milista (que también puede ser 0)
El comando sum(milista) nos dice cuanto suman todos loselementos de la lista y prod(milista) su producto.
Índice Introducción Estructuras Algebraicas Listas Los Números Enteros Polinomios
Una Programación Elegante
Podemos crear listas como sigue:
c = [x^2 for x in range(5)]
Índice Introducción Estructuras Algebraicas Listas Los Números Enteros Polinomios
Una Programación Elegante
Podemos crear listas como sigue:
c = [x^2 for x in range(5)]
Esto nos proporciona la lista [ 0, 1, 4, 9, 16] y la asignaa la variable c.
Índice Introducción Estructuras Algebraicas Listas Los Números Enteros Polinomios
Una Programación Elegante
Podemos crear listas como sigue:
c = [x^2 for x in range(5)]
Esto nos proporciona la lista [ 0, 1, 4, 9, 16] y la asignaa la variable c.
Podemos incluso añadir condiciones:
c = [sqrt(x^2-7) for x in range(5) if x^2-7 > 0]
asignará a c la lista [ sqrt(2), 3].
Índice Introducción Estructuras Algebraicas Listas Los Números Enteros Polinomios
Números en una Base
Dado un número entero, podemos representarlo en diferentesbases. Habitualmente lo representamos en base 10, pero consage podemos transformarlo en cualquier otra base.
Índice Introducción Estructuras Algebraicas Listas Los Números Enteros Polinomios
Números en una Base
Dado un número entero, podemos representarlo en diferentesbases. Habitualmente lo representamos en base 10, pero consage podemos transformarlo en cualquier otra base.
Si ponemos
a = ZZ(100)
bin(a)
hex(a)
Índice Introducción Estructuras Algebraicas Listas Los Números Enteros Polinomios
Números en una Base
Dado un número entero, podemos representarlo en diferentesbases. Habitualmente lo representamos en base 10, pero consage podemos transformarlo en cualquier otra base.
Si ponemos
a = ZZ(100)
bin(a)
hex(a)
Obtenemos respectivamente las representaciones binarias yhexadecimal del número, 0b1100100 y 64.
Índice Introducción Estructuras Algebraicas Listas Los Números Enteros Polinomios
Listas de Cifras
Si queremos la lista de todas las cifras, lo podemos hacer con
lascifras = a.digits(2)
Índice Introducción Estructuras Algebraicas Listas Los Números Enteros Polinomios
Listas de Cifras
Si queremos la lista de todas las cifras, lo podemos hacer con
lascifras = a.digits(2)
Las cifras van desde la menos significativa hasta la mássignificativa.
Índice Introducción Estructuras Algebraicas Listas Los Números Enteros Polinomios
Listas de Cifras
Si queremos la lista de todas las cifras, lo podemos hacer con
lascifras = a.digits(2)
Las cifras van desde la menos significativa hasta la mássignificativa.
El número de cifras podemos saberlo con len(lascifras) odirectamente a.ndigits(2).
Índice Introducción Estructuras Algebraicas Listas Los Números Enteros Polinomios
Listas de Cifras
Si queremos la lista de todas las cifras, lo podemos hacer con
lascifras = a.digits(2)
Las cifras van desde la menos significativa hasta la mássignificativa.
El número de cifras podemos saberlo con len(lascifras) odirectamente a.ndigits(2).
Lo que se ha hecho para la base 2, se puede hacer paracualquier base.
Índice Introducción Estructuras Algebraicas Listas Los Números Enteros Polinomios
Divisibilidad
Una de las propiedades más interesantes de los númerosenteros es la divisibilidad.
Índice Introducción Estructuras Algebraicas Listas Los Números Enteros Polinomios
Divisibilidad
Una de las propiedades más interesantes de los númerosenteros es la divisibilidad.
Para ver si dos números son divisibles entre sí, podemoscalcular el resto y ver que es cero o utilizar un comandoespecial que nos lo dice:
a = ZZ(10)
b = ZZ(5)
b.divides(a)
Índice Introducción Estructuras Algebraicas Listas Los Números Enteros Polinomios
Divisibilidad
Una de las propiedades más interesantes de los númerosenteros es la divisibilidad.
Para ver si dos números son divisibles entre sí, podemoscalcular el resto y ver que es cero o utilizar un comandoespecial que nos lo dice:
a = ZZ(10)
b = ZZ(5)
b.divides(a)
nos devolverá True.
Índice Introducción Estructuras Algebraicas Listas Los Números Enteros Polinomios
Divisores de un Número
También podemos calcular la lista de divisores de un número.Nos dará los divisores positivos.
Índice Introducción Estructuras Algebraicas Listas Los Números Enteros Polinomios
Divisores de un Número
También podemos calcular la lista de divisores de un número.Nos dará los divisores positivos.
El comando es
150.divisors ()
Índice Introducción Estructuras Algebraicas Listas Los Números Enteros Polinomios
Divisores de un Número
También podemos calcular la lista de divisores de un número.Nos dará los divisores positivos.
El comando es
150.divisors ()
Nos devolverá la lista
[1, 2, 3, 5, 6, 10 , 15 , 25 , 30 , 50 , 75 , 150]
Índice Introducción Estructuras Algebraicas Listas Los Números Enteros Polinomios
Divisores de un Número
También podemos calcular la lista de divisores de un número.Nos dará los divisores positivos.
El comando es
150.divisors ()
Nos devolverá la lista
[1, 2, 3, 5, 6, 10 , 15 , 25 , 30 , 50 , 75 , 150]
Esta lista se puede asignar a una variable, recorrerla, ocualquier otra operación que queramos hacerle.
Índice Introducción Estructuras Algebraicas Listas Los Números Enteros Polinomios
Números Primos
Un número es primo si no es 1 y sus únicos divisores son élmismo y la unidad.
Índice Introducción Estructuras Algebraicas Listas Los Números Enteros Polinomios
Números Primos
Un número es primo si no es 1 y sus únicos divisores son élmismo y la unidad.
Podemos preguntarnos si un número es primo de diferentesformas, por ejemplo
1.is_prime ()
2.is_prime ()
Índice Introducción Estructuras Algebraicas Listas Los Números Enteros Polinomios
Números Primos
Un número es primo si no es 1 y sus únicos divisores son élmismo y la unidad.
Podemos preguntarnos si un número es primo de diferentesformas, por ejemplo
1.is_prime ()
2.is_prime ()
nos devolverán respectivamente False y True.
Índice Introducción Estructuras Algebraicas Listas Los Números Enteros Polinomios
Números Primos
Un número es primo si no es 1 y sus únicos divisores son élmismo y la unidad.
Podemos preguntarnos si un número es primo de diferentesformas, por ejemplo
1.is_prime ()
2.is_prime ()
nos devolverán respectivamente False y True.
Esto es lo mismo que is_prime(1) y is_prime(2).
Índice Introducción Estructuras Algebraicas Listas Los Números Enteros Polinomios
Factorización
Podemos descomponer un número en producto de sus factoresprimos, lo que se conce como factorización.
Índice Introducción Estructuras Algebraicas Listas Los Números Enteros Polinomios
Factorización
Podemos descomponer un número en producto de sus factoresprimos, lo que se conce como factorización.
Si ponemos por ejemplo
factor(1234567890)
Índice Introducción Estructuras Algebraicas Listas Los Números Enteros Polinomios
Factorización
Podemos descomponer un número en producto de sus factoresprimos, lo que se conce como factorización.
Si ponemos por ejemplo
factor(1234567890)
Nos devolverá 2 · 32· 5 · 3607 · 3803.
Índice Introducción Estructuras Algebraicas Listas Los Números Enteros Polinomios
El Anillo de Polinomios
Se pueden definir también estructuras más complejas, porejemplo los polinomios.
Índice Introducción Estructuras Algebraicas Listas Los Números Enteros Polinomios
El Anillo de Polinomios
Se pueden definir también estructuras más complejas, porejemplo los polinomios.
Podemos asignar a una variable toda una estructuraalgebraica, por ejemplo:
R = PolynomialRing(QQ ,’x’)
S = PolynomialRing(RR ,’x’)
Índice Introducción Estructuras Algebraicas Listas Los Números Enteros Polinomios
El Anillo de Polinomios
Se pueden definir también estructuras más complejas, porejemplo los polinomios.
Podemos asignar a una variable toda una estructuraalgebraica, por ejemplo:
R = PolynomialRing(QQ ,’x’)
S = PolynomialRing(RR ,’x’)
nos asignará a R el conjunto de los polinomios con coeficientesen los números racionales y variable x . En el caso de S seránlos polinomios con coeficientes reales.
Índice Introducción Estructuras Algebraicas Listas Los Números Enteros Polinomios
Polinomios
Con las anteriores definiciones, podemos poner
p = R(x^2-2)
q = S(x^2-2)
Índice Introducción Estructuras Algebraicas Listas Los Números Enteros Polinomios
Polinomios
Con las anteriores definiciones, podemos poner
p = R(x^2-2)
q = S(x^2-2)
Podemos preguntar a sage si p y q son iguales,
p == q
Índice Introducción Estructuras Algebraicas Listas Los Números Enteros Polinomios
Polinomios
Con las anteriores definiciones, podemos poner
p = R(x^2-2)
q = S(x^2-2)
Podemos preguntar a sage si p y q son iguales,
p == q
Nos devolverá True, es decir, son el mismo polinomio, pero sucomportamiento es diferente.
Índice Introducción Estructuras Algebraicas Listas Los Números Enteros Polinomios
Polinomios (II)
Si escribimos
factor(p)
factor(q)
Índice Introducción Estructuras Algebraicas Listas Los Números Enteros Polinomios
Polinomios (II)
Si escribimos
factor(p)
factor(q)
Obtenemos respectivamente
(x2− 2)
(x − 1.41421356237310) · (x + 1.41421356237310)
Índice Introducción Estructuras Algebraicas Listas Los Números Enteros Polinomios
Polinomios (II)
Si escribimos
factor(p)
factor(q)
Obtenemos respectivamente
(x2− 2)
(x − 1.41421356237310) · (x + 1.41421356237310)
Eso es porque como polinomio con coeficientes en Q elpolinomio es irreducible, pero como polinomio con coeficientesreales no lo es.