Найти одиночную X-ошибку трёхкубитного кода
Вход — три кубита либо в кодовом состоянии $|\psi_L\rangle=\alpha|000\rangle+\beta|111\rangle$, либо в состоянии с одной ошибкой X: X применён к кубиту 0, 1 или 2. Других ошибок нет.
Напишите операцию на языке Q#, определяющую наличие ошибки и её позицию. Верните индекс ошибочного кубита либо -1 при отсутствии ошибки. Состояние кубитов после операции должно полностью сохраниться.
Заготовка Q#:
namespace Kata {
operation BitflipDetectError (qs : Qubit[]) : Int {
// Implement your solution here...
return -2;
}
}