´
Ecole normale sup´erieure 2011-2012
D´epartement d’informatique
Algorithmique et Programmation
TD n8 : Entiers
Exercice 1. Multi-exponentiation
Soit Gun groupe commutatif d’ordre n. Donner un algorithme qui ´etant donn´es g1, . . . , g`G
et des entiers e1, . . . , e`∈ {0, . . . , n1}calcule le produit
`
Y
i=1
gei
ien O(log(n)+2`) multiplications
dans G.
Exercice 2. Primes ∈ NP
1. Montrer que un entier nest premier si et seulement si il existe un entier aZtel que
an11 mod nmais a(n1)/q 6≡ 1 mod npour tout diviseur premier qde n1.
2. En d´eduire que tout nombre premier admet un certificat de primalit´e polynomial (en sa
longueur binaire), i.e. Primes ∈ NP.
Exercice 3. Test de P´
epin
On appelle n-i`eme nombre de Fermat le nombre Fn= 22n+ 1 pour n > 0.
1. Montrer que si Fnest premier, alors un entier gest un g´en´erateur de (Z/FnZ)si et
seulement si g
Fn=1.
En d´eduire que si Fnest premier alors 3 est un g´en´erateur de (Z/FnZ).
2. Montrer que si 3(Fn1)/2≡ −1 (mod Fn) alors Fnest premier.
Exercice 4 (Nombre pseudo-premier de Fermat en base a).Soit a2 un entier. En consid´erant
les entiers de la forme (a2p1)/(a21) o`u pest un nombre premier ne divisant pas a21,
montrer qu’il existe une infinit´e de nombres pseudo-premiers de Fermat en base a.
Exercice 5. Primes ∈ BPP
1. Soit nun entier premier impair sup´erieur ou ´egal `a 3 : n=q2p+ 1 avec pimpair et soit
aZpremier `a n. On consid`ere la suite (b0, b1, . . . , bp) d’entiers compris entre 0 et n1
d´efinie par :
b0aq(mod n), b1b2
0(mod n), . . . , bpb2
p1(mod n).
(a) Montrer que bp= 1.
1
(b) Si b06= 1 montrer qu’il existe un indice itel que bi=1.
2. Montrer que si nest un entier compos´e impair sup´erieur ou ´egal `a 3 : n=q2p+ 1 avec
pimpair alors le nombre d’entiers a(Z/nZ)pour lesquels la suite (bi)i[[0,p]] v´erifie les
deux conditions pr´ec´edentes est inf´erieur `a (n1)/2.
3. En d´eduire que Primes ∈ BPP.
Exercice 6. Logarithme discret
Soit Gun groupe cyclique d’ordre nengendr´e par get soit hG. Le probl`eme du logarithme
discret dans Gconsiste a trouver l’unique entier xdans {1, . . . , n}tel que h=gn.
1. Proposer un algorithme qui r´esoud le probl`eme du logarithme discret en O(n) op´erations
dans le groupe G.
2. Montrer que si la factorisation de n=pe1
1···pek
kest connue (o`u les pisont des nombres
premiers deux `a deux distincts), alors il existe un algorithme qui r´esoud le probl`eme du
logarithme discret en OPk
i=1 ei(ln n+pi)op´erations dans le groupe G.
Exercice 7. Extraction de racine carr´
ee modulo p
Soit pun nombre premier.
1. Nous supposons que p3 mod 4. Donner un algorithme de complexit´e 0((log p)3) qui
´etant donn´e α∈ {1, . . . , p 1}tel que (α|p) = 1 retourne β∈ {1, . . . , p 1}tel que
β2αmod p.
2. Nous supposons d´esormais que p1 mod 4. Posons p= 2hm+ 1.
(a) Donner un algorithme probabiliste qui ´etant donn´e pretourne un ´el´ement γde
{1, . . . , p 1}tel que (γ|p) = 1 en temps esp´er´e O((log p)2). Montrer qu’un tel
γengendre l’unique sous-groupe d’ordre 2hde (Z/pZ).
(b) Soit α∈ {1, . . . , p 1}tel que (α|p) = 1. Montrer que αmappartient au sous-groupe
engendr´e par γet en utilisant un algorithme de logarithme discret, en d´eduire un
calculer une racine carr´e de αmmodulo p.
(c) Conclure en donnant un algorithme permettant de calculer les racines carr´es de αen
temps O((log p)3+hlog(h) log(p)2).
2
1 / 2 100%
La catégorie de ce document est-elle correcte?
Merci pour votre participation!

Faire une suggestion

Avez-vous trouvé des erreurs dans linterface ou les textes ? Ou savez-vous comment améliorer linterface utilisateur de StudyLib ? Nhésitez pas à envoyer vos suggestions. Cest très important pour nous !