ApplyAmplitudeAmplification operation

Warning

This documentation refers to the Classic QDK, which has been replaced by the Modern QDK.

Please see https://aka.ms/qdk.api for the API documentation for the Modern QDK.

Namespace: Microsoft.Quantum.AmplitudeAmplification

Package: Microsoft.Quantum.Standard

Applies amplitude amplification on a given register, using a given set of phases and oracles to reflect about the initial and final states.

operation ApplyAmplitudeAmplification (phases : Microsoft.Quantum.AmplitudeAmplification.ReflectionPhases, startStateReflection : Microsoft.Quantum.Oracles.ReflectionOracle, targetStateReflection : Microsoft.Quantum.Oracles.ReflectionOracle, target : Qubit[]) : Unit is Adj + Ctl

Input

phases : ReflectionPhases

A set of phases describing the partial reflections at each step of the amplitude amplification algorithm. See StandardReflectionPhases function for an example.

startStateReflection : ReflectionOracle

An oracle that reflects about the initial state.

targetStateReflection : ReflectionOracle

An oracle that reflects about the desired final state.

target : Qubit[]

A register to perform amplitude amplification on.

Output : Unit