Operasi MultiplyAndAddPhaseByModularInteger

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.Arithmetic

Paket: Microsoft.Quantum.Standard

Sama seperti MultiplyAndAddByModularInteger, tetapi mengasumsikan bahwa summand mengodekan bilangan bulat dalam basis QFT.

operation MultiplyAndAddPhaseByModularInteger (constMultiplier : Int, modulus : Int, multiplicand : Microsoft.Quantum.Arithmetic.LittleEndian, phaseSummand : Microsoft.Quantum.Arithmetic.PhaseLittleEndian) : Unit is Adj + Ctl

Input

constMultiplier : Int

Bilangan bulat $a$ yang multiplicand sedang dikalikan. Harus antara 0 dan modulus-1, inklusif.

modulus : Int

Modulus $N$ yang penambahan dan perkaliannya diambil sehubungan dengan hal tersebut.

multiplicand : LittleEndian

Register kuantum yang mewakili bilangan bulat yang tidak ditandatangani yang nilainya, dikalikan dengan constMultiplier, akan ditambahkan ke setiap label status dasar .summand

phaseSummand : PhaseLittleEndian

Register kuantum yang mewakili bilangan bulat yang tidak ditandatangani untuk digunakan sebagai target untuk operasi ini.

Output : Unit

Keterangan

Mengasumsikan bahwa memiliki bit tertinggi yang phaseSummand diatur ke 0. Juga mengasumsikan bahwa nilai kurang dari phaseSummand $N$.

Lihat juga