The Bloch Sphere is particularly helpful in understanding superpositions in qubits and operations on qubits.
Also, for the perl folks I think these two modules are useful for "hands-on" learning with "qubits" (an approximation of qubits on classical computing):
I personally favor the Quantum::Entanglement module.
The documentation on the q_logic function gives you a basic root-not gate, and you can best understand the intermediate state. Here, the entangle(1,0) returns an "entangled", which you can call just a single qubit with a superposition of values, but which returns the value 0 with 100% probability and 1 with 0% probability (hence, the 1,0).
The root_not function given to q_logic as its first argument is the root-not gate. You can see that it takes the input value, and returns a superposition of 0 and 1 ($val and !$val), the superposition giving you a 50% chance of getting either a 0 or a 1.
However, if you apply root_not TWICE, you have a 100% chance of getting a 1 and a 0% chance of getting a 0. In essence, square root of not times square root of not gives you square root of not squared, or just not, and not of 0 is 1.
Again, the Bloch Sphere is invaluable in understanding the probabilities in superpositions of 1 and 0, or qubits.
http://en.wikipedia.org/wiki/Qubit
The Bloch Sphere is particularly helpful in understanding superpositions in qubits and operations on qubits.
Also, for the perl folks I think these two modules are useful for "hands-on" learning with "qubits" (an approximation of qubits on classical computing):
http://search.cpan.org/~dconway/Quantum-Superpositions-1.03/...
http://search.cpan.org/~ajgough/Quantum-Entanglement-0.32/En...
I personally favor the Quantum::Entanglement module.
The documentation on the q_logic function gives you a basic root-not gate, and you can best understand the intermediate state. Here, the entangle(1,0) returns an "entangled", which you can call just a single qubit with a superposition of values, but which returns the value 0 with 100% probability and 1 with 0% probability (hence, the 1,0).
The root_not function given to q_logic as its first argument is the root-not gate. You can see that it takes the input value, and returns a superposition of 0 and 1 ($val and !$val), the superposition giving you a 50% chance of getting either a 0 or a 1.
However, if you apply root_not TWICE, you have a 100% chance of getting a 1 and a 0% chance of getting a 0. In essence, square root of not times square root of not gives you square root of not squared, or just not, and not of 0 is 1.
Again, the Bloch Sphere is invaluable in understanding the probabilities in superpositions of 1 and 0, or qubits.