Поделиться через


Операция ПриблизительноPreparePureStateCP

Полное имя: Std.StatePreparation.ПриблизительноPreparePureStateCP

operation ApproximatelyPreparePureStateCP(tolerance : Double, coefficients : ComplexPolar[], qubits : Qubit[]) : Unit is Adj + Ctl

Сводка

Учитывая набор коэффициентов и большой квантовый регистр, подготавливает состояние для этого регистра, описываемого заданными коэффициентами, до заданного приближения.

Описание

Эта операция подготавливает произвольное квантовое состояние |ψ⟩ со сложными коэффициентами rj·e^(i·tj) из состояния вычислительной базы n-кубитов |0...0⟩. В частности, действие этой операции можно имитировать с помощью унитарного преобразования U, которое действует на состояние "все нули" как

$$ \begin{align} U\ket{0...0} & = \ket{\psi} \\ & = \frac{ \sum_{j=0}^{2^n-1} r_j e^{i t_j} \ket{j} }{ \sqrt{\sum_{j=0}^{2^n-1} |r_j|^2} }. \end{align} $$

Ввод

толерантность

Допустимость приближения, которую следует использовать при подготовке заданного состояния.

Коэффициенты

Массив до 2ⁿ сложных коэффициентов, представленных их абсолютным значением и этапом (rj, tj). Коэффициент j-th индексирует состояние числа |j⟩ закодированное в формате big-endian.

кубиты

Номера кодирования регистра Кубита в формате big-endian. Ожидается, что это будет инициализировано в вычислительном состоянии |0...0⟩.

Замечания

coefficients будет заполнен элементами (rj, tj) = (0.0, 0.0), если задано менее 2ⁿ.

Ссылки

  • arXiv:quant-ph/0406176 "Синтез квантовых логических каналов", Vivek V. Shende, Стивен С. Буллок, Игорь Марков