Calculating the coefficients of a separable state
Given a separable 2-qubit state φ = φ0 ⊗ φ1 with φi= ai0|0> + ai1|1> φ thus can be written as φ = b00|00> + b01|01> + b10|10> + b11|11> with bij = a0ia1j. Now let some bij be given, i.e. an arbitrary 2-qubit state φ = b00|00> + b01|01> + b10|10> + b11|11> Let B = (bij). By Schmidt decomposition there are 2x2 matrices U, V, Σ, such that U, V unitary Σ positive semidefinite diagonal B = U ∘ Σ ∘ V* Let σ0, σ1 be the two diagonal elements of Σ. The state φ = b00|00> + b01|01> + b10|10> + b11|11> is entangled if and only if σ0 + σ1 > 1. QUESTION Given a state φ = b00|00> + b01|01> + b10|10> + b11|11> and its Schmidt decomposition B = U ∘ Σ ∘ V*, such that σ0 + σ1 ≤ 1, i.e. the state is separable. This means there are φi= ai0|0> + ai1|1>, such that φ can be written as φ = φ0 ⊗ φ1 How do I calculate A = (aij) from B = (bij), i.e. from U, V, Σ? This is the reverse of bij = a0ia1j given that bij defines a separable state.
If you're given a pure state and promised that it's separable, you don't need the Schmidt decomposition to compute the parts. Just lay the amplitudes out in a grid, read off the proportions between the columns for one part and read off the proportions between the rows for the other. That is to say, the statement that a 2-qubit system φ is separable so φ = αβ guarantees that φ₀₀/φ₀₁ = φ₁₀/φ₁₁ = β₀/β₁ and that φ₀₀/φ₁₀ = φ₀₁/φ₁₁ = α₀/α₁. And knowing α₀/α₁ is enough to solve for α, except for the global phase factor. (Note: work with proportions α₀:α₁ instead of ratios α₀/α₁ if α₁ might be zero.) This generalizes to systems with more qubits. A given subset of qubits is separable if and only if grouping by all the other qubits gives you a bunch of parts with agreeing proportions between their pieces. And the proportions between the pieces constrain everything except the global phase factor. Using the Schmidt decomposition as a shortcut The Schmidt decomposition does make this easier. It does all the hard 'reconstructing the proportions' work. If a pure system is separable then its SVD decomposition should only have one non-zero singular value, and that singular value should equal 1. So you have something like: |1 0 0 ...| U |0 0 0 ...| V |0 0 0 ...| |... . ...| But that's just multiplying the first column of U by the first row of V! So we have a system with n*m entries being created from a system with n entries and a system with m entries... Yup, the first column and the first row contain the amplitudes of α and β. Example My circuit simulator Quirk has built-in inline amplitude displays that perform this kind of separation (without doing an SVD). You can see the code that does it on github, though it's all GPU based so not particularly clear. (It was by far the most complicated display to write, since it has to do the grouping then compare all the groups. But some groups might have no amplitude so they have to be ignored, and there may be noise in the system from float errors so you should focus on the big groups and... blergh.) Also you can play with it in the simulator itself. Here's an example circuit using those displays: You might also find this blog post intuitively useful.
conjugate gradient with a positive semidefinite matrix
Most efficient way to solve SEVERAL linear systems Ax=b with SMALL A (minimum 3x3 maximum 8x8)
Assigning a sparse matrix in Eigen
The significance of the rotation matrix after computing structure from motion
Changing the LAPACK implementation used by IDL linear algebra routines?
approximate polynomial by linear inequalities
Maximization in quadratic programming using CGAL
Efficient recalculation of weighted least squares regression when weights change
How does ATLAS tuning work?
Vector direction on 3d line
hlsl dot function
How do units flow through matrix operations?
Quaternion relative error measurement
gcc 2.95 floating point linear algebra not matching gcc 4.3.2
How do I find the plane at which two hyperplanes intersect?
How can I do blind fitting on a list of x, y value pairs if I don't know the form of f(x) = y?