Nuta
Dostęp do tej strony wymaga autoryzacji. Możesz spróbować się zalogować lub zmienić katalog.
Dostęp do tej strony wymaga autoryzacji. Możesz spróbować zmienić katalogi.
W pełni kwalifikowana nazwa: Std.Canon.ApplyPauliFromBitString
operation ApplyPauliFromBitString(pauli : Pauli, bitApply : Bool, bits : Bool[], qubits : Qubit[]) : Unit is Adj + Ctl
Streszczenie
Stosuje operator Pauli na każdym kubitie w tablicy, jeśli odpowiedni bit tablicy logicznej pasuje do danych wejściowych.
Wkład
Pauli
Operator Pauli do zastosowania do qubits[idx] gdzie bitApply == bits[idx]
bitApply (Zastosuj bit)
zastosuj Pauli, jeśli bit jest tą wartością
Bitów
Rejestr logiczny określający, na którym qubits powinien działać odpowiedni kubit
kubity
Rejestr kwantowy, na którym ma być selektywnie stosowany określony operator Pauli
Uwagi
Tablica logiczna i rejestr kwantowy muszą mieć taką samą długość.
Przykład
Poniżej obowiązuje operacja X na kubitach 0 i 2 oraz operacja Z na kubitach 1 i 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);