Operasi ApplyIfA

Peringatan

Dokumentasi ini mengacu pada QDK Klasik, yang telah digantikan oleh Modern QDK.

Silakan lihat https://aka.ms/qdk.api dokumentasi API untuk QDK Modern.

Namespace: Microsoft.Quantum.Canon

Paket: Microsoft.Quantum.Standard

Menerapkan operasi yang dapat digabungkan yang dikondisikan pada bit klasik.

operation ApplyIfA<'T> (bit : Bool, op : ('T => Unit is Adj), target : 'T) : Unit is Adj

Deskripsi

Mengingat nilai bit bit dan operasi op, berlaku op untuk target jika bit adalah true. Jika false, tidak ada yang terjadi pada target. Akhiran A menunjukkan bahwa operasi yang akan diterapkan berdampingan.

Input

bit : Bool

boolean yang mengontrol apakah op diterapkan atau tidak.

op : 'T =>Unit is Adj

Operasi yang akan diterapkan secara kondisional.

target : 'T

Input tempat operasi diterapkan.

Output : Unit

Jenis parameter

'T

Jenis input operasi yang akan diterapkan secara kondisional.

Contoh

Berikut ini menyiapkan daftar qubit ke dalam status dasar komputasi yang diwakili oleh string bit klasik yang diberikan sebagai array Bool nilai:

let bitstring = [true, false, true];
using (register = Qubit(3)) {
    ApplyToEach(ApplyIf(_, X, _), Zipped(bitstring, register));
    // register should now be in the state |101⟩.
    ...
}

Lihat juga