Различить ортогональные состояния с заданным углом
Входы — угол $\alpha$ в радианах, представленный типом Double, и кубит, гарантированно находящийся в одном из состояний
$$|A\rangle=\cos\alpha|0\rangle-i\sin\alpha|1\rangle,$$
$$|B\rangle=-i\sin\alpha|0\rangle+\cos\alpha|1\rangle.$$
Напишите операцию Q#, возвращающую true для $|A\rangle$ и false для $|B\rangle$. Конечное состояние кубита неважно.
Подсказка источника: поворот $R_x$ переводит стандартный базис в базис $\{|A\rangle,|B\rangle\}$ и обратно.
Заготовка Q#:
namespace Kata {
operation IsQubitA(alpha : Double, q : Qubit) : Bool {
// Implement your solution here...
return false;
}
}Предложить решение
Войти, чтобы отправить материал.