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