Toffoli 게이트 만 사용하여 CCCNOT 게이트 구현


10

CCCNOT 게이트는 처음 3 개의 비트가 모두 상태 경우에만 4 번째 비트를 뒤집는 4 비트 가역 게이트입니다 1.

Toffoli 게이트를 사용하여 CCCNOT 게이트를 어떻게 구현합니까? 작업 공간의 비트가 해당 값으로 반환되면 특정 값 (0 또는 1)으로 시작한다고 가정합니다.


Toffoli 게이트 또는 Toffoli와 CNOT 사용 하는 것이 공정한 게임입니까?
user1271772

Toffoli 게이트 만 허용됩니다.
chuster

1
이 질문의 어느 부분이 양자입니까? CCCNOT (Classic Reversible Gate)를 더 작은 CCNOT (Classic Reversible Gate)로 분해하려고합니다.
user1271772 2016 년

1
문제 자체는 양자 컴퓨팅과 관련이 없지만 게이트는 양자 회로에 중요합니다.
chuster

답변:


8

나는 당신이 찾고있는 것이 다음 회로라고 생각합니다. 여기에서 1,2,,4{0,1} 는 덧셈 모듈로 2 입니다.

여기에 이미지 설명을 입력하십시오

여기서, 제 5 큐비 트는 보조 또는 ancilla 큐 비트로 사용된다 . 그것은에서 시작 |0 과 끝 |0 회로는인가되는 경우.

이 회로가 어떻게 작동하는지 자세히 설명하겠습니다. 아이디어는 우선 처음 두 큐 비트가 상태 |1 . 단일 Toffoli 게이트를 사용하여 수행 할 수 있으며 결과는 보조 큐 비트에 저장됩니다. 이제 문제는 큐 비트 뒤집기에 감소 4 큐빗 때마다, 및 보조 큐 비트가에를 |1 . 이것은 또한 토 포리 게이트의 하나의 응용, 즉 상기 도시 된 회로의 중간의 응용을 사용하여 달성 될 수있다. 마지막으로 마지막 Toffoli 게이트는 보조 큐 비트에 저장된 임시 결과 를 계산 하여이 큐 비트의 상태가 |0 회로가 적용된 후.


의견 섹션에서, 보조 큐 비트를 사용하지 않고 토 포리 게이트만을 사용하여 그러한 회로를 구현할 수 있는지에 대한 의문이 제기되었다. 이 질문은 내가 여기에 보여 주듯이 부정적인 것으로 대답 할 수 있습니다.

우리는 4 qubits에 작용 하는 영형 gate 를 구현하려고합니다 . 우리는 다음의 행렬 (Pauli- 엑스 gate 의 행렬 표현)을 정의 할 수 있습니다 : 또한,

엑스=[0110]
또한, 차원 단위 행렬을 나는 합니다. 이제 우리는 영형는 4 qubits에 작용 C N O T- gate다음 16 × 16 N O T = [I 14 0 0 X ] 의 행렬 표현을 관찰 하여 결정자를 결정할 수 있습니다. det ( C C C N O16×16 매트릭스 :
영형=[나는1400엑스]
데트(영형)=1
지금의 처음 세 큐빗에 작용하는 상기 Toffoli 게이트의 행렬 표현을 고려4 큐빗 시스템. 행렬 표현은 다음과 같이 작성됩니다 (우리는 행렬의 크로네 커 곱을 사용했습니다) :
영형에프에프영형나는나는2=[나는600엑스]나는2=[나는1200엑스나는2]=[나는120000나는20나는20]
의 결정 수율 계산 :
데트(영형에프에프영형나는나는2)=1
Toffoli 게이트는 물론 다른 큐 비트에서 작동 할 수 있습니다. Toffoli 게이트가 첫 번째, 두 번째 및 네 번째 큐 비트에서 작동하도록한다고 가정합니다. 여기서 네 번째 큐비 트는 대상 큐 비트입니다. 그렇다면 우리는 하나의 새로운 행렬 표현의 세 번째와 네 번째 큐 비트 만 다른 상태에 대응하는 열을 교환함으로써 상기 표시 구, 즉 |0001|0010 , | 0101 | 0110 etc 등. 여기서 주목해야 할 것은 열의 스왑 수가 짝수이므로 결정자가 변경되지 않는다는 것입니다. 큐 비트의 모든 순열을 연속 순열 시퀀스로 쓸 수 있으므로2 큐빗 (즉, S|0101|01102에스4 에서 트랜스 포지션에 의해 생성 된에스4 ), 우리가 모든 Toffoli 게이트에 대한 제어 및 목표 큐 비트의 임의의 조합에 적용될 찾아 그것의 행렬 표현은 결정 갖는 1 .

마지막으로 행렬 곱셈 과 호환되는 두 행렬 AB에 대해 행렬식 곱셈, 즉 데트()=데트()데트() 하여 행렬식을 결정합니다. 따라서, 다수의 Toffoli 게이트를 순차적으로 적용하는 것은 결코 매트릭스 표현이 1 과 다른 결정자를 갖는 회로를 생성하지 않는다는 것이 명백 해지고 , 이는 특히1영형 에서만 Toffoli 게이트 사용 -gate 구현 될 수없는 4 큐빗.

이제 명백한 질문은 보조 큐 비트를 허용 할 때 무엇이 ​​바뀌는가입니다. 우리는의 작용 쓰는 경우에 우리는 답을 찾을 영형 A의 -gate 5 : -qubit 시스템

영형나는2=[나는1400엑스]나는2=[나는280000나는20나는20]
이 행렬식을 계산하면 다음을 찾습니다.
데트(영형나는2)=1
OP가 요구 한 명시 적으로 구성된 회로 때문에 이미 알고 있었기 때문에큐 비트에이유입니다. 따라서, 결정의영형 에 작용 -gate5 큐 비트는1 대신에,1 . 이것이 이전 인수가 5에 유효하지 않은 이유입니다5


1
회로를 유도하는 데 사용되는 소스 또는 방법이 유용합니다!
glS

1
이러한 회로를 포괄적으로 설계하는 방법을 설명하는 소스는 없습니다. 양자 컴퓨팅에 대해 배우는 것은 여기에서 찾을 수 있습니다 닐슨과 추앙과 강의 노트에 의해 도서있을 때 소스는 내가 사용 : homepages.cwi.nl/~rdewolf/qcnotes.pdf가 있지만, 이러한 소스는 특히 디자인에 초점을하지 않습니다 양자 회로의.
arriopolis

2
회로가 어떻게 작동하는지 자세히 설명하려고했습니다. 이것이 이것과 비슷한 회로를 설계하는 데 도움이되기를 바랍니다! :)
arriopolis

보조 장치없이 가능합니까?
user1271772 2016 년

1
+1영형41영형+1
당사 사이트를 사용함과 동시에 당사의 쿠키 정책개인정보 보호정책을 읽고 이해하였음을 인정하는 것으로 간주합니다.
Licensed under cc by-sa 3.0 with attribution required.