Tofolio vartai (angl. Toffoli gate ) – tai kvantinio kompiuterio vartai, naudojami įvairiuose algoritmuose, pavyzdžiui, Groverio algoritme . Tofolio vartus gali sudaryti mažiausiai 3 kubitai. Tofolio vartai turi 2 kontroliuojamus kubitus ir 1 taikinio kubitą.
Tofolio vartai pakeičia trečio kubito reikšmę, tik jei pirmi du kubitai yra vienetai.
|000> ___> |000>
|100> ___> |100>
|110> ___> |111>
|111> ___> |110>
|001> ___> |001>
|011> ___> |011>
|101> ___> |101>
|010> ___> |010>
Su daugiau kubitų, analogiškai apsiverčia paskutinis kubitas, bet tik tuo atveju jei visi pirmi kubitai yra vienetai.
Tofolio vartai ir superpozicija
redaguoti
Kas bus, jeigu kubitus praleisime pro Hadamardo vartus , paskui pro Tofolio vartus, o paskui vėl pro Hadamardo vartus?
Jeigu trečias kubitas yra nulis, tai ant išėjimo išmatuosime tą patį, kas buvo ant įėjimo:
|000> ___> |000>
|110> ___> |110>
|010> ___> |010>
|100> ___> |100>
Tačiau jeigu trečias kubitas |1>, tai išėjimas bus toks:
|001> ___> 0.5(|00>+ |01>+ |10>- |11>)|1>
|111> ___> 0.5(-|00> +|01> + |10>+ |11>)|1>
|011> ___> 0.5(|00> +|01> -|10>+ |11>)|1>
|101> ___> 0.5(|00> -|01> + |10>+ |11>)|1>
Čia galima įžiūrėti tokį dėsningumą:
Jei trečias kubitas yra vienetas, tai pirmi du kubitai apsiverčia ir ta, apsivertusi būsena, pažymima minusu. Tarp kitko, trečias kubitas lieka nepakitęs.
Tofolio vartai naudojami Groverio algoritme , kai reikia pažymėti vieną elementą neigiama amplitude (M vartai). Taip pat Tofolio vartai gali turėti daug kontroliuojamų kubitų ir (tik!) vieną taikinio kubitą.
|
000
⟩
→
|
00
⟩
1
2
(
|
0
⟩
+
|
1
⟩
)
→
|
00
⟩
1
2
(
|
0
⟩
+
|
1
⟩
)
→
|
00
⟩
1
2
(
|
0
⟩
+
|
1
⟩
)
→
|
00
⟩
1
2
(
|
0
⟩
+
|
1
⟩
)
→
{\displaystyle |000\rangle \to |00\rangle {1 \over {\sqrt {2}}}(|0\rangle +|1\rangle )\to |00\rangle {1 \over {\sqrt {2}}}(|0\rangle +|1\rangle )\to |00\rangle {1 \over {\sqrt {2}}}(|0\rangle +|1\rangle )\to |00\rangle {1 \over {\sqrt {2}}}(|0\rangle +|1\rangle )\to }
→
|
00
⟩
1
2
(
|
0
⟩
+
|
1
⟩
)
→
|
00
⟩
1
2
(
|
0
⟩
+
|
1
⟩
)
→
|
000
⟩
.
{\displaystyle \to |00\rangle {1 \over {\sqrt {2}}}(|0\rangle +|1\rangle )\to |00\rangle {1 \over {\sqrt {2}}}(|0\rangle +|1\rangle )\to |000\rangle .}
|
001
⟩
→
|
00
⟩
1
2
(
|
0
⟩
−
|
1
⟩
)
→
|
00
⟩
1
2
(
|
0
⟩
−
|
1
⟩
)
→
|
00
⟩
1
2
(
|
0
⟩
−
|
1
⟩
)
→
|
00
⟩
1
2
(
|
0
⟩
−
|
1
⟩
)
→
{\displaystyle |001\rangle \to |00\rangle {1 \over {\sqrt {2}}}(|0\rangle -|1\rangle )\to |00\rangle {1 \over {\sqrt {2}}}(|0\rangle -|1\rangle )\to |00\rangle {1 \over {\sqrt {2}}}(|0\rangle -|1\rangle )\to |00\rangle {1 \over {\sqrt {2}}}(|0\rangle -|1\rangle )\to }
→
|
00
⟩
1
2
(
|
0
⟩
−
|
1
⟩
)
→
|
00
⟩
1
2
(
|
0
⟩
−
|
1
⟩
)
→
|
001
⟩
.
{\displaystyle \to |00\rangle {1 \over {\sqrt {2}}}(|0\rangle -|1\rangle )\to |00\rangle {1 \over {\sqrt {2}}}(|0\rangle -|1\rangle )\to |001\rangle .}
|
010
⟩
→
|
01
⟩
1
2
(
|
0
⟩
+
|
1
⟩
)
→
|
01
⟩
1
2
(
|
0
⟩
+
i
|
1
⟩
)
→
|
01
⟩
1
2
(
|
0
⟩
+
i
|
1
⟩
)
→
|
01
⟩
1
2
(
|
0
⟩
−
i
⋅
i
)
|
1
⟩
)
→
{\displaystyle |010\rangle \to |01\rangle {1 \over {\sqrt {2}}}(|0\rangle +|1\rangle )\to |01\rangle {1 \over {\sqrt {2}}}(|0\rangle +i|1\rangle )\to |01\rangle {1 \over {\sqrt {2}}}(|0\rangle +i|1\rangle )\to |01\rangle {1 \over {\sqrt {2}}}(|0\rangle -i\cdot i)|1\rangle )\to }
→
|
01
⟩
1
2
(
|
0
⟩
+
|
1
⟩
)
→
|
01
⟩
1
2
(
|
0
⟩
+
|
1
⟩
)
→
|
010
⟩
.
{\displaystyle \to |01\rangle {1 \over {\sqrt {2}}}(|0\rangle +|1\rangle )\to |01\rangle {1 \over {\sqrt {2}}}(|0\rangle +|1\rangle )\to |010\rangle .}
|
100
⟩
→
|
10
⟩
1
2
(
|
0
⟩
+
|
1
⟩
)
→
|
10
⟩
1
2
(
|
0
⟩
+
|
1
⟩
)
→
|
11
⟩
1
2
(
|
0
⟩
+
|
1
⟩
)
→
|
11
⟩
1
2
(
|
0
⟩
−
i
|
1
⟩
)
→
{\displaystyle |100\rangle \to |10\rangle {1 \over {\sqrt {2}}}(|0\rangle +|1\rangle )\to |10\rangle {1 \over {\sqrt {2}}}(|0\rangle +|1\rangle )\to |11\rangle {1 \over {\sqrt {2}}}(|0\rangle +|1\rangle )\to |11\rangle {1 \over {\sqrt {2}}}(|0\rangle -i|1\rangle )\to }
→
|
10
⟩
1
2
(
|
0
⟩
−
i
|
1
⟩
)
→
|
10
⟩
1
2
(
|
0
⟩
−
i
⋅
i
|
1
⟩
)
=
|
10
⟩
1
2
(
|
0
⟩
+
|
1
⟩
)
→
|
100
⟩
.
{\displaystyle \to |10\rangle {1 \over {\sqrt {2}}}(|0\rangle -i|1\rangle )\to |10\rangle {1 \over {\sqrt {2}}}(|0\rangle -i\cdot i|1\rangle )=|10\rangle {1 \over {\sqrt {2}}}(|0\rangle +|1\rangle )\to |100\rangle .}
|
011
⟩
→
|
01
⟩
1
2
(
|
0
⟩
−
|
1
⟩
)
→
|
01
⟩
1
2
(
|
0
⟩
−
i
|
1
⟩
)
→
|
01
⟩
1
2
(
|
0
⟩
−
i
|
1
⟩
)
→
|
01
⟩
1
2
(
|
0
⟩
−
i
(
−
i
)
|
1
⟩
)
→
{\displaystyle |011\rangle \to |01\rangle {1 \over {\sqrt {2}}}(|0\rangle -|1\rangle )\to |01\rangle {1 \over {\sqrt {2}}}(|0\rangle -i|1\rangle )\to |01\rangle {1 \over {\sqrt {2}}}(|0\rangle -i|1\rangle )\to |01\rangle {1 \over {\sqrt {2}}}(|0\rangle -i(-i)|1\rangle )\to }
→
|
01
⟩
1
2
(
|
0
⟩
−
|
1
⟩
)
→
|
00
⟩
1
2
(
|
0
⟩
−
|
1
⟩
)
→
|
011
⟩
.
{\displaystyle \to |01\rangle {1 \over {\sqrt {2}}}(|0\rangle -|1\rangle )\to |00\rangle {1 \over {\sqrt {2}}}(|0\rangle -|1\rangle )\to |011\rangle .}
|
101
⟩
→
|
10
⟩
1
2
(
|
0
⟩
−
|
1
⟩
)
→
|
10
⟩
1
2
(
|
0
⟩
−
|
1
⟩
)
→
|
11
⟩
1
2
(
|
0
⟩
−
|
1
⟩
)
→
|
11
⟩
1
2
(
|
0
⟩
−
(
−
i
)
|
1
⟩
)
→
{\displaystyle |101\rangle \to |10\rangle {1 \over {\sqrt {2}}}(|0\rangle -|1\rangle )\to |10\rangle {1 \over {\sqrt {2}}}(|0\rangle -|1\rangle )\to |11\rangle {1 \over {\sqrt {2}}}(|0\rangle -|1\rangle )\to |11\rangle {1 \over {\sqrt {2}}}(|0\rangle -(-i)|1\rangle )\to }
→
|
10
⟩
1
2
(
|
0
⟩
+
i
|
1
⟩
)
→
|
10
⟩
1
2
(
|
0
⟩
+
i
2
|
1
⟩
)
=
|
10
⟩
1
2
(
|
0
⟩
−
|
1
⟩
)
→
|
101
⟩
.
{\displaystyle \to |10\rangle {1 \over {\sqrt {2}}}(|0\rangle +i|1\rangle )\to |10\rangle {1 \over {\sqrt {2}}}(|0\rangle +i^{2}|1\rangle )=|10\rangle {1 \over {\sqrt {2}}}(|0\rangle -|1\rangle )\to |101\rangle .}
|
110
⟩
→
|
11
⟩
1
2
(
|
0
⟩
+
|
1
⟩
)
→
|
11
⟩
1
2
(
|
0
⟩
+
i
|
1
⟩
)
→
|
10
⟩
1
2
(
|
0
⟩
+
i
|
1
⟩
)
→
|
10
⟩
1
2
(
|
0
⟩
+
i
|
1
⟩
)
→
{\displaystyle |110\rangle \to |11\rangle {1 \over {\sqrt {2}}}(|0\rangle +|1\rangle )\to |11\rangle {1 \over {\sqrt {2}}}(|0\rangle +i|1\rangle )\to |10\rangle {1 \over {\sqrt {2}}}(|0\rangle +i|1\rangle )\to |10\rangle {1 \over {\sqrt {2}}}(|0\rangle +i|1\rangle )\to }
→
|
11
⟩
1
2
(
|
0
⟩
+
|
1
⟩
)
→
|
11
⟩
1
2
(
|
0
⟩
+
i
2
|
1
⟩
)
=
|
11
⟩
1
2
(
|
0
⟩
+
|
1
⟩
)
→
|
111
⟩
.
{\displaystyle \to |11\rangle {1 \over {\sqrt {2}}}(|0\rangle +|1\rangle )\to |11\rangle {1 \over {\sqrt {2}}}(|0\rangle +i^{2}|1\rangle )=|11\rangle {1 \over {\sqrt {2}}}(|0\rangle +|1\rangle )\to |111\rangle .}
|
111
⟩
→
|
11
⟩
1
2
(
|
0
⟩
−
|
1
⟩
)
→
|
11
⟩
1
2
(
|
0
⟩
−
i
|
1
⟩
)
→
|
10
⟩
1
2
(
|
0
⟩
−
i
|
1
⟩
)
→
|
10
⟩
1
2
(
|
0
⟩
−
i
|
1
⟩
)
→
{\displaystyle |111\rangle \to |11\rangle {1 \over {\sqrt {2}}}(|0\rangle -|1\rangle )\to |11\rangle {1 \over {\sqrt {2}}}(|0\rangle -i|1\rangle )\to |10\rangle {1 \over {\sqrt {2}}}(|0\rangle -i|1\rangle )\to |10\rangle {1 \over {\sqrt {2}}}(|0\rangle -i|1\rangle )\to }
→
|
11
⟩
1
2
(
|
0
⟩
−
i
|
1
⟩
)
→
|
11
⟩
1
2
(
|
0
⟩
−
i
2
|
1
⟩
)
=
|
11
⟩
1
2
(
|
0
⟩
+
|
1
⟩
)
→
|
110
⟩
.
{\displaystyle \to |11\rangle {1 \over {\sqrt {2}}}(|0\rangle -i|1\rangle )\to |11\rangle {1 \over {\sqrt {2}}}(|0\rangle -i^{2}|1\rangle )=|11\rangle {1 \over {\sqrt {2}}}(|0\rangle +|1\rangle )\to |110\rangle .}
Kiti kvantiniai vartai
redaguoti