Закодировать два классических бита кубитом Алисы
Входы — qAlice, принадлежащая Алисе часть запутанной пары, и сообщение message: кортеж двух Bool, соответственно bit1 и bit2. Пара из предыдущего упражнения подготовлена в $|\Phi^+\rangle$.
Напишите операцию на языке Q#, кодирующую два классических бита воздействием только на кубит Алисы.
Соответствие сообщения совместному состоянию кубитов в порядке Алиса,Боб:
(0,0): $|\Phi^+\rangle=(|00\rangle+|11\rangle)/\sqrt2$.
(0,1): $|\Psi^+\rangle=(|01\rangle+|10\rangle)/\sqrt2$.
(1,0): $|\Phi^-\rangle=(|00\rangle-|11\rangle)/\sqrt2$.
(1,1): $|\Psi^-\rangle=(|01\rangle-|10\rangle)/\sqrt2$.
В исходнике решение проверяется в полном протоколе: нужно правильно передать сообщение.
Заготовка Q#:
namespace Kata {
operation EncodeMessageInQubit(qAlice : Qubit, message : (Bool, Bool)) : Unit {
// Get the bits from the message
let (bit1, bit2) = message;
// Implement your solution here...
}
}Предложить решение
Войти, чтобы отправить материал.