Reversible and Quantum computing Fisica dell Energia - a.a. 2015/2016
Reversible computing A process is said to be logically reversible if the transition function that maps old computational states to new ones is a one-to-one function; i.e. the output logical states uniquely defines the input logical states of the computational operation
Reversible computing Feynman gate Fredkin gate Toffoli gate Peres gate
Feynman gate When A = 0 then Q = B, when A = 1 then Q = B. Every linear reversible function can be built by composing only 2*2 Feynman gates and inverters With B=0 Feynman gate is used as a fan-out gate.
Fredkin gate Invented by Ed. Fredkin. The Fredkin gate is a computational circuit suitable for reversible computing. It is universal, which means that any logical or arithmetic operation can be constructed entirely of Fredkin gates
Fredkin gate
Fredkin gate
Minimal Full Adder Using Fredkin gates
Toffoli gate Invented by Tommaso Toffoli It is a universal reversible logic gate It is also known as the "controlled-controlled-not" gate
Toffoli gate
Peres Gate
Full adder with Peres gates
Goals of reversible logic synthesis Minimize the garbage Minimize the width of the circuit (the number of additional inputs) Minimize the total number of gates Minimize the delay
Billiard ball computing Model of a reversible mechanical computer based on Newtonian dynamics Proposed in 1982 by Edward Fredkin and Tommaso Toffoli It relies on the motion of spherical billiard balls in a friction-free environment made of buffers against which the balls bounce perfectly
Billiard ball computing
Billiard ball computing
Billiard ball computing Using balls and mirrors, we can implement basic logic gates: AND, OR, NOT With a big enough billiard table, we could (in theory) implement a complete computer using a combination of these gates BUT billiard balls don't work in practice normal AND, OR, NOT gates aren't reversible
Billiard ball computing Thermal losses friction can't be ignored Collisions aren't perfectly elastic Chaotic motion Balls are actually conglomerates of many atoms in various states of vibration Can't know their initial state perfectly Small variations in initial conditional conditions can cause exponentially large differences in final state
Quantum computing
What is Quantum Computing? Calculation based on the laws of Quantum Mechanics. Uses Quantum Mechanical Phenomena to perform operations on data. Operations done at an atomic/sub-atomic level.
History of quantum computing 1981 - Richard Feynman determines that it is impossible to efficiently simulate an evolution of a quantum system on a classical computer.
History of quantum computing 1985, David Deutsch, publishes a theoretical paper describing a Universal Quantum Computer.
History of quantum computing 1994, Peter Shor - Used Entanglement and Superposition methods to find the Prime Factors of Integer (useful in quantum encryption technology).
History of quantum computing 1996 -Lov Grover (Indian American Computer Scientist, born at Meerut), invented Quantum Database Search Algorithm.
History of quantum computing 1997, David Cory, A.F. Fahmy, Timothy Havel, Neil Gershenfeld and Isaac Chuang publish the first papers on quantum computers based on bulk spin resonance, or thermal ensembles.
History of quantum computing In 2007, a computer called Orion was presented by D-Wave. Technology in Orion, called Adiabatic Quantum Computing", is based on superconducting electronics.
Some of the components of Orion A 16-qubit processor Chip constructed by D-WaveSystems Orion chip s sample holder, ready to begin a cooldown. It works at 0.005ºC above absolute zero (-273ºC) One of its Noise FilteringStage
Quantum properties used: Superposition Entanglement Decoherence
Superposition: Property to exist in multiple states. In a quantum system, if a particle can be in states A and B, then it can also be in the state α 1 A + α 2 B ; α 1 and α 2 are complex numbers.
Decoherence: The biggest problem. States that if a coherent (superposed) state interacts with the environment, it falls into a classical state without superposition. So quantum computer to work with superposed states, it has to be completely isolated from the rest of the universe (not observing the state, not measuring it,...)
Entanglement: Most important property in quantum information. States that two or more particles can be linked, and if linked, can change properties of particle(s) changing the linked one. Two particles can be linked and changed each other without interaction.
Linear algebra: Quantum computing depends heavily on linear algebra. Some of the Quantum Mechanical concepts come from the mathematical formalism, not experiments.
Dirac Notation: Dirac notation is used for Quantum Computing. States of a Quantum system are represented by Ket vectors (Column Matrix). Example: 0, 1 Other notation: Bra notation-complex conjugate of Ket vectors(row Matrix).
Data representation: Quantum Bit (Qubit or q-bit) is used. Qubit, just like classical bit, is a memory element, but can hold not only the states 0 and 1 but also linear superposition of both states, α 1 0 +α 2 1. This superposition makes Quantum Computing fundamentally different.
Classical bit Vs Qubit: Classical bit: {0, 1} Qubit: {0, 1, superposed states of 0 and 1}
Physical representation of qubits: A single atom that is in either Ground or Excited state Ground state representing 0 Excited state representing 1
Physical representation of qubits:
More about qubits: By superposition principle, a Qubit can be forced to be in a superposed state. i.e. ψ = α 1 0 + α 2 1 Qubit in superposed state occupies all the states between 0 and 1 simultaneously, but collapses into 0 or 1 when observed physically. A qubit can thus encode an infinite amount of information.
Qubits in Superposed state:
Operations on qubits: Quantum logic gates are used. Quantum logic gates are represented by Unitary Matrices- U U=UU =I. States are also represented by matrices as:
Hadamard Gate (SRN gate) acts on a single qubit. transforms 0 to ( 0 + 1 )/ 2 And 1 to ( 0-1 )/ 2
Pauli-X gate: acts on a single qubit. Quantum equivalent of NOT gate. Transforms 1 to 0 and 0 to 1
Pauli-Y gate: acts on a single qubit. Transforms 1 to -i 0 and 0 to i 1
Pauli-Z gate: acts on a single qubit. Transforms 1 to - 1 and 0 remains unchanged.
Phase shift gate: acts on a single qubit. Transforms 1 to e iθ 1 and 0 remains unchanged. Modifies (rotates) the phase of quantum state by θ.
Two inputs q-bits Unitary operator is a 4x4 matrix
Unitary matrix for XOR
Combining XOR q-bits swapping
Quantum TOFFOLI gate
Advantages: Could process massive amount of complex data. Ability to solve scientific and commercial problems. Process data in a much faster speed. Capability to convey more accurate answers. More can be computed in less time.
Disadvantages and Problems: Security and Privacy Issues: Ability to crack down passwords. Capability to break every level of encryption. Problem of Decoherence, the need of a noise free environment. Complex hardware schemes like superconductors. Not suitable for word processing and email.
References Quantum Computing - Basic Concepts, Sendash Pangambam