정규화된 이름: Std.Canon.ApplyPauliFromBitString
operation ApplyPauliFromBitString(pauli : Pauli, bitApply : Bool, bits : Bool[], qubits : Qubit[]) : Unit is Adj + Ctl
요약
부울 배열의 해당 비트가 지정된 입력과 일치하는 경우 배열의 각 큐비트에 Pauli 연산자를 적용합니다.
입력
파울리
qubits[idx]
bitApply == bits[idx] 적용할 Pauli 연산자
비트어플라이드
bit가 이 값인 경우 Pauli 적용
비트
qubits 작동해야 하는 해당 큐비트를 지정하는 부울 레지스터
큐비트
지정된 Pauli 연산자를 선택적으로 적용할 양자 레지스터
발언
부울 배열과 양자 레지스터는 길이가 같아야 합니다.
본보기
다음은 큐비트 0과 2에 X 연산을 적용하고 큐비트 1과 3에서 Z 연산을 적용합니다.
use qubits = Qubit[4];
let bits = [true, false, true, false];
// Apply when index in `bits` is `true`.
ApplyPauliFromBitString(PauliX, true, bits, qubits);
// Apply when index in `bits` is `false`.
ApplyPauliFromBitString(PauliZ, false, bits, qubits);