Função StatePreparationComplexCoefficients
Aviso
Esta documentação refere-se ao QDK Clássico, que foi substituído pelo QDK Moderno.
https://aka.ms/qdk.api Veja a documentação da API para o QDK Moderno.
Espaço de nomes: Microsoft.Quantum.Preparation
Pacote: Microsoft.Quantum.Standard
Aviso
StatePreparationComplexCoefficients foi preterido. Em alternativa, utilize a operação PrepareArbitraryStateCP .
Devolve uma operação que prepara um estado quântico específico.
A operação devolvida $U$ prepara um estado quântico arbitrário $\ket{\psi}$ com coeficientes complexos $r_j e^{i t_j}$ do estado de base computacional $n$-qubit $\ket{0...0}$.
A ação de U num registo recentemente alocado é dada por $$ \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} $$
function StatePreparationComplexCoefficients (coefficients : Microsoft.Quantum.Math.ComplexPolar[]) : (Microsoft.Quantum.Arithmetic.LittleEndian => Unit is Adj + Ctl)
Entrada
coeficientes: ComplexPolar[]
Matriz de até $2^n$ coeficientes complexos representados pelo seu valor absoluto e fase $(r_j, t_j)$. O coeficiente $j$th indexa o estado de número $\ket{j}$ codificado em formato little-endian.
Saída: LittleEndian =>Unit is Adj + Ctl
Uma operação unitária de preparação de estado $U$.
Exemplo
O fragmento seguinte prepara o estado quântico $\ket{\psi}=e^{i 0.1}\sqrt{1/8}\ket{0}+\sqrt{7/8}\ket{2}$ no registo qubitsLE
de qubits.
let amplitudes = [Sqrt(0.125), 0.0, Sqrt(0.875), 0.0];
let phases = [0.1, 0.0, 0.0, 0.0];
mutable complexNumbers = new ComplexPolar[4];
for (idx in 0..3) {
set complexNumbers[idx] = ComplexPolar(amplitudes[idx], phases[idx]);
}
let op = StatePreparationComplexCoefficients(complexNumbers);
using (qubits = Qubit[2]) {
let qubitsLE = LittleEndian(qubits);
op(qubitsLE);
}
Observações
Os coeficientes de entrada negativos $r_j < 0$ serão tratados como positivos com o valor $|r_j|$. coefficients
será acolchoado com os elementos $(r_j, t_j) = (0,0, 0,0)$ se forem especificados menos de $2^n$.