Определить знак собственного значения одним битом фазы
Входы:
1. Однокубитная унитарная операция $U$ с доступным управляемым вариантом Controlled. Соответствующее собственное значение равно $+1$ или $-1$, то есть собственная фаза равна 0 или $1/2$.
2. Собственное состояние $|\psi\rangle$, заданное операцией подготовки $P$: $P|0\rangle=|\psi\rangle$.
Напишите операцию на языке Q#, возвращающую собственное значение, соответствующее $|\psi\rangle$: целое $+1$ или $-1$.
Подсказка источника: достаточно выделить ровно два кубита и вызвать Controlled U ровно один раз.
Заготовка Q#:
namespace Kata {
operation OneBitPhaseEstimation(U : Qubit => Unit is Ctl, P : Qubit => Unit) : Int {
// Implement your solution here...
return 0;
}
}