Skip to main content
IBM Quantum Platform

IBM 퀀텀 컴포저


개념

IBM 퀀텀® 컴포저는 드래그 앤 드롭으로 양자 회로를 만들고 양자 하드웨어에서 실행할 수 있는 그래픽 양자 프로그래밍 도구입니다.


무엇을 할 수 있나요?

큐비트 상태 시각화

회로의 변경이 큐비트 상태에 미치는 영향을 대화형 큐 구체 또는 측정 확률 또는 상태 벡터 시뮬레이션을 보여주는 히스토그램으로 확인할 수 있습니다.

양자 하드웨어에서 실행

실제 양자 하드웨어에서 회로를 실행하여 디바이스 노이즈의 영향을 파악하세요.

코드 자동 생성

직접 코드를 작성하는 대신 Composer로 만든 회로와 동일한 방식으로 작동하는 OpenQASM 또는 Python 코드를 자동으로 생성하세요.


인터페이스 둘러보기

IBM 퀀텀 컴포저에는 양자 처리 장치(QPU)에서 양자 회로를 빌드, 시각화 및 실행할 수 있는 사용자 지정 가능한 도구 세트가 있습니다. 각 창의 '추가 옵션' 메뉴를 사용하여 추가 도구 및 작업에 액세스합니다.

IBM Quantum Composer 창
  1. 연산 카탈로그 - 양자 회로의 구성 요소입니다. 이러한 게이트 및 기타 연산을 그래픽 회로 편집기로 끌어다 놓습니다. 다양한 유형의 게이트가 색상별로 그룹화되어 있습니다. 예를 들어 클래식 게이트는 진한 파란색, 위상 게이트는 연한 파란색, 비단일 작업은 회색입니다.

    사용 가능한 게이트 및 작업에 대해 알아보려면 작업을 마우스 오른쪽 버튼으로 클릭하고 정보를 선택하여 정의를 읽습니다.

  2. 코드 편집기 - 보기 메뉴를 사용하여 회로의 OpenQASM 또는 키스킷 코드를 볼 수 있는 코드 편집기를 열거나 닫습니다. OpenQASM 코드를 편집할 수 있으며, 키스킷 코드는 읽기 전용입니다.

  3. 그래픽 회로 편집기 - 회로를 구축하는 곳입니다. 게이트 및 기타 연산을 양자 레지스터를 구성하는 수평 큐비트 '와이어'로 드래그하세요.

    와이어에서 게이트를 제거하려면 게이트를 선택하고 휴지통 아이콘을 클릭합니다.

    편집을 지원하는 게이트의 매개변수 및 설정을 편집하려면 그래픽 편집기에서 게이트를 선택하고 편집을 클릭합니다.

  4. 도구 모음 - 자주 사용하는 도구에 액세스하여 작업 실행 취소 및 재실행, 게이트 정렬 변경, 검사 모드로 전환할 수 있습니다. 검사 모드를 사용하면 회로 계산이 진행됨에 따라 큐비트 상태를 단계별로 볼 수 있습니다. 자세히 알아보려면 단계별 회로 검사를 참조하세요.

  5. 위상 디스크 - 복소 평면에서 큐비트 상태 벡터의 위상은 다이어그램의 중심에서 회색 디스크의 가장자리까지 연장되는 선(중심점을 중심으로 반시계 방향으로 회전)으로 표시됩니다.

    보기 메뉴를 사용하여 위상 디스크를 표시하거나 숨깁니다.

  6. 시각화 - 회로를 만들 때 시각화를 통해 회로의 특성을 파악할 수 있습니다. '회로 실행' 설정에 지정된 QPU와는 다른 단일 샷 상태 벡터 시뮬레이터를 사용합니다. 시각화에서는 사용자가 추가하는 모든 측정 작업을 무시합니다. 로그인하고 회로 실행을 클릭하여 지정된 백엔드에서 결과를 대신 가져옵니다.

    시각화 섹션에서 자세히 알아보세요.


양자 회로를 구축, 편집 및 검사합니다

Composer를 종료하기 전에 회로 파일을 다운로드하세요

나중에 서킷 작업을 계속하려면 현재 Composer 세션을 종료하기 전에 서킷 파일을 다운로드하여 로컬에 저장하세요. 오른쪽 상단의 '파일 저장' 링크를 사용하거나 파일 메뉴로 이동하여 '파일 저장'을 선택합니다. 회로로 다시 작업할 준비가 되면 파일 메뉴로 이동하여 ".qasm 파일 업로드"를 선택한 다음 로컬 드라이브에 있는 회로 파일로 이동하여 열기를 클릭합니다.

1. IBM Quantum Composer 을 엽니다

  1. (선택 사항) 현재 IBM 퀀텀에 로그인하지 않은 경우 오른쪽 상단 모서리에서 로그인을 선택합니다. 그런 다음 로그인하거나 IBM Cloud 계정을 만들 수 있습니다.
Note

로그인하지 않으면 시각화에 최대 4개의 큐비트에 대한 시뮬레이션 결과가 자동으로 표시됩니다. 양자 컴퓨터에서 회로를 실행하거나 큐비트가 4개 이상인 회로를 시각화하려면 로그인해야 합니다.

  1. 학습 페이지 탐색에서 링크를 클릭하여 IBM Quantum Composer를 엽니다. 작업 공간에 제목이 없는 빈 회로가 표시됩니다. 새 서킷을 만들거나.qasm 파일을 업로드하여 이미 만든 서킷으로 계속 작업할 수 있습니다.

  2. 제목 없는 서킷이라는 단어를 클릭하고 서킷의 이름을 입력하여 서킷의 이름을 지정합니다. 확인 표시를 클릭하여 이름을 저장합니다.

  3. (선택 사항) 작업 공간을 사용자 지정합니다:

    • 보기 메뉴를 사용하여 기본 테마에서 흑백 테마로 변경합니다. 또한 작업 공간에 포함할 패널을 선택한 다음 패널의 오른쪽 모서리에 있는 메뉴를 사용하여 추가 사용자 지정 옵션에 액세스할 수도 있습니다. 위상 디스크 표시 또는 숨기기, 회로에서 큐비트 정렬 선택, 작업 공간을 기본값으로 재설정하는 옵션도 보기 메뉴에 있습니다.
    • 바닥글의 오른쪽 하단 모서리에서 어두운 작업 공간 테마와 밝은 작업 공간 테마를 전환합니다.

회로를 구축하려면 작업을 끌어서 놓거나 코드 편집기에 OpenQASM 코드를 입력할 수 있습니다.

2. 드래그 앤 드롭으로 회로를 구성하세요

운영 카탈로그

작업 카탈로그에서 퀀텀 및 클래식 레지스터로 작업을 끌어다 놓습니다. 검색 아이콘을 클릭하고 검색창에 용어를 입력하면 작업을 빠르게 찾을 수 있습니다.

작업 패널의 오른쪽 상단에 있는 아이콘을 클릭하여 작업 카탈로그를 축소 및 확장합니다. 옆에 있는 아이콘을 클릭하면 카탈로그의 그리드 보기와 목록 보기 간에 전환할 수 있습니다.

작업 아이콘을 마우스 오른쪽 버튼으로 클릭하고 정보를 선택하면 작업의 정의와 함께 해당 QASM 참조를 볼 수 있습니다.

실행 취소하거나 다시 실행하려면 도구 모음의 곡선 화살표를 사용하세요.

정렬

자유형 정렬을 선택하여 서킷의 어느 곳에나 작업을 배치할 수 있습니다. 회로를 더 간결하게 보려면 왼쪽 정렬을 선택합니다. 작업이 실행되는 순서를 확인하려면 레이어 정렬을 선택하면 왼쪽 정렬이 적용되고 왼쪽에서 오른쪽, 위에서 아래로 실행 순서를 나타내는 열 구분 기호가 추가됩니다.

회로에 작업을 배치한 후에는 계속해서 새로운 위치로 끌어다 놓을 수 있습니다.

복사하여

붙여넣기

작업을 클릭하고 상황에 맞는 메뉴의 아이콘을 사용하여 복사하여 붙여넣습니다.

여러 작업을 선택하세요

여러 작업을 선택하여 복사하여 붙여넣거나, 새 위치로 드래그하거나, 작업 카탈로그에 표시되고 단일 게이트 역할을 하는 사용자 지정 단일 작업으로 그룹화할 수 있습니다.

두 개 이상의 작업을 선택하려면 작업 중 하나 바로 바깥에 커서를 놓은 다음 해당 영역을 클릭하고 드래그하여 선택합니다. 개별 작업을 선택하거나 선택 취소하려면 Shift 키를 클릭합니다. 파선은 선택 중인 작업 집합의 윤곽을 나타내며, 실제로 선택의 일부인 각 작업은 파란색으로 윤곽이 그려져 있습니다.

예를 들어, 다음 이미지에서는 q1 의 Hadamard 게이트와 CX 게이트가 선택되어 있습니다. q0 의 하다마드 게이트가 선택되지 않았습니다.

선택된 작업 집합

상황에 맞는 메뉴에서 복사를 선택하여 그룹을 복사합니다.

작업 그룹을 붙여넣으려면 회로를 마우스 오른쪽 버튼으로 클릭하고 붙여넣기를 선택합니다.

그룹 기능을 사용하여 사용자 지정 작업을 구축하십시오

여러 작업을 함께 그룹화하여 사용자 지정 작업으로 저장하려면 먼저 위에서 설명한 대로 작업을 선택한 다음 상황에 맞는 메뉴에서 그룹을 선택합니다. 사용자 지정 작업의 이름을 지정하라는 메시지가 표시되거나 기본 이름을 수락할 수 있습니다. 확인을 클릭하면 사용자 지정 작업이 회로와 작업 카탈로그 모두에서 단일 상자로 표시됩니다.

이제 회로 전체에 새 작업을 끌어다 놓을 수 있습니다. 작업은 이 회로에 저장되지만 다른 회로의 작업 카탈로그에는 표시되지 않습니다.

OpenQASM 코드 편집기에서 직접 사용자 지정 작업을 작성할 수도 있습니다. 자세한 내용은 OpenQASM 에서 사용자 지정 작업 만들기를 참조하세요.

사용자 정의 또는 사전 정의된 작업의 그룹 해제

사용자 지정 또는 미리 정의된 작업 내에서 게이트의 그룹을 해제하려면 작성기에서 작업을 클릭하고 상황에 맞는 메뉴에서 그룹 해제를 선택합니다. 이제 개별 작업을 개별적으로 이동할 수 있습니다. 작업을 그룹화 해제하면 이전 그룹의 각 요소가 독립적으로 실행되므로 함께 그룹화되었을 때와 다른 순서로 실행될 수 있습니다.

작업의 정의를 확장하다

사용자 지정 또는 미리 정의된 작업을 그룹화하지 않고 해당 작업을 구성하는 작업을 보려면 상황에 맞는 메뉴에서 정의 확장을 클릭하여 정의 게이트를 확인합니다. 정의를 축소하려면 아이콘을 다시 클릭합니다.

사용자 정의 작업의 이름 변경 또는 삭제

사용자 지정 작업의 이름을 바꾸거나 삭제하려면 작업 카탈로그에서 작업을 마우스 오른쪽 버튼으로 클릭하고 이름 바꾸기 또는 삭제를 선택합니다. 작업 카탈로그에서 사용자 지정 작업을 삭제하면 회로에 있는 해당 작업의 인스턴스도 모두 삭제됩니다.

회로 자체에서 사용자 지정 작업을 삭제해도 작업 카탈로그에서는 삭제되지 않으며, 마우스 오른쪽 버튼을 클릭하고 삭제를 선택해야만 카탈로그에서 사용자 지정 작업을 삭제할 수 있습니다.

레지스터 추가 또는 제거

퀀텀 또는 클래식 레지스터를 추가하거나 제거하려면 편집 → 레지스터 관리를 클릭합니다. 회로의 큐비트 또는 비트 수를 늘리거나 줄이고 레지스터의 이름을 변경할 수 있습니다. 확인을 클릭하여 변경 사항을 적용합니다. 또한 레지스터 이름(예: q[0])을 클릭하고 상황에 맞는 메뉴의 옵션을 사용하여 레지스터 또는 큐비트를 빠르게 추가하거나 삭제할 수도 있습니다.

조건문을 추가하세요

게이트에 조건을 추가하려면 if 작업을 게이트에 드래그하고 자동으로 열리는 작업 편집 패널에서 매개변수를 설정합니다. 게이트를 두 번 클릭하여 편집 작업 패널에 액세스하고 같은 방식으로 조건부 매개변수를 설정할 수도 있습니다.

제어 수정자 추가

제어 수정자는 원래 동작이 제어 큐비트의 상태에 따라 달라지는 게이트를 생성합니다. 자세한 내용을 보려면 작업 카탈로그에서 컨트롤 수정자 기호를 마우스 오른쪽 버튼으로 클릭한 다음 정보를 클릭합니다.

컨트롤을 추가하려면 컨트롤 수정자를 게이트로 드래그합니다. 제어 큐비트에 점이 나타나고 선이 대상 큐비트에 연결됩니다. 제어 또는 타겟이 되는 큐비트를 편집하려면 게이트를 클릭하고 연산 편집 아이콘을 선택(또는 게이트를 더블 클릭)하여 연산 편집 패널을 연 다음 파라미터를 지정합니다. 편집 조작 패널에서 큐비트 이름 옆의 X를 클릭하여 큐비트에서 컨트롤을 제거할 수도 있습니다.

회로 전체에 위상 디스크를 사용하여 시각화하십시오

회로의 어느 지점에서든 모든 큐비트의 상태를 시각화하려면 작업 카탈로그에서 위상 디스크 아이콘을 드래그하여 회로의 아무 곳에나 배치합니다. 배리어 연산 열과 위상 디스크 열이 추가됩니다(큐비트당 하나의 배리어 연산과 위상 디스크). 각 위상 디스크 위로 마우스를 가져가면 회로의 해당 지점에서 큐비트의 상태를 읽을 수 있습니다. 위상 디스크를 추가한다고 해서 회로가 변경되는 것은 아니며, 단지 시각화 도구일 뿐이라는 점에 유의하세요.

위상 디스크 시각화에 대해 자세히 알아보세요.

회로 이미지 내보내기

서킷 이미지를 내보내려면 파일 → 서킷 이미지 내보내기를 선택합니다. 내보내기 옵션 창이 열리면 테마(밝게, 어둡게, 검정색에 흰색, 흰색에 검정색), 형식(.svg 또는.png), 줄 바꿈 적용 여부를 선택할 수 있습니다. 옵션을 선택한 후 내보내기를 클릭합니다.

3. OpenQASM 코드로 회로를 구축하세요

Note

IBM 퀀텀 컴포저는 현재 OpenQASM 2.0 을 지원합니다.

명령문설명
OPENQASM 2.0;OpenQASM 형식의 파일을 나타냅니다( [a] 참조)OPENQASM 2.0;
qreg [이름 크기];큐비트의 명명된 레지스터를 선언합니다qreg [q5];
크레그 [네임사이즈];명명된 비트 레지스터 선언cREG [C5];
"파일명"을 포함합니다;다른 소스 파일 열기 및 구문 분석포함 “qelib1.inc”;
게이트 이름(매개변수) QARGS단일 게이트 선언(본문 참조)
불투명 이름(매개변수) QARGS;불투명 게이트 선언(본문 참조)
// 댓글 텍스트텍스트 한 줄에 댓글 달기// 죄송합니다!
U(세타, 파이, 람다) 쿼비트|qreg;내장된 단일 큐비트 게이트 적용( [B] 참조)U( pi/2,2*pi/3,0) [q0];
CX 쿼비트|큐레그,쿼비트|큐레그;기본 제공 CNOT 게이트 적용CX [q0], [q1];
측정 쿼비트|큐레그 -> 비트|크레그;ZZ 기준으로 측정측정 Q -> C;
rESET QUBIT|QREG;다음에서 큐비트를 준비합니다 0\vert 0\ranglerESET [Q0];
게이트네임(매개변수) QARGS;사용자 정의 단일 게이트 적용cRZ( pi/2 ) [Q1], [Q0];
if(creg==int) qop;조건부 양자 연산 적용if( c==5 ) CX [q0], [q1];
배리어 QARGS;이 소스 라인에서 변환 방지배리어 [Q0], [Q1];

[a] 파일의 주석이 아닌 첫 번째 줄에 표시되어야 합니다.

[b] 매개변수 세타, 파이, 람다는 매개변수 표현식을 통해 제공됩니다. 자세한 내용은 백서 5페이지와 부록 A를 참조하세요.

OpenQASM 에서 사용자 정의 작업 생성

코드 편집기에서 새로운 단일 연산을 정의할 수 있습니다(예는 아래 그림 참조). 연산은 기본 제공 연산과 마찬가지로 name(params) qargs; 문을 사용하여 적용됩니다. 매개 변수가 없는 경우 괄호는 선택 사항입니다.

사용자 지정 작업을 정의하려면 OpenQASM 코드 편집기에 다음 형식을 사용하여 입력합니다: gatename(params) qargs;. 작업 목록에서 +추가를 클릭하면 사용자 지정 작업의 이름을 입력하라는 메시지가 표시되며, 이를 코드 편집기에서 작성할 수 있습니다.

사용자 지정 작업을 정의한 후에는 그래픽 편집기로 드래그하고 편집 아이콘을 사용하여 매개변수를 미세 조정합니다.

사용자 지정 작업의 예
사용자 지정 작업에 포함될 게이트입니다:사용자 지정 작업의 게이트
새 작업의 코드입니다:맞춤형 새 작업
그래픽 편집기의 새로운 작업:새 오퍼레이션

4. 회로를 단계별로 점검하십시오

검사 모드에서는 생성한 회로의 내부 작동을 파악할 수 있습니다. 회로의 시뮬레이션을 한 번에 한 레이어씩 단계적으로 진행하므로 계산이 발전함에 따라 큐비트의 상태를 확인할 수 있습니다.

  • 보기 메뉴에서 사용하려는 시각화에 대한 패널을 선택합니다.

  • 도구 모음에서 검사 토글을 클릭합니다. 검사 모드가 켜져 있으면 다시 끌 때까지 더 이상 작업을 추가할 수 없다는 점에 유의하세요.

  • 자유형 정렬을 켜고 회로를 만든 경우, 검사 모드에서 왼쪽 정렬이 자동으로 켜집니다.

  • 회로 구성 요소의 시각화를 단계별로 이동하려면 앞으로 가기 및 되감기 버튼을 사용합니다.

앞으로/뒤로 이동하고 서킷의 시작 또는 끝으로 점프하는 컨트롤.
서킷의 시작 부분으로 점프, 뒤로 이동, 한 중단점에서 다음 중단점으로 재생, 앞으로 이동, 서킷의 끝으로 점프 순으로 모드 컨트롤을 확인합니다.
  • 일부 작업만 검사하려면 검사하려는 작업을 클릭하면 검사 모드에서 실행할 때 해당 작업이 포함됨을 나타내는 색상 오버레이가 각 작업 위에 나타납니다. 작업을 선택 취소하려면 해당 작업을 다시 클릭하면 오버레이가 사라집니다.

  • 시각화 해석에 대해 자세히 알아보려면 시각화 항목을 참조하세요.

  • 검사 모드를 종료하고 회로 편집으로 돌아가려면 도구 모음에서 검사 토글을 클릭합니다.

시뮬레이터의 무작위성

시뮬레이터는 시드를 기반으로 결과를 생성하여 무작위성을 생성합니다. 시드는 의사 난수를 생성하는 알고리즘에 도입되는 초기 값입니다. 편집 메뉴에서 '시각화 시드'를 선택하면 시드 번호를 확인할 수 있습니다. 상자의 값을 변경하여 직접 시드를 설정할 수도 있습니다.


회로를 실행하고 결과를 확인하세요

아래 단계에 따라 QPU에서 양자 회로를 실행하고 결과를 확인합니다.

작업 설정을 선택하세요

오른쪽 상단 모서리에서 회로 실행을 클릭합니다. 창이 열리면 사용 가능한 QPU를 선택합니다. 또한 요금제(예: 오픈, 플렉스 또는 프리미엄 요금제)와 연결된 인스턴스를 선택할 수도 있습니다. 선택한 인스턴스는 사용 가능한 QPU에 영향을 줍니다. 각 QPU에 대한 자세한 정보를 보려면 QPU 표에서 '세부 정보 보기' 링크를 클릭하세요.

다음으로 백엔드에서 수행할 회로의 샷(실행) 횟수를 설정할 수 있습니다.

이 패널에서 선택적으로 작업의 이름을 지정하고 태그를 추가할 수도 있습니다. 이렇게 해도 서킷의 이름은 변경되지 않습니다. 미리 채워진 '작성자' 태그를 사용하면 작성자 작업별로 워크로드 테이블을 더 쉽게 필터링할 수 있습니다. 이 태그를 제거할 수 있습니다.

작업 옵션을 표시하는 창입니다.
Note

회로를 실행하면 실행 설정에서 QPU를 지정하지 않는 한, 가장 사용량이 적은 QPU로 자동으로 전송됩니다. 동일한 회로를 다시 실행하면 QPU 선택 창은 기본적으로 이전 선택 항목으로 돌아갑니다.

"실행 대상 (QPU 이름)"을 클릭하세요

오른쪽 상단의 "작업 보기" 버튼을 클릭하면 IBM Quantum Platform의 워크로드 페이지가 열리고 작업의 진행 상황을 확인할 수 있습니다.

뷰 결과

작업이 완료되면 IBM 퀀텀 플랫폼의 워크로드 표에 세부 정보가 업데이트됩니다.

작업 결과 페이지에는 실행 세부 정보, 원본 및 트랜스파일된 회로의 다이어그램, 결과의 히스토그램, OpenQASM 또는 키스킷에서 원본 및 트랜스파일된 회로를 모두 볼 수 있는 OpenQASM 및 키스킷 탭이 표시됩니다.

각 다이어그램의 오른쪽 상단에 있는 메뉴를 클릭한 다음 다운로드 형식(PNG, PDF 또는 SVG, 히스토그램을 CSV 파일로 내보낼 수도 있음)을 선택하면 회로와 히스토그램을 다운로드할 수 있습니다. Composer에서 OpenQASM 회로를 직접 열 수 있습니다.


시각화

IBM 퀀텀 컴포저의 라이브 시각화는 양자 회로가 큐비트 집합의 상태에 어떤 영향을 미치는지에 대한 다양한 시각을 보여줍니다. 각 라이브 시각화 유형에 대한 자세한 설명은 아래에 나와 있습니다.

시뮬레이터의 무작위성

라이브 시각화는 실행 설정에 지정된 QPU와는 다른 단일 샷 상태 벡터 시뮬레이터에서 제공되며, 이는 여러 샷을 가질 수 있습니다. 시뮬레이터는 시드를 기반으로 결과를 생성하여 무작위성을 생성합니다. 시드는 의사 난수를 생성하는 알고리즘에 도입되는 초기 값입니다. 편집 메뉴에서 '시각화 시드'를 선택하면 시드 번호를 확인할 수 있습니다. 상자의 값을 변경하여 직접 시드를 설정할 수도 있습니다.

시각화 보기

라이브 시각화는 작곡가 작업 공간 하단의 창에 표시됩니다(각 큐비트 와이어 끝에 나타나는 위상 디스크 제외). 작업 영역 하단에 표시할 상태 벡터, 확률 및 q-구 시각화의 조합을 선택할 수 있습니다. 보기 메뉴에서 시각화를 선택하거나 선택 취소합니다.

시각화 자료 다운로드

시각화 창에서 '추가 옵션' 메뉴를 클릭하여 작성기 작업 영역 하단에 있는 시각화 중 하나를 다운로드합니다. 시각화를 SVG, PNG 또는 기초 데이터의 CSV로 다운로드할 수 있습니다. 측정 확률 및 상태 벡터 히스토그램의 시각화 이미지를 PDF로 다운로드할 수도 있습니다.

위상판

단일 큐비트 상태는 다음과 같이 표현할 수 있습니다

ψ=1p0+ejφp1,\begin{split}\vert\psi\rangle = \sqrt{1-p}\vert0\rangle + e^{j\varphi} \sqrt{p} \vert1\rangle,\end{split}

여기서 pp 은 큐비트가 1|1\rangle 상태에 있을 확률이고 φ\varphi 은 양자 위상입니다. pp 은 고전적인 확률 비트와 매우 유사합니다. p=0p=0 의 경우 큐비트는 0|0\rangle 상태, p=1p=1 의 경우 큐비트는 1|1\rangle 상태, p=1/2p=1/2 의 경우 큐비트는 50/50 혼합 상태입니다. 기존 비트와 달리 이 혼합물은 양자 위상을 가질 수 있기 때문에 이를 중첩이라고 부릅니다. 위상 디스크는 이 상태를 시각화합니다.

IBM 퀀텀 컴포저에서 각 큐비트의 종단에 있는 위상 디스크는 계산이 끝날 때 각 큐비트의 로컬 상태를 제공합니다. 위상 디스크의 구성 요소는 아래에 설명되어 있습니다.

큐비트가 1|1\rangle 상태 에 있을 확률

큐비트가 1|1\rangle 상태에 있을 확률은 파란색 디스크 채우기로 표시됩니다.

큐비트가 1 상태에 있을 확률

양자 위상

큐비트 상태의 양자 위상은 다이어그램의 중심에서 회색 디스크의 가장자리까지 연장되는 선(중심점을 중심으로 시계 반대 방향으로 회전)으로 표시됩니다.

로컬 큐비트 상태의 위상

예: 서로 다른 두 큐비트에 대한 위상 디스크

위상 디스크 예제

위상 디스크 시각화의 두 가지 예입니다. 첫 번째 예는 1|1\rangle 상태이고 두 번째 예는 0이 아닌 상대 위상을 가진 (01)/2(|0\rangle-|1\rangle)/\sqrt{2} 상태를 보여줍니다.

블로흐 구체에 연결

블로흐 구의 모든 정보를 담고 있는 위상 디스크는 큐비트의 2차원 표현입니다. 블로흐 구체 표현으로 변환합니다: x=2p(1p)Re[ejφ]x=2\sqrt{p(1-p)}\mathrm{Re}[e^{j\varphi} ], y=2p(1p)Im[ejφ]y=2\sqrt{p(1-p)}\mathrm{Im}[e^{j\varphi} ], 및 z=12pz=1-2p 을 참조하세요.

N-큐비트 상태: 최대 15큐비트

N-큐비트 양자 상태는 다음과 같은 형태를 취합니다

ψ=1p0...0+k=12N1ejφkpkk,\begin{split}\vert\psi\rangle = \sqrt{1-p}\vert0...0\rangle + \sum_{k=1}^{2^N-1}e^{j\varphi_k} \sqrt{p_k} \vert k\rangle,\end{split}

여기서 pkp_k 는 큐비트가 0...0|0...0\rangle 상태에 대해 양자 위상 φk\varphi_k 을 갖는 k|k\rangle 상태에 있을 확률이고, p=k0pkp=\sum_{k\neq0}p_k 는 큐비트가 접지 상태 0...0|0...0\rangle 에 있지 않을 확률입니다. 여기서 N 큐비트 양자 상태의 경우 2N12^N-1 확률과 2N12^N-1 위상이 있다는 것을 쉽게 알 수 있습니다. 위상 디스크는 대부분의 상태가 얽혀 있고 독립적인 단일 큐비트 양자 상태로 분리할 수 없기 때문에 N-큐비트 위상 디스크는 NN 확률과 NN 위상만 포함하므로 이 상태를 표현하지 못합니다. 이 시각화에는 전체 정보가 포함되어 있지 않음을 나타내기 위해 감소된 순도를 위상 디스크의 구성 요소로 도입했습니다.

큐비트 상태의 순도 감소

위상 디스크의 검은색 원의 반지름은 큐비트 상태의 감소된 순도를 나타내며, 0-차원 큐비트( jj )가 0-차원 큐비트 얽힘( NN -qubit) 상태에 있을 때 ψ|\psi\rangle, 이는 다음 식으로 주어집니다. Tr[Trij[ψψ]2]\mathrm{Tr}\left[\mathrm{Tr}_{i\neq j}[\left|\psi\rangle\langle\psi\right|\right]^{2}]. 단일 큐비트의 감소된 순도는 [0.5,1][0.5, 1] 범위 내에 있으며, 값이 1일 경우 해당 큐비트가 다른 어떤 대상과도 얽혀 있지 않음을 의미합니다. 반면, 0.50.5 의 순도가 낮아진 것은 큐비트가 완전히 혼합된 상태에 남아 있으며, 남아 있는 N1N-1 큐비트들, 심지어 환경과도 어느 정도 얽힘을 가지고 있음을 보여준다.

확률 보기

8-쿼비트 제한

이 보기는 양자 상태의 확률을 막대 그래프로 시각화합니다. 가로축은 계산 기준 상태에 레이블을 지정합니다. 세로축은 백분율로 확률을 측정합니다. 이 보기에서는 양자 위상이 표시되지 않으므로 불완전한 표현입니다. 그러나 각 큐비트를 측정하고 그 값을 고유한 클래식 비트에 저장하면 결과를 예측하는 데 유용합니다.

다음 양자 회로와 그 확률 보기를 생각해 보세요:

양자 회로
: 계산 기저 상태들의 균등한 중첩을 생성하는 하다마드 연산들의 열로 구성되고, 그 뒤에 2-큐비트 제어 Z(CZ) 게이트가 이어지는 회로.
이전 회로의
확률적 관점.

이 회로는 두 큐비트를 ψ=(00+01+1011)/2|\psi\rangle = (|00\rangle + |01\rangle+ |10\rangle-|11\rangle) / 2 상태로 만듭니다. 계산 기저 상태는 00,10,01|00\rangle, |10\rangle, |01\rangle11|11\rangle 입니다. 각 계산 상태의 확률은 1/4입니다.

Q-스피어 뷰

5-큐비트 제한

큐 구체는 각 계산 기준 상태를 구 표면의 한 점과 연결하여 하나 이상의 큐비트로 구성된 시스템의 상태를 나타냅니다. 각 지점에 노드가 표시됩니다. 각 노드의 반경은 기본 상태의 확률( pkp_k )에 비례하며, 노드 색은 양자 위상( φk\varphi_k )을 나타냅니다.

노드는 0이 모두 있는 기저 상태(예: 000)|000\rangle) )가 북극에, 1이 모두 있는 기저 상태(예: 111|111\rangle )가 남극에 위치하도록 q-구 위에 배치됩니다. 같은 수의 0(또는 1)을 가진 기저 상태는 q-구의 공유 위도에 위치합니다(예: 001,010,100|001\rangle, |010\rangle, |100\rangle ). Q-구의 북극에서 시작하여 남쪽으로 갈수록 위도가 올라갈 때마다 0의 수가 더 많은 기저 상태가 있으며, 기저 상태의 위도는 0 상태와의 해밍 거리에 의해 결정됩니다. 큐 구체는 양자 상태에 대한 완전한 정보를 간결한 표현으로 담고 있습니다.

다음 양자 회로와 회로가 생성하는 상태를 나타내는 양자 구를 생각해 보세요:

양자 회로 q-sphere 보기

Q-구를 선택한 후 길게 누른 채 드래그하여 회전할 수 있습니다. 큐 구를 기본 방향으로 되돌리려면 큐 구의 오른쪽 상단에 있는 되감기 화살표 버튼을 선택합니다.

블로흐 구체와 큐 구의 차이점은 무엇인가요?

큐 구체는 단일 큐비트에 대해서도 블로흐 구체와 동일하지 않다는 점을 강조하는 것이 중요합니다. 실제로 위상 디스크와 마찬가지로 블로흐 구체는 각 큐비트를 개별적으로 볼 수 있는 양자 상태의 로컬 뷰를 제공합니다. 양자 회로를 적용할 때 큐비트 레지스터(다중 큐비트 상태)가 어떻게 작동하는지 이해하려면 양자 상태 전체를 전체적으로 바라보는 것이 더 통찰력이 높습니다. 큐 구체는 양자 상태의 시각적 표현을 제공하며, 따라서 이 글로벌 관점을 제공합니다. 따라서 적은 수의 큐비트에서 양자 응용 프로그램과 알고리즘을 탐색할 때는 큐스피어를 기본 시각화 방법으로 사용해야 합니다.

상태벡터 뷰

6-큐비트 제한

일반적으로 pkeiφk\sqrt{p_k}e^{i\varphi_k} 을 양자 진폭이라고 부릅니다. 이 보기는 양자 진폭을 막대 그래프로 시각화합니다. 가로축은 계산 기준 상태에 레이블을 지정합니다. 세로축은 각 계산 기준 상태와 관련된 진폭의 크기( pk\sqrt{p_k} )를 측정합니다. 각 막대의 색은 양자 위상을 나타냅니다( φk{\varphi_k} ).

다음 양자 회로와 그 상태벡터 보기를 생각해 보세요:

양자 회로
상태 벡터 보기
: 위 회로의 종단점에서 측정된 상태 벡터. 색상환은 위상각을 색상에 대응시킵니다. 출력 상태는 복소수 목록으로 표현됩니다.

이 회로는 두 큐비트를 ψ=(00+01+1011)/2|\psi\rangle = (|00\rangle + |01\rangle+ |10\rangle-|11\rangle) / 2 상태로 만듭니다. 계산 기준 상태는 00|00\rangle, 10|10\rangle, 01|01\rangle, 11|11\rangle 입니다. 진폭의 크기는 1/21/2 이며, 기저 상태에 대한 양자 위상은 01|01\rangle10|10\rangle 의 경우 00 이며, 11|11\rangle 의 경우 π\pi 입니다.


작곡가 작업 용어집

이 페이지는 양자 회로에서 큐비트를 조작하는 데 사용할 수 있는 다양한 클래식 및 양자 연산을 정의하는 참조 페이지입니다. 양자 연산에는 하다마드 게이트와 같은 양자 게이트뿐만 아니라 측정 연산과 같이 양자 게이트가 아닌 연산도 포함됩니다.

아래의 각 항목은 각 작업에 대한 자세한 내용과 OpenQASM 참조를 제공합니다. 자세한 내용은 OpenQASM 코드를 사용하여 회로 만들기 항목을 참조하세요.

아래 각 게이트 항목의 q-구 이미지는 게이트가 초기 등가 중첩 상태 12ni=02n1i\frac{1}{\sqrt{2^{n}}}\sum_{i=0}^{2^{n}-1}|i\rangle 에서 작동한 후의 상태를 보여주며, 여기서 nn 은 게이트를 지원하는 데 필요한 큐비트 수입니다. 이 시각화에 대한 자세한 내용은 q-sphere 항목을 참조하세요.

IBM 퀀텀 컴포저에서 사용할 사용자 지정 작업을 정의할 수 있습니다. 지침은 OpenQASM 에서 사용자 지정 작업 만들기 주제를 참조하세요.

게이트 색상

게이트 색상은 밝은 테마와 어두운 테마에서 약간 다릅니다. 조명 테마의 색상이 여기에 표시됩니다.

아래에서 양자 연산을 클릭하면 해당 정의를 볼 수 있습니다.

고전적 게이트

NOT 게이트

폴리 X 게이트라고도 하는 NOT 게이트는 0\left|0\right\rangle 상태를 1\left|1\right\rangle 로, 또는 그 반대로 뒤집습니다. NOT 게이트는 각도 π\pi 또는 'HZH'의 경우 RX에 해당합니다.

Composer reference
OpenQASM 참조
Q-sphere
Q-구 표현에 대한 참고 사항
x_gatex q[0];image19Q-구 표현은 게이트가 초기 등가 중첩 상태( 12ni=02n1i,\frac{1}{\sqrt{2^{n}}}\sum_{i=0}^{2^{n}-1}\vert i\rangle, )에서 작동한 후의 상태를 보여주며, 여기서 nn 은 게이트를 지원하는 데 필요한 큐비트 수입니다.

CNOT 게이트

제어-X(CX) 게이트라고도 하는 제어-NOT 게이트는 한 쌍의 큐비트에서 작동하며, 하나는 '제어' 역할을 하고 다른 하나는 '타겟' 역할을 합니다. 제어가 상태 1\left|1\right\rangle 에 있을 때마다 대상에 NOT을 수행합니다. 제어 큐비트가 중첩 상태인 경우, 이 게이트는 얽힘을 생성합니다.

모든 단일 회로는 단일 큐비트 게이트와 CNOT 게이트로 분해할 수 있습니다. 2큐비트 CNOT 게이트는 단일 큐비트 게이트보다 실제 하드웨어에서 실행하는 데 훨씬 더 많은 시간이 소요되므로, 회로 비용은 때때로 CNOT 게이트의 수로 측정됩니다.

Composer reference
OpenQASM 참조
Q-sphere
Q-구 표현에 대한 참고 사항
CX-Gatecx q[0], q[1];image19Q-구 표현은 게이트가 초기 등가 중첩 상태( 12ni=02n1i,\frac{1}{\sqrt{2^{n}}}\sum_{i=0}^{2^{n}-1}\vert i\rangle, )에서 작동한 후의 상태를 보여주며, 여기서 nn 은 게이트를 지원하는 데 필요한 큐비트 수입니다.

토폴리 게이트

이중 제어-NOT 게이트(CCX)라고도 하는 토폴리 게이트는 두 개의 제어 큐비트와 하나의 타깃을 가지고 있습니다. 두 컨트롤이 모두 상태인 경우에만 대상에 NOT을 적용합니다 1\left|1\right\rangle.

하다마드 게이트가 있는 토폴리 게이트는 양자 컴퓨팅을 위한 범용 게이트 세트입니다.

Composer reference
OpenQASM 참조
Q-sphere
Q-구 표현에 대한 참고 사항
ccx-gateccx q[0], q[1], q[2];cCX_QSPHQ-구 표현은 게이트가 초기 등가 중첩 상태( 12ni=02n1i,\frac{1}{\sqrt{2^{n}}}\sum_{i=0}^{2^{n}-1}\vert i\rangle, )에서 작동한 후의 상태를 보여주며, 여기서 nn 은 게이트를 지원하는 데 필요한 큐비트 수입니다.

스왑 게이트

스왑 게이트는 두 큐비트의 상태를 교환합니다.

Composer reference
OpenQASM 참조
Q-sphere
Q-구 표현에 대한 참고 사항
스왑 게이트swap q[0], q[1];sWAP_QSPHQ-구 표현은 게이트가 초기 등가 중첩 상태( 12ni=02n1i,\frac{1}{\sqrt{2^{n}}}\sum_{i=0}^{2^{n}-1}\vert i\rangle, )에서 작동한 후의 상태를 보여주며, 여기서 nn 은 게이트를 지원하는 데 필요한 큐비트 수입니다.

신원 게이트

아이디 게이트(아이디 또는 I 게이트라고도 함)는 실제로는 게이트가 없는 상태입니다. 한 단위의 게이트 시간 동안 큐비트에 아무것도 적용되지 않도록 합니다.

Composer reference
QASM 참조
신원 게이트id q[0];

단계 게이트

T 게이트

T 게이트는 각도에 대해 RZ에 해당합니다 π/4\pi/4. 내결함성 양자 컴퓨터는 모든 양자 프로그램을 T 게이트와 그 역, 그리고 클리포드 게이트까지만 컴파일합니다.

Composer reference
OpenQASM 참조
Q-sphere
Q-구 표현에 대한 참고 사항
t_gatet q[0];image29Q-구 표현은 게이트가 초기 등가 중첩 상태( 12ni=02n1i,\frac{1}{\sqrt{2^{n}}}\sum_{i=0}^{2^{n}-1}\vert i\rangle, )에서 작동한 후의 상태를 보여주며, 여기서 nn 은 게이트를 지원하는 데 필요한 큐비트 수입니다.

S 게이트

S 게이트는 1\left|1\right\rangle 상태에 ii 단계를 적용합니다. 이는 각도에 대한 RZ와 동일합니다 π/2\pi/2. S=P( π/2\pi/2 )에 유의하세요.

Composer reference
OpenQASM 참조
Q-sphere
Q-구 표현에 대한 참고 사항
s_gates q[0];image25Q-구 표현은 게이트가 초기 등가 중첩 상태( 12ni=02n1i,\frac{1}{\sqrt{2^{n}}}\sum_{i=0}^{2^{n}-1}\vert i\rangle, )에서 작동한 후의 상태를 보여주며, 여기서 nn 은 게이트를 지원하는 데 필요한 큐비트 수입니다.

Z 게이트

폴리 Z 게이트는 0\left|0\right\rangle 상태의 ID 역할을 하며 1\left|1\right\rangle 상태의 부호에 -1 를 곱합니다. 따라서 +\left|+\right\rangle\left|-\right\rangle 상태가 뒤집어집니다. +/- 기준에서는 0\left|0\right\rangle / 1\left|1\right\rangle 기준의 NOT 게이트와 동일한 역할을 합니다.

Composer reference
OpenQASM 참조
Q-sphere
Q-구 표현에 대한 참고 사항
z_gatez q[0];image23Q-구 표현은 게이트가 초기 등가 중첩 상태( 12ni=02n1i,\frac{1}{\sqrt{2^{n}}}\sum_{i=0}^{2^{n}-1}\vert i\rangle, )에서 작동한 후의 상태를 보여주며, 여기서 nn 은 게이트를 지원하는 데 필요한 큐비트 수입니다.

TT^{\dagger} 게이트

Tdg 또는 T-대거 게이트라고도 합니다.

T 게이트의 역수입니다.

Composer reference
OpenQASM 참조
Q-sphere
Q-구 표현에 대한 참고 사항
T-단검 게이트tdg q[0];image31Q-구 표현은 게이트가 초기 등가 중첩 상태( 12ni=02n1i,\frac{1}{\sqrt{2^{n}}}\sum_{i=0}^{2^{n}-1}\vert i\rangle, )에서 작동한 후의 상태를 보여주며, 여기서 nn 은 게이트를 지원하는 데 필요한 큐비트 수입니다.

SS^{\dagger} 게이트

Sdg 또는 S-단검 게이트라고도 합니다.

S 게이트의 역수입니다.

Composer reference
OpenQASM 참조
Q-sphere
Q-구 표현에 대한 참고 사항
S-단검 게이트sdg q[0];image27Q-구 표현은 게이트가 초기 등가 중첩 상태( 12ni=02n1i,\frac{1}{\sqrt{2^{n}}}\sum_{i=0}^{2^{n}-1}\vert i\rangle, )에서 작동한 후의 상태를 보여주며, 여기서 nn 은 게이트를 지원하는 데 필요한 큐비트 수입니다.

위상 게이트

페이즈 게이트(이전에는 U1 게이트라고 함)는 1\left|1\right\rangle 상태에 eiθe^{i\theta} 페이즈를 적용합니다. 특정 값 θ\theta 의 경우 다른 게이트와 동일합니다. 예를 들어, P( π\pi )=Z, P( π\pi / 22 )=S, P( π/4\pi/4 )=T입니다. 글로벌 단계인 eiθ/2e^{i\theta/2} 까지는 RZ( θ\theta )와 동일합니다.

Composer reference
OpenQASM 참조
Q-sphere
Q-구 표현에 대한 참고 사항
p_gatep(theta) q[0];p_qsphQ-구 표현은 게이트가 초기 등가 중첩 상태( 12ni=02n1i,\frac{1}{\sqrt{2^{n}}}\sum_{i=0}^{2^{n}-1}\vert i\rangle, )에서 작동한 후의 상태를 보여주며, 여기서 nn 은 게이트를 지원하는 데 필요한 큐비트 수입니다.

IBM 퀀텀 컴포저에서 theta 의 기본값은 π/2\pi/2 입니다.

RZ 게이트

RZ 게이트는 exp(iθ2Z)exp(-i\frac{\theta}{2}Z) 를 구현합니다. 블로흐 구체에서 이 게이트는 큐비트 상태를 z축을 중심으로 주어진 각도만큼 회전하는 것에 해당합니다.

Composer reference
OpenQASM 참조
Q-sphere
Q-구 표현에 대한 참고 사항
rz_gaterz(angle) q[0];image17Q-구 표현은 게이트가 초기 등가 중첩 상태( 12ni=02n1i,\frac{1}{\sqrt{2^{n}}}\sum_{i=0}^{2^{n}-1}\vert i\rangle, )에서 작동한 후의 상태를 보여주며, 여기서 nn 은 게이트를 지원하는 데 필요한 큐비트 수입니다.

IBM 퀀텀 컴포저에서 angle 의 기본값은 π/2\pi/2 입니다. 따라서 이 값이 q-구 시각화에 사용되는 각도입니다.

비단일 연산자 및 수정자

RESET 조작

재설정 작업은 작업을 적용하기 전 상태와 상관없이 큐비트를 0\left|0\right\rangle 상태로 반환합니다. 되돌릴 수 있는 작업이 아닙니다.

Composer reference
OpenQASM 참조
0-오페라reset q[0];

측정

Z 기준 또는 계산 기준이라고도 하는 표준 기준의 측정값입니다. 게이트와 결합하면 모든 종류의 측정을 구현하는 데 사용할 수 있습니다. 되돌릴 수 있는 작업이 아닙니다.

Composer reference
OpenQASM 참조
표준 또는 z 기준으로 측정measure q[0];

제어 수정자

제어 수정자는 원래 동작이 제어 큐비트의 상태에 따라 달라지는 게이트를 생성합니다. 제어가 1|1\rangle 상태일 때, 대상 큐비트는 지정된 단일 진화를 거칩니다. 반대로 제어가 0|0\rangle 상태인 경우 아무 작업도 수행되지 않습니다. 컨트롤이 중첩 상태인 경우 결과 연산은 선형성에서 따릅니다.

컨트롤을 추가하려면 컨트롤 수정자를 게이트로 드래그합니다. 제어 대상이 될 수 있는 큐비트 와이어의 게이트 위와 아래에 점이 나타나며, 하나 이상의 점을 클릭하여 하나 이상의 큐비트에 대상을 할당할 수 있습니다. 게이트를 마우스 오른쪽 버튼으로 클릭하여 컨트롤을 지정할 수도 있습니다.

컨트롤을 제거하려면 게이트를 마우스 오른쪽 버튼으로 클릭하고 컨트롤 제거 옵션을 선택합니다.

Composer reference
OpenQASM 참조
제어 수정자c

장벽 작동

양자 프로그램을 더 효율적으로 만들기 위해 컴파일러는 게이트를 결합하려고 시도합니다. 배리어는 이러한 조합이 만들어지지 않도록 컴파일러에 지시하는 명령어입니다. 또한 시각화에도 유용합니다.

Composer reference
OpenQASM 참조
배리어barrier q;

아다마르 게이트

H 게이트

H 또는 하다마드 게이트는 상태 0\left|0\right\rangle1\left|1\right\rangle 를 각각 +\left|+\right\rangle\left|-\right\rangle 로 회전합니다. 중첩을 만들 때 유용합니다. 클래식 컴퓨터에 범용 게이트가 설정되어 있고 여기에 하다마드 게이트를 추가하면 양자 컴퓨터에서 범용 게이트가 설정됩니다.

Composer reference
OpenQASM 참조
Q-sphere
Q-구 표현에 대한 참고 사항
h-GATEh q[0];image1Q-구 표현은 게이트가 초기 등가 중첩 상태( 12ni=02n1i,\frac{1}{\sqrt{2^{n}}}\sum_{i=0}^{2^{n}-1}\vert i\rangle, )에서 작동한 후의 상태를 보여주며, 여기서 nn 은 게이트를 지원하는 데 필요한 큐비트 수입니다.

양자 게이트

X\sqrt{X} 게이트

제곱근 NOT 게이트라고도 합니다.

이 게이트는 X의 제곱근을 구현합니다( X\sqrt{X} ). 이 게이트를 연속으로 두 번 적용하면 표준 폴리-X 게이트(NOT 게이트)가 생성됩니다. 하다마드 게이트와 마찬가지로, X\sqrt{X} 는 큐비트가 0|0\rangle 상태인 경우 동일한 중첩 상태를 생성하지만 상대 위상이 다릅니다. 일부 하드웨어에서는 π/2\pi/2 또는 X90 펄스로 구현할 수 있는 네이티브 게이트입니다.

Composer reference
OpenQASM 참조
Q-sphere
Q-구 표현에 대한 참고 사항
sx_gatesx q[0];sx_qsphQ-구 표현은 게이트가 초기 등가 중첩 상태( 12ni=02n1i,\frac{1}{\sqrt{2^{n}}}\sum_{i=0}^{2^{n}-1}\vert i\rangle, )에서 작동한 후의 상태를 보여주며, 여기서 nn 은 게이트를 지원하는 데 필요한 큐비트 수입니다.

X\sqrt{X}^{\dagger} 게이트

SXdg 또는 제곱근 NOT-대거 게이트라고도 합니다.

이것은 X\sqrt{X} 게이트의 역수입니다. 두 번 연속으로 적용하면 폴리-X 게이트(NOT 게이트)가 생성되는데, NOT 게이트는 그 자체로 역수이기 때문입니다. X\sqrt{X} 게이트와 마찬가지로 이 게이트는 동등한 중첩 상태를 만드는 데 사용할 수 있으며, X90 펄스를 사용하여 일부 하드웨어에서 기본적으로 구현되어 있습니다.

Composer reference
OpenQASM 참조
Q-sphere
Q-구 표현에 대한 참고 사항
sxdg_gatesxdg q[0];sxdg_qsphQ-구 표현은 게이트가 초기 등가 중첩 상태( 12ni=02n1i,\frac{1}{\sqrt{2^{n}}}\sum_{i=0}^{2^{n}-1}\vert i\rangle, )에서 작동한 후의 상태를 보여주며, 여기서 nn 은 게이트를 지원하는 데 필요한 큐비트 수입니다.

Y 게이트

폴리 Y 게이트는 각도 π\pi 에 대해 Ry와 동일합니다. 이는 글로벌 위상 계수까지 X와 Z를 적용하는 것과 동일합니다.

Composer reference
OpenQASM 참조
Q-sphere
Q-구 표현에 대한 참고 사항
y_gatey q[0];image21Q-구 표현은 게이트가 초기 등가 중첩 상태( 12ni=02n1i,\frac{1}{\sqrt{2^{n}}}\sum_{i=0}^{2^{n}-1}\vert i\rangle, )에서 작동한 후의 상태를 보여주며, 여기서 nn 은 게이트를 지원하는 데 필요한 큐비트 수입니다.

RX 게이트

RX 게이트는 exp(iθ2X)exp(-i\frac{\theta}{2}X) 를 구현합니다. 블로흐 구체에서 이 게이트는 큐비트 상태를 x축을 중심으로 주어진 각도만큼 회전하는 것에 해당합니다.

Composer reference
OpenQASM 참조
Q-sphere
Q-구 표현에 대한 참고 사항
rx_gaterx(angle) q[0];image13Q-구 표현은 게이트가 초기 등가 중첩 상태( 12ni=02n1i,\frac{1}{\sqrt{2^{n}}}\sum_{i=0}^{2^{n}-1}\vert i\rangle, )에서 작동한 후의 상태를 보여주며, 여기서 nn 은 게이트를 지원하는 데 필요한 큐비트 수입니다.

IBM 퀀텀 컴포저에서 angle 의 기본값은 π/2\pi/2 입니다. 따라서 이 값이 q-구 시각화에 사용되는 각도입니다.

RY 게이트

RY 게이트는 exp(iθ2Y)exp(-i\frac{\theta}{2}Y) 를 구현합니다. 블로흐 구체에서 이 게이트는 큐비트 상태를 y축을 중심으로 주어진 각도만큼 회전하는 것에 해당하며 복잡한 진폭을 도입하지 않습니다.

Composer reference
OpenQASM 참조
Q-sphere
Q-구 표현에 대한 참고 사항
ry_gatery(angle) q[0];image15Q-구 표현은 게이트가 초기 등가 중첩 상태( 12ni=02n1i,\frac{1}{\sqrt{2^{n}}}\sum_{i=0}^{2^{n}-1}\vert i\rangle, )에서 작동한 후의 상태를 보여주며, 여기서 nn 은 게이트를 지원하는 데 필요한 큐비트 수입니다.

IBM 퀀텀 컴포저에서 angle 의 기본값은 π/2\pi/2 입니다. 따라서 아래 q-구 시각화에서 사용된 각도가 이 값입니다.

RXX 게이트

RXX 게이트는 exp(iθ/2XX)\exp(-i \theta/2 X \otimes X) 을 구현합니다. 이온 트랩 시스템의 기본 게이트인 몰머-소렌슨 게이트는 RXX 게이트의 합으로 표현할 수 있습니다.

Composer reference
OpenQASM 참조
Q-sphere
Q-구 표현에 대한 참고 사항
rxx-gaterxx(angle) q[0], q[1];rxx_qsphQ-구 표현은 게이트가 초기 등가 중첩 상태( 12ni=02n1i,\frac{1}{\sqrt{2^{n}}}\sum_{i=0}^{2^{n}-1}\vert i\rangle, )에서 작동한 후의 상태를 보여주며, 여기서 nn 은 게이트를 지원하는 데 필요한 큐비트 수입니다.

IBM 퀀텀 컴포저에서 angle 의 기본값은 π/2\pi/2 입니다.

RZZ 게이트

RZZ 게이트에는 라디안으로 표현되는 각도라는 단일 매개변수가 필요합니다. 이 게이트는 대칭형이므로 작용하는 두 큐비트를 교체해도 아무 것도 바뀌지 않습니다.

Composer reference
OpenQASM 참조
Q-sphere
Q-구 표현에 대한 참고 사항
rzz_gaterzz(angle) q[0], q[1];rzz_qsphQ-구 표현은 게이트가 초기 등가 중첩 상태( 12ni=02n1i,\frac{1}{\sqrt{2^{n}}}\sum_{i=0}^{2^{n}-1}\vert i\rangle, )에서 작동한 후의 상태를 보여주며, 여기서 nn 은 게이트를 지원하는 데 필요한 큐비트 수입니다.

IBM 퀀텀 컴포저에서 angle 의 기본값은 π/2\pi/2 입니다.

U 게이트

(이전에는 U3 게이트라고 불렀습니다.) 세 가지 파라미터를 사용하면 모든 단일 큐비트 게이트를 구성할 수 있습니다. 게이트 시간 한 단위의 지속 시간을 가집니다.

Composer reference
OpenQASM 참조
Q-sphere
Q-구 표현에 대한 참고 사항
u_gateu(theta, phi, lam) q[0];u3_qsphQ-구 표현은 게이트가 초기 등가 중첩 상태( 12ni=02n1i,\frac{1}{\sqrt{2^{n}}}\sum_{i=0}^{2^{n}-1}\vert i\rangle, )에서 작동한 후의 상태를 보여주며, 여기서 nn 은 게이트를 지원하는 데 필요한 큐비트 수입니다.

IBM 퀀텀 컴포저에서 angle 의 기본값은 π/2\pi/2 입니다.

RCCX 게이트

단순화된 토폴리 게이트는 마골루스 게이트라고도 합니다.

단순화된 토폴리 게이트는 상대 위상까지 토폴리 게이트를 구현합니다. 이 구현에는 그림과 같이 가능한 최소한의 양인 3개의 CX 게이트가 필요합니다 https://arxiv.org/abs/quant-ph/0312225. 단순화된 토폴리는 토폴리와 동일하지는 않지만, 토폴리 게이트가 다시 계산되지 않는 곳에서 사용할 수 있다는 점에 유의하세요.

Composer reference
OpenQASM 참조
Q-sphere
Q-구 표현에 대한 참고 사항
rccx-gaterccx a, b, c;rccx_qsphQ-구 표현은 게이트가 초기 등가 중첩 상태( 12ni=02n1i,\frac{1}{\sqrt{2^{n}}}\sum_{i=0}^{2^{n}-1}\vert i\rangle, )에서 작동한 후의 상태를 보여주며, 여기서 nn 은 게이트를 지원하는 데 필요한 큐비트 수입니다.

RC3X 게이트

간소화된 3 제어 토폴리 게이트.

단순화된 토폴리 게이트는 상대 위상까지 토폴리 게이트를 구현합니다. 단순화된 토폴리는 토폴리와 동일하지는 않지만, 토폴리 게이트가 다시 계산되지 않는 곳에서 사용할 수 있다는 점에 유의하세요.

Composer reference
OpenQASM 참조
Q-sphere
Q-구 표현에 대한 참고 사항
rc3x-gaterc3x a, b, c, d;rc3x_qsphQ-구 표현은 게이트가 초기 등가 중첩 상태( 12ni=02n1i,\frac{1}{\sqrt{2^{n}}}\sum_{i=0}^{2^{n}-1}\vert i\rangle, )에서 작동한 후의 상태를 보여주며, 여기서 nn 은 게이트를 지원하는 데 필요한 큐비트 수입니다.
이 페이지가 도움이 되었습니까?
GitHub에서 버그, 오타를 보고하거나 컨텐츠를 요청하십시오.