All I wanted for Christmas was a quantum circuit simulator. So I wrote one in Javascript using NumericJS.

Check it out: http://www.davyw.com/quantum

For a good "Hello world" circuit, here's the diagram for a Bell State...

Check it out: http://www.davyw.com/quantum

For a good "Hello world" circuit, here's the diagram for a Bell State...

Try evaluating it yourself and see that |00> or |11> are the only possible outcomes.

You can even compile your own circuits into gates to use in other circuits.

Construct a circuit that transforms a single qubit into |0> with 75% probability and |1> with 25% probability, such as:

Then compile that into gate "F" and use it to create a superposition of |00> with 75% prob and |11> with 25% prob, like this:

Let me know if you find any use out of this. And definitely let me know if you find any bugs.

## Comments

It's doing:

0 1

-1 0

rather than:

0 -i

i 0

Otherwise, it seems like a really solid tool. I'm trying to get the basics of quantum computation, and a simulator should help make things a little more intuitive.

I'm working on cleaning up the code some so I can get it all hosted on a version control system so others can review the code and contribute.