Skip to main content
IBM Quantum Platform

AnnotatedOperation

class qiskit.circuit.AnnotatedOperation(base_op, modifiers)

GitHub

베이스: Operation

주석이 달린 작업.

AnnotatedOperation 을 새로 만듭니다.

“주석이 달린 연산”을 사용하면 “기본” 연산에 수정자 목록을 추가할 수 있습니다. PowerModifierInverseModifier현재 지원되는 수정자는, ControlModifier 및 유형뿐입니다.

주석이 달린 작업은 기본 작업의 확장으로 볼 수 있습니다 ControlledGate (기본 연산에 제어 기능을 추가할 수도 있음)의 확장으로 볼 수 있습니다. 그러나 중요한 차이점은 주석이 달린 연산에 대한 회로 정의는 연산이 선언될 때 구성되지 않고 트랜스파일링 도중, 특히 HighLevelSynthesis 트랜스파일러 패스 중에 발생합니다.

주석이 달린 연산은 양자 회로에 추가할 수 있는 "더 높은 수준" 또는 "더 추상적인" 객체로 볼 수도 있습니다. 이를 통해 이 상위 레벨 표현을 활용하는 트랜스파일러 최적화 패스를 작성할 수 있습니다(예: 바로 뒤의 게이트와 그 반대의 게이트를 제거).

매개변수

  • base_op (Operation) – 수정 중인 기본 작업
  • modifiers (Modifier | list[Modifier]) – 수식어의 정렬된 목록. 지원되는 수식어에는, ControlModifierPowerModifier``InverseModifier이 포함됩니다.

예:

op1 = AnnotatedOperation(SGate(), [InverseModifier(), ControlModifier(2)])

op2_inner = AnnotatedGate(SGate(), InverseModifier())
op2 = AnnotatedGate(op2_inner, ControlModifier(2))

op1 및 op2 모두 의미론적으로 먼저 반전된 다음 2큐비트로 제어되는 SGate() 와 동일합니다.


속성

name

작업 유형에 대한 고유 문자열 식별자입니다.

num_clbits

클래식 비트 수입니다.

num_qubits

큐비트 수입니다.

params

기본 기본 작업의 매개변수입니다.

base_op

이 주석이 달린 연산 내의 수정자가 적용되는 기본 연산.

modifiers

적용할 수정자의 정렬된 순서 base_op. 수정자는 지수가 가장 낮은 것부터 가장 높은 것 순으로 적용됩니다.


메소드

control

control(num_ctrl_qubits=1, label=None, ctrl_state=None, annotated=None)

GitHub

제어된 버전을 반환합니다.

의 값과 관계없이 annotatedAnnotatedOperation 구현됩니다.

매개변수

  • num_ctrl_qubits (int) – 추가할 대조군의 수. 기본값은 1.입니다.
  • label (str | None) – 무시됨.
  • ctrl_state (int |str | None) – 게이트의 제어 상태는 정수 또는 비트열(예: "110")로 지정됩니다. 만약 None, 기본값은 모두 1인 상태입니다 2**num_ctrl_qubits - 1.
  • annotated (bool | None) – 무시됨.

리턴

주어진 작업의 제어된 버전.

리턴 유형

AnnotatedOperation

copy

copy()

GitHub

의 사본을 반환합니다 AnnotatedOperation.

리턴 유형

AnnotatedOperation

inverse

inverse(annotated=True)

GitHub

그 반대의 버전을 반환합니다.

주석이 달린 연산으로 구현되어 있습니다 AnnotatedOperation.

매개변수

annotated (bool) – 무시됨 (다른 역산 방법과의 일관성을 위해 사용됨)

리턴

주어진 연산의 역방향 버전입니다.

power

power(exponent, annotated=False)

GitHub

이 게이트를 exponent 의 힘으로 올리십시오.

주석이 달린 연산으로 구현되어 있습니다 AnnotatedOperation.

매개변수

  • exponent (float) – 게이트를 올릴 수 있는 힘
  • annotated (bool) – 무시됨 (다른 전력 계산 방식과의 일관성을 위해 사용됨)

리턴

구현하는 작업 gate^exponent

to_matrix

to_matrix()

GitHub

행렬 표현을 반환합니다(연산자를 구성할 수 있음).

validate_parameter

validate_parameter(parameter)

GitHub

기본 연산에 대한 매개변수의 유효성을 검사합니다.

매개변수

parameter (ParameterExpression |float)

리턴 유형

ParameterExpression | float

이 페이지가 도움이 되었습니까?
GitHub에서 버그, 오타를 보고하거나 컨텐츠를 요청하십시오.