Jump to content

Fredkin gate

From Wikipedia, the free encyclopedia
Fredkin (controlled-swap) Gate

The Fredkin gate (also controlled-SWAP gate and conservative logic gate) is a computational circuit suitable for reversible computing, invented by Edward Fredkin. It is universal, which means that any logical or arithmetic operation can be constructed entirely of Fredkin gates. The Fredkin gate is a circuit or device with three inputs and three outputs that transmits the first bit unchanged and swaps the last two bits if, and only if, the first bit is 1.

Background

[edit]

The Fredkin gate,[1] conceptualized by Edward Fredkin and Tommaso Toffoli at the MIT Laboratory for Computer Science, represents a pivotal advancement in the field of reversible computing and conservative logic. Developed within the framework of conservative logic, this gate is designed to align computing processes with fundamental physical principles such as the reversibility of dynamical laws and the conservation of energy. The technical rationale behind the Fredkin gate is rooted in addressing the inefficiencies of traditional computing, where irreversible operations typically result in significant energy dissipation.

In contrast to conventional logic gates, which often erase information and thus dissipate heat as per Landauer's principle,[2] the Fredkin gate maintains reversibility — a property that ensures no information is lost during the computation process. Each output state of the gate uniquely determines its input state, which not only preserves information but also aligns with energy conservation principles. This characteristic is particularly crucial as the demand for computational power grows, making energy efficiency a key consideration.

The invention of the Fredkin gate was motivated by the quest to minimize the energy footprint of computational operations. It allows for the construction of computing systems that are not only efficient in terms of processing speed and power consumption but also environmentally sustainable. By embodying principles of reversible computing, the Fredkin gate offers a practical solution to reducing the energy costs associated with digital computations, marking a significant shift towards more sustainable computing technologies.

Definition

[edit]

The basic Fredkin gate[3] is a controlled swap gate (CSWAP gate) that maps three inputs (C, I1, I2) onto three outputs (C, O1, O2). The C input is mapped directly to the C output. If C = 0, no swap is performed; I1 maps to O1, and I2 maps to O2. Otherwise, the two outputs are swapped so that I1 maps to O2, and I2 maps to O1. It is easy to see that this circuit is reversible, i.e., "undoes" itself when run backwards. A generalized n × n Fredkin gate passes its first n − 2 inputs unchanged to the corresponding outputs and swaps its last two outputs if and only if the first n − 2 inputs are all 1.

  • Controlled-SWAP Logic: The Fredkin gate, a three-bit controlled-SWAP gate, operates by conditionally swapping two target bits based on the state of a control bit. If the control bit is 1, the gate swaps the target bits; if 0, the bits pass through unchanged.
Truth table Permutation matrix form
Input Output
C I1 I2 C O1 O2
0 0 0 0 0 0
0 0 1 0 0 1
0 1 0 0 1 0
0 1 1 0 1 1
1 0 0 1 0 0
1 0 1 1 1 0
1 1 0 1 0 1
1 1 1 1 1 1

  • Reversible Computing: The gate is reversible, meaning that no information is lost during computation. This property aligns with principles of conservative logic, preserving data and reducing energy dissipation. This corresponds nicely to the conservation of mass in physics and helps to show that the model is not wasteful.

Truth functions with AND, OR, XOR, and NOT

[edit]

The Fredkin gate can be defined using truth functions with AND, OR, XOR, and NOT, as follows:

O1 = I1 XOR S,
O2 = I2 XOR S,
Cout = Cin,

where S = (I1 XOR I2) AND C.

Alternatively:

O1 = (NOT C AND I1) OR (C AND I2),
O2 = (C AND I1) OR (NOT C AND I2),
Cout = Cin.

Completeness

[edit]

One way to see that the Fredkin gate is universal is to observe that it can be used to implement AND, NOT and OR:

If I2 = 0, then O2 = C AND I1.
If I2 = 1, then O1 = C OR I1.
If I1 = 0 and I2 = 1, then O2 = NOT C.

Hardware description

[edit]

We can encode the truth table in a hardware description language such as Verilog:

module fredkin_gate (
 input u, input x1, input x2,
 output v, output y1, output y2);
always @(*) begin
    v = u;
    y1 = (~u & x1) | (u & x2);
    y2 = (u & x1) | (~u & x2);
end
endmodule

Example

[edit]
Three-bit full adder (add with carry) using five Fredkin gates

Three-bit full adder (add with carry) using five Fredkin gates. The "garbage" output bit g is (p NOR q) if r = 0, and (p NAND q) if r = 1.

Inputs on the left, including two constants, go through three gates to quickly determine the parity. The 0 and 1 bits swap places for each input bit that is set, resulting in parity bit on the 4th row and inverse of parity on 5th row.

Then the carry row and the inverse parity row swap if the parity bit is set and swap again if one of the p or q input bits are set (it doesn't matter which is used) and the resulting carry output appears on the 3rd row.

The p and q inputs are only used as gate controls so they appear unchanged in the output.

Applications

[edit]

Quantum Photonic Chip Implementation

[edit]

Recent research has demonstrated the Fredkin gate on programmable silicon photonic chips. These chips use a network of Mach-Zehnder interferometers to route photons efficiently, creating a versatile and scalable platform that can handle multiple quantum gates. This approach allows for integrating Fredkin gates into large-scale quantum processors, paving the way for future quantum computing advancements.[4]

Efficient Controlled-SWAP Operation

[edit]

In a photonic setup, the Fredkin gate serves as an effective controlled-SWAP mechanism, enabling the conditional swap of target qubits. This is particularly valuable in generating high-fidelity Greenberger-Horne-Zeilinger (GHZ) states, which are crucial for quantum communication and other protocols. The gate thus provides a powerful tool for quantum protocols that require efficient conditional operations.[5]

Quantum State Estimation

[edit]

The Fredkin gate's controlled operations allow for estimating the overlap between quantum states without requiring resource-intensive quantum state tomography. This makes it particularly useful for quantum communication, measurement, and cryptography, where efficiency and accuracy are paramount.[5]

Quantum Fredkin gate

[edit]

On March 25, 2016, researchers from Griffith University and the University of Queensland announced they had built a quantum Fredkin gate that uses the quantum entanglement of particles of light to swap qubits. The availability of quantum Fredkin gates may facilitate the construction of quantum computers.[5][6]

See also

[edit]

References

[edit]
  1. ^ Fredkin, Edward; Toffoli, Tommaso (April 1982). "Conservative logic". International Journal of Theoretical Physics. 21 (3–4): 219–253. doi:10.1007/bf01857727. ISSN 0020-7748.
  2. ^ Landauer, R. (July 1961). "Irreversibility and Heat Generation in the Computing Process". IBM Journal of Research and Development. 5 (3): 183–191. doi:10.1147/rd.53.0183. ISSN 0018-8646.
  3. ^ Brown, Julian, The Quest for the Quantum Computer, New York : Touchstone, 2000.
  4. ^ Li, Yuan; Wan, Lingxiao; Zhang, Hui; Zhu, Huihui; Shi, Yuzhi; Chin, Lip Ket; Zhou, Xiaoqi; Kwek, Leong Chuan; Liu, Ai Qun (2022-09-15). "Quantum Fredkin and Toffoli gates on a versatile programmable silicon photonic chip". npj Quantum Information. 8 (1). doi:10.1038/s41534-022-00627-y. ISSN 2056-6387.
  5. ^ a b c A quantum Fredkin gate Raj B. Patel, Joseph Ho, Franck Ferreyrol, Timothy C. Ralph and Geoff J. Pryde, Science Advances, 25 Mar 2016, Vol. 2, no. 3, e1501531, DOI: 10.1126/sciadv.1501531
  6. ^ "Quantum computing is now a big step closer thanks to a new breakthrough: The Fredkin gate".

Further reading

[edit]