Informatique Quantique

publicité
Informatique Quantique
Simon Perdrix 1
Pépites Algorithmiques
[email protected]
Ecole des Mines de Nancy - 1 mars 2016
1. CNRS, équipe CARTE, LORIA
Une Information Quantique
• Brique de base de l’information :
0, 1
• Nous vivons dans un monde quantique :
α |0i + β |1i
avec α, β ∈ C et |α|2 + |β|2 = 1
1
ϕ
0
Exemples :
|0i
1
√ (|0i + i |1i)
2
2/14
Definition
L’état d’un registre quantique de taille n est un vecteur unité de C{0,1} :
X
X
|αx |2 = 1
αx |xi avec ||Φ||2 =
Φ=
n
x∈{0,1}n
x∈{0,1}n
Exemples :
1
√ (|00i − |01i)
2
1
√ (|00i + i |01i + |11i)
3
1
√ (|000i + |111i)
2
3/14
Système composé
Soit Φ1 l’état d’un registre de n qubits et Φ2 celui d’un registre de m
qubits, l’état du registre composé de (n + m) qubits est
Φ = Φ1 ⊗ Φ2
avec · ⊗ · bilinéaire et ∀x ∈ {0, 1}n, ∀y ∈ {0, 1}m, |xi ⊗ |yi = |xyi
Exemples :
|0i−|1i
√
2
=
|0i⊗|0i−|0i⊗|1i
√
2
1
|0i ⊗
2
|0i+i|1i
√
2
3
|01i+|11i
√
2
=?⊗?
4
|00i−|11i
√
2
=?⊗?
⊗
|00i−i|10i
√
2
=
|00i−|01i
√
2
=
4/14
Intrication
Definition
Un état Φ est intriqué si pour tout Φ1 , Φ2 ,
Φ 6= Φ1 ⊗ Φ2
Exemple :
1
√ (|00i + |11i)
2
5/14
Mesurer, c’est Transformer
2
α |0i + β |1i
|α|
✲ |0i on mesure 0
|β | 2 ✲ |1i on mesure 1
La mesure est probabiliste et irréversible.
Mesure =⇒ Interaction =⇒ Transformation
6/14
Système fermé : une évolution unitaire
Un système fermé évolue
• de façon linéaire, i.e. U (αΦ + βΨ) = αU (Φ) + βU (Ψ) ;
• en préservant la condition de normalisation, i.e. ||U (Φ)|| = ||Φ||.
7/14
Exemples d’évolutions unitaires
X
: |0i 7→ |1i
|1i 7→ |0i
H
: |0i 7→
|1i 7→
Z
|0i+|1i
√
2
|0i−|1i
√
2
CN ot
Exemples :
Rz (θ) :
: |00i
|01i
|10i
|11i
7→
7
→
7→
7
→
: |0i →
7
|0i
|1i →
7
− |1i
|0i →
7
|0i
|1i →
7
eiθ |1i
|00i
|01i
|11i
|10i
HH |0i =
HH |1i =
8/14
Composition de transformations unitaires
Si une partie d’un registre évolue selon U et le reste du registre selon V
alors l’évolution globale du registre est U ⊗ V avec :
(U ⊗ V )(Φ ⊗ Ψ) = (U Φ) ⊗ (V Ψ)
Exemples :
(H ⊗ H) |01i =
(H |0i) ⊗ (H |1i) =
|0i+|1i
√
2
⊗
|0i−|1i
√
2
=
|00i−|01i+|10i−|11i
2
 Quand l’état est intriqué, utiliser la linéarité :
√
(U ⊗ V ) |00i+|11i
2
=
(U⊗V )|00i+(U⊗V )|11i
√
2
=
(U|0i)⊗(V |0i)+(U|1i)⊗(V |1i)
√
2
9/14
Exemples d’évolutions unitaires
X
: |0i 7→ |1i
|1i 7→ |0i
H
: |0i 7→
|1i 7→
Z
|0i+|1i
√
2
|0i−|1i
√
2
CN ot
Rz (θ) :
: |00i
|01i
|10i
|11i
7→
7
→
7→
7
→
: |0i →
7
|0i
|1i →
7
− |1i
|0i →
7
|0i
|1i →
7
eiθ |1i
|00i
|01i
|11i
|10i
Exemple :
CN ot ◦ (H ⊗ I)(|00i) =
10/14
Circuits quantiques
(I ⊗ Rz (π/3)) ◦ CN ot ◦ (H ⊗ I)
• {H, CN ot, Rz (θ), θ ∈ [0, 2π)} est une famille universelle de
transformations unitaires.
• Toute transformation unitaire est réversible.
11/14
Circuits Classiques / Quantiques
Lemme : Si f : {0, 1}n → {0, 1} est calculée par un circuit classique de
taille t alors son extension quantique Uf : |xi 7→ (−1)f (x) |xi est calculée
par un circuit quantique de taille O(t).
Preuve : voir exercices 4 & 5.
12/14
Un 1er algorithme quantique
Umesh veut identifier les fausses pièces parmi un ensemble de n pièces. Il sait
qu’une vraie pièce a une masse de 8g contre 7.5g pour une fausse. Umesh
possède une balance dont l’écran défectueux n’indique que le chiffre après la
virgule : 0 pour 8g, 5 pour 22.5g etc. Ainsi Umesh ne peut connaı̂tre que la
parité du nombre de fausses pièces posées sur le plateau de la balance. Combien
de pesées Umesh doit effectuer pour identifier l’ensemble des fausses pièces ?
Donnée : f
Problème :
Algorithme
Algorithme
P
: {0, 1}n →{0, 1} t.q. ∃a∈{0, 1}n , f (x) = x • a = n
i=1 xi ai mod 2.
n
Trouver a ∈ {0, 1} .
classique : n appels à f sont nécessaires et suffisants.
quantique : 1 appel à Uf .
|0n i
H ⊗n
Uf
H ⊗n
13/14
H ⊗n Uf H ⊗n |0n i
=
=
=
X
1
√ H ⊗n Uf
|xi
2n
x∈{0,1}n
X
1
√ H ⊗n
(−1)f (x) |xi
2n
n
x∈{0,1}
X
1
√ H ⊗n
(−1)x•a |xi
n
2
x∈{0,1}n
= H ⊗n H ⊗n |ai
= |ai
(1)
(2)
(3)
(4)
(5)
14/14
Téléchargement