그림의 시간과 행렬의 순서
A를 먼저 B를 나중에 적용하면 BA입니다. HZH와 ZHH는 같은 게이트를 사용해도 |0〉에서 서로 직교하는 출력을 만듭니다. 각 단계의 입력과 출력을 따라가며 순서를 확인하세요.
[H,Z,H] ⇒ HZH=X; [Z,H,H] ⇒ HHZ=Z
왼쪽에서 오른쪽으로 흐르는 한 선 위에 게이트를 놓고, 각 게이트 아래에 상태를 표시합니다. 행렬식은 작용 순서의 역순으로 적습니다.
회로를 진폭이 갈라지고 다시 합쳐지는 계산으로 읽어 보세요. 확률 막대, 위상을 담은 밀도행렬, 국소 상태와 공동 상관이 각각 어떤 정보를 보여 주는지 구별합니다.
A를 먼저 B를 나중에 적용하면 BA입니다. HZH와 ZHH는 같은 게이트를 사용해도 |0〉에서 서로 직교하는 출력을 만듭니다. 각 단계의 입력과 출력을 따라가며 순서를 확인하세요.
[H,Z,H] ⇒ HZH=X; [Z,H,H] ⇒ HHZ=Z
왼쪽에서 오른쪽으로 흐르는 한 선 위에 게이트를 놓고, 각 게이트 아래에 상태를 표시합니다. 행렬식은 작용 순서의 역순으로 적습니다.
HZH와 ZHH에서 마지막 계산 기저 결과가 같을까요?
두 순서 예제를 번갈아 고르고 0단계부터 마지막 단계까지 이동하세요. 진폭과 확률, 전체 유니터리와 역회로 복원을 함께 확인하세요.
HZH는 |1〉, ZHH는 |0〉으로 끝납니다. 두 회로 모두 노름과 역회로 복원은 올바르므로 노름 보존만으로 원하는 계산을 확인할 수는 없습니다.
양자 회로에는 어떤 연산을 어느 선에 언제 적용하는지가 함께 들어 있다. 게이트 이름만 나열해서는 계산을 정의할 수 없다. 각각 올바른 게이트라도 순서를 바꾸면 결과가 달라진다. 양자 머신러닝의 학습 회로를 이해하거나 시뮬레이터의 선 번호 오류를 찾으려면 이 구별이 먼저 필요하다.
복소 벡터, 텐서곱, 유니터리 행렬을 안다고 가정한다. 먼저 잡음이 없는 순수 상태를 다루고, 잡음과 측정은 다음 채널 단원으로 연결한다. 유한 실험은 모든 진폭을 확인할 수 있도록 1–3큐비트를 사용한다. 이론 자체가 세 큐비트로 제한되는 것은 아니다.
A를 먼저, B를 나중에 적용하면 결과는 B A|ψ〉이다. 보통 회로 그림의 시간은 왼쪽에서 오른쪽으로 흐르지만, 행렬곱에서는 오른쪽 연산부터 작용한다. 계산 전에 말로 적힌 순서를 식으로 옮기자.
물체를 서로 다른 축으로 차례로 회전시키는 장면을 떠올려 보자. 각 회전은 되돌릴 수 있어도 회전 순서를 바꾸면 최종 방향이 달라질 수 있다. 이 비유는 합성 순서를 설명한다. 양자 진폭에는 여기에 상대 위상이라는 정보도 있다.
Hadamard 게이트는 기저 상태를 두 진폭으로 나눈다. 위상 게이트는 그 진폭들이 다음 Hadamard에서 합쳐지는 방식을 바꾼다. 중간 상태를 확률만으로 적으면 이 정보를 잃는다.
|0〉에 H, Z, H를 적용하자. 첫 H는 더하기 상태를 만들고, Z는 빼기 상태로 바꾸며, 마지막 H는 |1〉을 만든다. 반면 Z, H, H는 |0〉으로 돌아온다. 같은 게이트들을 썼지만 출력은 다르다. 한 입력의 확률만 확인하지 말고 HZH=X라는 연산자 항등식도 확인하자.
T=diag(1,e^{iπ/4})로 두면 다음 예에서는 위상차가 최종 확률에 나타난다.
H 직후와 TH 직후에 계산 기저로 측정할 확률은 모두 1/2이다. 그런데 마지막 H가 상대 위상을 진폭의 합과 차로 바꾸면서 출력 확률이 달라진다. 계산 전에 결과를 예상해 보자. 마지막 H를 제거하면 이 방식으로 위상을 읽을 수 없게 되지만, 상태의 위상 자체가 사라지는 것은 아니다.
여기서는 |b₀b₁b₂〉의 site0을 최상위 비트로 둔다. 따라서 |101〉의 좌표 인덱스는5이고, X₀=X⊗I⊗I, X₂=I⊗I⊗X이다. 라이브러리가 다른 비트 순서를 사용해도 틀린 것은 아니다. 답을 비교하기 전에 좌표를 같은 관례로 변환해야 한다.
제어0·대상1인 CX는 |10〉을 |11〉로 바꾸고 |01〉은 그대로 둔다. 제어와 대상을 바꾸면 두 결과가 모두 바뀐다. CZ는 |11〉의 부호만 뒤집는다. SWAP은 두 선의 상태를 교환하며, 페르미온 모드 교환의 반대칭 부호를 추가하지 않는다.
|00〉에서 선0에 H를 적용한 뒤 CX₀→₁을 적용하면 (|00〉+|11〉)/√2가 된다. 각 선의 계산 기저 결과는 균등하지만 두 결과는 완벽하게 상관되어 있다. 주변 분포를 곱해서는 이 결합 상태를 복원할 수 없다. 독립적인 확률 막대 두 개를 전체 상태로 해석하지 말고 결합 진폭을 확인하자.
상태 전체에 e^{iα}를 곱해도 밀도행렬은 변하지 않는다. 한 갈래에만 위상을 곱하면 일반적으로 간섭이 바뀐다. 시뮬레이터에서도 진폭이 정확히 같은 것과 공통 위상까지 허용하면 같은 것을 구별해야 한다.
더 미묘한 점도 있다. U와 e^{iα}U는 계에 같은 채널을 만들지만, controlled-U와 controlled-(e^{iα}U)는 제어 큐비트에서 다른 결과를 만들 수 있다. U=I, α=π일 때 두 번째 연산을 |+〉⊗|0〉에 적용하면 제어 상태가 |−〉로 바뀐다. 따라서 계의 채널만 주어졌다고 그 채널을 일관되게 제어하는 구현까지 정해지는 것은 아니다. 회로 변환이나 새 학습 구조를 비교할 때 필요한 주의점이다.
역회로는 게이트를 역순으로 배열하고 각각의 수반을 적용한다. H, X, Y, Z, CX, CZ, SWAP은 자기 자신이 역연산이지만 S와 T에는 S†, T†가 필요하다. 원래 순서로 게이트를 되돌리는 것은 일반적으로 잘못이다. 복원된 노름뿐 아니라 복소 진폭도 비교하자.
계산 모델은 H와 T를 포함한 계수를 Q(√2,i)에서 정확히 유지하고, 정규화 전 진폭과 제곱 노름을 반환한다. 입력이 정규화되지 않았다면 확률은 제곱 노름으로 나누어야 한다. 영벡터에는 정규화된 상태가 없으므로 거부한다. 정확 연산은 작은 잔차를 임의로0으로 만드는 문제를 피하지만, 상태 크기의 지수적 증가는 없애지 못한다. n큐비트에는 2ⁿ개 진폭이 있다. 작은 실험 성공이 확장성의 증거는 아니다.
독립 검산은 전체 공간에 삽입한 행렬을 먼저 만든다. 서로 다른 계산 경로의 일치, 역회로 복원, 모든 계산 기저 입력에서의 작용을 확인해야 한다. 잘못된 유니터리도 노름은 보존하므로 노름 검증만으로 충분하지 않다.
정규화하지 않은 영이 아닌 벡터 z에서 시작해도 된다. 다만 제곱 노름 N을 이용해 성분의 의미를 해석해야 한다. 회로에서 나온 진폭이라고 해서 자동으로 정규화된 것은 아니다.
z=(1,i)이면 N=2이고 밀도행렬의 비대각 성분은 −i/2와 i/2이다. 계산 기저 확률은1/2,1/2이지만 최대혼합 상태는 아니다. 두 확률이 담지 못한 정보가 비대각 성분에 있다.
단일 큐비트의 축약 상태는 Bloch 좌표로 쓸 수 있다. 이 세 좌표는 각각의 기댓값이며 서로 독립적인 확률 세 개가 아니다.
z=(1,i) 예는 r=(0,1,0)이다. Y의 부호를 확인하면 복소켤레 방향의 오류를 찾기 좋다. Bloch 구면 위의 점은 순수 상태다. 구 내부의 축약 상태는 혼합 상태일 수 있으며, 전체 상태가 순수해도 그렇다. Bell 상태에서는 각 Bloch 벡터가0이고 국소 순도는1/2이지만 결합 순도는1이다. 이 국소 벡터들을 독립적인 순수 상태로 취급하면 얽힘을 잃는다.
두 지점의 기댓값은 빠진 결합 정보의 일부를 드러낸다. 연결 상관관계는 개별 평균으로 설명되는 부분을 뺀다.
더하기 Bell 상태에서는 XX=1, YY=−1, ZZ=1이고 개별 평균은 모두0이다. 반면 곱 입력에서도 두 지점 기댓값이0이 아닐 수 있다. |+i〉⊗|+〉의 Y₀X₁=1은 Y₀=1과 X₁=1의 곱으로 완전히 설명되므로 연결 상관관계는0이다. 원래 상관관계가0이 아니라는 사실만으로 얽힘을 인증할 수는 없다.
모든 두 지점 상관관계를 알아도 세 큐비트 상태가 정해지지 않을 수 있다. GHZ 상태와 |000〉·|111〉의 균등한 고전 혼합은 단일·두 큐비트 축약 상태가 같다. 그러나 세 지점 XXX 기댓값은 GHZ에서1, 혼합에서0이다. 결합 상태가 같은지를 판단할 때에는 전체 밀도행렬을 유지해야 한다.
마지막으로 fidelity의 관례를 지정하자. 여기서는 순수 상태 중첩의 제곱을 사용한다.
전체 위상만 다른 상태에서는1이고 |0〉과 |+〉 사이에서는1/2이다. 어떤 교재는 이 값의 제곱근을 fidelity라고 부른다. 수치를 비교하기 전에 정의식을 확인하자. 축약 상태와 제곱근 fidelity 관례의 배경은 IBM density matrices, IBM purifications and fidelity를 참고한다.
예측: Z가 |+〉의 계산 기저 확률을 바꾸는가? 아니다. 상대 부호를 바꾸며, X기저 측정은 그 차이를 구별한다. 계산 기저 측정 전에 H를 넣으면 이 정보를 읽을 수 있다.
계산: |01〉에 제어1·대상0인 CX를 적용하자. 제어가1이므로 |11〉이 된다. 제어0·대상1이었다면 |01〉 그대로다. 비트 순서와 제어의 의미를 함께 확인하는 예다.
오류 찾기: 노름은 맞지만 Bell 상관관계가 틀리면 정규화부터 고쳐야 하는가? 아니다. 초기 텐서 순서, 제어·대상 번호, 게이트 시간 순서를 확인하자. 잘못된 유니터리도 모든 노름을 보존하면서 다른 상태를 계산할 수 있다.
매개변수 회로에는 미분 가능한 게이트와 목적함수가 추가되고, 잡음을 넣으면 상태 벡터 대신 밀도연산자가 필요하다. 다음 단원에서는 어떤 잡음 갱신이 물리적으로 가능한지 묻는다. 국소 통계만으로 회로를 설명하기 전에 유니터리·얽힘 단원을 복습하자. 표현의 배경은 IBM Quantum Learning을 참고했다. HTH와 선 순서 계산은 이 교재의 독립 예제다.
실험 설정과 무관한 기준 예제를 묻습니다. 답을 고르고 설명을 확인해보세요.
선택한 답과 학습 표시는 이 브라우저에 저장됩니다. 다시 풀거나 표시를 해제할 수 있습니다.