Partager via


EnvironPreparePureStateCP, opération

Nom complet : Std.StatePreparation.ApproximatelyPreparePureStateCP

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

Résumé

Compte tenu d’un ensemble de coefficients et d’un registre quantique big-endian, prépare un état sur ce registre décrit par les coefficients donnés, jusqu’à une tolérance d’approximation donnée.

Descriptif

Cette opération prépare un état quantique arbitraire |ψ⟩ avec des coefficients complexes rj·e^(i·tj) à partir de l’état de base de calcul n-qubit |0...0⟩. En particulier, l’action de cette opération peut être simulée par une transformation unitaire U qui agit sur l’état de tous les zéros comme

$$ \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} $$

Entrée

tolérance

Tolérance d’approximation à utiliser lors de la préparation de l’état donné.

Coefficients

Tableau allant jusqu’à 2ⁿ coefficients complexes représentés par leur valeur absolue et leur phase (rj, tj). Le coefficient j-th indexe l’état du nombre |j⟩ encodé dans un format big-endian.

qubits

Le registre Qubit encode les états numériques au format big-endian. Cela devrait être initialisé dans l’état de base de calcul |0...0⟩.

Remarques

coefficients seront rembourrés avec des éléments (rj, tj) = (0,0, 0,0) si moins de 2ⁿ sont spécifiés.

Références

  • arXiv :quant-ph/0406176 « Synthesis of Quantum Logic Circuits », Vivek V. Shende, Stephen S. Bullock, Igor L. Markov