ApplyXControlledOnTruthTableWithCleanTarget 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.Synthesis

Package: Microsoft.Quantum.Standard

Applies the X operation operation on target, if the Boolean function func evaluates to true for the classical assignment in controlRegister.

operation ApplyXControlledOnTruthTableWithCleanTarget (func : BigInt, controlRegister : Qubit[], target : Qubit) : Unit is Adj + Ctl

Description

This operation implements a special case of ApplyXControlledOnTruthTable operation, in which the target qubit is known to be in the $\ket{0}$ state.

The implementation makes use of CNOT operation and R1 operation gates. The implementation of the adjoint operation is optimized and uses measurement-based uncomputation.

Input

func : BigInt

Boolean truth table represented as big integer

controlRegister : Qubit[]

Register of control qubits

target : Qubit

Target qubit (must be in $\ket{0}$ state)

Output : Unit

See Also