Aracılığıyla paylaş


ApplyControlledOnInt işlemi

Tam ad: Std.Canon.ApplyControlledOnInt

operation ApplyControlledOnInt<'T>(numberState : Int, oracle : ('T => Unit is Adj + Ctl), controlRegister : Qubit[], target : 'T) : Unit is Adj + Ctl

Özet

Denetim yazmaç durumu belirtilen bir tamsayıya karşılık geliyorsa hedefe bir birim işlemi uygular.

Girdi

sayı durumu

İşlemin oracle denetlenmesi gereken, olumsuz olmayan bir tamsayı.

Oracle

Denetlenecek bir ünitesel işlem.

hedef

oracleuygulanacağı hedef.

controlRegister (Kontrol Et)

oracleuygulamasını denetleen bir kuantum yazmaç.

Açıklamalar

numberState değeri küçük endian kodlama kullanılarak yorumlanır.

numberState en fazla $2^\texttt{Length(controlRegister)} - 1$ olmalıdır. Örneğin numberState = 537, oracle yalnızca controlRegister $\ket{537}$ durumundaysa uygulanacağı anlamına gelir.