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⟩.
...
}