Я думаю, що ви шукаєте, це наступна схема. Тут б1, б2, б3, б4∈ { 0 , 1 } і ⊕ є модулем додавання 2 .
Тут п'ятий кубіт використовується як допоміжний , або допоміжний кубіт . Починається з | 0⟩ і закінчується в | 0⟩ , коли застосовується схема.
Дозвольте мені детальніше розповісти про те, як працює ця схема. Ідея полягає в тому, щоб насамперед перевірити, чи знаходяться перші два кубіти у стані | 1⟩ . Це можна зробити за допомогою одного ворота Toffoli, а результат зберігається в допоміжному кубіті. Тепер проблема зводиться до перекидання кубіта 4 , коли кубіти 3 та допоміжний кубіт знаходяться у | 1⟩ . Цього можна досягти також за допомогою одного застосування воріт Toffoli, а саме середнього в схемі, показаній вище. Нарешті, останній воріт Тоффолі служить для обчислення тимчасового результату, який ми зберігали в допоміжному кубіті, таким чином, що стан цього кубіта повертається до | 0⟩ після застосування схеми.
У розділі коментарів виникло питання, чи можна реалізувати таку схему, використовуючи лише ворота Toffoli, не використовуючи допоміжні кубіти. На це питання можна відповісти негативно, як я покажу тут.
Ми хочемо реалізувати цілі C C C N O T , які діють на чотири кубіти. Ми можемо визначити наступну матрицю (матрицю уявлення Паулі Х -gate):
Х= [ 0110]
Крім того, ми будемо позначати N - мірну матрицю ідентичності ЯN . Тепер ми помічаємо, що матричне подання врожаю C C C N O T , що діє на чотири кубіти, задається наступною матрицею 16×16 :
CCCNOT=[I1400X]
det(CCCNOT)=−1
4Toffoli⊗I2=[I600X]⊗I2=[I1200X⊗I2]=⎡⎣⎢I120000I20I20⎤⎦⎥
det(Toffoli⊗I2)=1
Ворота Toffoli можуть також діяти на різні кубіти. Припустимо, ми дозволяємо воріт Тоффолі діяти на першому, другому та четвертому кубітах, де четвертий кубіт є цільовим кубітом. Тоді ми отримуємо нове матричне подання з показаного вище, замінюючи стовпці, відповідні станам, які відрізняються лише третім та четвертим кубітом, тобто з , з і т. д. Важливе, що тут слід зазначити, - це те, що кількість свопів стовпців є рівною, а значить, визначник залишається незмінним. Як ми можемо записати кожну перестановку кубітів як послідовність послідовних перестановок всього кубітів (тобто|0001⟩|0010⟩|0101⟩|0110⟩2S4генерується транспозиціями в ), ми виявляємо, що для всіх воріт Тоффолі, застосованих до будь-якої комбінації кубітів управління та цілі, його матричне подання має визначник .S41
Останнім, що слід зазначити, є те, що детермінанта комунікує з матричним множенням, тобто , для будь-яких двох матриць і сумісних з матричним множенням. Отже, тепер стає очевидним, що застосування декількох воріт Toffoli послідовно ніколи не створює ланцюга, матричне подання якого має визначальний відмінність від , що, зокрема, означає, що не може бути реалізований, використовуючи лише ворота Toffoli на кубітах .det(AB)=det(A)det(B)AB1CCCNOT4
Очевидним питанням є те, що змінюється, коли ми дозволяємо допоміжний кубіт. Відповідь ми знаходимо, коли дію в кубітній системі:
Якщо обчислимо цей визначник, знайдемо :
Отже, детермінанта діє на кубітів, дорівнює , а не . Ось чому попередній аргумент недійсний дляCCCNOT5CCCNOT⊗I2=[I1400X]⊗I2=⎡⎣⎢I280000I20I20⎤⎦⎥
det(CCCNOT⊗I2)=1
CCCNOT51−15 кубіти, як ми вже знали через чітко побудовану схему, яку вимагала ОП.