Skip to main content
IBM Quantum Platform

Q드리프트

class qiskit.synthesis.QDrift(reps=1, insert_barriers=False, cx_structure='chain', atomic_evolution=None, seed=None, wrap=False, preserve_order=True, *, atomic_evolution_sparse_observable=False)

GitHub

베이스: ProductFormula

Q드리프트 트로터화 방법은 트로터화에서 각 용어를 가중치에 비례하는 확률로 무작위로 선택합니다. 얼 캠벨의 작품에 기반한 Ref. [1].

참조

[1] : E. 캠벨, "빠른 해밀턴 시뮬레이션을 위한 랜덤 컴파일러" (2018). arXiv:quant-ph/1811.08017

매개변수

  • reps (int) – 트로터화 회로를 반복할 횟수입니다.
  • insert_barriers (bool) – 원자 진화 사이에 장벽을 삽입할지 여부입니다.
  • cx_structure (str) – 폴리 진화를 위한 CX 게이트 배열 방법은 다음 이웃 연결이 사용되는 "chain" 또는 모든 큐비트가 하나에 연결되는 "fountain" 이 될 수 있습니다. atomic_evolution is None.
  • atomic_evolution (Callable[[QuantumCircuit, qiskit.quantum_info.Pauli |SparsePauliOp, float], None] | None) – 회로에 단일 Pauli 항 또는 SparsePauliOp 가환 항들만으로 구성된 항의 진화를 적용하는 함수. 이 함수는 세 개의 인자를 받습니다: 진화 과정을 추가할 회로, 진화시킬 파울리 연산자, 그리고 진화 시간입니다. 기본적으로, 하나의 파울리 진화는 일련의 CX 게이트와 하나의 RZ 게이트로 분해됩니다.
  • seed (int | None) – 무작위 샘플링 프로세스의 재현성을 위한 선택적 시드입니다.
  • wrap (bool) – 원자 진화를 커스텀 게이트 오브젝트로 래핑할지 여부입니다. atomic_evolution is None.
  • preserve_order (bool) – False, 연산자의 조건을 재주문하면 잠재적으로 더 얕은 진화 회로를 얻을 수 있습니다. 단일 용어로 연산자를 합성할 때는 관련이 없습니다.
  • atomic_evolution_sparse_observable (bool) – 아직 지원하지 않는 사용자 정의 atomic_evolution 가 입력으로 전달된 경우 SparseObservable를 입력으로 전달한 경우, 이 인수를 False 로 설정하여 자동으로 SparsePauliOp. 이 인수는 키스킷 2.2 까지 지원되며, 이 시점부터는 모든 원자 진화에 대해 SparseObservable를 입력으로 지원해야 합니다.

속성

settings

객체를 재구성하는 데 사용할 수 있는 사전의 설정을 반환합니다.

리턴

이 제품 공식의 설정이 포함된 사전입니다.

레이즈

NotImplementedError - 사용자 지정 원자 진화가 설정되어 있는 경우 직렬화할 수 없습니다.


메소드

expand

expand(evolution)

GitHub

곱 공식을 적용하여 진화 게이트에서 해밀턴을 확장합니다.

매개변수

evolution (PauliEvolutionGate) – The PauliEvolutionGate의 해밀턴을 확장합니다.

리턴

각 요소가 (paulistring, qubits, coefficient) 인 스파스 형식의 폴리 회전 목록입니다. 예를 들어 H = XI + ZZ 의 거짓말 트로터 확장은 [("X", [1], 1), ("ZZ", [0, 1], 1)] 을 반환합니다.

리턴 유형

목록[ 튜플[ str, 튜플[ int ], float ]]

synthesize

synthesize(evolution)

GitHub

합성 PauliEvolutionGate.

매개변수

evolution (PauliEvolutionGate) – 합성을 위한 진화 게이트입니다.

리턴

진화를 구현하는 회로입니다.

리턴 유형

QuantumCircuit

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