Logic gate used in
reversible computation. Has
3 inputs:
- Input A is a control line, and is copied unchanged to output A'.
- Inputs B and C are data lines; both are copied unchanged to output B' and C' if A=0, otherwise they are swapped.
The
Fredkin gate might be considered a "controlled swap"
gate.
Like the controlled controlled not gate, the Fredkin gate is universal: you can build computers using just this gate. Additionally, the number of 1's on the inputs equals the number of 1's on the outputs. This is nice if you're trying to design a billiard ball computer (which Fredkin did).
A ---o---
|
B --\|/--
x
C --/ \--