5

In Quantum Algorithm Implementations for Beginners is an example of the Quantum PCA with an given 2 x 2 covariance matrix $\sum$.
The steps for state preparation are given in the paper. The steps are:

  • calculate covariance matrix $\sum$ from the data

  • compute density matrix $\rho = \frac{1}{Tr(\sum)}*\sum$

  • calculate two-qubit pure quantum state $| \psi \rangle$
  • calculate the unitary operator $U_{prep}$

I wanna comprehend the example from the paper. So far I got the density matrix $\rho$. I would be glad if someone could explain me how to calculate the quantum state $| \psi \rangle$ and futhermore $U_{prep}$.

glS
  • 24,708
  • 5
  • 34
  • 108
rexrayne
  • 65
  • 4
  • if you are referring to the description given in pag.46, it says "In the first step, one’s classical computer converts the raw data vectors into a covariance matrix Σ, then normalizes this matrix to form ρ = Σ/Tr(Σ), then purifies it to make a pure state |ψi$\rangle$, and finally computes the unitary Uprep needed to prepare |ψi from a pair of qubits each initially in the |0i state.". So are you asking what does it mean to purity a state? – glS Jan 31 '20 at 10:00
  • yeah exactly, I thought it would be something like amplitude-encoding so that $\rho_{11} = \alpha_{11}$ for Quantum state $| 00 \rangle$ and so on. But I think this is wrong. So I need a bit help here. – rexrayne Jan 31 '20 at 15:46
  • you can try to have a look at the Wikipedia page to know what purification means. In a few words, it means to find a pure state whose reduced density matrix equals your $\rho$. – glS Jan 31 '20 at 16:35

1 Answers1

2

In an article Towards Pricing Financial Derivatives with an IBM Quantum Computer PCA is implemented in a practical way with an example.

Operator $U_{prep}$ is realized with $\mathrm{U3}$ gates but parameters for some gates presented in the article seems wrong (maybe typo). See this thread for more information, correct $\mathrm{U3}$ parameters values and a way how to implement PCA on IBM Q.


EDIT: How to find parameters $\theta$, $\phi$ and $\lambda$ for implementation of $U_{prep}$ with $\mathrm{U3}$ gate.

$\mathrm{U3}$ gate has this form:

$$ \mathrm{U3}= \begin{pmatrix} \cos(\theta/2) & -\mathrm{e}^{i\lambda}\sin(\theta/2) \\ \mathrm{e}^{i\phi}\sin(\theta/2) & \mathrm{e}^{i(\phi+\lambda)}\cos(\theta/2) \end{pmatrix}. $$

Firstly, you have to factor out some complex number (denote $c$) from $U_{prep}$ in order to have a real number on position $u_{11}$. After that you can easily calculate $\theta$ from $\cos(\theta/2)$. Then, it is not problem to find $\phi$ from $\mathrm{e}^{i\phi}\sin(\theta/2)$ and finnaly $\lambda$ from $\mathrm{e}^{i(\phi+\lambda)}\cos(\theta/2)$.

The number $c$ factored out in the first step is a global phase. It is not important in case $\mathrm{U3}$ is used in its single qubit form. But if the gate is used as controlled one, the global phase cannot be neglected. So, you will have controlled $\mathrm{U3}$ and controlled global phase gate.

Martin Vesely
  • 13,891
  • 4
  • 28
  • 65
  • Thank you for this paper. I tried to comprehend this as well, but I have a problem with equation 16. I used the formula: $\mathrm{e}^{2\pi i \rho}$ but I calculated the values: $[-0.6340 - 0.7733i -0.4751 + 0.8799i; -0.4751 + 0.8799i -0.6340 + 0.7733i]$ with matlab. Did I miss something? I didn´t found something about this in the thread you linked. – rexrayne Jan 31 '20 at 18:08
  • First of all, did you use function exp or expm? Because expm returns matrix exponential. Exp is standard exponential function applied on each elements separately. Moreover, I also calculated matrix exponential in MatLab and it differed from the one in paper by global phase (i.e. all matrix elements were multiplied by same number) which can be ignored. – Martin Vesely Jan 31 '20 at 19:34
  • Thank you, you are right, I didn´t use expm, then the values are correct. Just one last question how do I calculate from the $U_{prep}$ the parameters $\lambda, \phi , \theta $? – rexrayne Feb 01 '20 at 20:10
  • @rexrayne: Please see edited answer above. – Martin Vesely Feb 03 '20 at 10:37