중첩과 간섭 — 두 큐비트가 왜 그렇게 강력한가
지난 글에서 우리는 단일 큐비트가 0과 1을 동시에 표현하는 중첩 상태에 있을 수 있다는 것을 배웠습니다. 하지만 여기서 한 가지 의문이 남습니다. 그렇다면 두 개의 큐비트를 함께 사용하면 어떻게 될까요? 세 개, 열 개, 백 개는요?
이 질문에 대한 답이 양자컴퓨터가 고전컴퓨터를 압도할 수 있는 이유의 핵심입니다. 단순히 두 배, 세 배 강해지는 것이 아니라, 지수적으로 폭발적인 계산 능력의 증가가 일어나기 때문입니다. 그리고 이것이 가능한 이유는 두 가지 양자 현상 — 중첩의 확장과 간섭 — 이 함께 작동하기 때문입니다.
한 큐비트에서 두 큐비트로: 지수적 확장의 시작
고전컴퓨터의 세계로 먼저 돌아가봅시다. 고전 비트는 0 또는 1입니다. 두 개의 고전 비트가 있다면, 그것이 표현할 수 있는 상태는 네 가지입니다: 00, 01, 10, 11. 세 개의 비트라면? 여덟 가지. n개의 비트라면 2^n가지입니다.
여기까지는 고전컴퓨터도 같습니다. 하지만 고전컴퓨터는 한 번에 이 네 가지 상태 중 정확히 하나만 가질 수 있습니다. 00이거나 01이거나 10이거나 11이거나, 딱 하나입니다. 만약 당신이 세 개의 고전 비트를 가지고 있고 그것이 어떤 상태인지 알고 싶다면, 당신은 그 비트들을 읽어야 하고, 그러면 여덟 가지 상태 중 정확히 하나의 결과를 얻게 됩니다.
양자컴퓨터는 다릅니다. 두 개의 큐비트가 있다면, 그것은 네 가지 상태를 모두 동시에 중첩된 상태로 존재할 수 있습니다. 이것은 단순히 "네 가지 중 하나를 기억하고 있다"는 뜻이 아닙니다. 정말로 동시에, 병렬로 네 가지 상태 모두가 존재한다는 의미입니다. 세 개의 큐비트라면? 여덟 가지 상태를 동시에 표현합니다. 백 개의 큐비트라면? 2^100 — 약 1,267조 개의 상태를 동시에 표현할 수 있습니다.
이것이 지수적 확장입니다. 큐비트 개수가 하나 늘어날 때마다 표현할 수 있는 상태의 수는 두 배씩 증가합니다. 이것만 해도 엄청난 일처럼 들리지만, 여기에 함정이 있습니다. 당신이 이 중첩된 상태를 측정하는 순간, 네 가지 상태 중 하나만 붕괴되어 나타납니다. 그렇다면 우리는 2^100개의 상태를 동시에 표현할 수 있으면서도, 측정할 때는 하나의 답만 얻는 것 아닌가요? 이것은 모순처럼 보입니다.
하지만 여기가 바로 양자 간섭이 등장하는 지점입니다.
양자 간섭: 오답은 사라지고 정답은 밝아진다
양자 간섭을 이해하기 위해 물 위의 파도를 상상해봅시다. 두 개의 파도가 같은 방향으로 만나면, 그들의 파장이 겹쳐서 더 큰 파도가 됩니다. 이것을 보강 간섭이라고 합니다. 반대로, 한 파도의 봉우리가 다른 파도의 골짜기와 만나면, 그들은 서로를 상쇄하고 물은 고요해집니다. 이것을 소멸 간섭이라고 합니다.
양자컴퓨터에서도 정확히 같은 일이 일어납니다. 양자 상태는 파동처럼 행동하기 때문입니다. 우리가 양자 알고리즘을 설계할 때, 우리는 이 간섭을 이용합니다. 잘못된 답으로 가는 경로들의 확률 진폭을 소멸 간섭으로 상쇄시키고, 올바른 답으로 가는 경로들의 확률 진폭을 보강 간섭으로 증폭시킵니다.
구체적인 예를 들어봅시다. 당신이 100개의 숫자 중에서 특정한 하나의 숫자를 찾는 문제를 풀고 있다고 가정해봅시다. 고전컴퓨터라면? 최악의 경우 100번 다 확인해야 합니다. 하지만 양자컴퓨터는 다릅니다.
먼저 당신은 100개의 상태를 모두 중첩시킵니다. 그 다음, 당신은 양자 게이트를 이용해서 계산을 수행합니다. 이 과정에서 잘못된 답들로 가는 확률 진폭은 서로 간섭해서 상쇄됩니다. 동시에 올바른 답으로 가는 확률 진폭은 계속 증폭됩니다. 최종적으로 당신이 측정할 때, 당신은 올바른 답을 얻을 확률이 매우 높습니다. 이것이 정답 증폭입니다.
이 원리는 단순해 보이지만, 실제로 이것을 구현하는 것은 매우 어렵습니다. 왜냐하면 양자 상태는 매우 섬세하기 때문입니다. 조금만 환경의 간섭을 받아도 중첩이 깨지고 간섭이 사라집니다. 이것을 데코히런스라고 부르며, 현재의 양자컴퓨터들이 직면하고 있는 가장 큰 도전 중 하나입니다.
얽힘: 두 큐비트가 더 이상 독립적이지 않을 때
양자 간섭의 강력함을 완전히 이해하려면 또 다른 개념을 알아야 합니다. 바로 얽힘(entanglement)입니다.
고전세계에서 두 개의 동전을 던진다고 생각해봅시다. 첫 번째 동전이 앞면이 나올 확률은 50%, 뒷면이 나올 확률도 50%입니다. 두 번째 동전도 마찬가지입니다. 이 두 동전은 완전히 독립적입니다. 첫 번째 동전의 결과가 두 번째 동전의 결과에 영향을 주지 않습니다.
양자세계도 처음에는 이렇게 보입니다. 두 개의 큐비트가 있고, 각각이 0과 1을 중첩하고 있다면, 우리는 네 가지 상태 |00⟩, |01⟩, |10⟩, |11⟩을 동시에 표현할 수 있습니다.
하지만 특정한 양자 게이트를 사용하면, 이 두 큐비트를 얽힐 수 있습니다. 얽힌 상태에서는 두 큐비트가 더 이상 독립적이지 않습니다. 예를 들어, 당신이 첫 번째 큐비트를 측정해서 0을 얻으면, 두 번째 큐비트는 자동으로 어떤 상태가 되어야 합니다. 이것은 마치 두 개의 동전이 신비로운 방식으로 연결되어 있어서, 하나의 결과가 다른 하나를 즉시 결정하는 것처럼 보입니다.
아인슈타인은 이 현상을 "먼 거리에서의 유령 같은 작용"이라고 부르며 불편해했습니다. 하지만 이것은 양자역학의 가장 기본적인 특성이며, 양자컴퓨터의 강력함을 만드는 중요한 요소입니다. 얽힘이 없다면, 우리는 지수적 확장의 이점을 제대로 활용할 수 없습니다.
현재 NISQ(Noisy Intermediate-Scale Quantum) 단계의 양자컴퓨터들, 예를 들어 IBM의 양자 프로세서나 IonQ의 이온 트랩 기반 시스템들은 이 얽힘을 만들고 유지하는 데 많은 어려움을 겪고 있습니다. 환경의 잡음과 간섭으로 인해 얽힌 상태가 빠르게 붕괴되기 때문입니다. 이것이 현재 양자컴퓨터의 성능을 제한하는 주요 요인 중 하나입니다.
지수적 확장과 간섭의 조화
이제 우리는 왜 양자컴퓨터가 특정한 문제에서 고전컴퓨터를 압도할 수 있는지 이해할 수 있습니다.
양자컴퓨터는 세 가지 요소가 함께 작동합니다. 첫째, 중첩을 통해 지수적으로 많은 상태를 동시에 표현합니다. 둘째, 간섭을 통해 오답의 확률을 상쇄하고 정답의 확률을 증폭합니다. 셋째, 얽힘을 통해 이 모든 것이 가능해집니다.
하지만 이것은 모든 문제에 적용되는 것은 아닙니다. 양자 알고리즘이 효과적이려면, 문제의 구조가 이런 간섭을 활용할 수 있어야 합니다. 그래서 양자컴퓨터는 특정한 종류의 문제 — 예를 들어 소인수분해, 데이터베이스 검색, 최적화 문제 — 에서 매우 강력하지만, 다른 모든 문제에서 뛰어난 것은 아닙니다.
이것이 현재 양자컴퓨터의 미래가 하이브리드 컴퓨팅에 있다고 말하는 이유입니다. 고전컴퓨터가 일반적인 계산을 하고, 양자컴퓨터가 특정한 부분 문제를 해결하는 방식으로 함께 작동하는 것입니다. 이미 IBM, Google, IonQ 같은 회사들은 이런 하이브리드 접근 방식을 중심으로 제품을 개발하고 있습니다.
다음 글에서는 이런 양자 알고리즘이 실제로 어떻게 설계되는지, 그리고 현재의 양자컴퓨터들이 어떤 문제에 도전하고 있는지 살펴보겠습니다.
📚 관련 글
양자컴퓨터의 진정한 힘은 지수적 중첩 자체가 아니라, 간섭을 통해 그 중첩을 정답으로 향하게 만드는 능력에 있습니다.
슈로 🐾