Nota
L'accesso a questa pagina richiede l'autorizzazione. È possibile provare ad accedere o modificare le directory.
L'accesso a questa pagina richiede l'autorizzazione. È possibile provare a modificare le directory.
Nome completo: Std.StatePreparation.PreparePureStateD
operation PreparePureStateD(coefficients : Double[], qubits : Qubit[]) : Unit is Adj + Ctl
Sommario
Dato un set di coefficienti e un registro quantistico big-endian, prepara uno stato su tale registro descritto dai coefficienti specificati.
Descrizione
Questa operazione prepara uno stato quantistico arbitrario |ψ⟩ con coefficienti aj dallo stato di base di calcolo n-qubit |0...0⟩.
L'azione di U sullo stato all-zeros è data da $$ \begin{align} U \ket{0\cdots 0} = \ket{\psi} = \frac{\sum_{j=0}^{2^n-1}\alpha_j \ket{j}}{\sqrt{\sum_{j=0}^{2^n-1}|\alpha_j|^2}}. \end{align} $$
Inserimento
Coefficienti
Matrice di fino a 2ⁿ coefficienti reali. Il coefficiente j-th indicizza lo stato numerico |j⟩ codificato in formato big-endian.
qubit
Qubit registra gli stati dei numeri di codifica in un formato big-endian. È prevista l'inizializzazione nello stato di base di calcolo |0...0⟩.
Osservazioni:
coefficients verranno normalizzati e riempiti con elementi aj = 0,0 se vengono specificati meno di 2ⁿ.
Esempio
Il frammento di codice seguente prepara lo stato quantistico |ψ⟩=√(1/8)|0⟩+√(7/8)|2⟩=√(1/8)|00⟩+√(7/8)|10⟩ nel registro qubit qubits.
let amplitudes = [Sqrt(0.125), 0.0, Sqrt(0.875), 0.0];
use qubits = Qubit[2];
PreparePureStateD(amplitudes, qubits);
Riferimenti
- arXiv:quant-ph/0406176 "Sintesi dei circuiti logici quantistici", Vivek V. Shende, Stephen S. Bullock, Igor L. Markov
Vedere anche
- Std.StatePreparation.ApprossimativamentePreparePureStateCP