№ 1534Квантовые вычисленияУровень 3

Различить четыре фазовых варианта Y

Вход — операция на одном кубите: либо $Y$, возможно с дополнительной общей фазой $-1$, либо последовательность сначала $Z$, затем $X$, также возможно с дополнительной общей фазой $-1$.

Напишите операцию на языке Q#, возвращающую 0 для $Y$, 1 для $-XZ$, 2 для $-Y$, 3 для $XZ$.

Для операции определены обратный вариант Adjoint и управляемый вариант Controlled. Разрешено суммарно не более трёх обращений к переданной операции или её вариантам.

Заготовка Q#:

namespace Kata {
    operation DistinguishYfromXZWithPhases (unitary : (Qubit => Unit is Adj + Ctl)) : Int {
        // Implement your solution here...

        return -1;
    }
}

Предложить решение

Войти, чтобы отправить материал.