Cuerpos finitos. Llorenç Huguet Rotger Josep Rifà Coma Juan Gabriel Tena Ayuso PID_

Tamaño: px
Comenzar la demostración a partir de la página:

Download "Cuerpos finitos. Llorenç Huguet Rotger Josep Rifà Coma Juan Gabriel Tena Ayuso PID_00200953"

Transcripción

1 Cuerpos finitos Llorenç Huguet Rotger Josep Rifà Coma Juan Gabriel Tena Ayuso PID_

2 Los textos e imágenes publicados en esta obra están sujetos excepto que se indique lo contrario a una licencia de Reconocimiento-NoComercial-SinObraDerivada (BY-NC-ND) v30 España de Creative Commons Podéis copiarlos, distribuirlos y transmitirlos públicamente siempre que citéis el autor y la fuente (FUOC Fundació per a la Universitat Oberta de Catalunya), no hagáis un uso comercial y no hagáis una obra derivada La licencia completa se puede consultar en

3 CC-BY-NC-ND PID_ Cuerpos finitos Índice Introducción 5 Objectivos 6 1 Existencia y propiedades de los cuerpos finitos 7 11 Existencia y construcción de cuerpos finitos 7 12 Estructura aditiva y multiplicativa de un cuerpo finito Representación aditiva Representación multiplicativa 14 2 Bases de cuerpos finitos 15 3 Computación en cuerpos finitos Aritmética en cuerpos finitos Multiplicación División Exponenciación Complejidad de la aritmética en cuerpos finitos Algoritmos aritméticos en cuerpos finitos 27 Ejercicios de autoevaluación 31 Soluciones 33 Bibliografía 39

4

5 CC-BY-NC-ND PID_ Cuerpos finitos Introducción Los sistemas y protocolos criptográficos que serán objeto de estudio en módulos posteriores utilizan como alfabeto un cuerpo finito o una curva definida sobre ese cuerpo La necesidad de la estructura de cuerpo obedece a que en dichos sistemas hay que realizar las cuatro operaciones de suma, diferencia, multiplicación y división y obviamente, como siempre en criptografía, este tipo de alfabeto debe ser finito Los cuerpos finitos han sido estudiados desde hace siglos por diversos matemáticos, en particular Evariste Galois (de hecho son también conocidos como cuerpos de Galois), pero es en los últimos 50 años cuando el interés por estas estructuras ha conocido un crecimiento espectacular, debido a sus aplicaciones en diferentes campos de indudable interés para el mundo industrial y financiero, como son la criptografía o los códigos correctores de errores La teoría de códigos correctores de errores trata de preservar la calidad de la información cuando es transmitida a través de canales susceptibles de sufrir perturbaciones, que introducen errores en el mensaje transmitido Un código corrector permite, dentro de ciertos límites, detectar y corregir tales errores Esta teoría comparte con la criptografía fines (si los códigos correctores tratan de defender la información de la degradación natural la criptografía trata de defenderla de los ataques humanos) y técnicas, en particular diversos sistemas criptográficos (McEliece, Niederreiter), están basados en códigos correctores Denotaremos F q a un cuerpo finito con q elementos (algunos autores utilizan la notación GF(q), por Galois field con q elementos) El presente módulo estudia esta estructura matemática, con especial énfasis en los aspectos computacionales de su aritmética

6 CC-BY-NC-ND PID_ Cuerpos finitos Objectivos En los materiales didácticos de este módulo el estudiante encontrará los contenidos necesarios para alcanzar los objetivos siguientes: 1 Conocer la estructura aditiva y multiplicativa de un cuerpo finito F q, de q = p m elementos, donde p es un número primo 2 Saber calcular la tabla de equivalencias polinomial-exponencial y saber calcular en un cuerpo finito F q dando los resultados en cualquiera de las dos representaciones 3 Saber reconocer la complejidad computacional de un cálculo en cuerpos finitos 4 Conocer y saber aplicar los principales algoritmos aritméticos en cuerpos finitos

7 CC-BY-NC-ND PID_ Cuerpos finitos 1 Existencia y propiedades de los cuerpos finitos En este apartado se muestra para qué valores de q existe un cuerpo finito F q y cómo construirlo explícitamente y se estudian sus propiedades y estructura 11 Existencia y construcción de cuerpos finitos En primer lugar señalemos el siguiente resultado del teorema 1 Teorema 11 (Teorema de Wedderburn) Todo cuerpo finito es conmutativo (es decir, su multiplicación es conmutativa) Definición 12 (Característica de un cuerpo) La característica de un cuerpo K se define como el mínimo p de los enteros positivos n tales que n 1 = = 0 (suma de n copias de 1), donde 0 es el elemento neutro de la suma y 1 el elemento neutro del producto en el cuerpo K Si tal p no existe, como sucede con el cuerpo de los números reales, decimos que K tiene característica 0 Caso contrario p debe ser un número primo (si p = r s, 1 < r,s < p se tendría que 0 = p 1 = (r 1)(s 1) y uno de los dos factores debería ser cero, en contradicción con la minimalidad de p) y el cuerpo se dice de característica prima p Lectura recomendada Sobre el teorema de Wedderburn podéis consultar la obra de Lidl y Niederreiter (1997) Observación Existen cuerpos infinitos que no son conmutativos, como el cuerpo de los cuaterniones Un primer ejemplo de cuerpo finito viene dado por el siguiente resultado Proposición 13 Para todo número primo p el conjunto Z p de los enteros módulo p, con la suma y producto inducidos por las de Z, constituye un cuerpo conmutativo Demostración: Recordemos que el conjunto Z p de los enteros módulo p es el conjunto de clases de equivalencia de números enteros, donde dos enteros x,y son equivalentes si, y solamente si, son congruentes módulo p: x y (mod p) (es decir x y es divisible por p) El conjunto Z p tiene cardinal p y un conjunto de representantes viene dado por F p = {0,1,,p 1}

8 CC-BY-NC-ND PID_ Cuerpos finitos Las operaciones a + b (mod p) y a b (mod p) (realizar la suma o producto de a y b en Z, dividir el resultado por p y tomar el resto) dota a este conjunto de estructura de cuerpo: es obvio que (F p,+) es un grupo aditivo, con 0 como elemento neutro y opuesto de a F p el elemento a = p a Por lo que se refiere a (F p = F p {0}, ) la multiplicación es conmutativa, el elemento 1 actúa como unidad y dado un elemento a F p la existencia de inverso (y un método efectivo de calcularlo) se deduce del algoritmo de Euclides (el cual se describirá a continuación): dado que a y p son coprimos entre sí, existen elementos x,y Z tales que mcd(a,p) = 1 = ax + py, y por tanto en F p (nótese que p 0 (mod p)) ax 1 (mod p), luego el elemento x (mod p) es el inverso del a El algoritmo de Euclides (Euclides, libro VII), que permite obtener el máximo común divisor d de dos números a,b N, es uno de los algoritmos básicos en matemática computacional Una modificación - algoritmo de Euclides extendido- permite obtener d como combinación lineal de a y b con coeficientes enteros (Identidad de Bezout): d = ax + by (1) Cuerpo binario Si p = 2, se tiene el cuerpo con dos elementos F 2 = {0,1} base de la computación binaria (las operaciones de cuerpo coinciden con las operaciones lógicas O-exclusivo (XOR) y AND) Exponemos a continuación el algoritmo de Euclides extendido Algoritmo 14 1 Tomar, como valores iniciales, a 0 := a, a 1 := b, x 0 := 1, x 1 := 0, y 0 := 0, y 1 := 1 2 A partir de i := 1, iterar las asignaciones a i+1 := a i 1 q i a i (calculamos el cociente q i y el residuo a i+1 de la división entre a i 1 y a i ) x i+1 := x i 1 q i x i (a partir de x i 1,x i i q i, calculamos x i+1 ) y i+1 := y i 1 q i y i (a partir de y i 1,y i i q i, calculamos y i+1 ) hasta obtener un residuo a i = 0 3 Si a n es el primer residuo nulo, entonces d = a n 1 = ax n 1 + by n 1 Ejemplo 11 Sean a = 256, b = 96 Aplicando el algoritmo 14 se obtiene: a 2 = 64, a 3 = 32, a 4 = 0, x 2 = 1, x 3 = 1, y 2 = 2, y 3 = 3 Luego d = a 3 = 32 = 256( 1) Observación Ejemplo 12 Sea p = 7, y el cuerpo F 7 = {0,1,2,3,4,5,6} Para a = 3, b = 6 se tiene (mod 7), (mod 7) y (mod 7) (nótese que 1 = ) El Algoritmo 14 puede aplicarse también a dos polinomios a(x),b(x) con coeficientes en un cuerpo K Ver el ejemplo 13

9 CC-BY-NC-ND PID_ Cuerpos finitos Ejemplo 13 Calcular el máximo común divisor mcd(p(x),q(x)) y expresar el resultado como combinación de los polinomios iniciales P(X) y Q(X), donde P(X) y Q(X) son polinomios a coeficientes en F 3 : P(X) = X 7 + 2X 2 + X + 1; Q(X) = X 3 + 2X 2 La aplicación del algoritmo de Euclides extendido nos da: a 0 = X 7 + 2X 2 + X + 1; a 1 = X 3 + 2X 2 ; a 2 = X + 1; a 3 = 1; a 4 = 0 q 1 = X 4 + X 3 + X 2 + X + 1; q 2 = X 2 + X + 2 x 0 = 1; x 1 = 0; x 2 = 1; x 3 = 2X 2 + 2X + 1 y 0 = 0; y 1 = 1; y 2 = 2X 4 + 2X 3 + 2X 2 + 2X + 2; y 3 = X 6 + 2X 5 + X 4 + X 3 + X 2 O sea que, 1 = mcd(p(x),q(x)) y, además: (X 2 + X + 2)P(X) + (X 6 + 2X 5 + X 4 + X 3 + X 2 )Q(x) = 1 Determinemos ahora para qué otros valores de q, distintos de los primos, existe un cuerpo finito con q elementos Proposición 15 Sea K = F q un cuerpo finito con q elementos, con elemento neutro para la adición 0 K y elemento unidad para la multiplicación 1 K Existe un primo p tal que K contiene al cuerpo F p de los enteros módulo p Demostración: El cuerpo K no puede tener característica 0 (caso contrario contendría al conjunto infinito {1 K,2 1 K,,n 1 K, }) K es pues de característica prima p y contiene al subcuerpo {0 K,1 K,2 1 K, (p 1) 1 K } isomorfo al cuerpo F p de los enteros módulo p Corolario 16 Sea F q un cuerpo de característica p Existe un entero positivo m tal que q = p m Demostración: F q admite una estructura de espacio vectorial sobre su subcuerpo F p, sea m su dimensión (obviamente finita) Fijada una base cualquiera de este espacio vectorial, F q se identifica con el conjunto de vectores F m p, conjunto con cardinal p m El resultado anterior muestra que el cardinal de un cuerpo finito es siempre potencia de un número primo El siguiente teorema muestra que para cualquier potencia de un primo existe un cuerpo finito con ese cardinal y que tal cuerpo es esencialmente único Definición 17 (Clausura algebraica) Sea K un cuerpo La clausura algebraica de K es un cuerpo que contiene a K, tal que todo polinomio con coeficientes en K tiene todas sus raíces en él y que es minimal con esta propiedad Tal clausura existe y es única salvo isomorfismo Observación El cuerpo C de los números complejos contiene las raíces de todo polinomio con coeficientes en el cuerpo Q de los números racionales Sin embargo C no es una clausura algebraica de Q ya que no se cumple la condición de minimalidad La clausura es un subcuerpo de C denominado cuerpo de los números algebraicos

10 CC-BY-NC-ND PID_ Cuerpos finitos Teorema 18 Para todo primo p y todo número natural m existe un cuerpo finito con q = p m elementos Tal cuerpo es único salvo isomorfismo Demostración: Sea F p el cuerpo con p elementos y el polinomio definido sobre este cuerpo: F(X) = X q X Sea R el conjunto de las q raíces de F(X) en una cierta clausura algebraica de F p (no confundir con las raíces complejas de tal polinomio, nótese que F p no está contenido en los complejos) Tales raíces son distintas (el polinomio F(X) no tiene raíces múltiples, ya que su derivada no es nula: F (X) = qx q (mod p) y por tanto R tiene cardinal q Ahora bien R es un cuerpo: Seanα,β R, es decirα q =α,β q =β Obviamente, entonces (α β) q =α β y (suponiendoβ 0) (α :β) q =α:β Pero teniendo en cuenta que en F p, q 0, también (α±β) q =α±β (pues todos los demás miembros del desarrollo de (a + b) q son múltiplos de p), luego la suma, diferencia, producto y cociente de elementos de R están en R Sea K otro cuerpo con q elementos El grupo multiplicativo K = K {0} tiene cardinal q 1 y por tanto, todo elemento a K verifica a q 1 = 1 K, luego a q = a, ecuación que obviamente también verifica O K Es decir, los q elementos de K son raíces de X q X y por tanto K puede identificarse con R Habitualmente, en criptografía se utilizan los dos tipos de cuerpos siguientes: 1) Cuerpos binarios F 2 m, con 2 m elementos 2) Cuerpos F p, con p elementos y p primo (habitualmente muy grande) El teorema 18 demuestra la existencia de un cuerpo finito con q elementos, pero no una construcción explícita El método siguiente proporciona tal construcción, que es formalmente análoga a la del cuerpo F p como clases de equivalencia de los enteros módulo p Sea f (X) = X m +f m 1 X m 1 + +f 1 X+f 0 F p[x] un polinomio mónico (coeficiente del término de mayor grado igual a 1) e irreducible, con coeficientes en F p En el anillo de polinomios F p[x] consideremos el conjunto de sus clases de equivalencia módulo f (X) Un conjunto de representantes de estas clases viene dado por el conjunto K de los q = p m polinomios a 0 +a 1 X+ +a m 1 X m 1 F p[x] de grado menor que m (pues todo g(x) F p[x] es equivalente al polinomio resto de su división por f (X)) Si denotamosα K a la clase de equivalencia de X, es decirα X (mod f (X)), podemos identificar el elemento a 0 + a 1 X + + a m 1 X m 1 con a 0 + a 1 α + + a m 1 α m 1 y K con el conjunto de estas expresiones Nótese queα m + f m 1 α m f 1 α + f 0 0 K y por tantoα puede considerarse como una raíz del polinomio f (X) en K Se tiene,

11 CC-BY-NC-ND PID_ Cuerpos finitos Teorema 19 El conjunto K con las operaciones suma y producto en F p[α] inducidas por la suma y producto de polinomios en F p[x] es un cuerpo con q elementos Demostración: El razonamiento es totalmente análogo al de la proposición 13 y los detalles se dejan como ejercicio En particular el inverso de un elemento no nulo se obtiene utilizando el algoritmo de Euclides extendido para polinomios Nota Se ha señalado queαpuede considerarse como raíz de f (X) Dado que este polinomio de grado m tiene m raíces puede plantearse cuál de ellas esα Sin embargo, a diferencia de lo que sucede con las raíces de un polinomio con coeficientes racionales, las cuales pueden individualizarse y tienen un valor concreto (real o complejo), esto no ocurre en cuerpos finitos El elemento α puede considerarse como un símbolo, que se toma como raíz de f (X); una vez fijada esta raíz, las restantes pueden expresarse en función de α (ver el ejemplo siguiente) Ejemplo 14 Consideremos el polinomio irreducible X 3 + X + 1 F 2 [X], y seaα una raíz Las otras dos raíces son entoncesα 2 yα 2 +α Un cuerpo con 8 elementos estaría formado por los elementos: F 8 = {0,1,α,1 +α,α 2,1 +α 2,α +α 2,1 +α+α 2 } (2) con las siguientes tablas de adición y multiplicación: α 1 +α α 2 1 +α 2 α +α 2 1 +α+α α 1 +α α 2 1 +α 2 α +α 2 1 +α+α α α 1 +α 2 α 2 1 +α+α 2 α +α 2 α α 1 +α 0 1 α +α 2 1 +α+α 2 α 2 1 +α 2 1 +α 1 +α α α+α 2 α +α 2 1 +α 2 α 2 α 2 α 2 1 +α 2 α +α 2 1 +α+α α 1 +α 1 +α 2 1 +α 2 α 2 1 +α+α 2 α +α α α α +α 2 α +α 2 1 +α+α 2 α 2 1 +α 2 α 1 +α α+α 2 1 +α+α 2 α +α 2 1 +α 2 α 2 1 +α α α 1 +α α 2 1 +α 2 α +α 2 1 +α+α α 1 +α α 2 1 +α 2 α +α 2 1 +α+α 2 α α α 2 α +α 2 1 +α 1 1 +α+α 2 1 +α 2 1 +α 1 +α α +α 2 1 +α 2 1 +α+α 2 α 2 1 α α 2 α 2 1 +α 1 +α+α 2 α +α 2 α 1 +α α 2 1 +α 2 1 α 2 α 1 +α+α 2 1 +α α +α 2 α +α 2 α +α 2 1 +α+α α 2 1 +α α α 2 1 +α+α 2 1 +α+α 2 1 +α 2 α 1 α +α 2 α 2 1 +α Nota El ejemplo anterior construye un cuerpo con 8 elementos utilizando el polinomio irreducible X 3 + X + 1 F 2 [X] Pero una construcción análoga podría obtenerse a partir de una raízβ del polinomio X 3 + X F 2 [X] el cual es también irreducible (en realidad, salvo para p = m = 2 en que el único polinomio irreducible es el X 2 +X+1, siempre existe

12 CC-BY-NC-ND PID_ Cuerpos finitos más de un polinomio irreducible de grado m) En esta otra construcción se obtendrían tablas aditivas y multiplicativas aparentemente diferentes Sin embargo, el teorema 18 garantiza que solo existe un cuerpo con 8 elementos Cuál es la explicación de esta aparente contradicción? En realidad es un simple problema de etiquetado de los elementos: en concreto, puede comprobarse que la asignaciónα β = 1 +β se extiende a un isomorfismo entre ambos cuerpos (las tablas paraα yβ son iguales) 12 Estructura aditiva y multiplicativa de un cuerpo finito El cuerpo finito F q contiene dos grupos abelianos, (F q,+) y (F q, ) La estructura de estos grupos es particularmente simple Teorema 110 (Estructura aditiva) Si q = p m, el grupo aditivo (F q,+) es un producto directo de m grupos cíclicos de orden p: (F q,+) Z/pZ Z/pZ (3) Demostración: Como se ha indicado (F q,+) es un espacio vectorial sobre su subcuerpo primo F p Cualquier base de este espacio (por ejemplo, una base del tipo {1,α,α m 1 } utilizada en el teorema 19 induce el isomorfismo indicado 121 Representación aditiva En virtud del teorema 110 los elementos de F q pueden representarse como vectores m-dimensionales con coeficientes en F p, es decir, expresiones de la forma (a 1,a 2,,a m) con a i {0,1,,p 1} Así, por ejemplo, los elementos de F 8 pueden identificarse con el conjunto de triples binarias {(i,j,k)} i,j,k {0,1}, lo que proporciona una forma adecuada de transmitir los elementos de tal cuerpo a través de un canal binario En esta forma aditiva los elementos pueden sumarse (sumando coordenada a coordenada módulo p) o multiplicarse escalarmente por un elemento de F p Para estudiar la estructura multiplicativa, recordemos que, dado un grupo abeliano finito (G, ), llamamos orden de x G al orden del subgrupo engendrado por x, es decir, ord(x) = min{n x n = 1} y exponente de G a exp(g) = mcm{ord(x) x G} Lema 111 Si (G, ) es un grupo abeliano finito de exponente n, entonces existe un elemento x G de orden n

13 CC-BY-NC-ND PID_ Cuerpos finitos Demostración: Sea n = p e1 1 pem m la descomposición de n en factores primos Como p ei i aparece en la factorización, existe x i G de orden k i p ei i para un cierto entero natural k i Entonces el elemento x ki i x = Q m i=1 xki i tendrá orden exactamente n tendrá orden p ei i y por tanto Teorema 112 (Estructura multiplicativa) El grupo multiplicativo (F q, ) es cíclico de orden q 1 Demostración: Sea n el exponente de F q En virtud del lema anterior debe existir un elemento de orden n Por tanto n q 1 = #F q Por otra parte, por ser n múltiplo del orden de todo elemento, los q 1 elementos de F q satisfacen la ecuación X n 1 = 0, con lo que q 1 n y finalmente n = q 1 Dado que existe un elemento de orden q 1 el grupo es cíclico Definición 113 (Elemento primitivo) Llamaremos elemento primitivo de F q a un generador del grupo cíclico (F q, ) Nota La noción de elemento primitivo en el contexto de un grupo cíclico finito de orden n y la notación ϕ(n) para el número de tales elementos primitivos puede encontrarse en el módulo 5 del curso Criptografía de la UOC Tal número es importante en matemáticas y será utilizado en otras partes de este curso, por lo que damos a continuación su definición y algunas de sus propiedades Definición 114 (Función de Euler) Para todo número natural n se denotaϕ(n) al número de elementos a; 0 < a < n tales que mcd(a,n) = 1 La función así obtenida se denomina función de Euler Proposición 115 La función de Euler verifica las siguientes propiedades: 1) Si p es un número primo,ϕ(p) = p 1 2) Si p es un número primo y r un número natural,ϕ(p r ) = p r p r 1 = p r 1 (p 1) 3) Si m,n son números naturales primos entre sí (es decir, mcd(m,n) = 1), ϕ(mn) = ϕ(m)ϕ(n)

14 CC-BY-NC-ND PID_ Cuerpos finitos La demostración es sencilla y se deja como un ejercicio Corolario 116 Sea n = p r1 1 prs s natural n Se tiene: la factorización prima del número ϕ(n) = n Y (1 1/p i ) (4) i El corolario 116 muestra que el cálculo deϕ(n) es fácil si se conoce la factorización de n Por contra, sin conocer tal factorización, este cálculo es un problema computacionalmente dificil 122 Representación multiplicativa En virtud del teorema 112, siα es un elemento primitivo de F q, entonces F q = {α i i = 1,,q 1} Esta representación será fundamental en los sistemas criptográficos basados en el problema del logaritmo discreto Ejemplo 15 Para q = 11,α = 2 es un elemento primitivo de F 11 Ejemplo 16 Como en el ejemplo 14, consideremos el polinomio irreducible X 3 + X + 1 F 2 [X], y seaα una raíz Para saber siαes un elemento primitivo, en F 8 deberíamos calcular su orden y ver si es máximo O sea, si el menor entero positivo r tal queα r = 1 es r = q 1 = 7 Sabemos queα 3 +α+1 = 0, o seaα 3 =α + 1 Luego,α 4 =α 2 +α;α 5 =α 3 +α 2 =α 2 +α+1; α 6 = (α 3 ) 2 =α yα 7 =α 3 +α = 1 Observación No se conoce ningún algoritmo eficiente para el cálculo de un elemento primitivo, ni siquiera en el caso de los cuerpos F p, p primo Luego α es un elemento primitivo y la tabla de equivalencias entre la representación vectorial (o polinomial) y exponencial es: Exponencial Vectorial Polinomial 0 (0,0,0) 0 α 0 (1,0,0) 1 α 1 (0,1,0) α α 2 (0,0,1) α 2 α 3 (1,1,0) 1 +α α 4 (0,1,1) α +α 2 α 5 (1,1,1) 1 +α+α 2 α 6 (1,0,1) 1 +α 2 Observación Observar que al escribir un polinomio como vector, utilizando los coeficientes de su expresión aditiva, hemos empezado por el término de grado cero como primera coordenada

15 CC-BY-NC-ND PID_ Cuerpos finitos 2 Bases de cuerpos finitos Como se ha indicado, los elementos de F q, q = p m pueden expresarse como combinación lineal, con coeficientes en F p, de los elementos de una base Desde un punto de vista computacional, dos tipos de bases son especialmente importantes Definición 21 (Base polinómica) Se denomina base polinómica del cuerpo F q a una base del tipo {1,α,α m 1 }, conα raíz de un polinomio mónico e irreducible con coeficientes en F p El número de bases polinómicas de F q será pues igual al número de polinomios mónicos e irreducibles de grado m con coeficientes en F p Tal número puede determinarse explícitamente Proposición 22 X q X es el producto de todos los polinomios irreducibles sobre F p cuyo grado divide a m Demostración: Sea g(x) F p[x] un polinomio mónico e irreducible de grado d m Es decir m = dd En virtud del teorema 19 las raíces de g(x) determinan un cuerpo con F p d elementos y por tanto, por el teorema 18, son raíces de X pd X, luego g(x) divide a X pd X Se tiene p m 1 = (p d 1)(p d(d 1) + p d(d 2) + p d + 1) es decir p d 1 divide a p m 1 Un razonamiento análogo con X en lugar de p, muestra que X pd 1 1 divide a X pm 1 1 luego X pd X y por tanto g(x) divide a X q X Recíprocamente, un razonamiento similar prueba que si g(x) es un polinomio mónico e irreducible que divide a X q X, su grado es un divisor de m Corolario 23 Si denotamos por N p(d) el número de polinomios irreducibles de grado d sobre F p, se tiene, q = X d m dn p(d) (5)

16 CC-BY-NC-ND PID_ Cuerpos finitos El número buscado N p(m) figura como sumando en la expresión anterior Veamos cómo despejarlo Definición 24 (Función de Moebius) Llamaremos función de Moebius a la función de variable natural,µ : N { 1,0,1} definida del modo siguiente: si n N y n = Q s i=1 pei i primos, entonces es su descomposición en factores 8 >< µ(n) = >: 1 si n = 1; 0 si e i 2 para algún valor de i; ( 1) s si e i = 1 para todo valor de i (6) Lema 25 Si n N, se verifica que 8 X >< 1 si n = 1; µ(d) = d n >: 0 si n > 1 (7) Demostración: El caso n = 1 es trivial Supongamos pues que n > 1 y sean p 1,p 2,,p s los divisores primos distintos de n Teniendo en cuenta la definición de la función de Moebius, X sx µ(d) = µ(1) + µ(p i ) + X µ(p i p j ) + +µ(p 1 p 2 p s) d n i=1 1 i<j s = 1 + s 1 C A ( 1) + s 2 C A ( 1)2 + + s s C A ( 1)s = (1 1) s = 0

17 CC-BY-NC-ND PID_ Cuerpos finitos Lema 26 (Fórmula de inversión de Moebius) Sea f una función de variable natural con valores en un grupo abeliano Para n N definamos g(n) mediante Se verifica que g(n) = X d n f (d) (8) f (n) = X d n µ(d)g( n d ) = X d n µ( n )g(d) (9) d Demostración: X µ(d)g( n d ) = X µ(d) X f (e) d n e (n/d) d n = X X µ(d)f (e) e n d (n/e) = X f (e) X µ(d) e n d (n/e) = f (n) donde para la última igualdad hemos tenido en cuenta el lema 25 Teorema 27 El número de polinomios irreducibles de grado m sobre F p es N p(m) = 1 X µ(d)p m/d = 1 X µ( m m m d )pd (10) d m d m Demostración: Basta aplicar la fórmula de inversión de Moebius a la función f (m) = mn p(m) Ejemplo 21 Para p = 2 el número de polinomios de grado m es: 1) 1 si m = 2 El polinomio: X 2 + X + 1 2) 2 si m = 3 Los polinomios: X 3 + X + 1 y X 3 + X ) 3 si m = 4 Los polinomios: X 4 + X + 1, X 4 + X y X 4 + X 3 + X 2 + X + 1 4) etc Observación Un polinomio irreducible de grado m puede obtenerse tomando polinomios arbitrarios y aplicándoles un test de irreducibilidad (Lidl y Niederreiter, 1997) El valor N p(m) dado por el teorema 27 proporciona una estimación de la probabilidad de éxito de tal búsqueda aleatoria

18 CC-BY-NC-ND PID_ Cuerpos finitos Definición 28 (Base Normal) Se denomina base normal de F q una base del tipo {α,α p,,α pm 1 } conα F q a Como se verá en el apartado siguiente, las bases normales son muy eficientes para el cómputo de la exponenciación en F q, operación básica en los algoritmos criptográficos basados en el problema del logaritmo discreto Para tener una base normal es necesario un elementoα cuyas potencias p-ésimas sucesivas sean linealmente independientes Ejemplo 22 Sea q = 8 = 2 3,αraíz del polinomio irreducible, X 3 + X + 1 En este caso {α,α 2,α 4 } no es base normal (pues ni siquiera es base, ya que los tres elementos son linealmente dependientes) X 3 + X En este caso {α,α 2,α 4 } es base normal En general, no es obvia la existencia de un elementoα generando una base normal Se tiene, sin embargo, el teorema 29 Lectura recomendada Teorema 29 (Teorema de la base normal) Existe una base normal para todo cuerpo finito Sobre el teorema de la base normal podéis ver la obra de Lidl y Niederreiter (1997) o la de Menezes (1993) Evaluemos el número de bases normales Supongamos fijada una tal base normal B = {α,α p,,α pm 1 } (cuya existencia garantiza el teorema 29) Un cambio de base de B a una nueva base B = {β 0,β 1,,β m 1 } viene determinado por una matriz m m inversible C = (c ij ), c ij F p Veamos qué condición debe cumplir C para que la nueva base B sea también normal Definición 210 (Matriz circulante) Se denomina matriz circulante (con coeficientes en un cuerpo o anillo) a una matriz del tipo: Observación Comenzar con 0 los subíndices de los elementos de la base B y de los componentes de la matriz circulante es por coherencia con los exponentes de la base normal B: p 0,p 1,,p m 1 0 [a 0,a 1,,a m 1 ] = a 0 a 1 a m 1 a m 1 a 0 a m 2 a 1 a 2 a 0 1 (11) C A

19 CC-BY-NC-ND PID_ Cuerpos finitos Es decir, la matriz queda determinada por su primera fila, ya que las siguientes se deducen cada una de la anterior mediante una permutación cíclica de sus elementos, que desplaza cada coordenada una posición a la derecha Teorema 211 La base B es normal si, y solo si, la matriz C de cambio de base es circulante Demostración: Supongamos que la matriz es circulante, es decir C = [a 0,a 1,,a m 1 ] lo que implica que c ij = a j i luego, β i = X j a j i α pj X j a j i α pj i Api X j a j α pj A p i =β pi 0 lo que muestra que la base B es normal Si recíprocamente suponemos B normal, seaβ 0 = P j c 0jα pj Se tendrá: β i =β pi 0 = X j c 0j α pi+j = X j c 0,j i α pj (12) pero también (por definición)β i = P j c ijβ pj, lo que muestra que la matriz C es circulante El número de bases normales del cuerpo F q será pues igual al número de matrices m m circulantes e invertibles con coeficientes en F p Lectura recomendada Para la determinación del número de bases normales del cuerpo F q podéis ver la obra de Lidl y Niederreiter

20 CC-BY-NC-ND PID_ Cuerpos finitos 3 Computación en cuerpos finitos El propósito de este apartado es mostrar cómo pueden realizarse, con los elementos de un cuerpo finito F q, las operaciones aritméticas habituales y cuál es el coste computacional de las mismas 31 Aritmética en cuerpos finitos Como se ha indicado en el teorema 110, fijada una base de F q sobre F p, todo elemento a F q puede ser representado como un vector de la forma a = (a 1,a 2,,a m), con a i {0,1,,p 1} La adición o substracción de dos elementos a, b se realiza sumando o restando coordenada a coordenada y reduciendo el resultado módulo p 311 Multiplicación Fijada una base cualquiera B = {v 1,v 2,,v m} y dos elementos de F q: a = a 1 v 1 + a 2 v a mv m, b = b 1 v 1 + b 2 v b mv m, (que podemos identificar con los vectores a = (a 1,a 2,,a m), b = (b 1,b 2,,b m)), se tiene: c = a b = ( X i a i v i )( X j b j v j ) = X ij a i b j (v i v j ) = X ij a i b j ( X k t k ijv k ) (13) Luego, denotando T k = (tij k ), k = 1,2,,m, se tienen m matrices m m denominadas tablas de multiplicación Si c = c 1 v 1 + c 2 v c mv m, las coordenadas c i vienen dadas por la ecuación matricial: c k = at k b t (14) Las tablas de multiplicación determinan pues el producto Este puede implementarse bien en software, almacenando las m tablas, bien en dispositivos hardware específicos, que constan de m circuitos cada uno de los cuales da, como salida a los inputs a,b F q, una componente c k del producto Observación En la ecuación 14 la b t denota el vector traspuesto del b (en este caso un vector escrito verticalmente) Usualmente se emplean bases particulares, como las polinómicas o las normales, ya descritas Veamos las características específicas de estos dos casos:

21 CC-BY-NC-ND PID_ Cuerpos finitos Base polinómica: Sea {1,α,,α m 1 }, conα raíz del polinomio (mónico e irreducible) f (X) En este caso, dados a = a 0 + a 1 α + + a m 1 α m 1 y b = b 0 + b 1 α + + b m 1 α m 1, el cálculo de a b implica dos operaciones: 1) Multiplicación de a y b como si fuesen polinomios en X 2) Reducción del polinomio obtenido, de grado a lo sumo 2m 2, módulo f (X) (es decir, realizar la división euclídea por f (X) y tomar el resto) Ejemplo 31 Sea el cuerpo F 8 yα raíz de f (X) = X 3 +X+1 y los elementos a = 1+α 2, b = 1 +α 1) El producto de los polinomios a(x) = X y b(x) = X + 1 da como resultado el polinomio c(x) = X 3 + X 2 + X + 1 2) La division de c(x) por f (X) da como resto X 2 Luego a b =α 2 Base Normal: Si se utiliza una base normal B = {α 0 =α,α 1 =α p,,α m 1 = α pm 1 }, las m tablas de multiplicación T k = (tij k ) verifican la siguiente relación: Lema 31 Para 0 < l m 1 se tiene t l ij = t0 i l,j l Es decir, la tabla T l se deduce de la T 0 por desplazamiento de l posiciones en filas y columnas Demostración: Por definición de las tablasα i α j = P k tk ij α k Elevando ambos miembros a p l se tiene queα p l i α p l j =α i l α j l = P k tk ij α k l Pero, por definición, α i l α j l = P k tk i l,j l α k Igualando los coeficientes deα 0 en ambas expresiones se tiene el resultado En consecuencia, si se tiene un algoritmo (o en hardware un circuito electrónico) para calcular la primera coordenada c 0 del producto de los elementos a,b F q el mismo algoritmo o circuito calcula la coordenada c l con las coordenadas de a y b desplazadas l posiciones 312 División La división de dos elementos a,b F q, b 0, implica la multiplicación de a por el inverso del elemento b Si se emplea una base polinómica, dicho inverso puede computarse utilizando el algoritmo de Euclides 14 para polinomios Ejemplo 32 Sea f (X) = X 3 + X + 1, b = 1 +α 2 El algoritmo de Euclides proporciona: a 2 = 1,a 3 = 0, x 2 = 1, y 2 = X y por tanto 1 = f (X) 1 + (X 2 + 1)X, luego b 1 =α

22 CC-BY-NC-ND PID_ Cuerpos finitos 313 Exponenciación Cálculos del tipo a n (mod m), con a,n,m Z (o bien del tipo a n, a F q, n N) son una herramienta fundamental en los sistemas criptográficos basados en el problema del logaritmo discreto y en otros campos como los tests de primalidad* En principio podría realizarse este cálculo multiplicando a por sí mismo n veces y posteriormente reduciendo módulo m el resultado obtenido Ahora bien, para n grande, un cálculo del tipo anterior sería impracticable por dos razones: * A su vez necesarios en el sistema criptográfico RSA; consultar la obra de Koblitz (1994) 1) El número excesivo de multiplicaciones 2) Los cálculos intermedios de estas multiplicaciones proporcionan números de tamaño creciente, que pronto superarán la capacidad de almacenamiento del computador Existe sin embargo un algoritmo (multiplicación y elevación al cuadrado) que permite evitar estos dos inconvenientes: Sea n = s 0 + s s k 1 2 k 1 la expresión binaria de n y sea b := 1, Algoritmo 32 (Multiplicar y elevar al cuadrado) Desde j = k 1 hasta 0 Si s j = 1 entonces b := b a (mod m) Si j > 0 entonces b := b 2 (mod m) Final Desde El resultado es a n = b (mod m) Ejemplo 33 Sean a = 3, m = 5, n = 67 Teniendo en cuenta que en base 2, 67 = , ejecutando las etapas del algoritmo anterior se obtiene (mod 5) Notas 1) El algoritmo puede adaptarse a la expresión del exponente n en otra base diferente de 2 (por ejemplo, para base 3 se tendría un algoritmo donde en lugar de elevar al cuadrado se elevaría al cubo) 2) La reducción módulo m puede sustituirse por operación en un cuerpo finito F q En particular para m = p primo la reducción módulo p es la operación en el cuerpo primo F p

23 CC-BY-NC-ND PID_ Cuerpos finitos La exponenciación puede simplificarse, especialmente en el caso de cuerpos binarios, utilizando bases normales En efecto se tiene: Lema 33 Sean {a 0,a 1,,a m 1 } las coordenadas de un elemento a F q en la base normal {α,α p,,α pm 1 } El elemento a p tiene por coordenadas (a m 1,a 0,a 1,,a m 2 ) Demostración: Se tiene (teniendo en cuenta que todos los demás miembros del desarrollo de (a + b) q son potencia de p y por tanto nulos en característica p, que a p i = a i y queα pn =α q =α) que: (a 0 α+a 1 α p + +a m 1 α pm 1 ) p = a 0 α p +a 1 α p2 + +a m 1 α pm = a m 1 α+a 0 α p + +a m 2 α pm 1 El lema anterior muestra que la elevación a la potencia p implica simplemente una permutación circular de los coeficientes y por tanto, su coste computacional es despreciable Si p = 2 es la elevación al cuadrado, pieza fundamental en el algoritmo 32, la que tiene coste cero 32 Complejidad de la aritmética en cuerpos finitos Veamos cómo obtener una estimación del coste de los algoritmos aritméticos descritos en un cuerpo finito F q La disciplina que estudia el coste de los algoritmos y problemas matemáticos se denomina teoría de la complejidad computacional Si se desea medir la cantidad de computación necesaria para ejecutar un algoritmo, habrá que tener una unidad de medida Dado que un computador reduce cualquier cálculo a sumas binarias elementales, puede tomarse tal suma como unidad Definición 34 (Operación bit) Se denomina operación bit a la adición de dos elementos en el cuerpo F 2, es decir, a la suma binaria (módulo 2) de dos números iguales a 0 ó 1 (bits) Para medir en operaciones bit el tiempo o cantidad de computación de un algoritmo, la teoría de la complejidad computacional introduce dos precisiones: 1) El tiempo debe ser función de la longitud de los datos (inputs) Tales datos son siempre números naturales (o reducibles a ellos: por ejemplo, un elemento de un cuerpo finito con cardinal q = p m queda determinado por m números naturales menores que p)

24 CC-BY-NC-ND PID_ Cuerpos finitos 2) El tiempo de ejecución de un algoritmo, para una longitud dada de los datos, variará en cada caso concreto Se adopta el criterio del caso peor tomando una cota válida para toda instancia particular de dicha longitud Definición 35 (Longitud binaria de un número) Se denomina longitud (binaria) k de un número natural n, al número de dígitos de su expresión en base 2 Dicha longitud es el número natural k tal que 2 k 1 n < 2 k y por tanto k = log 2 n + 1 Nótese que la longitud de un número es también el número de bits de memoria necesarios para almacenarlo en un computador Definición 36 (Notación O) Dadas f,g funciones en las variables naturales k 1,k 2,,k s y con valores reales positivos, se dice que f es del orden de g (f = O(g)), si existen constantes reales t,c tales que si k i > t para todo i, f (k 1,k 2,,k s) < Cg(k 1,k 2,,k s) Definición 37 (Complejidad Polinómica) Un algoritmo con datos iniciales: los enteros n 1,n 2,,n s, de longitudes k 1,k 2,,k s, se llama de complejidad polinómica si existe un polinomio P en s variables tal que el tiempo de ejecución de dicho algoritmo, medido en operaciones bit, es O(P(k 1,k 2,,k s)) Como veremos, las operaciones aritméticas usuales en cuerpos finitos, en particular las implicadas en los algoritmos criptográficos, tienen una complejidad polinómica Dado que las operaciones en cuerpos finitos se remiten a operaciones con números enteros, veamos previamente la complejidad de algunos algoritmos básicos con enteros Proposición 38 El tiempo necesario para sumar dos números naturales de longitud binaria k es O(k) La adición de números naturales tiene pues complejidad lineal en la longitud de los datos Algoritmos eficientes Los algoritmos de complejidad polinómica se denominan computacionalmente eficientes o buenos, ya que el computador puede ejecutarlos en un tiempo razonable, por oposición a los algoritmos cuya complejidad es exponencial en la longitud de los datos El tiempo necesario para multiplicar dos enteros naturales de longitudes k, l, l k es O(k 2 ) La multiplicación tiene pues una complejidad cuadrática en la longitud de los datos

25 CC-BY-NC-ND PID_ Cuerpos finitos Demostración: 1) Puede siempre suponerse la misma longitud para ambos sumandos, añadiendo eventualmente ceros a la izquierda de la representación binaria del de menor longitud La suma se obtiene entonces realizando k sumas binarias, es decir, por definición, k operaciones bit 2) Sea l k Con la regla habitual de multiplicación: colocar el número menor debajo del mayor y multiplicar cada dígito de aquel por este, colocar los resultados en filas desplazadas cada una de ellas una posición a la izquierda respecto de la anterior y sumando, a lo sumo, las l filas, de longitud k + l, (teniendo en cuenta los k l desplazamientos), se tiene un número de operaciones bit, Observación Debe señalarse que el algoritmo habitual de multiplicación no es el mejor algoritmo conocido para realizar esta operación Existe otro, debido a Schönhage y Strassen, con complejidad O(k log(k) log log(k)) O(l(k + l)) = O(2kl) = O(2k 2 ) = O(k 2 ) Nota La operación de substracción o resta tiene obviamente el mismo tiempo de ejecución que la suma La división, con la regla habitual, se reduce a multiplicaciones y diferencias y tiene pues igual tipo de complejidad que la multiplicación, es decir, cuadrática Sin embargo, debe recordarse que la estimación de la complejidad, dada por la notación O, implica una constante, por lo que dos algoritmos con igual complejidad pueden tener de hecho costes muy diferentes Es el caso de la división, bastante más costosa que la multiplicación Ello justifica el tratar de evitar o limitar al máximo el número de divisiones; en el caso de la criptografía con curvas elípticas, ello puede conseguirse mediante el uso de coordenadas proyectivas Veamos la complejidad del algoritmo 14 (de Euclides extendido) necesario, como hemos visto, para el cálculo de inversos en F p Obsérvese que en el algoritmo 14 los restos a i, obtenidos al iterar el paso 2, forman una sucesión decreciente Por tanto, el algoritmo finaliza necesariamente en un número finito de etapas Más concretamente se tiene, Lema 39 Si a b, el número de etapas necesarias en la ejecución del algoritmo de Euclides extendido es O(log(a)) Demostración: Basta probar que los restos a i verifican la relación a i+2 < 1 2 a i, lo que implica que el número de etapas es, a lo sumo, 2 log(a) Ahora bien, si a i a i, entonces a i+2 < a i a i Si a i+1 > 1 2 a i, la división euclídea proporciona a i = 1a i+1 + a i+2, con lo que también en este caso, a i+2 = a i a i+1 < 1 2 a i

26 CC-BY-NC-ND PID_ Cuerpos finitos Proposición 310 El coste computacional del algoritmo de Euclides extendido es O(log 2 a) (es decir, cuadrático en la longitud de los datos) Demostración: Cada etapa del algoritmo comporta una división (de a i entre a i+1 ), dos multiplicaciones (de q i+1 por x i+1 y por y i+1 ) y dos diferencias (para obtener x i+2 e y i+2 ) El coste total de estas operaciones elementales es O(log 2 a) La proposición se deduce teniendo en cuenta el lema anterior Veamos finalmente la complejidad del algoritmo 32, de multiplicar y elevar al cuadrado: Proposición 311 El algoritmo de multiplicar y elevar al cuadrado para calcular a n (mod m), tiene una complejidad de O(log 2 (m) log(n)) Demostración: El algoritmo comporta, como máximo, O(log(n)) cuadrados, O(log(n)) multiplicaciones y O(log(n)) divisiones (para realizar las reducciones módulo m), de números, todos ellos de longitud O(log m) Luego la complejidad sería del orden de 3 log(n) log 2 (m), o sea O(log 2 (m) log(n)) Coste computacional de las operaciones en cuerpos finitos Una vez establecido el coste computacional, medido en operaciones bit, de las operaciones aritméticas elementales con números naturales, así como del algoritmo de Euclides y el algoritmo de multiplicar y elevar al cuadrado, podemos deducir el coste de la aritmética en el cuerpo finito F q, q = p m, Proposición 312 El coste computacional de una adición (o de una substracción) de elementos de F q es O(log(q)) operaciones bit Demostración: La adición de dos elementos a,b, realizada como adición (o sustracción) de vectores con coeficientes en F p implica la realización de m adiciones (o sustracciones) de números naturales menores que p y la reducción de cada resultado módulo p Obsérvese que para tal reducción no es necesaria una división: dado que los números obtenidos son menores o iguales que 2(p 1), para obtener el resultado módulo p basta dejar el resultado inalterado si el número es menor que p y restarle p caso contrario Luego la complejidad será, O(m)O(log(p)) = O(m log(p)) = O(log(q)) (15)

27 CC-BY-NC-ND PID_ Cuerpos finitos Proposición 313 El coste computacional (utilizando la representación polinómica) de una multiplicación (o de una división) de elementos de F q es O(log 3 q) operaciones bit Demostración: Los elementos a F q se manejarán como expresiones a = a 0 + a 1 α + + a m 1 α m 1, a i {0,1,,p 1} Realizar la multiplicación de a por b implica realizar el producto de los polinomios que los representan y la reducción del resultado módulo f (X) Observación A efectos computacionales el coste de las sumas o diferencias en un algoritmo en cuerpos finitos suelen considerarse irrelevantes, ya que su complejidad es menor que la de la multiplicación A veces tal complejidad se expresa no en operaciones bit sino en número de operaciones elementales: en este caso se entienden por tal las multiplicaciones La multiplicación de dos polinomios de grado m 1 sobre F p implica la realización de O(m 2 ) multiplicaciones de enteros módulo p, cada una de las cuales requiere O(log 2 p) operaciones bit, más una serie de adiciones que, por tener un coste computacional inferior, podemos no tomar en consideración Así pues, esta primera etapa requiere O(m 2 log 2 p) operaciones bit La división del resultado por el polinomio f (X) requiere realizar O(m) divisiones de enteros módulo p (que realizadas con el algoritmo de Euclides requieren O(log 3 p) operaciones bit) y O(m 2 ) multiplicaciones de enteros módulo p; por tanto, esta reducción representa un coste de O(m log 3 p + m 2 log 2 p) En total, la multiplicación de a por b implica pues O(m 2 log 2 (p) + m log 3 (p) + m 2 log 2 (p)) = O((m log(p)) 3 ) = O(log 3 (q)) (16) operaciones bit Por lo que respecta a la división x/y, solo resta probar que el inverso de y F q puede computarse en O(log 3 q) operaciones bit Basta aplicar el algoritmo de Euclides a f (X) y al polinomio que representa b, lo que requiere O(m) divisiones de polinomios de grado a lo sumo m, cada una de las cuales comporta O(m log 3 p + m 2 log 2 p) operaciones bit En definitiva, el coste total es O(m 3 log 3 p) = O(log 3 q) operaciones bit 33 Algoritmos aritméticos en cuerpos finitos Observación Puede observarse que la complejidad de la multiplicación (o división) en un cuerpo finito es cúbica mientras que la multiplicación (o división) en números naturales es cuadrática Ello obedece al sobrecoste de la reducción módulo p y del cálculo del inverso módulo p El subapartado 31 describe los aspectos matemáticos de las operaciones aritméticas en cuerpos finitos Desde un punto de vista computacional, especialmente para cuerpos de cardinal q muy grande es crucial poder implementar, tanto en software como en hardware, tales operaciones lo más eficientemente posible Existen numerosos algoritmos con este propósito, adaptados tanto al tipo de cuerpo finito como a la plataforma particular en la que se quiere implementar tal aritmética (por ejemplo, existen algoritmos específicos para plataformas con reducida capacidad de computación y de memoria, como las

28 CC-BY-NC-ND PID_ Cuerpos finitos tarjetas inteligentes o las etiquetas electrónicas) Es este un activo campo de investigación en la actualidad, pero que desborda los objetivos del curso, por lo que nos limitamos a mostrar un solo ejemplo básico para la adición y la multiplicación en los dos tipos de cuerpos usuales en criptografía: los cuerpos primos F p y los cuerpos binarios F 2 m 1) Cuerpos primos F p Si el cardinal p del cuerpo es grande, sus elementos tendrán longitud k = log 2 p mayor que la longitud P de palabra del computador (usualmente P = 16,32 o 64 bits) Si t = k/p los elementos a F p pueden representarse en la forma A := A[t 1] A[1]A[0], concatenación de t bloques A[i] de P bits Para dos tales bloques x,y, notaremos [z,ǫ] si x + y =ǫ2 P + z,ǫ = 0,1, 0 z 2 P 1 Algoritmo de adición: Sean a,b {0,1,,p 1} El siguiente algoritmo calcula c a + b (mod p) Referencias adicionales Para otros algoritmos de adición y multiplicación, así como de exponenciación y división remitimos a la numerosa bibliografía sobre el tema, por ejemplo, I Blake; G Seroussi; N Smart (2000) Elliptic Curves in Cryptography, London Mathematical Society Lecture Note Series 265 Cambridge: U Press; y D Hankerson; A Menezes; S Vanstone (2004)Guide to Elliptic Curve Cryptography Springer Algoritmo Sea (C[0],ǫ) := A[0] + B[0] 2 Para i = 1,,t 1 sea (C[i],ǫ) := A[i] + B[i] +ǫ 3 Sea c = C[t 1] C[0] Siǫ=1 tomar c := c p Si c p tomar c := c p 4 c a + b (mod p) Ejemplo 34 Por simplicidad supondremos P = 2 (como se ha indicado, los valores habituales de P suelen ser 16,32,64, etc) Sea el primo p = 101, lo que implica k = 7, t = 4 Sean a = 83 = (luego A[0] = 11, A[1] = 00, A[2] = 01,A[3] = 01) y b = 71 = (es decir B[0] = 11, B[1] = 01, B[2] = 00,B[3] = 01) Apliquemos el algoritmo anterior a los elementos a,b Se tiene que (C[0],ǫ) = (10,1) (pues A[0] + B[0] = = 6 = 1 2 P + 2) Análogamente se obtiene: (C[1],ǫ) = (10,0), (C[2],ǫ) = (01,0), (C[3],ǫ) = (10,0) Concatenando los bloques C[i] se tiene: c = = = 154 Como este número es mayor que p el resultado final es c := c p = 53

29 CC-BY-NC-ND PID_ Cuerpos finitos Algoritmo de multiplicación: Sean a,b {0,1,,p 1} El producto en F p implica el cálculo del producto entero c = a b y la posterior reducción módulo p Para la etapa de reducción existen diversos algoritmos (Barret, Montgomery, etc) El siguiente algoritmo calcula el producto entero c = a b Algoritmo Sean R 0 := 0, R 1 := 0, R 2 = 0 2 Para k = 0,1, 2t 2, calcular, 21: Para cada par (i,j); i + j = k, 0 i,j t 1 UV := A[i] B[j] (R 0,ǫ) := R 0 + V (R 1,ǫ) := R 1 + U +ǫ R 2 := R 2 +ǫ 22 C[k] := R 0, R 0 := R 1, R 1 := R 2, R 2 := 0 3 C[2t 1] := R 0 4 c = C[2t 2] C[0] Ejemplo 35 Sean los mismos datos del ejercicio 34 Apliquemos el algoritmo anterior a a,b Para k = 0 se tiene UV = A[0]B[0] = 9 = 1001 (luego U = 10, V = 01) Por tanto (R 0,ǫ) = (01,0), (R 1,ǫ) = (10,0), R 2 = 0 luego c[0] = 01 Análogamente se obtendría, C[1] = 01, C[2] = 00, C[3] = 00, C[4] = 11, C[5] = 01, C[6] = 01 Es decir c = = ) Cuerpos binarios F 2 m En este caso la longitud binaria del cardinal del cuerpo es obviamente m En la base polinómica determinada por una raíz α del polinomio irreducible de grado m f (X), los elementos a F 2 m se expresan en la forma: a = a 0 + a 1 α + + a m 1 α m 1, a i = 0,1 Escribimos f (X) = X m + r(x)

30 CC-BY-NC-ND PID_ Cuerpos finitos La adición de dos elementos a,b F 2 m es trivial: expresados a,b en cualquier base basta realizar la suma binaria de los dos bits correspondientes a cada una de las m coordenadas Algoritmo de multiplicación El producto de los elementos a,b comporta la multiplicación de dos polinomios binarios a(x),b(x), de grado a lo sumo m 1 y la posterior reducción módulo f (X) El siguiente algoritmo resuelve el primer problema El resultado c(x) polinomio de grado a lo sumo 2m 2 puede expresarse como una palabra C formada por t bloques C[j] de tamaño P cuyas componentes son el bloque B representando a b(x) o bien un bloque nulo Algoritmo C := concatenación de t bloques de tamaño P con entradas nulas 2 Para k = 0,1, P 1, Para j = 0,1,,t 1 Si el bit k de A[j] es 1 colocar B en la posición k del bloque A[j] Caso contrario colocar un bloque nulo en dicha posición 3 C es la representación de c(x) Ejemplo 36 Sean a = y P = 2, luego t = 3, A[0] = 01, A[1] = 11, A[2] = 10 C estará formado por 3 bloques de tamaño 2 cuyas entradas son nulas o B: Para cada k = 0,1 si el bit correspondiente de A[j]; j = 0,1,2 es 1 se pone B en la casilla correspondiente de C[j] y caso contrario un bloque 0 Queda finalmente C = [B,0][B,B][0,B] Nótese que el resultado corresponde a la forma polinómica c(x) = BX 5 + BX 3 + BX 2 + B, el mismo resultado que se habría obtenido multiplicando a(x) = X 5 + X 3 + X por B

31 CC-BY-NC-ND PID_ Cuerpos finitos Ejercicios de autoevaluación 1 Justificar la necesidad de que n sea primo para que Z n, el conjunto de los enteros módulo n, tenga estructura de cuerpo Mostrar que Z 6 no es un cuerpo 2 Construir explícitamente el cuerpo finito F 9 con 9 elementos y dar la tabla de equivalencias vectorial-exponencial 3 Qué elementos de F 9 se pueden tomar como generadores de su grupo multiplicativo? Qué elementos de F 9 tienen raíz cuadrada en este cuerpo? 4 Para qué valores de p, (p = 3,5,7,11,13,19,23), se puede construir un cuerpo de orden p 2 usando el polinomio x 2 + 1? 5 Encontrar los valores de m para los cuales X 2 + mx + 2 es un polinomio irreducible y primitivo en Z 11 [X] 6 Sea q = p m, p primo, r N Probar que el cuerpo F p r está contenido en el cuerpo F q si, y solamente si, r es un divisor de m 7 Sea el cuerpo F 8, definido por el polinomio binario f (X) = X 3 + X + 1 y seaα una raíz de f (X) Expresar en la base polinómica {1,α,α 2 } los elementosα 5 y α 1+α 2 8 Demostrar que en el cuerpo F q la suma de todos los elementos es cero y si q es una potencia de un número primo impar, el producto de todos los elementos no nulos es 1 9 Demostrar que en un cuerpo finito de característica p, a) Si p = 2, cada elemento es un cuadrado; b) Si p es impar, exactamente la mitad de los elementos son cuadrados 10 Escribir la tabla de equivalencias vectorial-exponencial para el cuerpo finito F 2 4, con generadorα a) Determinarδcomo potencia deα, dondeδ =α 10 + α7 +α α b) Encontrar todas las raíces de la ecuación: α 7 x 2 + (α 2 +α 9 )x + 1 +α α 4 = 0 11 Utilizar el algoritmo extendido de Euclides para calcular: a) El inverso de 43 en el cuerpo Z 101 b) El inverso de (1,2) en el cuerpo F 9 (generar F 9 a partir del polinomio irreducible f (X) = X 2 + 1) 12 Encontrar todas las bases normales del cuerpo F 8, sobre el cuerpo F 2 13 Sea q = p m, p primo, F q el cuerpo finito con q elementos y B : {x 1,,x m} una base de F q sobre F p Dado x F q sea la aplicación linealϕ x : F q F q dada por:ϕ x(y) = xy Como toda aplicación linealϕ vendrá determinada en la base B por una matriz m m con coeficientes en F p, A = (a ij ) Se denomina Traza de x a Tr(x) = P i a ii F p (es decir, lo que se denomina traza de la matriz A, la suma de los elementos de su diagonal principal) y Norma de x a N(x) = A F p (determinante de la matriz A) Aunque definido en términos de una base concreta, puede verse en cualquier texto de álgebra lineal que Tr(x),N(x) son los mismos en cualquier base Al variar x F q se tienen dos aplicaciones Tr : F q F p y N : F q F p Probar las siguientes propiedades: i) Tr(x + y) = Tr(x) + Tr(y), i ) N(x y) = N(x) N(y), x,y F q, ii) Tr(λx) =λtr(x), ii ) N(λx) =λ m N(x),λ F p, x F q, iii) Tr(λ) = mλ, iii ) N(λ) =λ m,λ F p

Estructuras algebraicas

Estructuras algebraicas Tema 2 Estructuras algebraicas básicas 2.1. Operación interna Definición 29. Dados tres conjuntos A, B y C, se llama ley de composición en los conjuntos A y B y resultado en el conjunto C, y se denota

Más detalles

Grupos. Subgrupos. Teorema de Lagrange. Operaciones.

Grupos. Subgrupos. Teorema de Lagrange. Operaciones. 1 Tema 1.-. Grupos. Subgrupos. Teorema de Lagrange. Operaciones. 1.1. Primeras definiciones Definición 1.1.1. Una operación binaria en un conjunto A es una aplicación α : A A A. En un lenguaje más coloquial

Más detalles

Anexo 1: Demostraciones

Anexo 1: Demostraciones 75 Matemáticas I : Álgebra Lineal Anexo 1: Demostraciones Espacios vectoriales Demostración de: Propiedades 89 de la página 41 Propiedades 89- Algunas propiedades que se deducen de las anteriores son:

Más detalles

9.1 Primeras definiciones

9.1 Primeras definiciones Tema 9- Grupos Subgrupos Teorema de Lagrange Operaciones 91 Primeras definiciones Definición 911 Una operación binaria en un conjunto A es una aplicación α : A A A En un lenguaje más coloquial una operación

Más detalles

VII. Estructuras Algebraicas

VII. Estructuras Algebraicas VII. Estructuras Algebraicas Objetivo Se analizarán las operaciones binarias y sus propiedades dentro de una estructura algebraica. Definición de operación binaria Operaciones como la suma, resta, multiplicación

Más detalles

BASES Y DIMENSIÓN. Propiedades de las bases. Ejemplos de bases.

BASES Y DIMENSIÓN. Propiedades de las bases. Ejemplos de bases. BASES Y DIMENSIÓN Definición: Base. Se llama base de un espacio (o subespacio) vectorial a un sistema generador de dicho espacio o subespacio, que sea a la vez linealmente independiente. β Propiedades

Más detalles

Tema 3. Espacios vectoriales

Tema 3. Espacios vectoriales Tema 3. Espacios vectoriales Estructura del tema. Definición y propiedades. Ejemplos. Dependencia e independencia lineal. Conceptos de base y dimensión. Coordenadas Subespacios vectoriales. 0.1. Definición

Más detalles

Tema 2. Espacios Vectoriales. 2.1. Introducción

Tema 2. Espacios Vectoriales. 2.1. Introducción Tema 2 Espacios Vectoriales 2.1. Introducción Estamos habituados en diferentes cursos a trabajar con el concepto de vector. Concretamente sabemos que un vector es un segmento orientado caracterizado por

Más detalles

UNIDAD 3: ANILLOS DE POLINOMIOS

UNIDAD 3: ANILLOS DE POLINOMIOS UNIDAD 3: ANILLOS DE POLINOMIOS En nuestra educación matemática se nos introdujo muy pronto -generalmente en los primeros años de secundariaal estudio de los polinomios. Durante una temporada que parecía

Más detalles

Polinomios y Fracciones Algebraicas

Polinomios y Fracciones Algebraicas Tema 4 Polinomios y Fracciones Algebraicas En general, a lo largo de este tema trabajaremos con el conjunto de los números reales y, en casos concretos nos referiremos al conjunto de los números complejos.

Más detalles

Tema III. Capítulo 2. Sistemas generadores. Sistemas libres. Bases.

Tema III. Capítulo 2. Sistemas generadores. Sistemas libres. Bases. Tema III Capítulo 2 Sistemas generadores Sistemas libres Bases Álgebra Lineal I Departamento de Métodos Matemáticos y de Representación UDC 2 Sistemas generadores Sistemas libres Bases 1 Combinación lineal

Más detalles

ESTRUCTURAS ALGEBRAICAS 1

ESTRUCTURAS ALGEBRAICAS 1 ESTRUCTURAS ALGEBRAICAS Se da la relación entre dos conjuntos mediante el siguiente diagrama: (, ) (2, 3) (, 4) (, 2) (7, 8) (, ) (3, 3) (5, ) (6, ) (, 6)........ 5 6......... 2 5 i) Observa la correspondencia

Más detalles

Divisibilidad y números primos

Divisibilidad y números primos Divisibilidad y números primos Divisibilidad En muchos problemas es necesario saber si el reparto de varios elementos en diferentes grupos se puede hacer equitativamente, es decir, si el número de elementos

Más detalles

1 Espacios y subespacios vectoriales.

1 Espacios y subespacios vectoriales. UNIVERSIDAD POLITÉCNICA DE CARTAGENA Departamento de Matemática Aplicada y Estadística Espacios vectoriales y sistemas de ecuaciones 1 Espacios y subespacios vectoriales Definición 1 Sea V un conjunto

Más detalles

Definición 1.1.1. Sea K un cuerpo. Un polinomio en x, con coeficientes en K es toda expresión del tipo

Definición 1.1.1. Sea K un cuerpo. Un polinomio en x, con coeficientes en K es toda expresión del tipo POLINOMIOS 1.1. DEFINICIONES Definición 1.1.1. Sea K un cuerpo. Un polinomio en x, con coeficientes en K es toda expresión del tipo p(x) = a i x i = a 0 + a 1 x + a 2 x 2 + + a n x n + ; a i, x K; n N

Más detalles

Subespacios vectoriales en R n

Subespacios vectoriales en R n Subespacios vectoriales en R n Víctor Domínguez Octubre 2011 1. Introducción Con estas notas resumimos los conceptos fundamentales del tema 3 que, en pocas palabras, se puede resumir en técnicas de manejo

Más detalles

Definición 1.1.1. Dados dos números naturales m y n, una matriz de orden o dimensión m n es una tabla numérica rectangular con m filas y n columnas.

Definición 1.1.1. Dados dos números naturales m y n, una matriz de orden o dimensión m n es una tabla numérica rectangular con m filas y n columnas. Tema 1 Matrices Estructura del tema. Conceptos básicos y ejemplos Operaciones básicas con matrices Método de Gauss Rango de una matriz Concepto de matriz regular y propiedades Determinante asociado a una

Más detalles

CURSO BÁSICO DE MATEMÁTICAS PARA ESTUDIANTES DE ECONÓMICAS Y EMPRESARIALES

CURSO BÁSICO DE MATEMÁTICAS PARA ESTUDIANTES DE ECONÓMICAS Y EMPRESARIALES INECUACIONES NOTA IMPORTANTE: El signo de desigualdad de una inecuación puede ser,, < o >. Para las cuestiones teóricas que se desarrollan en esta unidad únicamente se utilizará la desigualdad >, siendo

Más detalles

Dominios de factorización única

Dominios de factorización única CAPíTULO 3 Dominios de factorización única 1. Dominios euclídeos En la sección dedicada a los números enteros hemos descrito todos los ideales de Z. En este apartado introducimos una familia de anillos

Más detalles

Factorización de polinomios

Factorización de polinomios Factorización de polinomios Polinomios Un polinomio p en la variable x es una expresión de la forma: px a 0 a 1 x a x a n1 x n1 a n x n donde a 0, a 1, a,, a n1, a n son unos números, llamados coeficientes

Más detalles

Los sistemas de numeración se clasifican en: posicionales y no posicionales.

Los sistemas de numeración se clasifican en: posicionales y no posicionales. SISTEMAS NUMERICOS Un sistema numérico es un conjunto de números que se relacionan para expresar la relación existente entre la cantidad y la unidad. Debido a que un número es un símbolo, podemos encontrar

Más detalles

Ejemplo 1.2 En el capitulo anterior se demostró que el conjunto. V = IR 2 = {(x, y) : x, y IR}

Ejemplo 1.2 En el capitulo anterior se demostró que el conjunto. V = IR 2 = {(x, y) : x, y IR} Subespacios Capítulo 1 Definición 1.1 Subespacio Sea H un subconjunto no vacio de un espacio vectorial V K. Si H es un espacio vectorial sobre K bajo las operaciones de suma y multiplicación por escalar

Más detalles

Apuntes de Matemática Discreta 9. Funciones

Apuntes de Matemática Discreta 9. Funciones Apuntes de Matemática Discreta 9. Funciones Francisco José González Gutiérrez Cádiz, Octubre de 004 Universidad de Cádiz Departamento de Matemáticas ii Lección 9 Funciones Contenido 9.1 Definiciones y

Más detalles

Sistemas de numeración

Sistemas de numeración Sistemas de numeración Un sistema de numeración es un conjunto de símbolos y reglas que permiten representar datos numéricos. Los sistemas de numeración actuales son sistemas posicionales, que se caracterizan

Más detalles

1. Ecuaciones no lineales

1. Ecuaciones no lineales 1. Ecuaciones no lineales 1.1 Ejercicios resueltos Ejercicio 1.1 Dada la ecuación xe x 1 = 0, se pide: a) Estudiar gráficamente sus raíces reales y acotarlas. b) Aplicar el método de la bisección y acotar

Más detalles

Números Reales. MathCon c 2007-2009

Números Reales. MathCon c 2007-2009 Números Reales z x y MathCon c 2007-2009 Contenido 1. Introducción 2 1.1. Propiedades básicas de los números naturales....................... 2 1.2. Propiedades básicas de los números enteros........................

Más detalles

Biblioteca Virtual Ejercicios Resueltos

Biblioteca Virtual Ejercicios Resueltos EJERCICIO 13 13 V a l o r n u m é r i c o Valor numérico de expresiones compuestas P r o c e d i m i e n t o 1. Se reemplaza cada letra por su valor numérico 2. Se efectúan las operaciones indicadas Hallar

Más detalles

Los polinomios. Un polinomio es una expresión algebraica con una única letra, llamada variable. Ejemplo: 9x 6 3x 4 + x 6 polinomio de variable x

Los polinomios. Un polinomio es una expresión algebraica con una única letra, llamada variable. Ejemplo: 9x 6 3x 4 + x 6 polinomio de variable x Los polinomios Los polinomios Un polinomio es una expresión algebraica con una única letra, llamada variable. Ejemplo: 9x 6 3x 4 + x 6 polinomio de variable x Elementos de un polinomio Los términos: cada

Más detalles

1. Producto escalar, métrica y norma asociada

1. Producto escalar, métrica y norma asociada 1. asociada Consideramos el espacio vectorial R n sobre el cuerpo R; escribimos los vectores o puntos de R n, indistintamente, como x = (x 1,..., x n ) = n x i e i i=1 donde e i son los vectores de la

Más detalles

Clasificación de métricas.

Clasificación de métricas. Clasificación de métricas. 1. El problema de clasificación. Como bien sabemos, el par formado por una métrica T 2 (esto es, un tensor 2-covariante simétrico) sobre un espacio vectorial E, (E, T 2 ), constituye

Más detalles

1º) Siempre que se pueda, hay que sacar factor común: :a b ± a c ± a d ± = a (b ± c ± d ± ):

1º) Siempre que se pueda, hay que sacar factor común: :a b ± a c ± a d ± = a (b ± c ± d ± ): Pág. 1 de 7 FAC T O R I Z AC I Ó N D E P O L I N O M I O S Factorizar (o descomponer en factores) un polinomio consiste en sustituirlo por un producto indicado de otros de menor grado tales que si se multiplicasen

Más detalles

4 APLICACIONES LINEALES. DIAGONALIZACIÓN

4 APLICACIONES LINEALES. DIAGONALIZACIÓN 4 APLICACIONES LINEALES DIAGONALIZACIÓN DE MATRICES En ocasiones, y con objeto de simplificar ciertos cálculos, es conveniente poder transformar una matriz en otra matriz lo más sencilla posible Esto nos

Más detalles

Números algebraicos. Cuerpos de números. Grado.

Números algebraicos. Cuerpos de números. Grado. < Tema 5.- Números algebraicos. Cuerpos de números. Grado. 5.1 Cuerpo de fracciones de un dominio. Tratamos de generalizar la construcción de Q, a partir de Z. Sea A un dominio de integridad. En A (A \

Más detalles

Polinomios y fracciones algebraicas

Polinomios y fracciones algebraicas UNIDAD Polinomios y fracciones algebraicas U n polinomio es una expresión algebraica en la que las letras y los números están sometidos a las operaciones de sumar, restar y multiplicar. Los polinomios,

Más detalles

NÚMEROS NATURALES Y NÚMEROS ENTEROS

NÚMEROS NATURALES Y NÚMEROS ENTEROS NÚMEROS NATURALES Y NÚMEROS ENTEROS Los números naturales surgen como respuesta a la necesidad de nuestros antepasados de contar los elementos de un conjunto (por ejemplo los animales de un rebaño) y de

Más detalles

Subconjuntos destacados en la

Subconjuntos destacados en la 2 Subconjuntos destacados en la topología métrica En este capítulo, introducimos una serie de conceptos ligados a los puntos y a conjuntos que por el importante papel que juegan en la topología métrica,

Más detalles

La suma se realiza miembro a miembro. La suma de polinomios goza de las mismas propiedades que la suma de números. Ejemplo:

La suma se realiza miembro a miembro. La suma de polinomios goza de las mismas propiedades que la suma de números. Ejemplo: Tema 4. Polinomios 1. Definición Un polinomio es una expresión hecha con constantes, variables y exponentes, que están combinados. Los exponentes sólo pueden ser 0, 1, 2, 3,... etc. No puede tener un número

Más detalles

342 SOBRE FORMAS TERNARIAS DE SEGUNDO GRADO.

342 SOBRE FORMAS TERNARIAS DE SEGUNDO GRADO. 342 SOBRE FORMAS TERNARIAS DE SEGUNDO GRADO. ALGUNAS APLICACIONES A LA TEORIA DE LAS FORMAS BINARIAS. Encontrar una forma cuya duplicación produce una forma dada del género principal. Puesto que los elementos

Más detalles

EXPRESIONES ALGEBRAICAS. POLINOMIOS

EXPRESIONES ALGEBRAICAS. POLINOMIOS EXPRESIONES ALGEBRAICAS. POLINOMIOS 1. EXPRESIONES ALGEBRAICAS. Estas expresiones del área son expresiones algebraicas, ya que además de números aparecen letras. Son también expresiones algebraicas: bac,

Más detalles

SISTEMAS DE NUMERACIÓN. Sistema de numeración decimal: 5 10 2 2 10 1 8 10 0 =528 8 10 3 2 10 2 4 10 1 5 10 0 9 10 1 7 10 2 =8245,97

SISTEMAS DE NUMERACIÓN. Sistema de numeración decimal: 5 10 2 2 10 1 8 10 0 =528 8 10 3 2 10 2 4 10 1 5 10 0 9 10 1 7 10 2 =8245,97 SISTEMAS DE NUMERACIÓN Un sistema de numeración es un conjunto de símbolos y reglas que permiten representar datos numéricos. La norma principal en un sistema de numeración posicional es que un mismo símbolo

Más detalles

Espacios Vectoriales

Espacios Vectoriales Espacios Vectoriales Departamento de Matemáticas, CCIR/ITESM 4 de enero de 2 Índice 3.. Objetivos................................................ 3.2. Motivación...............................................

Más detalles

E 1 E 2 E 2 E 3 E 4 E 5 2E 4

E 1 E 2 E 2 E 3 E 4 E 5 2E 4 Problemas resueltos de Espacios Vectoriales: 1- Para cada uno de los conjuntos de vectores que se dan a continuación estudia si son linealmente independientes, sistema generador o base: a) (2, 1, 1, 1),

Más detalles

Tema 1: Fundamentos de lógica, teoría de conjuntos y estructuras algebraicas: Apéndice

Tema 1: Fundamentos de lógica, teoría de conjuntos y estructuras algebraicas: Apéndice Tema 1: Fundamentos de lógica, teoría de conjuntos y estructuras algebraicas: Apéndice 1 Polinomios Dedicaremos este apartado al repaso de los polinomios. Se define R[x] ={a 0 + a 1 x + a 2 x 2 +... +

Más detalles

CAPÍTULO III. FUNCIONES

CAPÍTULO III. FUNCIONES CAPÍTULO III LÍMITES DE FUNCIONES SECCIONES A Definición de límite y propiedades básicas B Infinitésimos Infinitésimos equivalentes C Límites infinitos Asíntotas D Ejercicios propuestos 85 A DEFINICIÓN

Más detalles

TEMA I: INTRODUCCIÓN A LA ELECTRÓNICA DIGITAL

TEMA I: INTRODUCCIÓN A LA ELECTRÓNICA DIGITAL TEMA I: INTRODUCCIÓN A LA ELECTRÓNICA DIGITAL 1. Electrónica Digital Antes de empezar en el tema en cuestión, vamos a dar una posible definición de la disciplina que vamos a tratar, así como su ámbito

Más detalles

Capitán de fragata ingeniero AGUSTÍN E. GONZÁLEZ MORALES. ÁLGEBRA PARA INGENIEROS (Solucionario)

Capitán de fragata ingeniero AGUSTÍN E. GONZÁLEZ MORALES. ÁLGEBRA PARA INGENIEROS (Solucionario) Capitán de fragata ingeniero AGUSTÍN E. GONZÁLEZ MORALES ÁLGEBRA PARA INGENIEROS (Solucionario) 2 Í N D I C E CAPÍTULO : MATRICES, DETERMINANTES Y SISTEMAS DE ECUACIONES LINEALES CAPÍTULO 2: ESPACIOS VECTORIALES

Más detalles

Funciones polinomiales de grados 3 y 4

Funciones polinomiales de grados 3 y 4 Funciones polinomiales de grados 3 y 4 Ahora vamos a estudiar los casos de funciones polinomiales de grados tres y cuatro. Vamos a empezar con sus gráficas y después vamos a estudiar algunos resultados

Más detalles

ESTRUCTURAS ALGEBRAICAS

ESTRUCTURAS ALGEBRAICAS ESTRUCTURAS ALGEBRAICAS 1.1. LEY DE COMPOSICIÓN INTERNA Definición 1.1.1. Sea E un conjunto, se llama ley de composición interna en E si y sólo si a b = c E, a, b E. Observación 1.1.1. 1. también se llama

Más detalles

Estructuras Algebraicas Una estructura algebraica es un objeto matemático consistente en un conjunto no vacío, con por lo menos una operación binaria.

Estructuras Algebraicas Una estructura algebraica es un objeto matemático consistente en un conjunto no vacío, con por lo menos una operación binaria. Estructuras Algebraicas Una estructura algebraica es un objeto matemático consistente en un conjunto no vacío, con por lo menos una operación binaria. Operación Binaria Se conoce una operación binaria

Más detalles

Polinomios: Definición: Se llama polinomio en "x" de grado "n" a una expresión del tipo

Polinomios: Definición: Se llama polinomio en x de grado n a una expresión del tipo Polinomios: Definición: Se llama polinomio en "x" de grado "n" a una expresión del tipo P (x) = a 0 x n + a 1 x n 1 +... + a n Donde n N (número natural) ; a 0, a 1, a 2,..., a n son coeficientes reales

Más detalles

Qué son los monomios?

Qué son los monomios? Qué son los monomios? Recordemos qué es una expresión algebraica. Definición Una expresión algebraica es aquella en la que se utilizan letras, números y signos de operaciones. Si se observan las siguientes

Más detalles

1.4.- D E S I G U A L D A D E S

1.4.- D E S I G U A L D A D E S 1.4.- D E S I G U A L D A D E S OBJETIVO: Que el alumno conozca y maneje las reglas empleadas en la resolución de desigualdades y las use para determinar el conjunto solución de una desigualdad dada y

Más detalles

Aplicaciones Lineales y Multilineales Continuas

Aplicaciones Lineales y Multilineales Continuas Capítulo 4 Aplicaciones Lineales y Multilineales Continuas La conexión entre las estructuras vectorial y topológica de los espacios normados, se pone claramente de manifiesto en el estudio de las aplicaciones

Más detalles

EJERCICIOS RESUELTOS SOBRE ERRORES DE REDONDEO

EJERCICIOS RESUELTOS SOBRE ERRORES DE REDONDEO EJERCICIOS RESUELTOS SOBRE ERRORES DE REDONDEO 1º) Considérese un número estrictamente positivo del sistema de números máquina F(s+1, m, M, 10). Supongamos que tal número es: z = 0.d 1 d...d s 10 e Responde

Más detalles

CURSO CERO. Departamento de Matemáticas. Profesor: Raúl Martín Martín Sesiones 18 y 19 de Septiembre

CURSO CERO. Departamento de Matemáticas. Profesor: Raúl Martín Martín Sesiones 18 y 19 de Septiembre CURSO CERO Departamento de Matemáticas Profesor: Raúl Martín Martín Sesiones 18 y 19 de Septiembre Capítulo 1 La demostración matemática Demostración por inducción El razonamiento por inducción es una

Más detalles

LÍMITES Y CONTINUIDAD DE FUNCIONES

LÍMITES Y CONTINUIDAD DE FUNCIONES Capítulo 9 LÍMITES Y CONTINUIDAD DE FUNCIONES 9.. Introducción El concepto de ite en Matemáticas tiene el sentido de lugar hacia el que se dirige una función en un determinado punto o en el infinito. Veamos

Más detalles

1. Definición 2. Operaciones con funciones

1. Definición 2. Operaciones con funciones 1. Definición 2. Operaciones con funciones 3. Estudio de una función: Suma y diferencia Producto Cociente Composición de funciones Función reciproca (inversa) Dominio Recorrido Puntos de corte Signo de

Más detalles

Módulo 9 Sistema matemático y operaciones binarias

Módulo 9 Sistema matemático y operaciones binarias Módulo 9 Sistema matemático y operaciones binarias OBJETIVO: Identificar los conjuntos de números naturales, enteros, racionales e irracionales; resolver una operación binaria, representar un número racional

Más detalles

Clase 15 Espacios vectoriales Álgebra Lineal

Clase 15 Espacios vectoriales Álgebra Lineal Espacios vectoriales Clase 5 Espacios vectoriales Álgebra Lineal Código Escuela de Matemáticas - Facultad de Ciencias Universidad Nacional de Colombia En esta sección estudiaremos uno de los conceptos

Más detalles

TALLER DE MATEMÁTICAS NOTAS. Toda expresión algebraica del tipo. a n x n + a n 1 x n 1 +... + a 1 x + a 0. es un polinomio de grado n, si a n 0.

TALLER DE MATEMÁTICAS NOTAS. Toda expresión algebraica del tipo. a n x n + a n 1 x n 1 +... + a 1 x + a 0. es un polinomio de grado n, si a n 0. NOTAS Toda expresión algebraica del tipo es un polinomio de grado n, si a n 0. a n x n + a n 1 x n 1 +... + a 1 x + a 0 RELACIONES DE DIVISIBILIDAD 1) x n a n = (x a)(x n 1 + ax n 2 + a 2 x n 3 +... +

Más detalles

Ecuaciones de primer grado con dos incógnitas

Ecuaciones de primer grado con dos incógnitas Ecuaciones de primer grado con dos incógnitas Si decimos: "las edades de mis padres suman 120 años", podemos expresar esta frase algebraicamente de la siguiente forma: Entonces, Denominamos x a la edad

Más detalles

Aplicaciones Lineales

Aplicaciones Lineales Tema 3 Aplicaciones Lineales 3.1 Introducción Se presentan en este tema las aplicaciones entre espacios vectoriales, particularmente las aplicaciones lineales, que de una manera informal pueden definirse

Más detalles

SISTEMAS DE NUMERACIÓN. Sistema decimal

SISTEMAS DE NUMERACIÓN. Sistema decimal SISTEMAS DE NUMERACIÓN Sistema decimal Desde antiguo el Hombre ha ideado sistemas para numerar objetos, algunos sistemas primitivos han llegado hasta nuestros días, tal es el caso de los "números romanos",

Más detalles

VECTORES. Módulo, dirección y sentido de un vector fijo En un vector fijo se llama módulo del mismo a la longitud del segmento que lo define.

VECTORES. Módulo, dirección y sentido de un vector fijo En un vector fijo se llama módulo del mismo a la longitud del segmento que lo define. VECTORES El estudio de los vectores es uno de tantos conocimientos de las matemáticas que provienen de la física. En esta ciencia se distingue entre magnitudes escalares y magnitudes vectoriales. Se llaman

Más detalles

Fundamentos algebraicos

Fundamentos algebraicos Fundamentos algebraicos 1. Grupos Sea S un conjunto. Se denota con S S el conjunto de los pares ordenados (s, t) con s, t en S. Un mapeo de S S en S se llama operación binaria en S. Esta definición requiere

Más detalles

Aproximación local. Plano tangente. Derivadas parciales.

Aproximación local. Plano tangente. Derivadas parciales. Univ. de Alcalá de Henares Ingeniería de Telecomunicación Cálculo. Segundo parcial. Curso 004-005 Aproximación local. Plano tangente. Derivadas parciales. 1. Plano tangente 1.1. El problema de la aproximación

Más detalles

LECCIÓN 8: CIRCUITOS Y ALGORITMOS DE MULTIPLICACIÓN DE ENTEROS

LECCIÓN 8: CIRCUITOS Y ALGORITMOS DE MULTIPLICACIÓN DE ENTEROS ESTRUCTURA DE COMPUTADORES Pag. 8.1 LECCIÓN 8: CIRCUITOS Y ALGORITMOS DE MULTIPLICACIÓN DE ENTEROS 1. Circuitos de multiplicación La operación de multiplicar es mas compleja que la suma y por tanto se

Más detalles

MATEMÁTICAS para estudiantes de primer curso de facultades y escuelas técnicas

MATEMÁTICAS para estudiantes de primer curso de facultades y escuelas técnicas Universidad de Cádiz Departamento de Matemáticas MATEMÁTICAS para estudiantes de primer curso de facultades y escuelas técnicas Tema Representación gráfica de funciones reales de una variable real Elaborado

Más detalles

Matrices Invertibles y Elementos de Álgebra Matricial

Matrices Invertibles y Elementos de Álgebra Matricial Matrices Invertibles y Elementos de Álgebra Matricial Departamento de Matemáticas, CCIR/ITESM 12 de enero de 2011 Índice 91 Introducción 1 92 Transpuesta 1 93 Propiedades de la transpuesta 2 94 Matrices

Más detalles

Nota 1. Los determinantes de orden superior a 3 se calculan aplicando las siguientes propiedades:

Nota 1. Los determinantes de orden superior a 3 se calculan aplicando las siguientes propiedades: Capítulo 1 DETERMINANTES Definición 1 (Matriz traspuesta) Llamaremos matriz traspuesta de A = (a ij ) a la matriz A t = (a ji ); es decir la matriz que consiste en poner las filas de A como columnas Definición

Más detalles

Ecuaciones Diferenciales Tema 2. Trasformada de Laplace

Ecuaciones Diferenciales Tema 2. Trasformada de Laplace Ecuaciones Diferenciales Tema 2. Trasformada de Laplace Ester Simó Mezquita Matemática Aplicada IV 1 1. Transformada de Laplace de una función admisible 2. Propiedades básicas de la transformada de Laplace

Más detalles

Ejemplo: Resolvemos Sin solución. O siempre es positiva o siempre es negativa. Damos un valor cualquiera Siempre + D(f) =

Ejemplo: Resolvemos Sin solución. O siempre es positiva o siempre es negativa. Damos un valor cualquiera Siempre + D(f) = T1 Dominios, Límites, Asíntotas, Derivadas y Representación Gráfica. 1.1 Dominios de funciones: Polinómicas: D( = La X puede tomar cualquier valor entre Ejemplos: D( = Función racional: es el cociente

Más detalles

Espacios vectoriales. Bases. Coordenadas

Espacios vectoriales. Bases. Coordenadas Capítulo 5 Espacios vectoriales. Bases. Coordenadas OPERACIONES ENR n Recordemos que el producto cartesiano de dos conjuntos A y B consiste en los pares ordenados (a,b) tales que a A y b B. Cuando consideramos

Más detalles

DESARROLLO DE HABILIDADES DEL PENSAMIENTO LÓGICO

DESARROLLO DE HABILIDADES DEL PENSAMIENTO LÓGICO I. SISTEMAS NUMÉRICOS DESARROLLO DE HABILIDADES DEL PENSAMIENTO LÓGICO LIC. LEYDY ROXANA ZEPEDA RUIZ SEPTIEMBRE DICIEMBRE 2011 Ocosingo, Chis. 1.1Sistemas numéricos. Los números son los mismos en todos

Más detalles

Ejemplos y problemas resueltos de análisis complejo (2014-15)

Ejemplos y problemas resueltos de análisis complejo (2014-15) Variable Compleja I (3 o de Matemáticas y 4 o de Doble Titulación) Ejemplos y problemas resueltos de análisis complejo (04-5) Teoremas de Cauchy En estos apuntes, la palabra dominio significa, como es

Más detalles

Comenzaremos recordando algunas definiciones y propiedades estudiadas en el capítulo anterior.

Comenzaremos recordando algunas definiciones y propiedades estudiadas en el capítulo anterior. Capítulo 2 Matrices En el capítulo anterior hemos utilizado matrices para la resolución de sistemas de ecuaciones lineales y hemos visto que, para n, m N, el conjunto de las matrices de n filas y m columnas

Más detalles

La nueva criba de Eratóstenes Efraín Soto Apolinar 1 F.I.M.E. U.A.N.L. San Nicolás, N.L. México. efrain@yalma.fime.uanl.mx

La nueva criba de Eratóstenes Efraín Soto Apolinar 1 F.I.M.E. U.A.N.L. San Nicolás, N.L. México. efrain@yalma.fime.uanl.mx La nueva criba de Eratóstenes Efraín Soto Apolinar 1 F.I.M.E. U.A.N.L. San Nicolás, N.L. México. efrain@yalma.fime.uanl.mx Resumen Se dan algunas definiciones básicas relacionadas con la divisibilidad

Más detalles

Relaciones binarias. ( a, b) = ( c, d) si y solamente si a = c y b = d

Relaciones binarias. ( a, b) = ( c, d) si y solamente si a = c y b = d Relaciones binarias En esta sección estudiaremos formalmente las parejas de objetos que comparten algunas características o propiedades en común. La estructura matemática para agrupar estas parejas en

Más detalles

Tema 10: Funciones de varias variables. Funciones vectoriales. Límites y continuidad

Tema 10: Funciones de varias variables. Funciones vectoriales. Límites y continuidad Tema 10: Funciones de varias variables. Funciones vectoriales. Límites y continuidad 1 Funciones de varias variables Observación 1.1 Conviene repasar,enestepunto,lodadoeneltema8paratopología en R n : bolas,

Más detalles

1. SOLUCIONES A LOS EJERCICIOS PROPUESTOS

1. SOLUCIONES A LOS EJERCICIOS PROPUESTOS 1 1. SOLUCIONES A LOS EJERCICIOS PROPUESTOS 1.1. ESPACIOS VECTORIALES 1. Analizar cuáles de los siguientes subconjuntos de R 3 son subespacios vectoriales. a) A = {(2x, x, 7x)/x R} El conjunto A es una

Más detalles

by Tim Tran: https://picasaweb.google.com/lh/photo/sdo00o8wa-czfov3nd0eoa?full-exif=true

by Tim Tran: https://picasaweb.google.com/lh/photo/sdo00o8wa-czfov3nd0eoa?full-exif=true by Tim Tran: https://picasaweb.google.com/lh/photo/sdo00o8wa-czfov3nd0eoa?full-exif=true I. FUNDAMENTOS 3. Representación de la información Introducción a la Informática Curso de Acceso a la Universidad

Más detalles

Definición de vectores

Definición de vectores Definición de vectores Un vector es todo segmento de recta dirigido en el espacio. Cada vector posee unas características que son: Origen: O también denominado Punto de aplicación. Es el punto exacto sobre

Más detalles

Capítulo 7 Teoría de los Números

Capítulo 7 Teoría de los Números Capítulo 7 Teoría de los Números Seguridad Informática y Criptografía Ultima actualización del archivo: 01/03/06 Este archivo tiene: 75 diapositivas v 4.1 Material Docente de Libre Distribución Dr. Jorge

Más detalles

Como ya se sabe, existen algunas ecuaciones de segundo grado que no tienen ninguna solución real. Tal es el caso de la ecuación x2 + 1 = 0.

Como ya se sabe, existen algunas ecuaciones de segundo grado que no tienen ninguna solución real. Tal es el caso de la ecuación x2 + 1 = 0. NÚMEROS COMPLEJOS. INTRO. ( I ) Como ya se sabe, existen algunas ecuaciones de segundo grado que no tienen ninguna solución real. Tal es el caso de la ecuación x2 + 1 = 0. Si bien esto no era un problema

Más detalles

Matrices equivalentes. El método de Gauss

Matrices equivalentes. El método de Gauss Matrices equivalentes. El método de Gauss Dada una matriz A cualquiera decimos que B es equivalente a A si podemos transformar A en B mediante una combinación de las siguientes operaciones: Multiplicar

Más detalles

Espacios generados, dependencia lineal y bases

Espacios generados, dependencia lineal y bases Espacios generados dependencia lineal y bases Departamento de Matemáticas CCIR/ITESM 14 de enero de 2011 Índice 14.1. Introducción............................................... 1 14.2. Espacio Generado............................................

Más detalles

Métodos Iterativos para Resolver Sistemas Lineales

Métodos Iterativos para Resolver Sistemas Lineales Métodos Iterativos para Resolver Sistemas Lineales Departamento de Matemáticas, CCIR/ITESM 17 de julio de 2009 Índice 3.1. Introducción............................................... 1 3.2. Objetivos................................................

Más detalles

Segundo de Bachillerato Geometría en el espacio

Segundo de Bachillerato Geometría en el espacio Segundo de Bachillerato Geometría en el espacio Jesús García de Jalón de la Fuente IES Ramiro de Maeztu Madrid 204-205. Coordenadas de un vector En el conjunto de los vectores libres del espacio el concepto

Más detalles

VECTORES EN EL ESPACIO. 1. Determina el valor de t para que los vectores de coordenadas sean linealmente dependientes.

VECTORES EN EL ESPACIO. 1. Determina el valor de t para que los vectores de coordenadas sean linealmente dependientes. VECTORES EN EL ESPACIO. Determina el valor de t para que los vectores de coordenadas (,, t), 0, t, t) y(, 2, t) sean linealmente dependientes. Si son linealmente dependientes, uno de ellos, se podrá expresar

Más detalles

Capítulo 8 Teoría de la Complejidad Algorítmica

Capítulo 8 Teoría de la Complejidad Algorítmica Capítulo 8 Teoría de la Complejidad Algorítmica Seguridad Informática y Criptografía Ultima actualización del archivo: 01/03/06 Este archivo tiene: 31 diapositivas v 4.1 Material Docente de Libre Distribución

Más detalles

Nombre del polinomio. uno monomio 17 x 5 dos binomio 2x 3 6x tres trinomio x 4 x 2 + 2

Nombre del polinomio. uno monomio 17 x 5 dos binomio 2x 3 6x tres trinomio x 4 x 2 + 2 SISTEMA DE ACCESO COMÚN A LAS CARRERAS DE INGENIERÍA DE LA UNaM III. UNIDAD : FUNCIONES POLINÓMICAS III..1 POLINOMIOS La expresión 5x + 7 x + 4x 1 recibe el nombre de polinomio en la variable x. Es de

Más detalles

AXIOMAS DE CUERPO (CAMPO) DE LOS NÚMEROS REALES

AXIOMAS DE CUERPO (CAMPO) DE LOS NÚMEROS REALES AXIOMASDECUERPO(CAMPO) DELOSNÚMEROSREALES Ejemplo: 6 INECUACIONES 15 VA11) x y x y. VA12) x y x y. Las demostraciones de muchas de estas propiedades son evidentes de la definición. Otras se demostrarán

Más detalles

1. ESPACIOS VECTORIALES

1. ESPACIOS VECTORIALES 1 1. ESPACIOS VECTORIALES 1.1. ESPACIOS VECTORIALES. SUBESPACIOS VECTORIALES Denición 1. (Espacio vectorial) Decimos que un conjunto no vacío V es un espacio vectorial sobre un cuerpo K, o K-espacio vectorial,

Más detalles

Introducción al Cálculo Simbólico a través de Maple

Introducción al Cálculo Simbólico a través de Maple 1 inn-edu.com ricardo.villafana@gmail.com Introducción al Cálculo Simbólico a través de Maple A manera de introducción, podemos decir que los lenguajes computacionales de cálculo simbólico son aquellos

Más detalles

Universidad de Costa Rica Escuela de Matemática CONARE-PROYECTO RAMA. Funciones

Universidad de Costa Rica Escuela de Matemática CONARE-PROYECTO RAMA. Funciones Universidad de Costa Rica Escuela de Matemática CONARE-PROYECTO RAMA Funciones José R. Jiménez F. Temas de pre-cálculo I ciclo 007 Funciones 1 Índice 1. Funciones 3 1.1. Introducción...................................

Más detalles

Grupos. 2.1 Introducción. Capítulo

Grupos. 2.1 Introducción. Capítulo Capítulo 2 Grupos 2.1 Introducción La estructura de grupo es una de las más comunes en toda la matemática pues aparece en forma natural en muchas situaciones, donde se puede definir una operación sobre

Más detalles

1. Suma y producto de polinomios. Propiedades

1. Suma y producto de polinomios. Propiedades ALGEBRA 1- GRUPO CIENCIAS- TURNO TARDE- Resumen teoría Prof. Alcón 1. Suma y producto de polinomios. Propiedades Sea (A, +,.) un anillo conmutativo. Llamamos polinomio en una indeterminada x con coeficientes

Más detalles

Matrices. Definiciones básicas de matrices. www.math.com.mx. José de Jesús Angel Angel. jjaa@math.com.mx

Matrices. Definiciones básicas de matrices. www.math.com.mx. José de Jesús Angel Angel. jjaa@math.com.mx Matrices Definiciones básicas de matrices wwwmathcommx José de Jesús Angel Angel jjaa@mathcommx MathCon c 2007-2008 Contenido 1 Matrices 2 11 Matrices cuadradas 3 12 Matriz transpuesta 4 13 Matriz identidad

Más detalles

Matemáticas 1204, 2013 Semestre II Tarea 5 Soluciones

Matemáticas 1204, 2013 Semestre II Tarea 5 Soluciones Matemáticas 104, 01 Semestre II Tarea 5 Soluciones Problema 1: Una definición errónea de línea tangente a una curva es: La línea L es tangente a la curva C en el punto P si y sólamente si L pasa por C

Más detalles

UNIDAD 4: PLANO CARTESIANO, RELACIONES Y FUNCIONES. OBJETIVO DE APRENDIZAJE: Representar gráficamente relaciones y funciones en el plano cartesiano.

UNIDAD 4: PLANO CARTESIANO, RELACIONES Y FUNCIONES. OBJETIVO DE APRENDIZAJE: Representar gráficamente relaciones y funciones en el plano cartesiano. UNIDAD 4: PLANO CARTESIANO, RELACIONES Y FUNCIONES OBJETIVO DE APRENDIZAJE: Representar gráficamente relaciones y funciones en el plano cartesiano. EL PLANO CARTESIANO. El plano cartesiano está formado

Más detalles