Académique Documents
Professionnel Documents
Culture Documents
1 / 75
6 de abril de 2009
2 / 75
Introduo ca Noes Elementares da Teoria dos Nmeros co u Mximo Divisor Comum a Aritmtica Modular e
3 / 75
Sumrio a
Introduo ca Noes Elementares da Teoria dos Nmeros co u Mximo Divisor Comum a Aritmtica Modular e
4 / 75
Teoria dos nmeros era vista como um ramo muito lindo da u matemtica, mas de pouca utilidade a Hoje, algoritmos inspirados na teoria dos nmeros so u a amplamente empregados, em grande parte devido ` inveno a ca de esquemas de criptograa baseados em nmeros primos u Factibilidade: Encontrar nmeros primos grandes com u facilidade Segurana: Diculdade de fatorar nmeros em produto de c u primos
5 / 75
Neste cap tulo, uma entrada grande signica inteiros grandes, no uma entrada contendo vrios inteiros como era a a de rotina em ordenao de nmeros ca u Logo, vamos considerar como medida do tamanho da entrada o nmero de bits necessrios para armazenar/codicar a u a entrada Um algoritmo com entrada a1 , a2 , . . . , an um algoritmo de e tempo polinomial se ele executa em tempo polinomial com respeito a lga1 , lga2 , . . . , lgan
Teoria dos Nmeros: Uma Introduo u ca Nooes Elementares da Teoria dos Nmeros c u
6 / 75
Sumrio a
Introduo ca Noes Elementares da Teoria dos Nmeros co u Mximo Divisor Comum a Aritmtica Modular e
Teoria dos Nmeros: Uma Introduo u ca Nooes Elementares da Teoria dos Nmeros c u
7 / 75
Teoria dos Nmeros: Uma Introduo u ca Nooes Elementares da Teoria dos Nmeros c u
8 / 75
Divisibilidade e Divisores
Dizemos que d divide a se a = kd para algum inteiro k. Neste caso, denotamos d divide a por d|a. Qualquer inteiro divide 0 Se a > 0 e d|a, ento |d| |a| a
Teoria dos Nmeros: Uma Introduo u ca Nooes Elementares da Teoria dos Nmeros c u
9 / 75
Divisibilidade e Divisores
Note que d|a d|a Se d|a e d 0, dizemos que d um divisor de a. Uma vez e que d|a d|a, no h perda de generalidade em a a assumirmos que o divisor positivo e Cada inteiro a divis pelos divisores triviais 1 e a e vel Divisores no-triviais de a so ditos fatores a a
Teoria dos Nmeros: Uma Introduo u ca Nooes Elementares da Teoria dos Nmeros c u
10 / 75
Um inteiro a > 1 que tem como divisores apenas os divisores triviais, 1 e a, dito um nmero primo. e u
Examples: 2, 3, 5, 7, 11, 13, 17, 19, 23, 29, 31, 37, . . . 39 composto pois 3|39 e
Teoria dos Nmeros: Uma Introduo u ca Nooes Elementares da Teoria dos Nmeros c u
11 / 75
Teorema da Diviso a
Para qualquer inteiro a e qualquer inteiro positivo n, existem inteiros q e r unicos tal que: a = qn + r 0r <n O valor q = a/n o quociente da diviso e a O valor r = a mod n o resto (ou res e duo) da diviso a Temos que n|a a mod n = 0
Teoria dos Nmeros: Uma Introduo u ca Nooes Elementares da Teoria dos Nmeros c u
12 / 75
Exemplo
Teoria dos Nmeros: Uma Introduo u ca Nooes Elementares da Teoria dos Nmeros c u
13 / 75
Se (a mod n) = (b mod n), ento escrevemos a b(mod n) a e dizemos que a equivalente a b mdulo n. e o Em outras palavras, a b(mod n) se a e b possuem o mesmo quociente quando divididos por n Equivalentemente, a b(mod n) se e somente se n|(b a) Por exemplo, 61 6(mod 11)
Teoria dos Nmeros: Uma Introduo u ca Nooes Elementares da Teoria dos Nmeros c u
14 / 75
Classes de Equivalncia e
A classe de equivalncia mdulo n que contm o inteiro a e o e e denotada por: [a]n = {a + kn : k Z} Por exemplo, [3]7 = {. . . , 11, 4, 3, 10, 17, . . .} Note que [3]7 = [4]7 = [10]7 Escrever a [b]n o mesmo que escrever a b(mod n) e O conjunto de todas as classes de equivalncia : e e Zn = {[a]n : 0 a n 1}
Teoria dos Nmeros: Uma Introduo u ca Nooes Elementares da Teoria dos Nmeros c u
15 / 75
Teoria dos Nmeros: Uma Introduo u ca Nooes Elementares da Teoria dos Nmeros c u
16 / 75
Propriedade
De forma mais geral, d|a e d|b d|(ax + by ) para quaisquer inteiros x e y
Teoria dos Nmeros: Uma Introduo u ca Nooes Elementares da Teoria dos Nmeros c u
17 / 75
O mximo divisor comum de dois inteiros a e b, que no a a sejam ambos nulos, o maior dos divisores comuns a a e b e O mximo divisor comum de a e b denotado por gcd(a, b) a e Exemplos:
Deni-se gcd(0, 0) = 0
Teoria dos Nmeros: Uma Introduo u ca Nooes Elementares da Teoria dos Nmeros c u
18 / 75
gcd(a, b) = gcd(b, a) gcd(a, b) = gcd(a, b) gcd(a, b) = gcd(|a|, |b|) gcd(a, 0) = |a| gcd(a, ka) = a para qualquer k Z
Teoria dos Nmeros: Uma Introduo u ca Nooes Elementares da Teoria dos Nmeros c u
19 / 75
Teorema
Se a e b so dois inteiros quaisquer, que no sejam ambos nulos, a a ento gcd(a, b) o menor elemento positivo do conjunto: a e {ax + by : x, y Z} de combinaes lineares de a e b co
Teoria dos Nmeros: Uma Introduo u ca Nooes Elementares da Teoria dos Nmeros c u
20 / 75
Seja s o menor valor positivo que corresponde a uma combinao linear de a e b, e seja s = ax + by para certos ca x, y Z. Seja q = a/s. Sabemos que a = a/sa(a mod s) o que nos leva a deduzir: a mod s = a qs = a q(ax + by ) = a(1 qx) + b(qy ) Logo, a mod s tambm uma combinao linear de a e b. e e ca
Teoria dos Nmeros: Uma Introduo u ca Nooes Elementares da Teoria dos Nmeros c u
21 / 75
Sabemos que a = a/sa(a mod s) o que nos leva a deduzir: a mod s = a qs = a q(ax + by ) = a(1 qx) + b(qy ) Logo, a mod s tambm uma combinao linear de a e b. e e ca
Mas, j que a mod s < s, temos que a mod s = 0 pois s a a e menor de todos as combinaes lineares positivas. Portanto co s|a.
Teoria dos Nmeros: Uma Introduo u ca Nooes Elementares da Teoria dos Nmeros c u
22 / 75
Teorema
Se a e b so dois inteiros quaisquer, que no sejam ambos nulos, a a ento gcd(a, b) o menor elemento positivo do conjunto: a e {ax + by : x, y Z} de combinaes lineares de a e b co
Teoria dos Nmeros: Uma Introduo u ca Nooes Elementares da Teoria dos Nmeros c u
23 / 75
Prova
De forma anloga, podemos demonstrar que s|b a Consequentemente, s um divisor de a e b e gcd(a, b) s e Sabemos que se d|a e d|b ento d|(ax + by ). Uma vez que a gcd(a, b)|a e gcd(a, b)|b, temos que gcd(a, b)|s pois s = (ax + by ). Uma vez que s > 0, segue que gcd(a, b) s. A partir dos fatos que gcd(a, b) s e gcd(a, b) s, conclu mos que gcd(a, b) = s.
Teoria dos Nmeros: Uma Introduo u ca Nooes Elementares da Teoria dos Nmeros c u
24 / 75
Corolrio 33.3 a
Para quaisquer inteiros a e b, se d|a e d|b ento d|gcd(a, b). a
Prova
Uma vez que gcd(a, b) = ax + by para x, y Z, segue da que d|a e d|b d|(ax + by ) d|gcd(a, b)
Teoria dos Nmeros: Uma Introduo u ca Nooes Elementares da Teoria dos Nmeros c u
25 / 75
Corolrio a
Para todos os inteiros a e b e qualquer inteiro n no negativo, a temos que gcd(an, bn) = ngcd(a, b)
Prova
Se n = 0, o corolrio trivial. a e Se n > 0, ento gcd(an, bn) o menor elemento positivo do a e conjunto {anx + bny } = nmenor{ax + by } = ngcd(a, b)
Teoria dos Nmeros: Uma Introduo u ca Nooes Elementares da Teoria dos Nmeros c u
26 / 75
Corolrio a
Para todos os inteiros n, a e b, se n|ab e gcd(a, n) = 1 ento n|b a
Teoria dos Nmeros: Uma Introduo u ca Nooes Elementares da Teoria dos Nmeros c u
27 / 75
Primos Relativos
Dois inteiros a e b so ditos primos relativos se o maximo a divisor comum 1, ou seja, se gcd(a, b) = 1. e Por exemplo, 8 e 15 so primos relativos. a
Teoria dos Nmeros: Uma Introduo u ca Nooes Elementares da Teoria dos Nmeros c u
28 / 75
Primos Relativos
Teorema 33.6
Para quaisquer inteiros a, b e p, se gcd(a, p) = 1 e gcd(b, p) = 1, ento gcd(ab, p) = 1 a
Teoria dos Nmeros: Uma Introduo u ca Nooes Elementares da Teoria dos Nmeros c u
29 / 75
Primos Relativos
Prova
Segue de teorema anterior que existem inteiros x, y , x e y tal que: ax + py b + p = 1 x y = 1
Teoria dos Nmeros: Uma Introduo u ca Nooes Elementares da Teoria dos Nmeros c u
30 / 75
Primos Relativos
Prova
Multiplicando as equaes acima, obtemos: co (ax + py )(b + p ) = abx x + apx y + bpy x + p 2 y y x y = ab(x x ) + p(ax y + by x + p y ) y = ab + p x y = 1 para x = x x e y = ax y + by x + p y . Portanto, 1 uma y e combinao linear de ab e p e, consequentemente, pela Teorema ca 33.2, conclu mos que gcd(ab, p) = 1.
Teoria dos Nmeros: Uma Introduo u ca Nooes Elementares da Teoria dos Nmeros c u
31 / 75
Fatorao Unica ca
Um resultado elmentar, mas fundamental se refere a divisibilidade dos primos.
Teorema 33.7
Para todos os primos p e todos os inteiros a e b, se p|ab, then p|a ou p|b.
Prova
Assuma com propsito de contradio que p|ab mas p |a e p |b. o ca Logo gcd(a, p) = 1 e gcd(b, p) = 1. Pelo Teoream 33.6, gcd(ab, p) = 1, contradizendo a hiptse. o
Teoria dos Nmeros: Uma Introduo u ca Nooes Elementares da Teoria dos Nmeros c u
32 / 75
Fatorao Unica ca
Uma consequncia do Teorema 33.7 a unicidade da fatorao em e e ca nmeros primos. u
33 / 75
Sumrio a
Introduo ca Noes Elementares da Teoria dos Nmeros co u Mximo Divisor Comum a Aritmtica Modular e
34 / 75
Ns usamos o algoritmo de Euclides para computar o mximo o a divisor comum de dois inteiros de forma eciente. A anlise traz uma conexo com os nmeros de Fibonacci a a u surpreendente, que nos d o limite mximo de passos executos a a no pior-caso pelo algoritmo de Euclides Vamos nos restringir ` anlise de nmeros no-negativos. Este a a u a restrio justicada pelo fato que gcd(a, b) = gcd(|a|, |b|). ca e
35 / 75
E princ pio, podemos computar gcd(a, b) para nmeros u inteiros a partir da fatorao por primos ca
e e e a = p11 p22 . . . pr r f f f b = p11 p22 . . . prr
Embora esta tcnica para ser ecaz, ela esbarra no fato que os e melhores algoritmos para fatorao em primos no so de ca a a tempo polinomial
36 / 75
37 / 75
Prova
Vamos mostrar que gcd(a, b) e gcd(b, a mod b) dividem um ao outro, gcd(a, b)|gcd(b, a mod b) gcd(a, b) = gcd(b, a mod b) gcd(b, a mod b)|gcd(a, b)
38 / 75
Seja d = gcd(a, b). Ento d|a e d|b. Da deduzimos que, a (a mod b) = a qb para b = a/b
Uma vez que (a mod b) uma combinao linear de a e b, e ca deduzimos que d|a e d|b d|(ax + by ) d|(a mod b)
39 / 75
40 / 75
Prova
Uma vez que d|b e d|(a mod b), Corolrio 33.3 nos leva a a concluir que d|gcd(b, (a mod b)) ou, equivalentemente, gcd(a, b)|gcd(b, (a mod b))
41 / 75
Uma vez que a = qb + (a mod b) com q = a/b, ou seja, a = xb + (a modb)y que uma combinao linear de b e e ca (a modb), conclu mos que d|a Uma vez d|b e d|a, deduzimos pelo Corolrio 33.3 que a d|gcd(a, b) ou, equivalentemente, gcd(b, a mod b)|gcd(a, b)
42 / 75
O Algoritmo de Euclid
43 / 75
O Algoritmo de Euclid
Como exemplo, considere a computao de gcd(30, 21) ca Euclid(30, 21) = Euclid(21, 9) = Euclid(9, 3) = Euclid(3, 0) = 3 A corretude do algoritmo de Euclides segue do Teorema 33.9 e do fato que o algorimto retorna a na linha 2, quando b = 0, o que implica que gcd(a, b) = gcd(a, 0) = a.
44 / 75
Sem perda de generalidade, podemos assumir que a > b 0, uma vez que se b > a, a primeira chamada recursiva ser a Euclid(b, a) Se o primeiro argumento menor que o segundo, Euclid gasta e uma chamada recursiva trocando os argumentos e ento a prossegue. De forma similar, se b = a > 0, o procedimento termina aps o uma chamada recurisva j que a mod b = 0 a O tempo de execuo do algoritmo de Euclides proporcional ca e ao nmero de chamadas recursivas. A anlise ter como base u a a a sequncia de nmero de de Fibonacci Fk e u
45 / 75
Leama 33.10
Se a > b 0 e o procedimento Euclid(a, b) executa k 1 chamdas recursivas, ento a Fk+2 e b Fk+1 a
46 / 75
Sumrio a
Introduo ca Noes Elementares da Teoria dos Nmeros co u Mximo Divisor Comum a Aritmtica Modular e
47 / 75
Aritmtica Modular e
Informalmente, a aritmtica modular consiste da matemtica e a usual sobre inteiros, exceto que estamos trabalhando com mdulo n o Logo, os resultados so substitu a dos pelos elementos do conjunto {0, 1, . . . , n 1} que equivalente a x mdulo n e o Ou seja, x substitu por x mdulo n e do o
48 / 75
Grupos Finitos
Um grupo (S, ) um conjunto S e uma operao binria e ca a denida sobre S com as propriedades abaixo: 1. Fechamento (closure): para todo a, b S, temos que ab S 2. Identidade: existe um elemento e S tal que e a = a e = a para todo a S 3. Associatividade: Para quaisquer a, b, c S, (a b) c = a (b c) 4. Inversos: para todo a S, existe um elemento unico b S tal que a b = b a = a
49 / 75
Grupos Finitos
Exemplos
Como exemplo, considere o grupo (Z, +) dos inteiros sob a operao de adio ca ca
0 a identidade e O inverso de a a e
Grupos Abelianos
Um grupo que satisfaz a lei comutativa, a b = b a para todo a, b S, um grupo abeliano. e
50 / 75
Podemos estabelecer dois grupos nitos usando adio e ca multiplicao mdulo n, onde n um inteiro positivo. ca o e Estes grupos so baseados nas classes de equivalncia dos a e nmeros inteiros mdulo n u o
51 / 75
52 / 75
Para denir um grupo em Zn , precisamos de operaes co binrias adequadas a Estas operaes podem ser obtidas redenindo as oepraes co co ordinrias de adio e multiplicao a ca ca a E fcil denir operaes de dio e multiplicao para Zn , pois co ca ca a classe de equivalncia de dois inteiros determina de maneira e unica a classe de equivalncia da soma e do produto. e
53 / 75
Se a a (mod n) e b b (mod n), ento a a + b a + b (mod n) a a (modn) se (a mod n) = (a mod n) Se a a (mod n) e b b (mod n), ento ab a b (mod n) a
54 / 75
Denimos as operao e multiplicao mdulo n, denotadas por ca ca o +n e .n respectivamente, por: [a]n +n [b]n = [a + b]n [a]n .n [b]n = [ab]n
55 / 75
Adio Modular ca
+6 0 1 2 3 4 5
0 0 1 2 3 4 5
1 1 2 3 4 5 0
2 2 3 4 5 0 1
3 3 4 5 0 1 2
4 4 5 0 1 2 3
5 5 0 1 2 3 4
56 / 75
Adio Modular ca
Teorema 33.12
O sistema (Zn , +n ) um grupo abeliano nito. e
57 / 75
Adio Modular ca
Prova
Associatividade e comutatividade de +n segue da associatividade e comutatividade da operao +. ca ([a]n +n [b]n ) +n [c]n = [a + b]n +n [c]n = [(a + b) + c]n = [a + (b + c)]n = [a]n +n [b + c]n = [a]n +n ([b]n +n [c]n )
58 / 75
Adio Modular ca
Prova
Associatividade e comutatividade de +n segue da associatividade e comutatividade da operao +. ca [a]n +n [b]n = [a + b]n = [b + a]n = [b]n +n [a]n
59 / 75
Adio Modular ca
Teorema 33.12
O sistema (Zn , +n ) um grupo abeliano nito. e
60 / 75
Adio Modular ca
Prova
O elemento identidade de (Zn , +n ) o 0 (ou seja, [0]n ) e [a]n +n [0]n = [a + 0]n = [a]n O inverso aditivo de um elemento a (ou seja, [a]n ) um elemento e a (ou seja, [a]n ou [n a]n ), uma vez que [a]n +n [a]n = [a a]n = [0]n
61 / 75
Multiplicao Modular ca
Usando a denio de multiplicao mdulo n, podemos ca ca o denir o grupo multiplicativo mdulo n como (Z , .n ). o n Os elementos do conjunto Z so os primos relativos a n a Z = {[a]n Zn : gcd(a, n) = 1} n
62 / 75
Multiplicao Modular ca
Para vericar que Z bem denido, observe que, para n e 0 a < n, temos que a (a + kn)(mod n). Uma vez que gcd(a, n) = 1 gcd(a + kn, n) = 1 para todo inteiro k Uma vez que [a]n = {a + kn : k Z}, o conjunto Z bem n e denido Um exemplo de grupo : e Z = {1, 2, 4, 7, 8, 11, 13, 14} 15
63 / 75
Multiplicao Modular ca
.15 1 2 4 7 8 11 13 14 1 1 2 4 7 8 11 13 14 2 2 4 8 14 1 7 11 13 4 4 8 1 13 2 14 7 11 7 7 14 13 4 11 2 1 8 8 8 1 2 11 4 13 14 7 11 11 7 14 2 13 1 8 4 13 13 11 7 1 14 8 4 2 14 14 13 11 8 7 4 2 1
64 / 75
Multiplicao Modular ca
Teorema
e O sistema (Z , .n ) um grupo abeliano nito. n
Prova
O Teorema 33.6 implica (Z , .n ) ser fechado. Para quaisquer a, b, n e p, se gcd(a, p) = 1 e gcd(b, p) = 1, ento gcd(ab, p) = 1 a
65 / 75
Multiplicao Modular ca
Teorema
O sistema (Z , .n ) um grupo abeliano nito. e n
Prova
Associatividade ([a]n .n [b]n ).n [c]n = [ab]n .n [c]n = [(ab)c]n = [a(bc)]n = [a]n .n [bc]n = [a]n .n ([b]n .n [c]n )
66 / 75
Multiplicao Modular ca
Teorema
O sistema (Z , .n ) um grupo abeliano nito. e n
Prova
67 / 75
Multiplicao Modular ca
Teorema
O sistema (Z , .n ) um grupo abeliano nito. e n
68 / 75
Multiplicao Modular ca
Prova
Para mostrar a existncia do elemento inverso, seja a um e elemento de Z e seja (d, x, y ) a sa do algoritmo da n Extend Euclid(a, n) Ento d = 1 pois a Z e a n ax + ny ax = 1 ou equivalentemente
1(mod n)
Portanto, [x]n o inverso multiplicatiov de [a]n mdulo n e o A demonstrao de unicidade pode ser desenvolvido com base ca no Corolrio 33.26 a
69 / 75
Observao ca
Quando trabalhos com grupos (Zn , +n ) e (Z , .n ), seguimos a n conveno de denir classes de equivalncia pelo elemento ca e representante e denotamos +n e .n simplesmente por + e .
70 / 75
Equivalncias mdulo n tambm podem ser interpretadas e o e como equaes em Zn . co Por exemplo, as duas expresses abaixo so equivalentes: o a ax b(mod n)
71 / 75
Conveno ca
` As vezes, nos referimos ao grupo (S, ) meramente por S quando a operao binria entendida no contexto ca a e Podemos, portanto, nos referir aos grupos (Zn , +n ) e (Z , .n ) n simplesmente por Zn e Z , respectivamente n O inverso multiplicativo de um elemento a denotado por e (a1 mod n)
72 / 75
Conveno ca
Por exemplo, 71 13(mod 15) pois 7 13 = 91 1(mod 15) E 4/7 = 4 13 = 52 7(mod 15)
73 / 75
Tamanho de Z n
O tamanho do conjunto Z denotado por (n). n e Essa funo, conhecida por Funo Phi de Euler, satisfaz a ca ca equao ca 1 (n) = n 1 p
p|n
74 / 75
Tamanho de Z n
75 / 75