2.2 Método das Fracções Contínuas (“CFRAC”)
3.1.2 Raízes Quadradas Módulo Potências de Números Primos
Como é natural, o conceito de raiz quadrada introduzido na Definição 3.1 admite uma genera- lização para os casos em que, em vez de trabalharmos com um módulop primo, trabalhamos
com um módulon composto. Nestes casos, pretendemos naturalmente saber se a congruência
x2 ≡ a (mod n) (3.7)
admite quaisquer soluções, pretendendo também, em caso afirmativo, determiná-las. No entanto, mesmo nos casos em que esta congruência admite soluções verifica-se que obtê- -las é uma tarefa equivalente a factorizar n completamente, o que, como sabemos, pode ser
extremamente difícil. Um caso especial e de resolução mais fácil deste tipo de congruências ocorre quando o módulo da congruência (3.7) é uma potência pk de um determinado primo,
podendo ser visto como um caso particular da resolução de congruências do tipo
f (x) ≡ 0 (mod pk) (3.8) no qual tomamosf (x) = x2− a. Para resolver este tipo de congruências é possível aplicar um
processo simples e muito eficiente, desde que conheçamos as soluções de f (x) ≡ 0 (mod p).
De um modo geral, este processo tenta construir indutivamente a partir de uma solução r1
de f (x) ≡ 0 (mod p) um inteiro da forma
r1+s1p + s2p2+ · · · +sk−1pk−1,
determinando para o efeito os coeficientess1, s2, · · · , sk−1de tal modo quer2
(def)
= r1+s1p seja
uma solução de f (x) ≡ 0 (mod p2),r 3
(def)
= r2+s2p2 seja uma solução de f (x) ≡ 0 (mod p3),
e assim sucessivamente. Este processo baseia-se no seguinte resultado:
Teorema 3.7. Para cada k ≥ 2, o número de soluções da congruência f (x) ≡ 0 (mod pk)
correspondentes a cada solução rk−1 def (x) ≡ 0 (mod pk−1) é
(a) 1 , se f0(rk−1) 6≡ 0 (mod p),
(b) p , se f0(r
k−1) ≡ 0 (mod p) e f (rk−1) ≡ 0 (mod pk),
(c) 0 , se f0(rk−1) ≡ 0 (mod p) e f (rk−1) 6≡ 0 (mod pk).
Nos dois primeiros casos, cada uma das referidas soluções é da forma rk=rk−1+sk−1pk−1,
sendo que no caso (a) o inteiro sk−1 verifica a congruência
sk−1f0(rk−1) ≡ −
f (rk−1)
pk−1 (mod p), (3.9)
enquanto que no caso (b) a cada 0 ≤sk−1≤ p − 1 corresponde uma das referidas soluções.
Demonstração. A demonstração deste resultado pode ser encontrada em [8, pp. 96-97].
3. CRIVO QUADRÁTICO
Ora, tendo em conta este resultado, e uma vez que se verifica (x2− a)0 = 2x, concluímos ser
possível e até conveniente dividir o resto da discussão em dois casos: o caso em que p é um
primo ímpar que não dividea, e portanto no qual se verifica f0(x) = 2x 6≡ 0 (mod p) sempre
que x 6≡ 0 (mod p), e o caso em que p é igual a 2, verificando-se f0(x) ≡ 0 (mod p) para
qualquer inteirox.
Comecemos então por estudar o caso em que p é um primo ímpar que não divide a.
Tendo em conta o que foi referido em §3.1.1, a congruênciax2 ≡ a (mod p) admite exacta-
mente duas soluções, digamosr1 e r01. Deste modo, aplicando indutivamente o Teorema 3.7
facilmente se conclui que para qualquerk ≥ 1 existem exactamente duas soluções desta con-
gruência módulopk, digamosr
kerk0. Para além disso, conclui-se também que parak ≥ 2 cada
uma destas soluções pode ser determinada a partir derk−1 er0k−1 resolvendo as congruências
sk−1f0(rk−1) ≡ − f (rk−1) pk−1 (modp) e s 0 k−1f0(rk−10 ) ≡ − f (r0 k−1) pk−1 (modp), e tomando rk =rk−1+sk−1pk−1 e rk0 =rk−10 +sk−1pk−1.
Exemplo 3.8. Suponhamos que após verificar quex2≡ 2 (mod 7) admite r
1 = 3 er01 = 4
como soluções, pretendíamos determinar todas as soluções dex2 ≡ 2 (mod 73). Para deter-
minar uma destas soluções, começamos por considerar a solução r1 = 3, determinando em
seguida a soluçãos1 de
s1· 2 · 3 ≡ −
32− 2
7 ≡ 6 (mod 7),
que verificamos facilmente ser s1 = 1. Consequentemente, a solução r2 de x2 ≡ 2 (mod 72)
correspondente ar1 = 3 ér2= 3 + 1 · 7 = 10, verificando-se com efeito que 102≡ 2 (mod 72).
Aplicando novamente este raciocínio por forma a determinarr3, concluímos que
s2· 2 · 10 ≡ −
102− 2
72 ≡ 5 (mod 7),
sendo portantor3 = 10 + 2 · 72 = 108 uma das duas soluções dex2 ≡ 2 (mod 73) pretendidas.
Para determinar a outra destas soluções podemos aplicar o mesmo processo, começando desta vez com a solução r0
1 = 4 de x2 ≡ 2 (mod 7). No entanto, notando que quaisquer
duas soluções de congruências do tipox2 ≡ a (mod pk) são opostas uma da outra módulopk,
conclui-se facilmente que 39 e 235 são as restantes soluções das congruências consideradas, uma vez que
(72− 10)2 = 392 ≡ 2 (mod 72) e (73− 108)2 = 2352≡ 2 (mod 73).
Deste modo, e se bem que pudéssemos, naturalmente, aplicar o mesmo processo a r10 = 4, neste caso conseguimos determinar a solução correspondente de forma mais fácil.
3.1. CONCEITOS FUNDAMENTAIS
Debruçamo-nos agora então sobre o caso ligeiramente mais complicado em que p é igual a
2. Neste caso não podemos aplicar a técnica anterior, uma vez que f0(x) ≡ 0 (mod 2) para
qualquer inteiro x, correspondendo portanto este caso aos pontos (b) e (c) do Teorema 3.7.
Para além disso, e assumindo quea 6≡ 0 (mod 2), a congruência x2 ≡ a (mod 2)
admite como única soluçãor1 = 1, pelo que temos apenas uma solução com a qual trabalhar.
Consideremos então a congruência
x2≡ a (mod 4), (3.10)
para a qual existem duas situações possíveis: ou a ≡ 1 (mod 4), e portanto, tendo em conta
o caso (b) do Teorema 3.7, existem duas soluções r2 e r20, ou a ≡ 3 (mod 4), não tendo
a referida congruência quaisquer soluções neste caso. Deste modo, apenas nos interessa o primeiro caso, para o qual, de acordo com o referido teorema, se obtêm as soluções
r2 = 1 + 0 · 2 = 1 e r02 = 1 + 1 · 2 = 3.
Consideremos agora o caso da congruência
x2≡ a (mod 8),
no qual podemos considerar a ≡ 1 (mod 4). Nestas condições, temos novamente duas situ-
ações possíveis para analisar: ou a ≡ 1 (mod 8), verificando-se novamente o caso (b) do
Teorema 3.7, ou a ≡ 5 (mod 8), e portanto a referida congruência não admite quaisquer
soluções. Assim, no primeiro destes casos a cada uma das soluções r2 = 1 e r02 = 3 da con-
gruência x2 ≡ a (mod 4) correspondem outras duas soluções de x2 ≡ a (mod 8), obtendo-se
assim
r3= 1 + 0 · 4 = 1 e r30 = 1 + 1 · 4 = 5,
r003 = 3 + 0 · 4 = 3 e r3(3)= 3 + 1 · 4 = 7.
Tomando um pouco de atenção ao raciocínio até agora efectuado, concluímos que o número de soluções tem vindo a duplicar constantemente, ou seja, tem-se até agora verificado sempre o caso (b) do Teorema 3.7. No entanto, a partir deste ponto o número de soluções estabiliza, obtendo-se quatro soluções para cada k ≥ 3 sempre que a ≡ 1 (mod 8). Esta situação
deve-se ao facto de que, a partir de 8 = 23, se começa a verificar o caso (c) para algumas soluções. De facto, das soluções de x2 ≡ a (mod 8) apenas r
3 er(3)3 continuam a ser soluções
de x2 ≡ a (mod 16) quando a ≡ 1 (mod 16), enquanto que r0
3 e r003 passam a ser soluções
3. CRIVO QUADRÁTICO
desta congruência apenas nos casos em quea ≡ 9 (mod 16). Demonstra-se por indução que
esta situação se verifica de modo semelhante para as restantes potências de dois, pelo que podemos concluir quex2≡ a (mod 2k) admite
1 solução sek = 1, 2 soluções sek = 2 e a ≡ 1 (mod 4), 4 soluções sek ≥ 3 e a ≡ 1 (mod 8),
nenhuma solução nos restantes casos.
Deste modo, e estudados todos os conceitos de que necessitamos acerca de raízes quadradas modulares, descrevemos agora dois processos muito eficientes para reconhecer números pri- mos, bem como números suaves relativamente a uma dada base de factores.