# Smallest number of quantum gates to simulate other gates?

+ 3 like - 0 dislike
1805 views

What is the smallest number of Fredkin gates needed to simulate a Toffoli gate? What is the smallest number of Toffoli gates needed to simulate a Fredkin gate?

Where the Toffoli's gate is the CCNOT and the Fredkin gate is CSWAP (controlled swap) (See http://en.wikipedia.org/wiki/Quantum_gate#Commonly_used_gates)

I can create both gates using the other, but i don't know how to prove that I'm using the "smallest" number. (Of course, using auxiliary lines with 0,1 is mandatory, especially using only the Fredkin gate.)

This post imported from StackExchange Physics at 2014-06-11 15:04 (UCT), posted by SE-user Alessandro 'Scinawa' Antani
retagged Jun 11, 2014

+ 1 like - 0 dislike

Generally the way you prove something is minimal is by 1) enumerating all possible smaller configurations, or 2) looking at it in terms of a finite set of states, and showing that nothing smaller could hold the necessary number of states.

This post imported from StackExchange Physics at 2014-06-11 15:04 (UCT), posted by SE-user Mike Dunlavey
answered Nov 27, 2013 by (20 points)
And you can often reduce the search space by proving any solutions must at least take on (or not take on) some set of forms.

This post imported from StackExchange Physics at 2014-06-11 15:04 (UCT), posted by SE-user Brandon Enright
+ 0 like - 0 dislike

In both cases the answer is 4 gates.

A solution for this problem can be found in Andrew Landahl's notes for the course Physics 452/581: Introduction to Quantum Information, University of New Mexico. I quote the author's original solution (with some minor corrections).

In both cases, the minimum number of gates required to simulate the other is 4. A proof of such a minimum requires exhaustively demonstrating that 1, 2 or 3 gates is insufficient to achieve the simulation. Such a proof is omitted here and was not required for credit. Unfortunately, intuition seems to be the best alternative to finding the minimum number of gates and the related circuit.

By exhaustively demonstrating'' the author means that you can just write a computer program that lists all possible gates that you can obtain by combining 1, 2 and 3 Toffoli/Fredkin gates, and carefully check that none of them corresponds to the gate that you want to synthesize.

## Fredkin simulates Toffoli

We first explore some of the features of the Fredkin gate. Generally, we write the gate as

For particular choices of ancilla, we find

1. FANOUT/NOT

2. AND

In terms of our desired output, we see that the first two inputs are trivially mapped (aside from any possibly FANOUTs needed). The third output requires combining xy with z:

Combining these steps gives the following circuit, (with relevant intermediary outputs labeled):

## Toffoli simulates Fredkin

We write the Toffoli gate as

Relevant properties of the Toffoli gate are

1. FANOUT

2. XOR/CNOT

We also need to recognize that the Fredkin map can be equivalently written as

$$\mathrm{Fred}(x,y,z)= (x, x(y\oplus z)\oplus y, x(y\oplus z)\oplus z)$$

This can be intuitively seen by noticing that if the control bit x is not set, the outputs are unchanged. If x is set, the outputs are swapped using the fabled XOR swap trick. Combining these results, we write the complete circuit (with relevant intermediary ouputs labeled):

This post imported from StackExchange Physics at 2014-06-11 15:04 (UCT), posted by SE-user Juan Bermejo Vega
answered Jan 4, 2014 by (285 points)

 Please use answers only to (at least partly) answer questions. To comment, discuss, or ask for clarification, leave a comment instead. To mask links under text, please type your text, highlight it, and click the "link" button. You can then enter your link URL. Please consult the FAQ for as to how to format your post. This is the answer box; if you want to write a comment instead, please use the 'add comment' button. Live preview (may slow down editor)   Preview Your name to display (optional): Email me at this address if my answer is selected or commented on: Privacy: Your email address will only be used for sending these notifications. Anti-spam verification: If you are a human please identify the position of the character covered by the symbol $\varnothing$ in the following word:p$\hbar$ysics$\varnothing$verflowThen drag the red bullet below over the corresponding character of our banner. When you drop it there, the bullet changes to green (on slow internet connections after a few seconds). Please complete the anti-spam verification