Álgebra y matemática discreta - 2012 sesión de prácticas 2

61
Índice Máximo Común Divisor Aritmética Modular Polinomios Cuerpos Álgebra y Matemática Discreta - 2012 Sesión de Prácticas 2 Leandro Marín Dpto. de Matemática Aplicada Facultad de Informática 2012

Upload: others

Post on 16-Oct-2021

3 views

Category:

Documents


0 download

TRANSCRIPT

Page 1: Álgebra y Matemática Discreta - 2012 Sesión de Prácticas 2

Índice Máximo Común Divisor Aritmética Modular Polinomios Cuerpos

Álgebra y Matemática Discreta - 2012

Sesión de Prácticas 2

Leandro Marín

Dpto. de Matemática Aplicada

Facultad de Informática

2012

Page 2: Álgebra y Matemática Discreta - 2012 Sesión de Prácticas 2

Índice Máximo Común Divisor Aritmética Modular Polinomios Cuerpos

1 Máximo Común Divisor

2 Aritmética Modular

3 Polinomios

4 Cuerpos

Page 3: Álgebra y Matemática Discreta - 2012 Sesión de Prácticas 2

Índice Máximo Común Divisor Aritmética Modular Polinomios Cuerpos

Definición

El máximo común divisor de a y b es el mayor de los divisorescomunes de a y b.

Page 4: Álgebra y Matemática Discreta - 2012 Sesión de Prácticas 2

Índice Máximo Común Divisor Aritmética Modular Polinomios Cuerpos

Definición

El máximo común divisor de a y b es el mayor de los divisorescomunes de a y b.

Se puede calcular directamente en sage con el comandogcd(a,b) que son las siglas en inglés (greatest commondivisor).

Page 5: Álgebra y Matemática Discreta - 2012 Sesión de Prácticas 2

Índice Máximo Común Divisor Aritmética Modular Polinomios Cuerpos

Definición

El máximo común divisor de a y b es el mayor de los divisorescomunes de a y b.

Se puede calcular directamente en sage con el comandogcd(a,b) que son las siglas en inglés (greatest commondivisor).

Por ejemplo gcd(2352,4312)=392

Page 6: Álgebra y Matemática Discreta - 2012 Sesión de Prácticas 2

Índice Máximo Común Divisor Aritmética Modular Polinomios Cuerpos

Tabla del Máximo Común Divisor

Aunque podemos usar el comando directamente, vamos a vercómo se calcularía la tabla que hacemos en clase.

Page 7: Álgebra y Matemática Discreta - 2012 Sesión de Prácticas 2

Índice Máximo Común Divisor Aritmética Modular Polinomios Cuerpos

Tabla del Máximo Común Divisor

Aunque podemos usar el comando directamente, vamos a vercómo se calcularía la tabla que hacemos en clase.

Para generar la tabla vamos a empezar dando los valoresiniciales a = 156 y b = 441. Los valores de v y t

respectivamente serán 0 y 1 (como siempre).

Page 8: Álgebra y Matemática Discreta - 2012 Sesión de Prácticas 2

Índice Máximo Común Divisor Aritmética Modular Polinomios Cuerpos

Tabla del Máximo Común Divisor

Aunque podemos usar el comando directamente, vamos a vercómo se calcularía la tabla que hacemos en clase.

Para generar la tabla vamos a empezar dando los valoresiniciales a = 156 y b = 441. Los valores de v y t

respectivamente serán 0 y 1 (como siempre).

En sage es posible hacer la asignación en bloque:

a,b,v,t = 156 ,441 ,0,1

Page 9: Álgebra y Matemática Discreta - 2012 Sesión de Prácticas 2

Índice Máximo Común Divisor Aritmética Modular Polinomios Cuerpos

Tabla del Máximo Común Divisor (II)

El cálculo se tiene que hacer mientras que b sea distinto de 0.

Page 10: Álgebra y Matemática Discreta - 2012 Sesión de Prácticas 2

Índice Máximo Común Divisor Aritmética Modular Polinomios Cuerpos

Tabla del Máximo Común Divisor (II)

El cálculo se tiene que hacer mientras que b sea distinto de 0.

Eso se hace con una estructura

while condicion :

y luego un bloque similar al del caso for.

Page 11: Álgebra y Matemática Discreta - 2012 Sesión de Prácticas 2

Índice Máximo Común Divisor Aritmética Modular Polinomios Cuerpos

Tabla del Máximo Común Divisor (II)

El cálculo se tiene que hacer mientras que b sea distinto de 0.

Eso se hace con una estructura

while condicion :

y luego un bloque similar al del caso for.

En cada paso del ciclo tenemos que calcular r ,q y recalculara, b, v , t, concretamente

q,r = a //b,a%b

a,b,v,t = b,r,t,r-t*q

Page 12: Álgebra y Matemática Discreta - 2012 Sesión de Prácticas 2

Índice Máximo Común Divisor Aritmética Modular Polinomios Cuerpos

Tabla del Máximo Común Divisor (III)

El programa completo quedaría del siguiente modo:

a,b,v,t = 156 ,441 ,0,1

while b!=0:

q,r = a //b,a%b

print a,b,r,v,t,q

a,b,v,t = b,r,t,v-t*q

print a,b,r,v,t,q

Los valores de q y r no los podemos calcular en la última fila, asíque ponemos los mismos que en la fila anterior. Las únicascolumnas importantes al final son la de a que nos indica el máximocomún divisor y la de v que nos indica el coeficiente del b original.

Page 13: Álgebra y Matemática Discreta - 2012 Sesión de Prácticas 2

Índice Máximo Común Divisor Aritmética Modular Polinomios Cuerpos

Obtenemos los siguientes valores

156 441 156 0 1 0

441 156 129 1 0 2

156 129 27 0 1 1

129 27 21 1 -1 4

27 21 6 -1 5 1

21 6 3 5 -6 3

6 3 0 -6 23 2

3 0 0 23 -52 2

Lo que significa que el máximo común divisor es 3 y que3 = 156 · u + 441 · 23. Para calcular el valor de u despejamos:

u =3 − 441 · 23

156= −65

Page 14: Álgebra y Matemática Discreta - 2012 Sesión de Prácticas 2

Índice Máximo Común Divisor Aritmética Modular Polinomios Cuerpos

xgcd

El máximo común divisor extendido se puede calcular tambiéncon un comando sage, es xgcd(a,b).

Page 15: Álgebra y Matemática Discreta - 2012 Sesión de Prácticas 2

Índice Máximo Común Divisor Aritmética Modular Polinomios Cuerpos

xgcd

El máximo común divisor extendido se puede calcular tambiéncon un comando sage, es xgcd(a,b).

Si ponemos xgcd(156,441) lo que obtenemos es (3,−65, 23) .

Page 16: Álgebra y Matemática Discreta - 2012 Sesión de Prácticas 2

Índice Máximo Común Divisor Aritmética Modular Polinomios Cuerpos

xgcd

El máximo común divisor extendido se puede calcular tambiéncon un comando sage, es xgcd(a,b).

Si ponemos xgcd(156,441) lo que obtenemos es (3,−65, 23) .

Estos valores son respectivamente el máximo común divisor ylos coeficientes de 156 y 441.

Page 17: Álgebra y Matemática Discreta - 2012 Sesión de Prácticas 2

Índice Máximo Común Divisor Aritmética Modular Polinomios Cuerpos

xgcd

El máximo común divisor extendido se puede calcular tambiéncon un comando sage, es xgcd(a,b).

Si ponemos xgcd(156,441) lo que obtenemos es (3,−65, 23) .

Estos valores son respectivamente el máximo común divisor ylos coeficientes de 156 y 441.

Son los mismos que habíamos calculado nosotros.

Page 18: Álgebra y Matemática Discreta - 2012 Sesión de Prácticas 2

Índice Máximo Común Divisor Aritmética Modular Polinomios Cuerpos

El Anillo Zmod(n)

Dado un número entero n ≥ 1 podemos definir el anillo derestos modulares Zn con el comando Zmod(n)

Page 19: Álgebra y Matemática Discreta - 2012 Sesión de Prácticas 2

Índice Máximo Común Divisor Aritmética Modular Polinomios Cuerpos

El Anillo Zmod(n)

Dado un número entero n ≥ 1 podemos definir el anillo derestos modulares Zn con el comando Zmod(n)

Pongamos por ejemplo:

R = Zmod(6)

Page 20: Álgebra y Matemática Discreta - 2012 Sesión de Prácticas 2

Índice Máximo Común Divisor Aritmética Modular Polinomios Cuerpos

El Anillo Zmod(n)

Dado un número entero n ≥ 1 podemos definir el anillo derestos modulares Zn con el comando Zmod(n)

Pongamos por ejemplo:

R = Zmod(6)

Si entonces escribimos R y pulsamos enter nos dirá

Ring of integers modulo 6

es decir, anillo de enteros módulo 6.

Page 21: Álgebra y Matemática Discreta - 2012 Sesión de Prácticas 2

Índice Máximo Común Divisor Aritmética Modular Polinomios Cuerpos

El Anillo Zmod(6)

A partir de este momento, podemos forzar a los elementos aestar en este anillo, pongamos por ejempo

R = Zmod(6)

a = R(3)

b = R(4)

a*b

Page 22: Álgebra y Matemática Discreta - 2012 Sesión de Prácticas 2

Índice Máximo Común Divisor Aritmética Modular Polinomios Cuerpos

El Anillo Zmod(6)

A partir de este momento, podemos forzar a los elementos aestar en este anillo, pongamos por ejempo

R = Zmod(6)

a = R(3)

b = R(4)

a*b

Nos escribirá 0 puesto que las operaciones están en Z6.

Page 23: Álgebra y Matemática Discreta - 2012 Sesión de Prácticas 2

Índice Máximo Común Divisor Aritmética Modular Polinomios Cuerpos

El Anillo Zmod(6)

A partir de este momento, podemos forzar a los elementos aestar en este anillo, pongamos por ejempo

R = Zmod(6)

a = R(3)

b = R(4)

a*b

Nos escribirá 0 puesto que las operaciones están en Z6.

Si ponemos

a-b

y pulsamos enter, nos escribirá 5 puesto que3 − 4 = −1 ≡ 5(6).

Page 24: Álgebra y Matemática Discreta - 2012 Sesión de Prácticas 2

Índice Máximo Común Divisor Aritmética Modular Polinomios Cuerpos

Operaciones Modulares

Si operamos un número de Zn con un elemento de Z, elresultado lo considerará en Zn

Page 25: Álgebra y Matemática Discreta - 2012 Sesión de Prácticas 2

Índice Máximo Común Divisor Aritmética Modular Polinomios Cuerpos

Operaciones Modulares

Si operamos un número de Zn con un elemento de Z, elresultado lo considerará en Zn

Como a valía 3 ∈ Z6, si ponemos 7 ∗ a nos responderá 3porque 21 ≡ 3(6).

Page 26: Álgebra y Matemática Discreta - 2012 Sesión de Prácticas 2

Índice Máximo Común Divisor Aritmética Modular Polinomios Cuerpos

Operaciones Modulares

Si operamos un número de Zn con un elemento de Z, elresultado lo considerará en Zn

Como a valía 3 ∈ Z6, si ponemos 7 ∗ a nos responderá 3porque 21 ≡ 3(6).

También podemos hacer exponenciaciones a18 = 3

Page 27: Álgebra y Matemática Discreta - 2012 Sesión de Prácticas 2

Índice Máximo Común Divisor Aritmética Modular Polinomios Cuerpos

Inversos

Si tratamos de calcular un inverso que no existe nos dará un error,así si ponemos a^-1 obtenemos

---------------------------------------------------------------------------

ZeroDivisionError Traceback (most recent call last)

/home/leandro/AMD12/<ipython console> in <module>()

/usr/local/sage-5.0.beta6/local/lib/python2.7/site-packages/sage/rings/finite_rings/integer_mod.so

/in sage.rings.finite_rings.integer_mod.IntegerMod_int.__pow__

/(sage/rings/finite_rings/integer_mod.c:20781)()

/usr/local/sage-5.0.beta6/local/lib/python2.7/site-packages/sage/rings/finite_rings/integer_mod.so

/in sage.rings.finite_rings.integer_mod.IntegerMod_int.__invert__

/(sage/rings/finite_rings/integer_mod.c:20884)()

ZeroDivisionError: Inverse does not exist.

Page 28: Álgebra y Matemática Discreta - 2012 Sesión de Prácticas 2

Índice Máximo Común Divisor Aritmética Modular Polinomios Cuerpos

Inversos

Tomemos ahora otro anillo modular

S = Zmod(256)

c = S(7)

print c^-1

Page 29: Álgebra y Matemática Discreta - 2012 Sesión de Prácticas 2

Índice Máximo Común Divisor Aritmética Modular Polinomios Cuerpos

Inversos

Tomemos ahora otro anillo modular

S = Zmod(256)

c = S(7)

print c^-1

Nos devolverá 183, que es el inverso de 7 módulo 256.

Page 30: Álgebra y Matemática Discreta - 2012 Sesión de Prácticas 2

Índice Máximo Común Divisor Aritmética Modular Polinomios Cuerpos

Inversos

Tomemos ahora otro anillo modular

S = Zmod(256)

c = S(7)

print c^-1

Nos devolverá 183, que es el inverso de 7 módulo 256.

Podemos comprobarlo poniendo 183*c que nos dará 1.

Page 31: Álgebra y Matemática Discreta - 2012 Sesión de Prácticas 2

Índice Máximo Común Divisor Aritmética Modular Polinomios Cuerpos

La Función ϕ de Euler

El número de elementos invertibles en Zn se llama ϕ(n) y secalcula con euler_phi(n).

Page 32: Álgebra y Matemática Discreta - 2012 Sesión de Prácticas 2

Índice Máximo Común Divisor Aritmética Modular Polinomios Cuerpos

La Función ϕ de Euler

El número de elementos invertibles en Zn se llama ϕ(n) y secalcula con euler_phi(n).

Esta función tiene la propiedad de que cualquier elementoinvertible elevado a ese número es 1.

Page 33: Álgebra y Matemática Discreta - 2012 Sesión de Prácticas 2

Índice Máximo Común Divisor Aritmética Modular Polinomios Cuerpos

La Función ϕ de Euler

El número de elementos invertibles en Zn se llama ϕ(n) y secalcula con euler_phi(n).

Esta función tiene la propiedad de que cualquier elementoinvertible elevado a ese número es 1.

Pongamos por ejemplo:

S = Zmod(256)

c = S(7)

print c^euler_phi(256)

Page 34: Álgebra y Matemática Discreta - 2012 Sesión de Prácticas 2

Índice Máximo Común Divisor Aritmética Modular Polinomios Cuerpos

La Función ϕ de Euler

El número de elementos invertibles en Zn se llama ϕ(n) y secalcula con euler_phi(n).

Esta función tiene la propiedad de que cualquier elementoinvertible elevado a ese número es 1.

Pongamos por ejemplo:

S = Zmod(256)

c = S(7)

print c^euler_phi(256)

Nos devolverá 1.

Page 35: Álgebra y Matemática Discreta - 2012 Sesión de Prácticas 2

Índice Máximo Común Divisor Aritmética Modular Polinomios Cuerpos

La Función ϕ de Euler

El número de elementos invertibles en Zn se llama ϕ(n) y secalcula con euler_phi(n).

Esta función tiene la propiedad de que cualquier elementoinvertible elevado a ese número es 1.

Pongamos por ejemplo:

S = Zmod(256)

c = S(7)

print c^euler_phi(256)

Nos devolverá 1.

En este caso la función vale 128.

Page 36: Álgebra y Matemática Discreta - 2012 Sesión de Prácticas 2

Índice Máximo Común Divisor Aritmética Modular Polinomios Cuerpos

Teorema Chino de los Restos

Supongamos que queremos encontrar cuales son los posiblesvalores de x tales que

x ≡ 3(5) x ≡ 2(7)

Page 37: Álgebra y Matemática Discreta - 2012 Sesión de Prácticas 2

Índice Máximo Común Divisor Aritmética Modular Polinomios Cuerpos

Teorema Chino de los Restos

Supongamos que queremos encontrar cuales son los posiblesvalores de x tales que

x ≡ 3(5) x ≡ 2(7)

Estos sistemas tienen solución por el Teorema Chino de losRestos, que nos dice que la solución es única módulo elmínimo común múltiplo de 5 y 7, en este caso 35.

Page 38: Álgebra y Matemática Discreta - 2012 Sesión de Prácticas 2

Índice Máximo Común Divisor Aritmética Modular Polinomios Cuerpos

Teorema Chino de los Restos

Supongamos que queremos encontrar cuales son los posiblesvalores de x tales que

x ≡ 3(5) x ≡ 2(7)

Estos sistemas tienen solución por el Teorema Chino de losRestos, que nos dice que la solución es única módulo elmínimo común múltiplo de 5 y 7, en este caso 35.

El cálculo con sage se hace con el comando

crt([3,2],[5,7])

En este caso el valor es 23 módulo 35.

Page 39: Álgebra y Matemática Discreta - 2012 Sesión de Prácticas 2

Índice Máximo Común Divisor Aritmética Modular Polinomios Cuerpos

Polinomios con Coeficientes Modulares

Podemos definir también polinomios con coeficientesmodulares. Por ejemplo:

R = PolynomialRing(Zmod(7),’x’)

p = R(x^3-1)

factor(p)

Page 40: Álgebra y Matemática Discreta - 2012 Sesión de Prácticas 2

Índice Máximo Común Divisor Aritmética Modular Polinomios Cuerpos

Polinomios con Coeficientes Modulares

Podemos definir también polinomios con coeficientesmodulares. Por ejemplo:

R = PolynomialRing(Zmod(7),’x’)

p = R(x^3-1)

factor(p)

Obtendremos

(x + 3) * (x + 5) * (x + 6)

Page 41: Álgebra y Matemática Discreta - 2012 Sesión de Prácticas 2

Índice Máximo Común Divisor Aritmética Modular Polinomios Cuerpos

Polinomios con Coeficientes Modulares

Podemos definir también polinomios con coeficientesmodulares. Por ejemplo:

R = PolynomialRing(Zmod(7),’x’)

p = R(x^3-1)

factor(p)

Obtendremos

(x + 3) * (x + 5) * (x + 6)

Porque considerando los coeficientes en este cuerpo, elpolinomio se factoriza completamente.

Page 42: Álgebra y Matemática Discreta - 2012 Sesión de Prácticas 2

Índice Máximo Común Divisor Aritmética Modular Polinomios Cuerpos

Factorización

Como sucedía con polinomios sobre otros cuerpos, lafactorización depende del cuerpo en el que se tomen loscoeficientes.

Page 43: Álgebra y Matemática Discreta - 2012 Sesión de Prácticas 2

Índice Máximo Común Divisor Aritmética Modular Polinomios Cuerpos

Factorización

Como sucedía con polinomios sobre otros cuerpos, lafactorización depende del cuerpo en el que se tomen loscoeficientes.

Si ponemos el mismo polinomio, pero considerado en Z5

tenemos:

R = PolynomialRing(Zmod(5),’x’)

p = R(x^3-1)

factor(p)

Page 44: Álgebra y Matemática Discreta - 2012 Sesión de Prácticas 2

Índice Máximo Común Divisor Aritmética Modular Polinomios Cuerpos

Factorización

Como sucedía con polinomios sobre otros cuerpos, lafactorización depende del cuerpo en el que se tomen loscoeficientes.

Si ponemos el mismo polinomio, pero considerado en Z5

tenemos:

R = PolynomialRing(Zmod(5),’x’)

p = R(x^3-1)

factor(p)

Obtenemos otra factorización:

(x + 4) * (x^2 + x + 1)

Page 45: Álgebra y Matemática Discreta - 2012 Sesión de Prácticas 2

Índice Máximo Común Divisor Aritmética Modular Polinomios Cuerpos

Dominios Euclídeos

Casi todo lo que hemos dicho para Z en relación con ladivisibilidad, es cierto también para los polinomios concoeficientes en R, Q, C o un incluso Zp con p primo.

Page 46: Álgebra y Matemática Discreta - 2012 Sesión de Prácticas 2

Índice Máximo Común Divisor Aritmética Modular Polinomios Cuerpos

Dominios Euclídeos

Casi todo lo que hemos dicho para Z en relación con ladivisibilidad, es cierto también para los polinomios concoeficientes en R, Q, C o un incluso Zp con p primo.

En particular podemos calcular el máximo común divisor y elmáximo común divisor extendido con el mismo algoritmo quelo hacíamos en Z.

Page 47: Álgebra y Matemática Discreta - 2012 Sesión de Prácticas 2

Índice Máximo Común Divisor Aritmética Modular Polinomios Cuerpos

Dominios Euclídeos

Casi todo lo que hemos dicho para Z en relación con ladivisibilidad, es cierto también para los polinomios concoeficientes en R, Q, C o un incluso Zp con p primo.

En particular podemos calcular el máximo común divisor y elmáximo común divisor extendido con el mismo algoritmo quelo hacíamos en Z.

También es cierto que todo polinomio se descompone deforma única como producto de polinomios irreducibles. Cualessean esos factores depende de donde estén los coeficientes.

Page 48: Álgebra y Matemática Discreta - 2012 Sesión de Prácticas 2

Índice Máximo Común Divisor Aritmética Modular Polinomios Cuerpos

Dominios Euclídeos

Casi todo lo que hemos dicho para Z en relación con ladivisibilidad, es cierto también para los polinomios concoeficientes en R, Q, C o un incluso Zp con p primo.

En particular podemos calcular el máximo común divisor y elmáximo común divisor extendido con el mismo algoritmo quelo hacíamos en Z.

También es cierto que todo polinomio se descompone deforma única como producto de polinomios irreducibles. Cualessean esos factores depende de donde estén los coeficientes.

En realidad, siempre que tengamos una división con resto, lopodemos hacer. Los conjuntos donde tenemos una división deesta forma se llaman dominios euclídeos.

Page 49: Álgebra y Matemática Discreta - 2012 Sesión de Prácticas 2

Índice Máximo Común Divisor Aritmética Modular Polinomios Cuerpos

Definción

Un cuerpo es un conjunto K con dos operaciones + y · y doselementos destacados distiontos llamados 0 y 1 tales que:

a + b = b + a, (a + b) + c = a + (b + c), a + 0 = a y paratodo a existe −a tal que a + (−a) = 0.

Page 50: Álgebra y Matemática Discreta - 2012 Sesión de Prácticas 2

Índice Máximo Común Divisor Aritmética Modular Polinomios Cuerpos

Definción

Un cuerpo es un conjunto K con dos operaciones + y · y doselementos destacados distiontos llamados 0 y 1 tales que:

a + b = b + a, (a + b) + c = a + (b + c), a + 0 = a y paratodo a existe −a tal que a + (−a) = 0.

a · b = b · a, (a · b) · c = a · (b · c), a · 1 = a y para todo a 6= 0existe a−1 tal que a · a−1 = 1.

Page 51: Álgebra y Matemática Discreta - 2012 Sesión de Prácticas 2

Índice Máximo Común Divisor Aritmética Modular Polinomios Cuerpos

Definción

Un cuerpo es un conjunto K con dos operaciones + y · y doselementos destacados distiontos llamados 0 y 1 tales que:

a + b = b + a, (a + b) + c = a + (b + c), a + 0 = a y paratodo a existe −a tal que a + (−a) = 0.

a · b = b · a, (a · b) · c = a · (b · c), a · 1 = a y para todo a 6= 0existe a−1 tal que a · a−1 = 1.

a · (b + c) = a · b + a · c.

Page 52: Álgebra y Matemática Discreta - 2012 Sesión de Prácticas 2

Índice Máximo Común Divisor Aritmética Modular Polinomios Cuerpos

Ejempos de Cuerpos

Son cuerpos por ejemplo Q, R y C. Estos son cuerposinfinitos.

Page 53: Álgebra y Matemática Discreta - 2012 Sesión de Prácticas 2

Índice Máximo Común Divisor Aritmética Modular Polinomios Cuerpos

Ejempos de Cuerpos

Son cuerpos por ejemplo Q, R y C. Estos son cuerposinfinitos.

También son cuerpos los conjuntos Zp cuando p es primo.Estos son cuerpos finitos.

Page 54: Álgebra y Matemática Discreta - 2012 Sesión de Prácticas 2

Índice Máximo Común Divisor Aritmética Modular Polinomios Cuerpos

Ejempos de Cuerpos

Son cuerpos por ejemplo Q, R y C. Estos son cuerposinfinitos.

También son cuerpos los conjuntos Zp cuando p es primo.Estos son cuerpos finitos.

Existen otros cuerpos finitos más complejos con un número deelementos pα.

Page 55: Álgebra y Matemática Discreta - 2012 Sesión de Prácticas 2

Índice Máximo Común Divisor Aritmética Modular Polinomios Cuerpos

Ejempos de Cuerpos

Son cuerpos por ejemplo Q, R y C. Estos son cuerposinfinitos.

También son cuerpos los conjuntos Zp cuando p es primo.Estos son cuerpos finitos.

Existen otros cuerpos finitos más complejos con un número deelementos pα.

Los cuerpos finitos se suelen llamar también cuerpos de Galois.

Page 56: Álgebra y Matemática Discreta - 2012 Sesión de Prácticas 2

Índice Máximo Común Divisor Aritmética Modular Polinomios Cuerpos

Cuerpo de 8 elementos

Igual que los cuerpos Zp se hacían con la relación decongruencia módulo p, los cuerpos de Galois se hacen conpolinomios y congruencias módulo un polinomio irreducible.

Page 57: Álgebra y Matemática Discreta - 2012 Sesión de Prácticas 2

Índice Máximo Común Divisor Aritmética Modular Polinomios Cuerpos

Cuerpo de 8 elementos

Igual que los cuerpos Zp se hacían con la relación decongruencia módulo p, los cuerpos de Galois se hacen conpolinomios y congruencias módulo un polinomio irreducible.

El programa sage puede manejarlos sin ninguna dificultad.

Page 58: Álgebra y Matemática Discreta - 2012 Sesión de Prácticas 2

Índice Máximo Común Divisor Aritmética Modular Polinomios Cuerpos

Cuerpo de 8 elementos

Igual que los cuerpos Zp se hacían con la relación decongruencia módulo p, los cuerpos de Galois se hacen conpolinomios y congruencias módulo un polinomio irreducible.

El programa sage puede manejarlos sin ninguna dificultad.

Para definir el cuerpo de 8 elementos, tenemos que decirsimplemente cómo queremos llamar a la variable de lospolinomios que aparecen.

K = GF(8,’a’)

Page 59: Álgebra y Matemática Discreta - 2012 Sesión de Prácticas 2

Índice Máximo Común Divisor Aritmética Modular Polinomios Cuerpos

Recorriendo un Cuerpo Finito

Podemos recorrer todos los elementos de un cuerpo finitocomo una lista. Si ponemos

K = GF(8,’a’)

for x in K:

print x

Page 60: Álgebra y Matemática Discreta - 2012 Sesión de Prácticas 2

Índice Máximo Común Divisor Aritmética Modular Polinomios Cuerpos

Recorriendo un Cuerpo Finito

Podemos recorrer todos los elementos de un cuerpo finitocomo una lista. Si ponemos

K = GF(8,’a’)

for x in K:

print x

Obtendremos todos los elementos de este cuerpo:

0, a, a2, a + 1, a2 + a, a2 + a + 1, a2 + 1, 1

Page 61: Álgebra y Matemática Discreta - 2012 Sesión de Prácticas 2

Índice Máximo Común Divisor Aritmética Modular Polinomios Cuerpos

Recorriendo un Cuerpo Finito

Podemos recorrer todos los elementos de un cuerpo finitocomo una lista. Si ponemos

K = GF(8,’a’)

for x in K:

print x

Obtendremos todos los elementos de este cuerpo:

0, a, a2, a + 1, a2 + a, a2 + a + 1, a2 + 1, 1

Podemos manejar variables con estos valores como las decualquier otro cuerpo.