Bagikan melalui


Operasi ApplyPauliFromBitString

Nama yang sepenuhnya memenuhi syarat: Std.Canon.ApplyPauliFromBitString

operation ApplyPauliFromBitString(pauli : Pauli, bitApply : Bool, bits : Bool[], qubits : Qubit[]) : Unit is Adj + Ctl

Ringkasan

Menerapkan operator Pauli pada setiap qubit dalam array jika bit array Boolean yang sesuai cocok dengan input tertentu.

Masukan

Pauli

Operator Pauli untuk diterapkan ke qubits[idx] di mana bitApply == bits[idx]

bitTerapkan

terapkan Pauli jika bit adalah nilai ini

Bit

Daftar Boolean yang menentukan qubit terkait mana di qubits harus dioperasikan

qubit

Quantum register untuk secara selektif menerapkan operator Pauli yang ditentukan

Komentar

Array Boolean dan register kuantum harus memiliki panjang yang sama.

Contoh

Berikut ini menerapkan operasi X pada qubit 0 dan 2, dan operasi Z pada qubit 1 dan 3.

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);