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

Найти одиночную Z-ошибку трёхкубитного кода

Вход — три кубита либо в кодовом состоянии $|\psi_L\rangle=\alpha|+++\rangle+\beta|---\rangle$, либо в состоянии с одной ошибкой Z: Z применён к кубиту 0, 1 или 2. Других ошибок нет.

Напишите операцию на языке Q#, определяющую наличие ошибки и её позицию. Верните индекс ошибочного кубита либо -1 при отсутствии ошибки. Состояние кубитов после операции должно полностью сохраниться.

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

namespace Kata {
    operation PhaseflipDetectError (qs : Qubit[]) : Int {
        // Implement your solution here...

        return -2;
    }
}

Сообщить об ошибке

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