Algorisme de Shor: diferència entre les revisions
Contingut suprimit Contingut afegit
Cap resum de modificació |
Cap resum de modificació |
||
Línia 1:
Moltes [[Criptografia asimètrica|criptografia de clau pública]], com ara [[RSA]], arribarien a ser obsoletes si l'algorisme de Shor és implementat alguna vegada en una [[Computació quàntica|ordinador quàntica]] pràctica. Un missatge xifrat amb RSA pot ser desxifrat descomponent en factors la clau pública
Com tots els algorismes de [[computació quàntica]], l'algorisme de Shor és probabilístic: dóna la resposta correcta amb alta probabilitat, i la probabilitat d'error pot ser disminuïda repetint l'algorisme.
L'algorisme de Shor va ser demostrat en [[2001]] per un grup en [[IBM]], que descompondre 15 en els seus factors 3 i 5, utilitzant un ordinador quàntica amb 7 [[qubit]]
== Procediment ==
El problema que intenta solucionar l'algorisme de Shor és que, donat un [[nombre enter]]
▲El problema que intenta solucionar l'algorisme de Shor és que, donat un [[nombre enter]] '' N '', intentem trobar un altre nombre enter '' p '' entre '' 1 '' i '' N '' que divideixi '' N ''.
L'algorisme de Shor consisteix en dues parts:
Linha 16 ⟶ 15:
=== Part clàssica ===
# Computa el [[màxim comú divisor|mcd]] (''a'',''N''). Això es pot fer usant el [[algorisme d'Euclides]].</li>
▲# Escolliu un nombre pseudo-aleatori '' a '' <'' N ''
#:
#: Si no, feu servir el subprograma per trobar el període (veure a baix) per trobar
▲#: Si no, feu servir el subprograma per trobar el període (veure a baix) per trobar '' r '', el [[Nombre diari|període]] de la funció següent:
#: <math> F (x) = a^x \ \mbox{mod}\N </math>,
#: És a dir el nombre enter més petit
#: <math> F (x+r) = f (x) </math>.
# Si
# Si
# Els factors de
=== Part quàntica: subprograma per trobar el període ===
# Comenceu amb un parell de registres [[Qubit|qubits]] d'entrada i sortida amb log <sub> 2 </sub>
#: <math> N^{-1/2}\sum_x \left|x \right \rangle \left|0 \right \rangle </math>
#: On
# Construeixi
#: <math> N^{-1/2}\sum_x \left|x \right \rangle \left|f (x) \right \rangle </math>
# Apliqui la [[transformada de Fourier]] quàntica al registre d'entrada. La transformada de Fourier quàntica en
#: <math> U_{QFT} \left|x \right \rangle
= N^{-1/2}\sum_y i^{2 \pi ixy/N} \left|i \right \rangle </math>
#: El que ens deixa en l'estat següent:
#: <math> N^{-1}\sum_x \sum_y i^{2 \pi ixy/N} \left|i \right \rangle \left|f (x) \right \rangle </math>
# Feu una mesura. Obtenim un cert resultat
#: <math> N^{-1} \left|\sum_{x: \, f (x) = f (x_0)}i^{2 \pi ixy/N}\right|^2
= N^{-1} \left|\sum_{b}i^{2 \pi i (x_0+rb) i/N}\right|^2
</Math>
#: L'anàlisi mostra ara que com més alta és aquesta probabilitat, més l'''
# Converteixi a
# Comproveu si
# Si no, obtingui més candidats a
# Si no, vagi de nou al pas 1 del subprograma.
Linha 54 ⟶ 52:
L'algorisme es compon de dues parts. La primera part de l'algorisme converteix el problema de descompondre en factors en el problema de trobar el període d'una funció, i es pot implentat clàssicament. La segona part ha el període utilitzant la [[transformada de Fourier]] quàntica, i és responsable de l'acceleració quàntica.
===
Els nombres enters menors que
▲Els nombres enters menors que '' N '' i [[coprimer]] s amb '' N '' formen un [[grup (matemàtiques)|grup]] [[finit]] sota multiplicació [[Aritmètica modular|mòdul]] '' N '', que es denota típicament (''' Z '''/'' N '' ''' Z ''') <sup> × </sup>. Per al final del pas 3, tenim un nombre enter '' a '' en aquest grup. Com que el grup és finit, '' a '' ha de tenir un ordre finit '' r '', el nombre enter positiu més petit tal que
: <math> A^r \equiv 1 \ \mbox{mod}\N. \, </math>
Per tant,
: <math> A^r - 1 = (a^{r/2}- 1) (a^{r/2}+1) \equiv 0 \ \mbox{mod}\N </math>
: <math> \Rightarrow N \|(a^{r/2}- 1) (a^{r/2}+1). \, </Math>
''
'''
Això ens proveeix d'una factorització de
=== II. Trobar el període ===
L'algorisme, per trobar el període de Shor, es basa radicalment en la capacitat d'una [[Computació quàntica|ordinador quàntica]] d'estar en molts estats simultàniament. Els físics anomenen aquest comportament [[superposició quàntica]]. Per computar el període d'una funció
No obstant això, la física quàntica no permet que tinguem accés a tota aquesta informació directament. Un [[mesurament quàntic]] donarà només un de tots els valors possibles, destruint tots els altres. Per tant hem de transformar acuradament la superposició a un altre estat que retorni la resposta correcta amb alta probable. Això és aconseguit utilitzant la [[transformada de Fourier]] quàntica.
Shor va haver de solucionar així tres "problemes d'implementació". Tots van haver de ser implementats "ràpids", que significa executar amb un nombre de portes quàntiques que és [[Temps polinòmic|polinòmic]] En log
# Crear una superposició d'estats. Això es pot fer aplicant les portes de Hadamard a tots els [[qubit]] s en el registre d'entrada. Un altre enfocament seria utilitzar la [[transformada de Fourier]] quàntica (vegeu a sota).
# Implementar la funció
# Realitzar una [[transformada de Fourier]] quàntica. Usant portes controlades NOT i portes d'una sola rotació de [[qubit]], Shor va dissenyar un circuit per a la transformada de Fourier quàntica que utilitza exactament ((log
Després de totes aquestes transformacions una mesura donarà una aproximació al període
: <math> I^{2 \pi i b ir/N}= 1 </math>
per a tots els nombres enters
==
* [[Anell factorial]].
== Enllaços externs==
* [http://www.arxiv.org/abs/quant-ph/9508027
* [http://www.qinfo.org/qcqi
▲* [http://www.arxiv.org/abs/quant-ph/9508027 '' Polynomial-Time Algorithms for Prime Factorization and Discrete Logarithms on a Quantum Computer '', Peter W. Shor] (en anglès)
▲* [http://www.qinfo.org/qcqi '' Quantum Computation and Quantum Information '', Michael A. Nielsen, Isaac L. Chuang, Cambridge University Press, 2000] (en anglès)
[[ar:خوارزمية شوور]]
|