| Ordinary Computer |
Adiabatic Circuits |
Quantum Computer |
|
| Goal |
Get 'er done! |
Substantially lower power use, especially at low clockrate. |
Speedups up to exponential: e.g., search n values in sqrt(n) time |
| Data storage |
1's and 0's (bits) |
1's and 0's (bits) |
Vector with axes 1 and 0 (qubits) Not just 1 or 0: both at once! |
| Assignments? |
Yes |
No (uses energy = kT ln 2) |
No (violates laws of physics) |
| Reversible? |
No |
Yes |
Yes, except for "collapse" operation |
| Swap? |
Yes |
Yes |
Yes |
| Logic gates | AND, OR, NOT | NOT, CNOT, CCNOT |
CNOT, Hadamard rotate 45 degrees |
| Programming Model |
Instructions |
Reversible Instructions |
Reversible Quantum Operations, and Irreversible Collapse |
| Clock |
Square wave |
Two trapezoidal waves |
Limited by coherence time |
| When? |
Now |
Slowly, over next ten years |
??? |
| Limits |
Heat/power, hard problems |
Only helps at low clockrate |
How many bits can you keep coherent? |
Small things, like electrons, display several very odd mechanical
properties with mystical sounding "quantum" names:
| a=0 |
| a=1 |
| 0 |
1 |
| 1 |
0 |
| a=0 |
a=1 |
|
| output a=0 |
0 |
1 |
| output a=1 |
1 |
0 |
| a=0 && b=0 |
| a=0 && b=1 |
| a=1 && b=0 |
| a=1 && b=1 |
| 1 |
0 |
0 |
0 |
| 0 |
1 |
0 |
0 |
| 0 |
0 |
0 |
1 |
| 0 |
0 |
1 |
0 |
| a=0 |
a=1 | |||
| b=0 |
b=1 |
b=0 |
b=1 |
|
| a=0 && b=0 | 1 |
0 |
0 |
0 |
| a=0 && b=1 | 0 |
1 |
0 |
0 |
| a=1 && b=0 | 0 |
0 |
0 |
1 |
| a=1 && b=1 | 0 |
0 |
1 |
0 |