Algorithmique quantique : de l exponentiel au polynômial

Dimension: px
Commencer à balayer dès la page:

Download "Algorithmique quantique : de l exponentiel au polynômial"

Transcription

1 Algorithmiue uantiue : de l onentiel au polynômial Novembre 008 Résumé L informatiue uantiue, même si elle n en est encore u à ses premiers pas, porte en elle des promesses ui lui ont valu un engouement spontané de la part de la communauté scientifiue. Même si la réalisation d ordinateurs uantiues reste hypothétiue à l heure actuelle (sauf pour des miniatures), c est un domaine de recherche ui a été très actif ces uinze dernières années, et pour cause : ces nouveaux concepts permettraient d accélérer drastiuement des opérations ui coûtent beaucoup trop cher sur nos ordinateurs actuels (on passe d une complexité onentielle à une polynômiale, à une très faible probabilité d erreur près). Après avoir liué brièvement en uoi consiste le modèle de l ordinateur uantiue, nous essaierons de comprendre et d apprivoiser la nouvelle puissance de calcul ui s offre à nous par l intermédiaire de deux des plus célèbres algorithmes uantiues : l algorithme de factorisation de Shor et l algorithme de recherche de Grover. Nous ne présenterons ue brièvement le second, le cœur de ce travail étant l algorithme de Shor. Table des matières 1 L ordinateur uantiue 1.1 L ordinateur classiue L ordinateur uantiue Circuits et portes uantiues Porte de Toffoli Porte CNOT Complexité d un algorithme uantiue Algorithme de Shor 6.1 Description du problème & algorithme Mise en situation Suelette de l algorithme Algorithmes intermédiaires L onentiation modulaire La transformée de Fourier uantiue Recherche de l ordre d un élément L algorithme Preuve de correction Algorithme de Grover Position du problème Algorithme de Grover

2 1. L ordinateur uantiue 1 L ordinateur uantiue 1.1 L ordinateur classiue Les ordinateurs ue nous manipulons conservent et manipulent leur information à l aide de bits : chaue bit peut valoir 0 ou 1. Avec des millions de tels bits, on peut stocker et traiter d importantes uantités d information. Une suite de bits est une donnée ui peut alors représenter un nombre en base, une adresse mémoire, un mot, ou une uelconue autre information u on sait conserver et relire sous forme de 0 et de 1. Plus précisément, toute manipulation de ces bits passe par l utilisation de portes logiues ui prennent en entrée un certain nombre de bits, disons n, et fournissent en sortie un résultat sur m bits, ui est l application d une certaine fonction booléenne f aux bits d entrée. Fig. 1 Porte logiue d une fonction booléenne f : {0, 1} n {0, 1} m On peut montrer avec uelues notions de logiue propositionnelle élémentaires ue de tels circuits peuvent toujours être décomposés en un réseau de portes NAND ( NON - ET) à entrées et 1 sortie. Par réseau, on entend un ensemble de portes logiues reliées entre elles (une entrée d une porte est la sortie d une autre, ou une des deux constantes 0 et 1), et où on a le droit de diviser un fil en deux, pour le donner en entrée à portes par exemple. Physiuement, on réalise ces circuits à l aide de transistors et autres puces électroniues, où un bit à 0 correspond à un faible potentiel, et un 1 à un fort potentiel (le plus souvent). 1. L ordinateur uantiue Le principe de base de l ordinateur uantiue est de changer le support de l information. Au lieu d un bit, on manipule un ubit. On définit l état uantiue d un ubit comme un vecteur unitaire de C. Afin de représenter cet état, on se fixe une base orthonormée de C u on note 0 et 1. Un ubit ψ peut alors être dans un de ces deux états (on retrouve le bit usuel), mais surtout il peut aussi être dans une superposition de ces deux états : ψ α 0 + β 1 avec α, β C, et α + β 1 Ainsi, là où on avait un nombre d états possibles fini dans le cas du bit, un ubit peut prendre une infinité de valeurs. Mais bien entendu, cela ne veut pas dire u on peut stocker une infinité d information dans un ubit. En effet, les lois de la mécaniue uantiue nous disent u on ne peut avoir accès directement à l information stockée dans un ubit : une mesure n est ue probabiliste et peut modifier l état du ubit, changeant le comportement normal du calcul. De plus, une mesure ne rendra u un état 0 ou 1, donc ne donnera pas accès à α et β ui représentent les vrais porteurs de l information. Il faudra donc utiliser des astuces pour loiter tout de même cette puissance uantiue. On peut maintenant généraliser ce concept de ubit pour accéder au n-ubit. On se place alors dans l espace (C ) n ui représente un système formé de n ubits. Et alors tout état ψ du n-ubit peut se décomposer sur la base dite de calcul de (C ) n obtenue à partir de la base ( 0, 1 ) de C par produits Algorithmiue uantiue : de l onentiel au polynômial

3 1. L ordinateur uantiue 3 tensoriels successifs : ( , ,..., ). Par convention, on notera, pour a n 1 entier, a le vecteur de la base correspondant à l écriture binaire de a. On peut alors décomposer : ψ n 1 i0 a i i avec a i C et n 1 i1 a i 1 Si on cherche à avoir accès à l état effectif de ψ, on trouvera l état i avec une probabilité a i d après les lois de la mécaniue uantiue. De plus, le n-ubit sera dans l état i après la mesure, modifiant donc éventuellement sa valeur pour la fixer sur un des vecteurs de la base de calcul. On remarue donc ici une première différence essentielle avec le calcul classiue : la mesure peut changer l état d un n-ubit et ne nous donne même pas accès à son vrai état s il est superposé au moment de la mesure. Afin de réaliser des calculs sur ces n-ubits, il convient de définir l analogue des portes logiues de l informatiue traditionnelle dans ce nouveau monde. Mais on rencontre deux problèmes de fond. Premièrement, les opérations u on appliue aux n-ubits doivent être inversibles (réversibles dans le langage de la physiue) : avec la valeur d un n-ubit de sortie, on doit pouvoir retrouver uel était le n-ubit d entrée correspondant (cela impose au passage u on ne peut avoir une porte ui prendrait en entrée un n-ubit et ui rendrait un m-ubit avec m n). Cela est dicté par les lois de la physiue uantiue. Ainsi, on ne peut pas implémenter de manière directe la porte logiue NAND ui agirait sur un -ubit pour rendre un 1-ubit, ni même les usuelles AND, etc. Il va falloir ruser pour les implémenter de façon réversible et disposer ainsi au moins de la puissance du calcul classiue. Fig. Porte uantiue d un opérateur unitaire (donc inversible) f : (C ) n (C ) n Deuxièmement, il est fondamentalement impossible de dupliuer un n-ubit : un circuit uantiue ne peut comporter de bifurcations, c est-à-dire de dédoublement de fil, comme on se l autorisait pour un circuit classiue. Ceci est dû au théorème de non clonage uantiue [NC00, p. 53]. On peut comprendre ce résultat intuitivement de la manière suivante : si on arrivait à dupliuer un état uelconue autant de fois u on veut, on aurait accès statistiuement aux a i ce ui n est pas raisonnable. Là aussi, une astuce va nous sortir de ce mauvais pas. 1.3 Circuits et portes uantiues Malgré ces deux problèmes, on peut tout de même agir sur des n-ubits à la manière de n-bits normaux. La fonction booléenne ue représente une porte classiue est remplacée par un opérateur unitaire de (C ) n : on donne un n-ubit ψ en entrée à un opérateur unitaire U, et il donne en sortie le n-ubit U ψ. Il s agit donc de trouver des opérateurs unitaires ui représentent les opérations logiues ue l on veut réaliser Porte de Toffoli Tout d abord, il serait satisfaisant u un ordinateur uantiue ait une puissance de calcul au moins aussi importante u un ordinateur classiue. Pour cela, on construit une porte uantiue particulière, appelée porte de Toffoli, ui permet d obtenir une version uantiue du NAND et de la bifurcation dans un circuit. Ainsi, on aura récupéré au moins la puissance de calcul d un ordinateur classiue d après le résultat énoncé en 1.1. Algorithmiue uantiue : de l onentiel au polynômial

4 1. L ordinateur uantiue 4 La porte de Toffoli s appliue à 3 ubits en entrée (a, b, c) ie. à un 3-ubit et produit 3 ubits en sortie (a, b, c ). Son action est simple : si les deux premiers ubits sont dans l état 1, elle remplace la valeur du troisième ubit par son complémentaire. Pour fixer les idées, donnons sa table de vérité dans la base de calcul (les 0 et 1 représentent les états 0 et 1 pour plus de clarté) : Entrée Sortie a b c a b c Cette table donne la valeur de la porte appliuée aux vecteurs de base de (C ) 3, et elle caractérise donc bien l opérateur unitaire sous-jacent. À partir de cette porte uantiue, on voit u on obtient les opérations génératrices du calcul logiue classiue : NAND et la bifurcation. En effet, si on fixe c 1, alors c NAND(a, b). De même, si on fixe a 1 et c 0, alors b c b, et on a donc dupliué b. Mais si un ordinateur uantiue peut bien simuler un ordinateur classiue, il présente bien sûr une puissance de calcul beaucoup plus importante. Tout est dans les états dits d intrication des n-ubits. En effet, comme les n-ubits peuvent être des combinaisons linéaires d éléments de la base, on peut y stocker plus d information ue si on pouvait simplement se placer sur des vecteurs de la base (comme on le ferait si l ordinateur était classiue). Malheureusement, les mesures ne renvoient u un vecteur de la base, ce ui exclut de mesurer exactement un état intriué et d en obtenir les différentes composantes sur chaue vecteur de la base de calcul. Cependant, comme on va le voir dans les algorithmes uantiues ui suivent, on peut tout de même utiliser cette latitude de calcul pour accélérer des algorithmes classiues Porte CNOT La porte de Toffoli nous a permis de simuler de manière uantiue la logiue de NAND. Maintenant, nous allons imiter son caractère générateur. En effet, on dispose d une porte de base ui a un rôle analogue à NAND, dans le cas classiue dans le sens où elle est universelle parmi les opérateurs unitaires. Elle prend en entrée ubits. Le premier est dit de contrôle, le second est la cible. Son action peut être décrite simplement : si le ubit de contrôle vaut 0, le ubit cible reste tel uel ; mais si le ubit de contrôle vaut 1, alors le ubit cible est changé en son complémentaire. Sa table de vérité est donc : Entrée Sortie a b a b et on nomme cette porte CNOT (Controlled-NOT). CNOT présente une propriété algébriue intéressante : [1.A] Proposition (Universalité de CNOT et des portes sur 1-ubit) À partir de CNOT et des portes uantiues agissant sur un 1-ubit, on peut créer par composition n importe uelle porte uantiue agissant sur un n-ubit (c est-à-dire obtenir n importe uel opérateur unitaire de (C ) n ). Algorithmiue uantiue : de l onentiel au polynômial

5 1. L ordinateur uantiue 5 Contrairement au cas classiue, il n y a pas ue NOT ui agisse sur un seul ubit. Il y en a même une infinité puisu il y a une infinité d opérateurs unitaires sur C. On dénote par exemple l importante porte suivante, u on utilisera par la suite : La porte d Hadamard : H 1 ( Il est bon de noter ici ue cela ne résoud pas totalement notre problème. En effet, si on peut simuler tout opérateur unitaire par un nombre fini de compositions de portes de bases, un ordinateur uantiue effectivement construit ne peut embaruer u un nombre fini de portes uantiues, et donc ne peut avoir accès à tout opérateur agissant sur un ubit on n avait pas ce problème dans le cas classiue puisu il suffisait d embaruer la seule porte NAND. Cependant, des résultats d approximation montrent u on peut choisir, si on se fixe une précision, un sous-ensemble fini de portes de base pour approximer n importe uel opérateur unitaire [Fim00]. 1.4 Complexité d un algorithme uantiue On parle d accélérer des algorithmes classiues, mais encore faut-il se donner un moyen de mesurer effectivement la complexité d un algorithme uantiue. Rappelons ue dans le cas d un algorithme classiue, on choisit de mesurer la complexité en temps : on estime le temps mis par l algorithme sur une entrée de taille n, asymptotiuement. Cela revient à compter le nombre d opérations atomiues réalisées au cours d une exécution. Les algorithmes polynômiaux en n sont considérés comme étant utilisables en pratiue, alors ue les onentiels mettraient beaucoup trop de temps sur des entrées, même petites, pour être utiles. Sur un ordinateur uantiue, on mesure de même le temps d exécution. On va utiliser le résultat de [1.A] : on considère ue l application de CNOT ou d un opérateur agissant sur un 1-ubit se fait en temps constant. Une mesure prend également un temps constant. Ainsi, lorsu on dispose d un circuit uantiue, on établit sa complexité en décomposant chaue opérateur en CNOT et en opérations de 1-ubit, puis on compte. Dans toute la suite, les opérateurs agissant sur les n-ubits se décomposent en un nombre polynômial en n de portes de base. Ainsi, compter un nombre polynômial de ces portes uantiues ou des portes de base est éuivalent. On ne se souciera donc plus de ce détail de définition, et on comptera directement les opérateurs agissant sur des n-ubits. L aspect pratiue des algorithmes polynômiaux à opposer aux onentiels reste évidemment le même : un algorithme polynômial serait assez rapide si un ordinateur uantiue l exécutait, alors u un onentiel serait trop long sur des entrées de taille usuelle. Au moment où est écrit ce texte, on est parvenu à construire effectivement un ordinateur uantiue de 7-ubit, mais pas plus. Il a factorisé 15 avec l algorithme de Shor ue nous allons décrire dans la suite. On est bien loin d un vrai ordinateur disposant d un 100-ubit par exemple, mais c est déjà une belle avancée d être parvenu à passer de la théorie à la pratiue. ) Algorithmiue uantiue : de l onentiel au polynômial

6 . Algorithme de Shor 6 Algorithme de Shor.1 Description du problème & algorithme.1.1 Mise en situation Actuellement, beaucoup de techniues de cryptologie sont basées sur un fait simple : nous ne connaissons pas de façon efficace (ie. polynômiale) de factoriser un nombre. En particulier, la méthode RSA, utilisée dans les transmissions bancaires par exemple, repose sur ce fait : on fait transiter publiuement un très grand nombre u on sait être produit de deux nombres premiers. La connaissance d un de ces nombres permettrait de casser la sécurité de la transmission, mais vu u on ne peut pas (dans l état actuel des connaissances) trouver ce nombre en moins de centaines d années, on considère ue la transmission est sûre. L algorithme de Shor bouleverse totalement cette vision : en 1994, Shor trouve un algorithme uantiue ui factorise un nombre en temps polynômial. Ainsi, un ordinateur uantiue remettrait en cause une bonne partie de nos algorithmes de cryptologie. (Pas de paniue cependant, il fournirait également une puissance d encryptage plus importante!) Remarue 1. Dans un algorithme manipulant en entrée un nombre N, la taille de l entrée est le nombre de bits de N, ie. log N O(log N)..1. Suelette de l algorithme On peut décrire l algorithme de Shor en plusieurs étapes : Shor Entrée : nombre N à factoriser. On sait ue N n est pas premier. Sortie : 1 facteur non-trivial de N 1. Si N est pair, retourner.. Déterminer si N a b pour des entiers a 1 et b. Si c est le cas, retourner a. 3. Choisir un entier x, 1 x N Si le pgcd(x, N) > 1, alors retourner pgcd(x, N). 5. Sinon, chercher l ordre r de x dans Z/NZ, c est-à-dire ue r est le plus petit entier non-nul tel ue x r 1 mod N. 6. Si r est impair ou x r/ 1 mod N, alors recommencer avec un autre x. 7. Calcule pgcd(x r/ 1, N) et pgcd(x r/ + 1, N). L un des deux est un facteur non trivial. Quelues justifications s imposent ici pour voir ue l algorithme est bien polynômial en log N, et u il calcule bien ce u on veut. Les deux premières étapes sont là pour vérifier ue N est un entier impair avec plus d un facteur premier. Ces étapes peuvent être réalisées en O(1) et en O(log 3 N) respectivement. Cette propriété de N sera essentielle pour l étape 6. L étape 3 choisit un entier aléatoirement. Au vu de la uantité d aléas présente par essence dans un ordinateur uantiue, on se doute u obtenir un entier aléatoire n est pas très compliué. En effet, on peut faire simplement la manipulation suivante : on appliue la porte d Hadamard au 1-ubit 0. On a par définition : H 0 Algorithmiue uantiue : de l onentiel au polynômial

7 . Algorithme de Shor 7 Il suffit alors de mesurer l état de H 0 pour obtenir 0 ou 1 avec une probabilité 1/. À partir de cela, il est facile de générer aléatoirement un nombre entre 1 et N 1 en O(log N) (on tire aléatoirement chaue chiffre de son écriture en base ). L étape 4 retourne éventuellement directement un facteur non trivial. Le pgcd se calcule classiuement en O(log 3 N) à l aide de l algorithme d Euclide. Jusue là, nous n avons pas utilisé la puissance particulière de l ordinateur uantiue (l aléa peut être simulé sur un ordinateur classiue). C est dans l étape 5 ue tout se joue. En effet, on ne sait pas trouver l ordre de x en temps polynômial sur un ordinateur classiue, alors u on le peut sur un ordinateur uantiue avec une faible probabilité d erreur. La clef de voûte de cette techniue est la transformée de Fourier uantiue ui se fait en O(log 3 N) contre O(N log N) classiuement. Nous allons étudier en détail cette étape dans la section suivante. Dans l étape 6, il y a aussi une probabilié d erreur de l algorithme, mais elle est très petite : [.A] Théorème (Probabilité d échec) Soit N m i1 p i αi la décomposition en facteurs premiers de N. Alors avec les notations de l algorithme : P (r est pair et x r/ 1 mod N) 1 1 m 1 Preuve de [.A]. cf. [Sho99]. En particulier, cette probabilité d erreur est inférieure à 1/. Dans l étape 7, le calcul du pgcd se fait toujours en O(log 3 N). On sait par l étape précédente ue x r/ 1 mod N, et on sait par définition de r ue x r/ 1 mod N. Ainsi, aucun des deux facteurs n est nul modulo N, et donc leurs pgcd avec N donnent des facteurs non-triviaux, puisue leur produit divise N. Finalement, on voit ue ce ui permet à l algorithme uantiue d être polynômial (à une petite probabilité d erreur près) est simplement le fait de pouvoir calculer une transformée de Fourier efficacement. Comme nous l avions indiué, cet algorithme a une (petite) probabilité d erreur. Il faut distinguer cependant deux sources d erreurs : dans l étape 5 la probabilité d erreur vient des lois de la mécaniue uantiue alors ue dans l étape 6, c est purement arithmétiue.. Algorithmes intermédiaires Afin de réaliser l étape 5, il nous faut construire routines : l onentation modulaire et la transformée de Fourier uantiue. Nous décrivons ici l algorithme tel u il a été énoncé par Shor, mais la version u on trouve plus souvent dans la littérature passe par un autre intermédiaire plus général et utile dans d autres cas, u on appelle l estimation de phase...1 L onentiation modulaire L objet de ce paragraphe est de décrire un algorithme uantiue polynômial pour l onentation : on prend en entrée n, x et a pour donner en sortie (x a mod n). Ce sont des entiers, c est-à-dire des vecteurs de la base de calcul. On peut alors appliuer la méthode classiue pour calculer les puissances, dite d onentiation rapide. Elle consiste à calculer les x i (x i mod n) en mettant au carré successivement tant ue i log a. Ensuite, il reste à multiplier x log a (x log a mod n) par uelues-uns des x i déjà calculés pour l ajuster exactement à (x a mod n). Algorithmiue uantiue : de l onentiel au polynômial

8 . Algorithme de Shor 8 L implémentation uantiue effective des opérations arithmétiues n est pas triviale, mais elle n est pas terrifiante. On se reportera à [Sho99] pour plus de détails. Cette opération coûte donc clairement O(log n) multiplications de nombres plus petits ue n. On dispose ensuite de l algorithme classiue ui multiplie deux entiers plus petits ue n en O(log n). En fin de compte, la complexité est de O(log 3 n). En réalité, pour notre problème, on pourrait utiliser n importe uel algorithme de multiplication, même naïf, tant u il reste polynômial en log n. En particulier, on peut faire mieux ue ce O(log 3 n) en faisant appel à des algorithmes de multiplication plus sophistiués. Pour ue ce soit un algorithme exécutable sur un ordinateur uantiue, il se doit d être réversible comme on l a déjà vu. Dans [Sho99], l auteur décrit une méthode pour rendre réversible cet algorithme (et même tout algorithme). Nous ne nous attardons pas sur ce point et renvoyons à cette source pour plus de détails... La transformée de Fourier uantiue Usuellement, la transformée de Fourier discrète prend complexes (x 0,..., x 1 ) où est fixé, et calcule (y 0,..., y 1 ) : y k 1 1 ( ) iπck x c c0 On transpose alors aisément ce calcul dans le cadre uantiue. On se fixe un entier l, l 1, et 0 a <. La transformation de Fourier agit sur a ui est un l-ubit de la manière suivante : a 1 1 ( ) πac c c0 En clair, on appliue simplement l opérateur unitaire ui a pour matrice A dans la base de calcul où le terme (a, c) de A est, d après (.i) : (A ) (a,c) 1 ( ) πac (.ii) Il s agit donc de représenter cet opérateur comme une composition d un nombre polynômial en log de portes uantiues simples (voir 1.4). Pour réaliser A, nous n avons besoin ue de uelues opérateurs de base. Premièrement, on doit disposer des portes H j ui opèrent chacune sur le j ème ubit du l-ubit d entrée et ui a pour matrice H sur ce ubit (la porte d Hadamard, cf. 1.3.). Ensuite, il suffit d avoir les opérateurs S j,k ui opèrent chacun sur les j ème et k ème ubit d entrée, avec j < k, et ui a pour matrice sur ces ubits : e iθ j,k, où θ j,k π k j Et alors on obtient la porte A en mettant bout à bout uelues-unes bien choisies de ces portes : H l 1 ; S l,l 1 puis H l ; S l 3,l 1 ; S l 3,l puis H l 3... H 1 ; S 0,l 1... S 0,1 puis H 0 puis en prenant les ubits à l envers dans la réponse de ce circuit (le premier ubit de sortie correspond en fait à la coordonnée de A sur c pour c 1 et non pas c 0, et ainsi de suite) ceci se fait bien en un temps linéaire simplement avec un circuit de Swap puisu il faut intervertir l/ couples. Ainsi, on voit u on utilise l + l i1 i O(l ) O(log ) O(log ) portes, ce ui nous fait donc un algorithme polynômial en log. Reste à voir tout de même pouruoi cela calcule bien la transformée de Fourier u on attend. (.i) Algorithmiue uantiue : de l onentiel au polynômial

9 . Algorithme de Shor 9 Pour cela, regardons attentivement ce u il se passe sur un vecteur a a l 1... a 0, et plus précisément la coordonnée de A a sur un vecteur c c l 1... c 0. On s attend à retrouver (A ) (c,a). Premièrement, regardons l amplitude. Les S j,k ne la modifient pas, alors ue chaue application de H j la multiplie par 1. Il y a l log applications de H j, et donc l amplitude est multipliée par ( 1/ ) log l 1 Ainsi, le facteur multiplicatif dans (.ii) est acuis. Maintenant, regardons le changement de phase. Pour commencer, regardons l action des H j. Pour j fixé, H j a une action visible (multiplie par 1, ie. déphase de π) sur a seulement si a j vaut 1, et si on regarde le résultat sur une ligne où le j ème ubit de c vaut 1. Mais comme on inverse les ubits en fin d algorithme, cela se traduit par le fait ue c l 1 j 1. On peut voir cela en regardant l action de H j sur un l-ubit global : H j I I... I } {{ } H I... I } {{ } j 1 fois l j fois Donc si on dispose de a a l 1... a 0, d après les règles de calcul des produits tensoriels : H j a I a l 1 I a l I a j+1... H j a j I a j 1 I a 0 a l 1... a j+1 H j a j a j 1... a 0 Ainsi, on peut diviser l étude en deux cas : a j 0 a j 1 H j a 1 a + 1 a l 1... a j+1 1 a j 1... a 0 H j a 1 a l 1... a j+1 0 a j 1... a 0 1 a 1 a l 1... a j+1 0 a j 1... a e iπ a Ainsi, on remarue ue le seul cas où on observe un déphasage du vecteur initial est lorsue a j 1 et u on regarde le résultat sur un vecteur dont le j ème ubit vaut 1. On traduit ceci par c l j 1 1 dans notre cas. Le déphasage est de π, et c est donc bien le résultat annoncé ci-dessus. Observons à présent l action de S j,k. Par définition, on voit ue S j,k déphase selon c de a j c l k 1 1, et ne fait rien sinon. π k j si On peut maintenant recoller les morceaux et voir ce ue fait effectivement le total. On a un déphasage total Φ pour A a selon le vecteur c de la base de calcul de : Φ,a,c k l k 1 l πa j c l j 1 + j0 0 j k<l 0 j+k<l π l πac 0 j<k<l π k j a j c l 1 k π j k l a j c k l 1 l 1 j a j k c k j0 k0 π k j a j c l k 1 Or (A ) (a,c) (A ) (c,a) 1 e iφ,a,c, donc on a bien montré ue (A ) (a,c) 1 ( ) πac Algorithmiue uantiue : de l onentiel au polynômial

10 . Algorithme de Shor 10 Intuitivement, on voit bien où le calcul uantiue permet de gagner du temps : lorsu on appliue H j ou S j,k, l opérateur agit sur toutes les composantes en même temps. Plutôt u un long discours, voici la matrice de H lorsue l 3, où le vide représente des zéros. On voit bien ue des calculs sont faits en parallèle ( résultats superposés pour chaue composante en entrée ; plus les opérateurs s appliuent au vecteur de départ, plus l état est superposé, et donc plus on parallélise ) : I H I Malgré tout, il serait abusif de dire ue cet algorithme calcule effectivement la transformée de Fourier de a. En effet, si on sait ue A a est bien dans un état ui représente sa transformée de Fourier, on ne peut pas pour autant en extraire les différentes harmoniues, toujours à cause du problème de la mesure ui est probabiliste et ui projetterait le vecteur sur un vecteur de la base de calcul. Ainsi, elle ne peut servir ue comme étape intermédiaire dans un autre algorithme. C est précisément la manière dont on s en sert dans l algorithme de recherche de l ordre comme on va le voir..3 Recherche de l ordre d un élément.3.1 L algorithme Il est temps de faire effectivement l algorithme pour l étape 5 : Order-Finding Entrée : un entier N, et un entier x, 1 x N. Sortie : r l ordre de x dans Z/NZ. La taille de l entrée est donc log N. Premièrement, choisissons l tel ue l soit la puissance de telle ue n < n. On prend ensuite un l-ubit, auuel on pense comme deux registres d un l-ubit chacun, et ue l on place dans un état de superposition uniforme sur le premier registre : 1 1 a }{{} 0 }{{} a0 l-ubit l-ubit On peut réaliser cette superposition par exemple à l aide d une porte d Hadamard généralisée H n H n, en prenant H n 0. Ensuite, on utilise l algorithme d onentiation modulaire pour calculer x a mod N dans le second registre. Ce calcul peut être fait de façon réversible puisu on conserve a dans le premier registre. On obtient donc le nouvel état : 1 1 a x a mod N a0 Maintenant, on appliue la transformée de Fourier A au premier registre. C est bien une opération polynômiale en log N puisue log N log log + log N. D après (.i), on se retrouve à présent dans l état : ( ) iπac c x a mod N (.iii) a0 c0 Algorithmiue uantiue : de l onentiel au polynômial

11 . Algorithme de Shor 11 À présent, les calculs sont terminés et on fait une mesure de l état, récoltant un certain c x a mod N. Il ne reste plus u une étape de gestion des données (ui peut être réalisée sur un ordinateur classiue). On cherche d et r tels ue c d r 1 (on peut utiliser un algorithme de fractions continues pour cela, ui s exécute en temps polynômial). Si d et r (u on ne connaît pas) sont premiers entre eux, alors r r et on a trouvé l ordre de x. Sinon, il faut recommencer l algorithme (pour savoir si on doit recommencer, on teste simplement si x r 1 mod N). Comme on va le voir ci-dessous, la probabilté de recommencer est telle ue l on est certain à une très faible probabilité d erreur près ue le calcul va terminer au bout de O(log log r) exécutions. Et on sait ue r divise N par le théorème de Lagrange, donc c est aussi un O(log log N). Finalement, on a bien un algorithme ui s exécute en temps polynômial et ui prétend trouver l ordre de l élément x. Reste à voir pouruoi et comment dans la section suivante..3. Preuve de correction On se place après la mesure et il faut montrer ue les opérations u on fait ensuite mènent bien à r avec bonne probabilité. Pour plus de clarté, nous allons faire la preuve un petit peu à l envers par rapport à [Sho99]. On définit {rc} N comme la uantité telle ue (rc {rc} Supposons à présent u après la mesure, on ait : mod ) et {rc} ] /, /]. r {rc} r (.iv) c est-à-dire u il existe un entier d tel ue : ou encore r rc d r c d r 1 1 n On connaît c et ui sont fixés. Supposons u on ait deux fractions différentes d r (.v) avec r, r < N. Alors on a : d r d r 1 rr > 1 N et d autre part d r d r d r c + c d r 1 N et d r (.v) ui vérifient Ceci est absurde, donc il existe au plus une fraction ayant un dénominateur r < N ui vérifie (.v). On admettra u on peut trouver une telle fraction en temps polynômial grâce à un algorithme utilisant les fractions continues, on la note d0 r 0. Dans cette situation, si d et r sont premiers entre eux, alors d r est irréductible et l algorithme a donc donné la bonne fraction : d d 0 et r r 0, on a bien trouvé r. Dans le cas où d et r ne sont pas premiers entre eux, l algorithme a donné une version réduite de d/r et donc d 0 < d et r 0 < r : on n a pas trouvé r et il faut recommencer depuis le départ. Si on accepte u on est dans le cas de (.iv), regardons uelle probabilité on a d être dans le cas où d et r sont premiers entre eux. Pour voir ue cette étude ui a pris comme postulat (.iv) reflète bien la réalité, il faut estimer la probabilité u on a d arriver dans la bonne situation. Comptons donc le nombre d états c x k mod N ui nous mènent dans le cas où on obtient bien la valeur de r au bout du compte. Algorithmiue uantiue : de l onentiel au polynômial

12 . Algorithme de Shor 1 Il y a ϕ(r) valeurs de d telles ue d est premier avec r par définition de ϕ, où ϕ est la fonction d Euler. Et pour chacune de ces valeurs de d, il y a une valeur de c telle ue (.v) soit vérifiée. Pour chacune de ces valeurs de c, il y a r valeurs possibles pour (x k mod N) puisue r est l ordre de x. Donc il y a E rϕ(r) états possibles de c x k mod N ui nous permettent de trouver r. Reste à voir dans uelle mesure la condition (.iv) est vérifiée. D après (.iii), la probabilité de mesurer un état c x k mod N est : P c,k 1 a:x a x k [N] ( ) iπac Et comme l ordre de x est r, cette somme porte en fait sur les a tels ue a k mod r, puisue x a k 1 mod N. Alors si on écrit a br + k, on trouve : P c,k 1 1 k 1 b0 k 1 b0 ( ) iπ(br + k)c ( ) iπb{rc} Il s agit maintenant d évaluer cette probabilité. Pour cela, on va faire une estimation série-intégrale : k 1 b0 k 1 j0 k 1 j0 ( iπb{rc} [ [ ( iπj{rc} ) ) k 1 0 j+1 j ( ) iπb{rc} db ( ) db] iπb{rc} ( ) ( 1 ( iπj{rc} iπb{rc} 1 Or {rc} /, et donc on fait moins d un demi-tour, et pour b [0, 1]. Donc : Finalement, on a donc : k 1 j0 k 1 r [ 0 1 ( iπb{rc} ) db)] ( ) ( ( ))] iπj{rc} iπ{rc} 1 ( ( )) iπ{rc} 1 ) ( ) 1 iπ{rc} 1 k 1 b0 ( ) iπb{rc} 1 k 1 0 ( iπb{rc} ) db + O ( k 1 ( r ( iπ{rc} ) ) ) 1 À l aide d un développement limité, on voit ue si {rc} r/, alors le terme correctif est en O(1/). On l ignorera donc à partir de maintenant. Et après changement de variable on obtient : 1 r k 1 r/ 0 ( iπu{rc} r ) du Algorithmiue uantiue : de l onentiel au polynômial

13 . Algorithme de Shor 13 Comme k < r, on peut approximer la borne supérieure de l intégrale par 1 en ne faisant u une erreur en O(1/). Donc on se retrouve à traiter : I 1 r 1 0 ( ) iπu{rc} du r Une étude de fonction immédiate montre ue I πr pour {rc} r/. Et donc dans le cas où {rc} r/ (ui est (.iv)), on a P c,k 4 π r 1 3r pour assez grand, c est-à-dire pour N assez grand. Finalement, on vient de montrer u asymptotiuement, la probabilité de mesurer un état tel ue (.iv) soit vérifiée est plus grande ue 1 3r. Le fait ue ce soit asymptotiue n est nullement gênant : on appliue l algorithme de factorisation pour de grands nombres, sinon un test direct est faisable. Si on en revient à la conclusion précédente, la probabilité d être dans le cas où on trouve le bon r est donc supérieure, asymptotiuement, à E 3r rϕ(r) 3r ϕ(r) 3r. Or un théorème d arithmétiue nous dit u il existe une constante δ telle ue ϕ(r). Cela prouve ue l on trouve r effectivement au moins une δ δ r log log r fraction 3 log log r du temps. Donc en répétant l érience seulement O(log log r) O(log log N) fois, on est assuré d une bonne probabilité de succès. Algorithmiue uantiue : de l onentiel au polynômial

14 3. Algorithme de Grover 14 3 Algorithme de Grover Le cœur de l osé reposant sur l algorithme de Shor, nous ne donnerons u un aperçu rapide de l algorithme de Grover en nous limitant à énoncer les (belles) idées u il fait intervenir. 3.1 Position du problème On dispose d un ensemble de N éléments désordonnés, parmi lesuels on veut trouver un élément particulier (on peut facilement généraliser l algorithme pour trouver M N éléments). Sur un ordinateur classiue, dans une telle situation, on ne peut trouver l élément en moins de N/ opérations en moyenne. Ainsi, la recherche est linéaire : on regarde chaue objet jusu à tomber sur le bon. L algorithme de Grover permet de trouver cet élémént avec une (très) forte probabilité de succès en temps O( N). 3. Algorithme de Grover Le point essentiel de l algorithme de Grover est la parallélisation de calculs ue permet les ordinateurs uantiues. Comme d habitude, on n obtient pas tous les résultats puisu ils ne sont pas mesurables, mais ils sont calculés dans l état. Tout d abord, on se munit de deux registres. Le premier est de taille log N, le deuxième est simplement un ubit. On place le premier registre dans un état de superposition (u on a déjà croisé) : ψ 1 1 N 1 i N On définit la fonction indicatrice de la solution : { 1 si i est l élément cherché i0 f(i) 0 sinon L algorithme de Grover consiste à construire un opérateur unitaire U f tel ue : i0 U f ( i j ) i j f(i) où désigne le NAND (ie. la somme modulo ). Plaçons le deuxième registre dans l état ψ H Alors : U f ( i ψ ) U f ( i 0 ) U f ( i 1 ) i f(i) i 1 f(i) ( 1) f(i) i ψ Du coup, si on appliue ce calcul à notre état ψ 1, on obtient : U f ( ψ 1 ψ ) N 1 1 U f ( i ψ ) N i0 N 1 1 ( 1) f(i) i ψ N i0 Ainsi, on a différencié l état recherché puisue c est la seule coordonnée de R U f ( ψ 1 ψ ) ui est négative. On a donc bien évalué la fonction f en parallèle sur les N valeurs. Bien entendu, comme toujours, on n a toujours pas accès à l élément recherché puisu une mesure ne nous donnerait aucune Algorithmiue uantiue : de l onentiel au polynômial

15 3. Algorithme de Grover 15 information (on a une chance sur N de tomber sur la bonne valeur, puisue toutes les coordonnées ont même module). La suite de l algorithme de Grover consiste à manipuler cet état R pour accentuer l amplitude de la coordonnée négative au détrimens des positives. On peut montrer u au bout de O( N) opérations, on a assez accentué la coordonnée cherchée pour ue la probabilité de l avoir dans une mesure soit excellente. On se réfèrera à [Gro96] pour le premier article ui décrit l algorithme, à [LMP03] et [NC00, p. 48] pour une version mieux liuée accompagnée d illustrations parlantes. [Gro01] liue la génèse de cet algorithme et le cheminement pour arriver jusu à lui. Algorithmiue uantiue : de l onentiel au polynômial

16 Références [Fim00] Pierre Fima. Portes et circuits uantiues. Accessible sur le site du groupe de travail : http ://www.dma.ens.fr/edition/notesgdt/gt_calculuantiue, 000. [Gro96] [Gro01] L.K Grover. A fast uantum mechanical algorithm for database search. Proc. 8th annual ACM Symposium on the Theory of computing (STOC), pages pp. 1 19, May L.K Grover. From schrödinger s euation to the uantum search algorithm. Trouvable sur arxiv, 001. [LMP03] C. Lavor, L.R.U Mansur, and R. Portugal. Grover s algorithm : uantum database search. Trouvable sur arxiv, 003. [NC00] [Sho99] Michael L. Nielsen and Isaac L. Chuang. Quantum computation and uantum information. Cambridge, 000. P.W. Shor. Polynomial-time algorithms for prime factorization and discrete logarithms on a uantum computer. SIAM Review, 41() :pp , Jun

Exercices - Polynômes : corrigé. Opérations sur les polynômes

Exercices - Polynômes : corrigé. Opérations sur les polynômes Opérations sur les polynômes Exercice 1 - Carré - L1/Math Sup - Si P = Q est le carré d un polynôme, alors Q est nécessairement de degré, et son coefficient dominant est égal à 1. On peut donc écrire Q(X)

Plus en détail

Sur l algorithme RSA

Sur l algorithme RSA Sur l algorithme RSA Le RSA a été inventé par Rivest, Shamir et Adleman en 1978. C est l exemple le plus courant de cryptographie asymétrique, toujours considéré comme sûr, avec la technologie actuelle,

Plus en détail

Langage C et aléa, séance 4

Langage C et aléa, séance 4 Langage C et aléa, séance 4 École des Mines de Nancy, séminaire d option Ingénierie Mathématique Frédéric Sur http://www.loria.fr/ sur/enseignement/courscalea/ 1 La bibliothèque GMP Nous allons utiliser

Plus en détail

Arithmétique modulaire et applications à la cryptographie

Arithmétique modulaire et applications à la cryptographie Arithmétique modulaire et applications à la cryptographie Etant donné un entier n, l arithmétique modulo n consiste à faire des calculs sur les restes dans la division euclidienne des entiers par n. Exemples

Plus en détail

Introduction à l étude des Corps Finis

Introduction à l étude des Corps Finis Introduction à l étude des Corps Finis Robert Rolland (Résumé) 1 Introduction La structure de corps fini intervient dans divers domaines des mathématiques, en particulier dans la théorie de Galois sur

Plus en détail

Université Pierre et Marie Curie - Licence Informatique 2014-2015 Cours LI 352 - Industrie Informatique et son Environnement Économique

Université Pierre et Marie Curie - Licence Informatique 2014-2015 Cours LI 352 - Industrie Informatique et son Environnement Économique Université Pierre et Marie Curie - Licence Informatiue 2014-2015 Cours LI 352 - Industrie Informatiue et son Environnement Économiue TD 5 : CORRIGE 1 Offre à court terme (en CPP) 1.1 La condition de maximisation

Plus en détail

UEO11 COURS/TD 1. nombres entiers et réels codés en mémoire centrale. Caractères alphabétiques et caractères spéciaux.

UEO11 COURS/TD 1. nombres entiers et réels codés en mémoire centrale. Caractères alphabétiques et caractères spéciaux. UEO11 COURS/TD 1 Contenu du semestre Cours et TDs sont intégrés L objectif de ce cours équivalent a 6h de cours, 10h de TD et 8h de TP est le suivant : - initiation à l algorithmique - notions de bases

Plus en détail

Espaces vectoriels et applications linéaires

Espaces vectoriels et applications linéaires Espaces vectoriels et applications linéaires Exercice 1 On considère l'ensemble E des matrices carrées d'ordre 3 défini par,,, 1) Montrer que est un sous-espace vectoriel de l'espace vectoriel des matrices

Plus en détail

Notes de cours L1 MATH120. Hervé Le Dret

Notes de cours L1 MATH120. Hervé Le Dret Notes de cours L1 MATH120 Hervé Le Dret 18 octobre 2004 40 Chapitre 3 Vecteurs dans R m Dans ce chapitre, nous allons nous familiariser avec la notion de vecteur du point de vue algébrique. Nous reviendrons

Plus en détail

Calculateur quantique: factorisation des entiers

Calculateur quantique: factorisation des entiers Calculateur quantique: factorisation des entiers Plan Introduction Difficulté de la factorisation des entiers Cryptographie et la factorisation Exemple RSA L'informatique quantique L'algorithme quantique

Plus en détail

est diagonale si tous ses coefficients en dehors de la diagonale sont nuls.

est diagonale si tous ses coefficients en dehors de la diagonale sont nuls. Diagonalisation des matrices http://www.math-info.univ-paris5.fr/~ycart/mc2/node2.html Sous-sections Matrices diagonales Valeurs propres et vecteurs propres Polynôme caractéristique Exemples Illustration

Plus en détail

Cryptologie et physique quantique : Espoirs et menaces. Objectifs 2. distribué sous licence creative common détails sur www.matthieuamiguet.

Cryptologie et physique quantique : Espoirs et menaces. Objectifs 2. distribué sous licence creative common détails sur www.matthieuamiguet. : Espoirs et menaces Matthieu Amiguet 2005 2006 Objectifs 2 Obtenir une compréhension de base des principes régissant le calcul quantique et la cryptographie quantique Comprendre les implications sur la

Plus en détail

Les défis de l ordinateur quantique

Les défis de l ordinateur quantique Les défis de l ordinateur quantique Frédéric Magniez http://www.lri.fr/quantum Vers la nanotechnologie 2 Fin de la loi de Moore? "No exponential is forever. Your job is to delay forever.", Andrew Gordon

Plus en détail

Licence de Sciences et Technologies. Fiche de cours 1 - Nombres réels.

Licence de Sciences et Technologies. Fiche de cours 1 - Nombres réels. Licence de Sciences et Technologies EM21 - Analyse Fiche de cours 1 - Nombres réels. On connaît les ensembles suivants, tous munis d une addition, d une multiplication, et d une relation d ordre compatibles

Plus en détail

TABLE DES MATIÈRES CHAPITRE I. Les quanta s invitent

TABLE DES MATIÈRES CHAPITRE I. Les quanta s invitent TABLE DES MATIÈRES AVANT-PROPOS III CHAPITRE I Les quanta s invitent I-1. L Univers est en constante évolution 2 I-2. L âge de l Univers 4 I-2.1. Le rayonnement fossile témoigne 4 I-2.2. Les amas globulaires

Plus en détail

MÉTHODE ÉTABLISSEMENT DES TABLEAUX. 4,55 e. Les Guides pratiques de La FFt

MÉTHODE ÉTABLISSEMENT DES TABLEAUX. 4,55 e. Les Guides pratiques de La FFt D Les Guides pratiues de La FFt MÉTHODE ÉTABLISSEMENT DES TABLEAUX 2013 FFT/Dir. de la Compétition e/dir. Communication et du Marketing Imprimé sur papier recyclé 4,55 e ISBN 2-907 267-65-5 Méthode d établissement

Plus en détail

Machine de Turing. Informatique II Algorithmique 1

Machine de Turing. Informatique II Algorithmique 1 Machine de Turing Nous avons vu qu un programme peut être considéré comme la décomposition de la tâche à réaliser en une séquence d instructions élémentaires (manipulant des données élémentaires) compréhensibles

Plus en détail

Algorithmes Probabilistes COMPLEX

Algorithmes Probabilistes COMPLEX Algorithmes Probabilistes COMPLEX Ludovic Perret Université Pierre et Marie Curie (Paris VI) ludovic.perret@lip6.fr Introduction Algorithme Il retourne toujours une solution correcte, et pour une même

Plus en détail

Support du cours de Probabilités IUT d Orléans, Département d informatique

Support du cours de Probabilités IUT d Orléans, Département d informatique Support du cours de Probabilités IUT d Orléans, Département d informatique Pierre Andreoletti IUT d Orléans Laboratoire MAPMO (Bât. de Mathématiques UFR Sciences) - Bureau 126 email: pierre.andreoletti@univ-orleans.fr

Plus en détail

Chiffrement à clef publique ou asymétrique

Chiffrement à clef publique ou asymétrique Université de Limoges, XLIM-DMI, 123, Av. Albert Thomas 87060 Limoges Cedex France 05.55.45.73.10 pierre-louis.cayrel@xlim.fr Licence professionnelle Administrateur de Réseaux et de Bases de Données IUT

Plus en détail

VI- Des transistors aux portes logiques. Conception de circuits

VI- Des transistors aux portes logiques. Conception de circuits 1 VI- Des transistors aux portes logiques. Conception de circuits Nous savons que l ordinateur traite uniquement des instructions écrites en binaire avec des 0 et des 1. Nous savons aussi qu il est formé

Plus en détail

Architecture des calculateurs

Architecture des calculateurs Chapitre 1 Architecture des calculateurs 1.1 Introduction Ce paragraphe n a pas la prétention de présenter un cours d informatique. D une manière générale, seuls les caractéristiques architecturales qui

Plus en détail

Arithmétique binaire. Chapitre. 5.1 Notions. 5.1.1 Bit. 5.1.2 Mot

Arithmétique binaire. Chapitre. 5.1 Notions. 5.1.1 Bit. 5.1.2 Mot Chapitre 5 Arithmétique binaire L es codes sont manipulés au quotidien sans qu on s en rende compte, et leur compréhension est quasi instinctive. Le seul fait de lire fait appel au codage alphabétique,

Plus en détail

Combien de fois faut-il battre un jeu de cartes?

Combien de fois faut-il battre un jeu de cartes? Combien de fois faut-il battre un jeu de cartes? Ce texte est tiré d un article de D. Bayer et P. Diaconis Trailing the dovetail shuffle to its lair Ann. Appl. Prob. 992, vol 2, No 2, 294-33. Introduction

Plus en détail

Chapitre 2 : Représentation des nombres en machine

Chapitre 2 : Représentation des nombres en machine Chapitre 2 : Représentation des nombres en machine Introduction La mémoire des ordinateurs est constituée d une multitude de petits circuits électroniques qui ne peuvent être que dans deux états : sous

Plus en détail

Nombres premiers. Comment reconnaître un nombre premier? Mais...

Nombres premiers. Comment reconnaître un nombre premier? Mais... Introduction Nombres premiers Nombres premiers Rutger Noot IRMA Université de Strasbourg et CNRS Le 19 janvier 2011 IREM Strasbourg Definition Un nombre premier est un entier naturel p > 1 ayant exactement

Plus en détail

Chapitre VI - Méthodes de factorisation

Chapitre VI - Méthodes de factorisation Université Pierre et Marie Curie Cours de cryptographie MM067-2012/13 Alain Kraus Chapitre VI - Méthodes de factorisation Le problème de la factorisation des grands entiers est a priori très difficile.

Plus en détail

Représentation des Nombres

Représentation des Nombres Chapitre 5 Représentation des Nombres 5. Representation des entiers 5.. Principe des représentations en base b Base L entier écrit 344 correspond a 3 mille + 4 cent + dix + 4. Plus généralement a n a n...

Plus en détail

avec des nombres entiers

avec des nombres entiers Calculer avec des nombres entiers Effectuez les calculs suivants.. + 9 + 9. Calculez. 9 9 Calculez le quotient et le rest. : : : : 0 :. : : 9 : : 9 0 : 0. 9 9 0 9. Calculez. 9 0 9. : : 0 : 9 : :. : : 0

Plus en détail

Méthodes de Monte-Carlo Simulation de grandeurs aléatoires

Méthodes de Monte-Carlo Simulation de grandeurs aléatoires Méthodes de Monte-Carlo Simulation de grandeurs aléatoires Master Modélisation et Simulation / ENSTA TD 1 2012-2013 Les méthodes dites de Monte-Carlo consistent en des simulations expérimentales de problèmes

Plus en détail

Cours d introduction à l informatique. Partie 2 : Comment écrire un algorithme? Qu est-ce qu une variable? Expressions et instructions

Cours d introduction à l informatique. Partie 2 : Comment écrire un algorithme? Qu est-ce qu une variable? Expressions et instructions Cours d introduction à l informatique Partie 2 : Comment écrire un algorithme? Qu est-ce qu une variable? Expressions et instructions Qu est-ce qu un Une recette de cuisine algorithme? Protocole expérimental

Plus en détail

Récépissé de depôt d une demande de permis de démolir

Récépissé de depôt d une demande de permis de démolir Récépissé de depôt d une demande de permis de démolir Madame, Monsieur, Vous avez déposé une demande de permis de démolir. Le délai d instruction de votre dossier est de DEUX MOIS et, si vous ne recevez

Plus en détail

Mathématiques assistées par ordinateur

Mathématiques assistées par ordinateur Mathématiques assistées par ordinateur Chapitre 4 : Racines des polynômes réels et complexes Michael Eisermann Mat249, DLST L2S4, Année 2008-2009 www-fourier.ujf-grenoble.fr/ eiserm/cours # mao Document

Plus en détail

Fondements de l informatique: Examen Durée: 3h

Fondements de l informatique: Examen Durée: 3h École polytechnique X2013 INF412 Fondements de l informatique Fondements de l informatique: Examen Durée: 3h Sujet proposé par Olivier Bournez Version 3 (corrigé) L énoncé comporte 4 parties (sections),

Plus en détail

VIII Relations d ordre

VIII Relations d ordre VIII Relations d ordre 20 février 2015 Dans tout ce chapitre, E est un ensemble. 1. Relations binaires Définition 1.0.1. On appelle relation binaire sur E tout triplet R = (E, E, Γ) où Γ est une partie

Plus en détail

Conversion d un entier. Méthode par soustraction

Conversion d un entier. Méthode par soustraction Conversion entre bases Pour passer d un nombre en base b à un nombre en base 10, on utilise l écriture polynomiale décrite précédemment. Pour passer d un nombre en base 10 à un nombre en base b, on peut

Plus en détail

Arithmétique. Préambule. 1. Division euclidienne et pgcd. Exo7. 1.1. Divisibilité et division euclidienne

Arithmétique. Préambule. 1. Division euclidienne et pgcd. Exo7. 1.1. Divisibilité et division euclidienne Exo7 Arithmétique Vidéo partie 1. Division euclidienne et pgcd Vidéo partie 2. Théorème de Bézout Vidéo partie 3. Nombres premiers Vidéo partie 4. Congruences Exercices Arithmétique dans Z Préambule Une

Plus en détail

CALCUL SCIENTIFIQUE. 1 Erreur absolue et erreur relative 2. 2 Représentation des nombres sur ordinateur 3

CALCUL SCIENTIFIQUE. 1 Erreur absolue et erreur relative 2. 2 Représentation des nombres sur ordinateur 3 MTH1504 2011-2012 CALCUL SCIENTIFIQUE Table des matières 1 Erreur absolue et erreur relative 2 2 Représentation des nombres sur ordinateur 3 3 Arithmétique flottante 4 3.1 Absorption........................................

Plus en détail

PAD - Notes de cours. S. Rigal, D. Ruiz, et J. C. Satgé

PAD - Notes de cours. S. Rigal, D. Ruiz, et J. C. Satgé ALGÈBRE PAD - Notes de cours S. Rigal, D. Ruiz, et J. C. Satgé November 23, 2006 Table des Matières Espaces vectoriels Applications linéaires - Espaces vectoriels............................... 3 -. Approche

Plus en détail

Peter W. Shor, Prix Nevanlinna 1998

Peter W. Shor, Prix Nevanlinna 1998 Peter W. Shor, Prix Nevanlinna 1998 Franck LEPRÉVOST (Institut de Mathématiques de Jussieu) Introduction L e prix Nevanlinna 1998 a été remis à Peter W. Shor au cours du congrès international des mathématiciens

Plus en détail

Chapitre IV Bases et dimension d un espace vectoriel

Chapitre IV Bases et dimension d un espace vectoriel Chapitre IV Bases et dimension d un espace vectoriel Objectif : Nous allons voir comment fabriquer des systèmes de coordonnées pour les vecteurs d un espace vectoriel général. Dans ce chapitre désigne

Plus en détail

À propos des matrices échelonnées

À propos des matrices échelonnées À propos des matrices échelonnées Antoine Ducros appendice au cours de Géométrie affine et euclidienne dispensé à l Université Paris 6 Année universitaire 2011-2012 Introduction Soit k un corps, soit E

Plus en détail

Description du module GENERATEUR rev.2 1. Rôle du module

Description du module GENERATEUR rev.2 1. Rôle du module Description du module GENERATEUR rev.2 1. Rôle du module Ce module doit implémenter un générateur de «points aléatoires» selon une répartition de densité donnée. Tout d abord, le générateur doit être initialisé

Plus en détail

Polynômes. Motivation. 1. Définitions. Exo7. 1.1. Définitions

Polynômes. Motivation. 1. Définitions. Exo7. 1.1. Définitions Exo7 Polynômes Vidéo partie 1. Définitions Vidéo partie 2. Arithmétique des polynômes Vidéo partie 3. Racine d'un polynôme, factorisation Vidéo partie 4. Fractions rationnelles Exercices Polynômes Exercices

Plus en détail

Equations polynomiales modulaires et Conjecture de Goldbach

Equations polynomiales modulaires et Conjecture de Goldbach Equations polynomiales modulaires et Conjecture de Goldbach Denise Vella-Chemla 5/2/2013 La conjecture de Goldbach stipule que tout nombre pair supérieur à 2 est la somme de deux nombres premiers. 1 Modéliser

Plus en détail

Quelques tests de primalité

Quelques tests de primalité Quelques tests de primalité J.-M. Couveignes (merci à T. Ezome et R. Lercier) Institut de Mathématiques de Bordeaux & INRIA Bordeaux Sud-Ouest Jean-Marc.Couveignes@u-bordeaux.fr École de printemps C2 Mars

Plus en détail

Le corps R des nombres réels

Le corps R des nombres réels Le corps R des nombres réels. Construction de R à l aide des suites de Cauchy de nombres rationnels On explique brièvement dans ce paragraphe comment construire le corps R des nombres réels à partir du

Plus en détail

Demande de. Permis de démolir P D. Dpt Commune Année N o de dossier. Dossier transmis : q à l Architecte des Bâtiments de France

Demande de. Permis de démolir P D. Dpt Commune Année N o de dossier. Dossier transmis : q à l Architecte des Bâtiments de France Demande de Permis de démolir N 13405*02 1/3 Vous pouvez utiliser ce formulaire si : Vous démolissez totalement ou partiellement un bâtiment protégé ou situé dans un secteur où a été institué le permis

Plus en détail

Demande de. Permis de démolir. Dpt Commune Année N o de dossier

Demande de. Permis de démolir. Dpt Commune Année N o de dossier Demande de Permis de démolir N 13405*01 1/2 * Informations nécessaires à l instruction du permis Informations nécessaires en application de l article R. 431-34 du code de l urbanisme Vous pouvez utiliser

Plus en détail

Chapitre 10 Algorithmes probabilistes

Chapitre 10 Algorithmes probabilistes Chapitre 10 Algorithmes probabilistes Jouent à pile ou face Se comportent différemment lorsque exécutés deux fois sur un même exemplaire Défient parfois l intuition 1 Première surprise: le hasard peut

Plus en détail

Algorithmique. Mode d application

Algorithmique. Mode d application I - Généralités Algorithmique T ale S Définition: Un algorithme est une suite finie d instructions permettant la résolution systématique d un problème donné. Un algorithme peut-être utilisé pour décrire

Plus en détail

CRYPTOGRAPHIE. Chiffrement asymétrique. E. Bresson. Emmanuel.Bresson@sgdn.gouv.fr. SGDN/DCSSI Laboratoire de cryptographie

CRYPTOGRAPHIE. Chiffrement asymétrique. E. Bresson. Emmanuel.Bresson@sgdn.gouv.fr. SGDN/DCSSI Laboratoire de cryptographie CRYPTOGRAPHIE Chiffrement asymétrique E. Bresson SGDN/DCSSI Laboratoire de cryptographie Emmanuel.Bresson@sgdn.gouv.fr I. CHIFFREMENT ASYMÉTRIQUE I.1. CHIFFREMENT À CLÉ PUBLIQUE Organisation de la section

Plus en détail

Cours élémentaire d arithmétique. Valentin Vinoles

Cours élémentaire d arithmétique. Valentin Vinoles Cours élémentaire d arithmétique Valentin Vinoles décembre 2009 Introduction «Wir müssen wissen. Wir werden wissen.» (Nous devons savoir. Nous saurons.) David Hilbert Voici un document présentant les principales

Plus en détail

Complément d information concernant la fiche de concordance

Complément d information concernant la fiche de concordance Sommaire SAMEDI 0 DÉCEMBRE 20 Vous trouverez dans ce dossier les documents correspondants à ce que nous allons travailler aujourd hui : La fiche de concordance pour le DAEU ; Page 2 Un rappel de cours

Plus en détail

MULTIPLICATION RAPIDE : KARATSUBA ET FFT

MULTIPLICATION RAPIDE : KARATSUBA ET FFT MULTIPLICATION RAPIDE : KARATSUBA ET FFT 1. Introduction La multiplication est une opération élémentaire qu on utilise évidemment très souvent, et la rapidité des nombreux algorithmes qui l utilisent dépend

Plus en détail

DEFINITION et PROPRIETES des PRINCIPALES LOIS de PROBABILITES

DEFINITION et PROPRIETES des PRINCIPALES LOIS de PROBABILITES Université Paris1, Licence 00-003, Mme Pradel : Principales lois de Probabilité 1 DEFINITION et PROPRIETES des PRINCIPALES LOIS de PROBABILITES Notations Si la variable aléatoire X suit la loi L, onnoterax

Plus en détail

Calculs approchés d un point fixe

Calculs approchés d un point fixe M11 ÉPREUVE COMMUNE DE TIPE 2013 - Partie D TITRE : Calculs approchés d un point fixe Temps de préparation :.. 2 h 15 minutes Temps de présentation devant les examinateurs :.10 minutes Dialogue avec les

Plus en détail

5 Analyse de Fourier. 5.1 Aspects théoriques. 5.1.1 Analyse de Fourier

5 Analyse de Fourier. 5.1 Aspects théoriques. 5.1.1 Analyse de Fourier Responsable : J.Roussel Objectif Ce TP est une initiation à l analyse de Fourier. Nous verrons notamment comment une analyse spectrale permet de remonter à la courbe de réponse d un filtre électrique.

Plus en détail

Complexité des algorithmes

Complexité des algorithmes Complexité des algorithmes par Robert Rolland R. Rolland, Aix Marseille Université, Institut de Mathématiques de Marseille I2M Luminy Case 930, F13288 Marseille CEDEX 9 e-mail : robert.rolland@acrypta.fr

Plus en détail

Fondamentaux pour les Mathématiques et l Informatique :

Fondamentaux pour les Mathématiques et l Informatique : Université Bordeaux 1 Licence de Sciences, Technologies, Santé Mathématiques, Informatique, Sciences de la Matière et Ingénierie M1MI1002 Fondamentaux pour les Mathématiques et l Informatique Fondamentaux

Plus en détail

L essentiel du cours 2014/2015 Terminale S Spécialité Maths, Lycée Français de Valence

L essentiel du cours 2014/2015 Terminale S Spécialité Maths, Lycée Français de Valence L essentiel du cours 2014/2015 Terminale S Spécialité Maths, Lycée Français de Valence Sommaire 1. Arithmétique 2 1.1. Division euclidienne......................... 2 1.2. Congruences.............................

Plus en détail

Correction TD de cryptographie n o 1

Correction TD de cryptographie n o 1 Sécurité / Cryptologie Correction TD de cryptographie n o 1 Ce TD survole les différents concepts vus en cours 1 Se familiariser avec les ordres de grandeur Exercice 1. La force brute Le facteur de travail

Plus en détail

Chapitre I. Probabilités. Bcpst 1 2 novembre 2015. I Exemples d expériences aléatoires

Chapitre I. Probabilités. Bcpst 1 2 novembre 2015. I Exemples d expériences aléatoires Chapitre I Probabilités Bcpst 1 2 novembre 2015 I Exemples d expériences aléatoires Une expérience aléatoire est une expérience dont on ne peut pas prédire le résultat avant de l avoir réalisée... ce qui

Plus en détail

Mathématiques appliquées à l informatique

Mathématiques appliquées à l informatique Mathématiques appliquées à l informatique Jean-Etienne Poirrier 15 décembre 2005 Table des matières 1 Matrices 3 1.1 Définition......................................... 3 1.2 Les différents types de matrices.............................

Plus en détail

IUT de Colmar - Département RT 1ière année. Numération

IUT de Colmar - Département RT 1ière année. Numération IUT de Colmar - Département RT 1ière année. Numération 1 Laurent MURA. SOMMAIRE 1. Les différents systèmes 2. Les différentes conversions 3. Quelques systèmes de codage 4. L arithmétique binaire 2 IUT

Plus en détail

Outils d analyse fonctionnelle Cours 5 Théorie spectrale

Outils d analyse fonctionnelle Cours 5 Théorie spectrale Outils d analyse fonctionnelle Cours 5 Théorie spectrale 22 septembre 2015 Généralités Dans tout ce qui suit V désigne un espace de Hilbert réel muni d un produit scalaire x, y. Définition Soit A une application

Plus en détail

Actions de groupes. Exemples et applications

Actions de groupes. Exemples et applications 4 Actions de groupes. Exemples et applications G, ) est un groupe multiplicatif et on note ou G si nécessaire) l élément neutre. E est un ensemble non vide et S E) est le groupe des permutations de E.

Plus en détail

Terminale S Spécialité Cours : DIVISIBILITE ET CONGRUENCES DANS.

Terminale S Spécialité Cours : DIVISIBILITE ET CONGRUENCES DANS. A la fin de ce chapitre vous devez être capable de : connaître différents procédés pour établir une divisibilité : utilisation de la définition, utilisation d identités remarquables, disjonction des cas,

Plus en détail

Cours 1: Introduction à l algorithmique

Cours 1: Introduction à l algorithmique 1 Cours 1: Introduction à l algorithmique Olivier Bournez bournez@lix.polytechnique.fr LIX, Ecole Polytechnique 2011-12 Algorithmique 2 Aujourd hui Calcul de x n Maximum Complexité d un problème Problème

Plus en détail

Calcul Scientifique L2 Maths Notes de Cours

Calcul Scientifique L2 Maths Notes de Cours Calcul Scientifique L2 Maths Notes de Cours Le but de ce cours est d aborder le Calcul Scientifique, discipline arrivant en bout d une d une chaîne regroupant divers concepts tels que la modélisation et

Plus en détail

Cours de mathématiques fondamentales 1 année, DUT GEA. Mourad Abouzaïd

Cours de mathématiques fondamentales 1 année, DUT GEA. Mourad Abouzaïd Cours de mathématiques fondamentales 1 année, DUT GEA Mourad Abouzaïd 9 décembre 2008 2 Table des matières Introduction 7 0 Rappels d algèbre élémentaire 9 0.1 Calcul algébrique................................

Plus en détail

Exercices théoriques

Exercices théoriques École normale supérieure 2008-2009 Département d informatique Algorithmique et Programmation TD n 9 : Programmation Linéaire Avec Solutions Exercices théoriques Rappel : Dual d un programme linéaire cf.

Plus en détail

Séries de Fourier. T f (x) exp 2iπn x T dx, n Z. T/2 f (x) cos ( ) f (x) dx a n (f) = 2 T. f (x) cos 2πn x )

Séries de Fourier. T f (x) exp 2iπn x T dx, n Z. T/2 f (x) cos ( ) f (x) dx a n (f) = 2 T. f (x) cos 2πn x ) Séries de Fourier Les séries de Fourier constituent un outil fondamental de la théorie du signal. Il donne lieu à des prolongements et des extensions nombreux. Les séries de Fourier permettent à la fois

Plus en détail

ARITHMETIQUE EXERCICES CORRIGES

ARITHMETIQUE EXERCICES CORRIGES Exercice n 1. ARITHMETIQUE EXERCICES CORRIGES 5 1) Donner l écriture de a) A = 1 b) A = 1001 c) A = 1 ) Ecrire la suite des 10 premiers nombres entiers en base deux. En base quatre ) En base douze, on

Plus en détail

Représentation de l information en binaire

Représentation de l information en binaire Représentation de l information en binaire Les ordinateurs sont capables d effectuer de nombreuses opérations sur de nombreux types de contenus (images, vidéos, textes, sons,...). Cependant, quel que soit

Plus en détail

I. Polynômes de Tchebychev

I. Polynômes de Tchebychev Première épreuve CCP filière MP I. Polynômes de Tchebychev ( ) 1.a) Tout réel θ vérifie cos(nθ) = Re ((cos θ + i sin θ) n ) = Re Cn k (cos θ) n k i k (sin θ) k Or i k est réel quand k est pair et imaginaire

Plus en détail

Probabilités sur un univers fini

Probabilités sur un univers fini [http://mp.cpgedupuydelome.fr] édité le 7 août 204 Enoncés Probabilités sur un univers fini Evènements et langage ensembliste A quelle condition sur (a, b, c, d) ]0, [ 4 existe-t-il une probabilité P sur

Plus en détail

Cryptographie et fonctions à sens unique

Cryptographie et fonctions à sens unique Cryptographie et fonctions à sens unique Pierre Rouchon Centre Automatique et Systèmes Mines ParisTech pierre.rouchon@mines-paristech.fr Octobre 2012 P.Rouchon (Mines ParisTech) Cryptographie et fonctions

Plus en détail

Cryptographie à clé publique

Cryptographie à clé publique Les systèmes à clé publique Cryptographie à clé publique Systèmes symétriques : même clé pour le chiffrement et le déchiffrement Problèmes : transmission de la clé 1 clé par destinataire Système asymétrique

Plus en détail

GEL-7064 : Théorie et pratique des codes correcteurs Codes cycliques Notes de cours

GEL-7064 : Théorie et pratique des codes correcteurs Codes cycliques Notes de cours linéaires GEL-7064 : Théorie et pratique des codes correcteurs Notes de cours Département de génie électrique et de génie informatique Université Laval jean-yves.chouinard@gel.ulaval.ca 12 février 2013

Plus en détail

Licence STIC, Semestre 1 Algorithmique & Programmation 1

Licence STIC, Semestre 1 Algorithmique & Programmation 1 Licence STIC, Semestre 1 Algorithmique & Programmation 1 Exercices Alexandre Tessier 1 Introduction 2 instruction de sortie 3 expressions 4 variable informatique 5 séquence d instructions, trace Exercice

Plus en détail

Cahier de vacances - Préparation à la Première S

Cahier de vacances - Préparation à la Première S Cahier de vacances - Préparation à la Première S Ce cahier est destiné à vous permettre d aborder le plus sereinement possible la classe de Première S. Je vous conseille de le travailler pendant les 0

Plus en détail

Matrices. 1. Définition. Exo7. 1.1. Définition

Matrices. 1. Définition. Exo7. 1.1. Définition Exo7 Matrices Vidéo partie 1 Définition Vidéo partie 2 Multiplication de matrices Vidéo partie 3 Inverse d'une matrice : définition Vidéo partie 4 Inverse d'une matrice : calcul Vidéo partie 5 Inverse

Plus en détail

Fonctions homographiques

Fonctions homographiques Fonctions homographiques On donne ci-dessous deux définitions des fonctions homographiques, et on montre que ces deux définitions sont équivalentes. On décrit la courbe représentative d une fonction homographique.

Plus en détail

Récépissé de depôt d une déclaration préalable

Récépissé de depôt d une déclaration préalable Récépissé de depôt d une déclaration préalable MINISTÈRE CHARGÉ Madame, Monsieur, Vous avez déposé une déclaration préalable à des travaux ou aménagements non soumis à permis. Le délai d instruction de

Plus en détail

TROISI` EME PARTIE L ALG` EBRE

TROISI` EME PARTIE L ALG` EBRE TROISIÈME PARTIE L ALGÈBRE Chapitre 8 L algèbre babylonienne Sommaire 8.1 Présentation..................... 135 8.2 Résolution d équations du second degré..... 135 8.3 Bibliographie.....................

Plus en détail

Il se servit un verre de vin blanc,

Il se servit un verre de vin blanc, Les ordinateurs quantiques affrontent le chaos Le parallélisme autorisé par la mécanique quantique permet d effectuer des calculs d une manière radicalement nouvelle. Un ordinateur quantique fondé sur

Plus en détail

Cours de spécialité mathématiques en Terminale ES

Cours de spécialité mathématiques en Terminale ES Cours de spécialité mathématiques en Terminale ES O. Lader 2014/2015 Lycée Jean Vilar Spé math terminale ES 2014/2015 1 / 51 Systèmes linéaires Deux exemples de systèmes linéaires à deux équations et deux

Plus en détail

5 Analyse de Fourier. 5.1 Aspects théoriques. 5.1.1 Analyse de Fourier

5 Analyse de Fourier. 5.1 Aspects théoriques. 5.1.1 Analyse de Fourier Responsable : J.Roussel Objectif Ce TP est une initiation à l analyse de Fourier. Nous verrons notamment comment une analyse spectrale permet de remonter à la courbe de réponse d un filtre électrique.

Plus en détail

Le traitement du signal

Le traitement du signal FICHE N 47 Le traitement du signal FFT, DFT ET IFT Jean-aptiste Joseph Fourier (1768-1830), né à uxerre, mathématicien et physicien français, auteur de la Théorie analytique de la chaleur (1822) : la transformée

Plus en détail

Chaîne d additions ATTENTION!

Chaîne d additions ATTENTION! Chaîne d additions Épreuve pratique d algorithmique et de programmation Concours commun des écoles normales supérieures Durée de l épreuve: 3 heures 30 minutes Juin 2012 ATTENTION! N oubliez en aucun cas

Plus en détail

Résolution de systèmes linéaires par des méthodes directes

Résolution de systèmes linéaires par des méthodes directes Résolution de systèmes linéaires par des méthodes directes J. Erhel Janvier 2014 1 Inverse d une matrice carrée et systèmes linéaires Ce paragraphe a pour objet les matrices carrées et les systèmes linéaires.

Plus en détail

Chapitre 3 RÉGRESSION ET CORRÉLATION

Chapitre 3 RÉGRESSION ET CORRÉLATION Statistique appliquée à la gestion et au marketing http://foucart.thierry.free.fr/statpc Chapitre 3 RÉGRESSION ET CORRÉLATION La corrélation est une notion couramment utilisée dans toutes les applications

Plus en détail

On suppose l existence d un générateur de nombres aléatoires dont l utilisation se fait à coût unitaire.

On suppose l existence d un générateur de nombres aléatoires dont l utilisation se fait à coût unitaire. 8INF430 Algorithmes probabilistes 1 Générateur pseudo aléatoire On suppose l existence d un générateur de nombres aléatoires dont l utilisation se fait à coût unitaire. Définition: Soit a < b, deux nombres

Plus en détail

Information quantique

Information quantique Information quantique J.M. Raimond LKB, Juin 2009 1 Le XX ème siècle fut celui de la mécanique quantique L exploration du monde microscopique a été la grande aventure scientifique du siècle dernier. La

Plus en détail

Nombres ayant même reste dans la division euclidienne par un entier non nul notion de congruence - Compatibilité avec les opérations usuelles.

Nombres ayant même reste dans la division euclidienne par un entier non nul notion de congruence - Compatibilité avec les opérations usuelles. ARITHMETIQUE Partie des mathématiques étudiant les propriétés élémentaires des nombres entiers. Introduction : Le développement de l informatique et plus généralement de ce qu on appelle «le numérique»,

Plus en détail

Projet CLANU en 3GE: Compléments d algèbre linéaire numérique

Projet CLANU en 3GE: Compléments d algèbre linéaire numérique Projet CLANU en 3GE: Compléments d algèbre linéaire numérique Année 2008/2009 1 Décomposition QR On rappelle que la multiplication avec une matrice unitaire Q C n n (c est-à-dire Q 1 = Q = Q T ) ne change

Plus en détail

Module 1 - Arithmétique Chapitre 1 - Numération

Module 1 - Arithmétique Chapitre 1 - Numération Lycée Maximilien Sorre Année 2015-2016 BTS SIO 1 Module 1 - Arithmétique Chapitre 1 - Numération 1 Introduction : que signifie 2014? Dans de nombreuses situations, il est nécessaire de pouvoir exprimer

Plus en détail

Procédure. Exemple OPÉRATIONS DANS UN SYSTÈME POSITIONNEL

Procédure. Exemple OPÉRATIONS DANS UN SYSTÈME POSITIONNEL Opérations dans un système positionnel OPÉRATIONS DANS UN SYSTÈME POSITIONNEL INTRODUCTION Dans tout système de numération positionnel, les symboles sont utilisés de façon cyclique et la longueur du correspond

Plus en détail

Points fixes de fonctions à domaine fini

Points fixes de fonctions à domaine fini ÉCOLE POLYTECHNIQUE ÉCOLE NORMALE SUPÉRIEURE DE CACHAN ÉCOLE SUPÉRIEURE DE PHYSIQUE ET DE CHIMIE INDUSTRIELLES CONCOURS D ADMISSION 2013 FILIÈRE MP HORS SPÉCIALITÉ INFO FILIÈRE PC COMPOSITION D INFORMATIQUE

Plus en détail