量程算法Quantum Algorithms

振幅放大Amplitude Amplification

Q # 将振幅放大引入为在意波幅放大的专用化。Q# introduces amplitude amplification as a specialization of oblivious amplitude amplification. 在意波幅放大盈利此名字对象，因为投影仪到初始 eigenspace 无需投影仪到初始状态。Oblivious amplitude amplification earns this moniker because the projector onto the initial eigenspace need not be a projector onto the initial state. 从这种意义上讲，该协议在意初始状态。In this sense, the protocol is oblivious to the initial state. 在意波幅放大的关键应用是单一 Hamiltonian 模拟方法的一些线性组合，其中初始状态是未知的，但会在模拟协议中与 ancilla 注册放大。The key application of oblivious amplitude amplification is in certain linear combinations of unitary Hamiltonian simulation methods, wherein the initial state is unknown but becomes entangled with an ancilla register in the simulation protocol. 如果将此 ancilla 寄存器测量为固定值（如 $0$），则此类模拟方法会将所需的单一转换应用到剩余的 qubits （称为系统注册）。If this ancilla register were to be measured to be a fixed value, say $0$, then such simulation methods apply the desired unitary transformation to the remaining qubits (called the system register). 但是，所有其他测量结果都会导致故障。All other measurement outcomes lead to failure however. 在意波幅放大允许使用以上推理将此度量值的成功提升为 $100\%$。Oblivious amplitude amplification allows the probability of success of this measurement to be boosted to $100\%$ using the above reasoning. 而且，普通幅度放大对应于系统注册为空的情况。Further, ordinary amplitude amplification corresponds to the case where the system register is empty. 这就是 Q # 使用在意波幅放大子例程的原因。This is why Q# uses oblivious amplitude amplification as its fundamental amplitude amplification subroutine.

算术Arithmetic

Draper 添加是最巧妙的量程添加器之一，因为它直接调用量程属性以执行添加。The Draper adder is arguably one of the most elegant quantum adders, as it directly invokes quantum properties to perform addition. Draper 加载程序背后的见解是，可以使用傅立叶变换将相位移位转换成移位。The insight behind the Draper adder is that the Fourier transform can be used to translate phase shifts into a bit shift. 接下来，通过应用傅立叶变换，应用适当的阶段移位，然后撤消傅立叶转换，可以实现一个转换程序。It then follows that by applying a Fourier transform, applying appropriate phase shifts, and then undoing the Fourier transform you can implement an adder. 与其他许多已建议的添加器不同，Draper 的创建程序显式使用通过量程傅立叶转换引入的量程效果。Unlike many other adders that have been proposed, the Draper adder explicitly uses quantum effects introduced through the quantum Fourier transform. 它没有典型的传统对应项。It does not have a natural classical counterpart. 下面给出了 Draper 提供的特定步骤。The specific steps of the Draper adder are given below.