Три состояния с фазами кубических корней единицы
Вход — два кубита в $|00\rangle$, хранящиеся в массиве длины 2. Напишите операцию на языке Q#, подготавливающую состояние
$$\frac{|00\rangle+\omega|01\rangle+\omega^2|10\rangle}{\sqrt3},\qquad\omega=e^{2\pi i/3}.$$
Полная вспомогательная операция подготовки трёх состояний из предыдущего задания дана в заготовке.
Заготовка Q#:
namespace Kata {
import Std.Math.*;
operation ThreeStates_TwoQubits_Phases(qs : Qubit[]) : Unit {
// Implement your solution here...
}
// You might find this helper operation from an earlier task useful.
operation ThreeStates_TwoQubits(qs : Qubit[]) : Unit is Adj {
let theta = ArcSin(1.0 / Sqrt(3.0));
Ry(2.0 * theta, qs[0]);
ApplyControlledOnInt(0, H, [qs[0]], qs[1]);
}
}