드레스드 박스
양자 회로를 실행하는 동안 발생하는 물리적 노이즈 메커니즘은 문맥에 의존합니다. 서로 겹치지 않는 큐비트 집합에 연산을 동시에 적용하면, 전체 연산의 노이즈 프로파일이 각 구성 요소를 따로 적용했을 때의 노이즈 프로파일과 다를 수 있습니다. 마찬가지로, 같은 큐비트에서 이상적으로는 서로 교환되는 연산이라도 개별 연산과 관련된 노이즈 프로파일은 교환되지 않을 수 있으며, 연산 순서가 바뀌면 전혀 달라질 수도 있습니다. 따라서 노이즈를 억제, 완화, 정정하는 프로토콜은 노이즈가 발생하는 문맥을 알아야 합니다.
Samplomatic은 박스 명령어를 사용하여 안정적인 노이즈 문맥을 갖는 것으로 취급되어야 하는 회로 연산의 모음을 다루고, 박스의 주석을 사용하여 사용자가 그러한 의도를 선언하고 구성할 수 있게 합니다. 모든 박스는 큐비트 집합, 해당 큐비트에 작용하는 연산, 그리고 주석 목록을 소유하는 스코프입니다. Samplomatic 주석은 디렉티브와 드레싱을 지정합니다. 디렉티브는 박스로 무엇을 할지(예: 박스를 트윌링)를 지정합니다. 드레싱은 박스의 왼쪽 또는 오른쪽에 추가할 매개변수화된 게이트 그룹(예: 단일 큐비트 게이트 층)입니다. 드레싱의 게이트에는 박스의 게이트와 디렉티브를 수행하는 데 필요한 연산이 포함되며, 예를 들면 다음과 같습니다.
-
박스 안의 게이트 중 매개변수화된 게이트와 호환되고 같은 쪽에 있는 게이트.
-
박스를 무작위화하기 위해 집합에서 샘플링한 트윌링 게이트.
-
Pauli Lindblad 맵에서 샘플링한 노이즈 주입 게이트.
-
사용자가 지정한 기저 변경 게이트.
디렉티브가 다른 박스의 드레싱을 변경할 수 있다는 점에 유의하세요.
예제
다음 회로를 트윌링한다고 가정해 보겠습니다. 병렬 얽힘 게이트 앞뒤에 무작위 Pauli 게이트를 추가하며, 이 게이트는 회로의 논리적 내용은 바꾸지 않지만 유효 노이즈 모델은 바꿉니다.
Pauli 트윌링할 회로.
이는 회로를 박스로 층화하고 트윌 주석을 추가하여 수행합니다.
Pauli 트윌링 디렉티브가 있는 회로. @ 기호는 디렉티브를 지정하는 데 사용되며, 드레싱은 기본적으로 왼쪽에 있습니다.
각 드레스드 박스에는 단일 큐비트 게이트 층과, 서로 겹치지 않는 큐비트 쌍에 대한 2큐비트 얽힘 게이트 층이 들어 있습니다. 얽힘 게이트 층은 박스의 논리적 작용이 바뀌지 않도록 무작위 Pauli 게이트 층으로 둘러싸여 있습니다. 이러한 무작위 Pauli 층은 가상 Z 게이트와 같은 방식으로 가상입니다. 회로에 연산을 추가하지 않고, 대신 인접한 단일 큐비트 게이트의 구현 방식을 바꾸는 디렉티브로 작용합니다.
드레싱과 디렉티브에서 나온 게이트가 있는 회로. 드레싱은 점선 박스입니다. 화살표로 연결된 Pauli 층은 서로 상쇄됩니다. 마지막 Pauli 층은 측정 결과에 비트 플립으로 적용됩니다.
얽힘 게이트와 단일 큐비트 게이트 사이의 무작위 Pauli 층은 단일 큐비트 게이트 층에 합성되어 해당 드레싱에서 구현됩니다. 나머지 무작위 Pauli 층은 다음 드레스드 박스의 드레싱에 합성됩니다.
요약하면, 왼쪽(또는 오른쪽) 트윌 디렉티브는 이 박스의 드레싱에서 무작위 Pauli를 구현하고, 이를 되돌리는 Pauli를 다음(또는 이전) 박스의 드레싱에 적용합니다. 노이즈 주입 및 기저 변경 디렉티브도 마찬가지입니다.
가상 게이트를 이용한 회로 무작위화
Samplomatic은 가상 게이트 프레임워크를 사용하여 드레스드 박스가 있는 회로를 다룹니다. 개념적으로, 그리고 build() 과정에서 생성되는 Samplex 인스턴스에서 구현되는 방식대로, 가상 게이트는 드레싱의 반대편인 박스 경계에서 생성됩니다. 이러한 가상 게이트는 정해진 방식으로 회로를 따라 이동하며 드레싱에 합성되어야 합니다. 모든 가상 게이트를 드레싱에 합성할 수 있으면, 회로의 무작위화를 절차적으로 구성할 수 있습니다.
트윌, 기저 변경, 노이즈 주입 디렉티브가 있는 회로.
드레싱의 템플릿 매개변수화와 호환되는 드레싱 쪽의 게이트는 드레싱에 합성할 수 있으며, 이로써 물리적 게이트 수가 줄어듭니다. 이러한 게이트를 easy 게이트라고 합니다. 박스의 나머지 부분은 hard라고 하며 그대로 구현됩니다.
가상 게이트가 남아 있는 회로의 예. 드레싱 반대편의 가상 게이트는 구현될 곳이 없습니다.
모든 가상 게이트가 드레싱에 합성된 회로의 예. 측정에는 측정이 유발하는 비트 플립을 고려하여 Pauli 게이트가 합성됩니다.
모든 가상 게이트가 수집되는 복잡한 예. 한 박스에서 생성된 가상 게이트는 서로 다른 드레싱에 합성될 수 있습니다.
이로써 드레스드 박스의 너비가 같지 않아도 되는 구성이 가능합니다.