Open
Description
The regetti / grove API has this very convenient and useful function:
create_arbitrary_state()
I used to think it would be difficult to achieve that, but I am amazed a function of about a hundred lines of Python code based on a 5 page paper could transform 0 to any states with only pow(2, n+2) - 4n - 4
CNOT gates and pow(2, n+2) - 5
one-qubit elementary rotation gates.
I cannot find a similar function in the Quantum++. If it doesn't exist, I think it would be nice to implement it.