La tarea #1 - Departamento de Computación

Anuncio
Aritmética Computacional
Departamento de Computación
CINVESTAV-IPN
Otoño 2011 - Profesor: Francisco Rodríguez Henríquez
francisco@cs.cinvestav.mx
Tarea #1
Fecha de entrega: A la medianoche del domingo 2 de octubre de 2011
Instrucciones: En la sección de problemas teóricos escoja los problemas que sean
congruentes con su número de matrícula módulo 2. Esto significa que sólo debe
desarrollar 5 problemas teóricos.
Problemas teóricos
0. Demuestre la validez de las siguientes propiedades del máximo común divisor:
i.
gcd(a,b) = gcd(a, a mod b);
ii.
gcd(u, v) = gcd(-u, v)
iii. uv = gcd(u, v) lcm(u, v) if u, v ≥0
iv.
gcd(a+b, lcm(a,b)) = gcd(a,b) para todo a,b  Z;
1. Demuestre la validez de las siguientes propiedades del máximo común divisor:
i.
gcd(a,b) = gcd(a, a mod b);
ii.
gcd(u, v)w = gcd(uw, vw) if w ≥0
iii. gcd(lcm(u, v), lcm(u, w)) = lcm(u, gcd(v, w))
iv.
gcd(a+b, lcm(a,b)) = gcd(a,b) para todo a,b  Z;
2. Demuestre que para cada entero positivo k, existen k enteros compuestos
consecutivos. Esto prueba que pueden hallarse dos primos consecutivos con una
distancia entre ellos arbitrariamente grande.
3. Sea n un entero positivo y sea 2k la potencia más grande de dos que está contenida en
el conjunto S:={1,2,…,n}. Demuestre que 2k no divide a ningún otro elemento del
conjunto S.
4. Sea p un número primo y k un entero, con 0 < k < p. Demuestre que el coeficiente
 p
p!
binomial definido como:   
,
 k  k!( p  k )!
es un entero divisible por p.
5. Si m y n son dos enteros positivos, muestre que m/gcd(m, n) y n/gcd(m, n) son primos
relativos. (sugerencia: use el algoritmo de Euclides).
6. Demuestre que para todos los primos p y todos los enteros a se cumple que:
a) (a+1)p  ap + 1 mod p
b) Utilice la igualdad del ejercicio anterior, esto es, (a+1)p  ap + 1 mod p, para dar
una prueba alternativa al teorema Petit de Fermat
7. Si n  p11 p22 p33  pkk donde pi es primo, ¿cuál es el valor de (n)?
8. Suponga que n1 y n2 son dos enteros positivos arbitrarios, y que d=gcd(n1, n2). Sean
a1 y a2 dos enteros arbitrarios. Demuestre que existe un entero a tal que a  a1 mod n1
y a  a2 mod n2, si y sólo si, a1  a2 mod d.
9. Sea n un entero mayor que 1. Demuestre que n no divide a 2n-1.
Problemas de Programación
0. Escriba un procedimiento en Maple o Magma que encuentre la raíz cuadrada de un
número a módulo p. ayuda: no todos los números tienen raíz cuadrada módulo p, no
existe un procedimiento único para hallar raíces cuadradas
1. Escriba un procedimiento en Maple o Magma que determine si un número natural es
primo o no, utilizando el método de:
a. Miller-Rabin
[# de matrícula = 0 módulo 2]
b. Solovay-Strassen
[# de matrícula = 1 módulo 2]
Determine la probabilidad de que un número compuesto sea falsamente identificado por
el procedimiento implementado como primo.
2. Escriba el algoritmo binario extendido de Euclides en C que evalúe el máximo común
divisor de dos números, el mínimo común múltiplo y [en caso de existir] los dos
inversos multiplicativos de ellos. El programa deberá ser escrito para enteros con
precisión infinita.
Antes de entregar la tarea, el algoritmo deberá ser verificado. Algunas verificaciones
típicas consisten en probar algunas identidades básicas tales como:
a) ap-1 = a-1 mod p;
b) a a-1 = 1 mod p
Las anteriores pruebas deberán ser ejecutadas muchas veces utilizando números pseudo
aleatorios. Mida los tiempos de ejecución para hallar el inverso de un número y compare
los mismos con los tiempos reportados en [1]. Incluya en su tarea el código fuente
[debidamente documentado] y el archivo ejecutable.
Ensayo
Escriba un ensayo de una cuartilla acerca de la lectura del artículo de divulgación los
“Enigmáticos números primos”.
Descargar