Pulse aquí para obtener el archivo

Anuncio
Teoría de Números
Números Enteros: Propiedades
-
-
Divisibilidad, números primos,
descomposición en factores primos
MCD y MCM
Aritmética modular
Algoritmos
Criptografía
Divisibilidad
Sean a y b dos enteros, tales que a ≠ 0
Se dice que a Divide a b si existe un entero c
tal que b = a⋅c denotado como a|b
a es un divisor o factor de b
b es un múltiplo de a
Ejercicio
Sean n y d enteros positivos. ¿Cuántos
enteros positivos menores que n son
divisibles por d?
Divisibilidad:Propiedades
Sean a, b y c enteros
Si a|b y a|c, entonces a|(b+c)
Si a|b, entonces a|bc, para todo entero c
Si a|b y b|c, entonces a|c
Números Primos
Un número entero positivo p mayor que 1
es primo si los únicos factores positivos de
p son 1 y p
Un número entero positivo mayor que 1 que
no es primo se denomina compuesto.
Teorema fundamental de la aritmética
Todo entero positivo mayor que 1 se
puede escribir, de forma única, como un
primo, o como el producto de dos o más
primos, en el que los factores primos se
escriben de forma creciente
Ejemplo
100 = 2*2*5*5 = 22*52
641 = 641
999 = 3*3*3*37 = 33*37
Teoría de números
Teorema
Si n es un entero compuesto, entonces n tiene un
divisor primo menor o igual a √n
Ejercicios
-1. Mostrar que 101 es primo
-2. Encontrar los factores primos de 7007
Algoritmo de la División
Teorema
Sea a un número entero y b un entero positivo.
Entonces existen dos enteros q y r únicos, tal
que 0 ≤ r < b, donde:
a = b.q + r
a : dividendo b: divisor
q: cociente
r: residuo
Ejemplo
101 = 11*9 + 2
Maximo común Divisor
Sean a y b enteros a,b≠0
El entero más grande d, tal que d|a y
d|b se denomina máximo común divisor
de a y b y se denota por mcd(a,b)
Algoritmo de Euclides
Alternativa para calcular el MCD de dos
números enteros
‰ Entrada: a y b números enteros
‰ Salida: x número entero que es el MCD de
ayb
‰
Algoritmo de Euclides
MCD (a, b)
x ← a;
y ← b;
while y <> 0
r ← x mod y
x←y
y←r
return x
Algoritmo de Euclides
Aplique el algoritmo de Euclides para
calcular MCD(9,15)
Maximo común Divisor
¿Cuál es el MCD entre 24 y 36?
¿Cuál es el MCD entre 17 y 22?
¿Cuál es el MCD entre 200 y
500?
MCD
Usando los factores primos de a y b
a = p1a1p2a2…. pnan
b = p1b1p2b2…. pnbn
mcd(a,b) = p1min(a1, b1)p2min(a2, b2)…. pnmin(an,
bn)
MCD: Ejemplo
mcd(120,500)
120 = 23*3*5
500 = 22*53
mcd(120,500) = 2min(3, 2)*3min(1, 0)*5min(1, 3)
mcd(120,500) = 22*30*51 = 20
Primos Relativos
Dos números a y b son primos relativos
si mcd(a,b) = 1
17 y 22 son primos relativos
.
Primos Relativos
Los números a1, a2,…,an son primos
relativos dos a dos si
mcd(ai, aj)=1 para 1 ≤ i ≤ j ≤ n
11, 17 y 21 son primos relativos de dos
en dos, pero 10, 17 y 22 no lo son
Mínimo Común Múltiplo
El mínimo común múltiplo de a y b,
denotado mcm(a,b) es el
entero positivo más pequeño que es
divisible por a y por b
Mínimo Común Múltiplo
Sean a y b
a = p1a1p2a2…. pnan
b = p1b1p2b2…. pnbn
mcm(a,b) = p1max(a1, b1)p2max(a2, b2)….pnmax(an, bn)
Calcule MCM ( 233572 , 2433)
Teoría de números
Sean a y b enteros positivos.
Entonces a*b = mcd(a,b)*mcm(a,b)
Aritmética Modular
Sean a y m enteros positivos.
a mod m denota el residuo de la
división de a por m
17 mod 5 = 2
2001 mod 101 = 82
Aritmética Modular: Ejercicios
Si contamos 100 días a partir de hoy
¿Qué día de la semana caerá?
Se requiere minimizar el número de
billetes de 1000, 2000, 5000 y 10000
para un valor en pesos que sea múltiplo
de 1000.
Congruencia
Si a y b son enteros y m es un entero
positivo, entonces a es congruente a b
módulo m si m divide a – b y se denota
por a ≡ b(mod m)
a≡b (mod m) si m|a-b
Congruencia: ejemplo
Determinar si 17 es congruente a 5
módulo 6
Determinar si 24 y 14 son
congruentes módulo 6
Congruencia
Sea m un entero positivo. Si a ≡ b (mod m) y
c ≡ d (mod m) entonces:
a+c≡b+d (mod m)
ac≡bd (mod m)
Teoría de números
Aplicaciones de la Aritmética Modular
ƒ Uso de funciones Hash para asignación de
memoria.
ƒ Generación de números pseudo-aleatorios,
método de congruencia lineal.
ƒ Criptografía para hacer cifrado de mensajes.
Aplicaciones Aritmética Modular
Función Hash: asigna una posición de
memoria a cada llave.
Función Hash común
h(k) = k mod m, donde m es el
número de locaciones de memoria
disponible
Funciones Hash
Considere que se tienen 111 posiciones
de memoria. Cuál sería la locación de
memoria para la llave 46216483 ?
46216483 mod 111 = 79
Números Pseudo-Aleatorios
ƒ En sistemas de simulación es
necesario elegir números al azar
ƒ Método de congruencia lineal: método
común para generar números pseudoaleatorios
Números Pseudo-Aleatorios
Se eligen cuatro números:
Módulo m , Multiplicador a,
Incremento c y Semilla x0
Con 2 ≤ a < m, 0 ≤ a < m, 0 ≤ a < x0, los
números pseudo-aleatorios se generan
aplicando sucesivamente la congruencia:
Xn+1 = (a*xn + c) mod m
Números Pseudo-Aleatorios
Calcular la secuencia de números pseudo
aleatorios que se generan para m = 9,
a=7, c=4 y X0 = 3
Criptografía
Caesar’s encryption
Método para transformar cada letra del alfabeto
en una que no permita leer el mensaje original
1. Transforme cada letra en un número. Para
ello, utilice su posición en el alfabeto. A es 0, B
es 1
2. Aplique la función f(p)=(p+3) mod 25, a cada
número
3. Transforme cada número a letra y envíe el
mensaje
Criptografía: Ejercicios
Encripte los siguientes mensajes:
“HOLA”
“NOS VEMOS EN EL CDU”.
Desencripte el mensaje
“QDGLHSLHUGHGLVFUHWDV”
A
B
C
D
E
F
G
H
I
J
K
L
M
0
1
2
3
4
5
6
7
8
9
10
11
12
N
O
P
Q
R
S
T
U
V
W
X
Y
Z
13
14
15
16
17
18
19
20
21
22
23
24
25
Descargar