Le test de primalité AKS (aussi connu comme le test de primalité Agrawal-Kayal-Saxena et le test cyclotomique AKS) est un algorithme de preuve de primalité déterministe et généraliste (fonctionne pour tous les nombres) publié le par trois scientifiques indiens nommés Manindra Agrawal, Neeraj Kayal et Nitin Saxena (A.K.S). Ce test est le premier en mesure de déterminer la primalité d'un nombre dans un temps polynomial. Ce test a été publié dans un article scientifique intitulé « PRIMES is in P ». Cet article leur a valu le prestigieux prix Gödel 2006. L'algorithme détermine si un nombre est premier ou composé (au sens de la factorisation). L'algorithme repose sur la généralisation suivante du petit théorème de Fermat : pour tout entier n ≥ 2 et tout entier a premier avec n, n est un nombre premier si et seulement si qui résulte d'une propriété des coefficients binomiaux : n est un nombre premier si et seulement si L'objet d'AKS est d'exploiter efficacement cette propriété. L'algorithme est globalement le suivant: procédure AKS(): Si avec et alors renvoyer non-premier (étape 1) Construire le plus petit entier tel que l'ordre de modulo soit supérieur à (étape 2) Si pgcd() != 1 et pgcd()!= n pour un certain alors renvoyer non-premier (étape 3) Si alors renvoyer premier (étape 4) Pour compris entre 1 et faire: Si alors renvoyer non-premier (étape 5) Renvoyer premier (étape 6) On cherche à démontrer que l'algorithme renvoie premier si, et seulement si son argument est un nombre premier. La preuve repose sur des résultats sur les corps finis et de diverses inégalités dont la plupart sont démontrées par récurrence. On note tout au long de la démonstration l'ordre (théorie des groupes) de dans le groupe des inversibles de l'anneau et l'Indicatrice d'Euler. On suppose tout d'abord que est premier, l'algorithme peut renvoyer une valeur (premier ou non-premier) à cinq différentes étapes: Il est clair que l'algorithme ne peut pas renvoyer non-premier aux étapes 1 et 3. D'après le Théorème de Lagrange sur les groupes, l'ordre de tout élément divise l'ordre du groupe.

À propos de ce résultat
Cette page est générée automatiquement et peut contenir des informations qui ne sont pas correctes, complètes, à jour ou pertinentes par rapport à votre recherche. Il en va de même pour toutes les autres pages de ce site. Veillez à vérifier les informations auprès des sources officielles de l'EPFL.
Cours associés (3)
MATH-489: Number theory II.c - Cryptography
The goal of the course is to introduce basic notions from public key cryptography (PKC) as well as basic number-theoretic methods and algorithms for cryptanalysis of protocols and schemes based on PKC
COM-401: Cryptography and security
This course introduces the basics of cryptography. We review several types of cryptographic primitives, when it is safe to use them and how to select the appropriate security parameters. We detail how
CS-308: Introduction to quantum computation
The course introduces the paradigm of quantum computation in an axiomatic way. We introduce the notion of quantum bit, gates, circuits and we treat the most important quantum algorithms. We also touch
Séances de cours associées (16)
Tests de nombres premiers et de primalité
Couvre les nombres premiers, la cryptographie RSA et les tests de primalité, y compris le théorème des restes chinois et le test de Miller-Rabin.
Cryptographie RSA: Test de primalité et résidus quadratiques
Explore la cryptographie RSA, couvrant les tests de primalité, les résidus quadratiques et les applications cryptographiques.
L'algorithme de Shor : les entiers de factoring
Couvre les bases de l'algorithme de Shor pour factoriser les entiers et les étapes impliquées dans l'algorithme quantique.
Afficher plus
Publications associées (22)

Results on Sparse Integer Programming and Geometric Independent Sets

Jana Tabea Cslovjecsek

An integer linear program is a problem of the form max{c^T x : Ax=b, x >= 0, x integer}, where A is in Z^(n x m), b in Z^m, and c in Z^n.Solving an integer linear program is NP-hard in general, but there are several assumptions for which it becomes fixed p ...
EPFL2023

Zero-Knowledge IOPs with Linear-Time Prover and Polylogarithmic-Time Verifier

Alessandro Chiesa, Siqi Liu

Interactive oracle proofs (IOPs) are a multi-round generalization of probabilistically checkable proofs that play a fundamental role in the construction of efficient cryptographic proofs. We present an IOP that simultaneously achieves the properties of zer ...
SPRINGER INTERNATIONAL PUBLISHING AG2022

Monte Carlo Estimators for Differential Light Transport

Wenzel Alban Jakob, Tizian Lucien Zeltner, Sébastien Nicolas Speierer

Physically based differentiable rendering algorithms propagate derivatives through realistic light transport simulations and have applications in diverse areas including inverse reconstruction and machine learning. Recent progress has led to unbiased metho ...
ASSOC COMPUTING MACHINERY2021
Afficher plus
Concepts associés (13)
Test de primalité
vignette|Le 39e nombre premier de Mersenne découvert à ce jour pour un article sur la primalité Un test de primalité est un algorithme permettant de savoir si un nombre entier est premier. Le test le plus simple est celui des divisions successives : pour tester N, on vérifie s’il est divisible par l’un des entiers compris au sens large entre 2 et N-1. Si la réponse est négative, alors N est premier, sinon il est composé.
Complexité en temps
En algorithmique, la complexité en temps est une mesure du temps utilisé par un algorithme, exprimé comme fonction de la taille de l'entrée. Le temps compte le nombre d'étapes de calcul avant d'arriver à un résultat. Habituellement, le temps correspondant à des entrées de taille n est le temps le plus long parmi les temps d’exécution des entrées de cette taille ; on parle de complexité dans le pire cas. Les études de complexité portent dans la majorité des cas sur le comportement asymptotique, lorsque la taille des entrées tend vers l'infini, et l'on utilise couramment les notations grand O de Landau.
Polynôme cyclotomique
En mathématiques, plus précisément en algèbre commutative, le polynôme cyclotomique usuel associé à un entier naturel n est le polynôme unitaire dont les racines complexes sont les racines primitives n-ièmes de l'unité. Son degré vaut φ(n), où φ désigne la fonction indicatrice d'Euler. Il est à coefficients entiers et irréductible sur Q.
Afficher plus

Graph Chatbot

Chattez avec Graph Search

Posez n’importe quelle question sur les cours, conférences, exercices, recherches, actualités, etc. de l’EPFL ou essayez les exemples de questions ci-dessous.

AVERTISSEMENT : Le chatbot Graph n'est pas programmé pour fournir des réponses explicites ou catégoriques à vos questions. Il transforme plutôt vos questions en demandes API qui sont distribuées aux différents services informatiques officiellement administrés par l'EPFL. Son but est uniquement de collecter et de recommander des références pertinentes à des contenus que vous pouvez explorer pour vous aider à répondre à vos questions.