How to synthesize quantum circuits?

  • Context: Undergrad 
  • Thread starter Thread starter nashed
  • Start date Start date
  • Tags Tags
    Circuits Quantum
Join the discussion
Registration is free. Ask a follow-up in this thread, or start your own.
1 reply · 1K views
nashed
Messages
56
Reaction score
5
I wonder if anyone can explain how to actually synthesis a quantum circuit, what I mean by this is that given some requirements, I am able to write the matrix form of the circuit needed, but I have no idea how to turn that into a list of gates.

For example:
Build a circuit that performs the exclusive or operation on three qubits $$ |abc\rangle \rightarrow |ab\rangle\otimes|a\oplus b\oplus c\rangle $$ looking at a truth table for the circuit I can see that when a and b are the same then c is conserved, otherwise c is flipped so I can deduce that if I connect c to a controlled not where a is the control and another controlled not where b is the control I get the desired operation.
That said if I try and write the matrix form of the circuit I have no idea how to manipulate it so it looks like the repeated application of controlled not gates.

BTW this is not a homework question but I am not sure this is the correct forum either so feel free to tell me and I"ll delete the post.
 
Physics news on Phys.org
This kind of information is covered in quantum computing textbooks, and those might be your best bet.

Other than that, you could try reading this blog post about cutting down a NOT with many controls into single-control NOTs and single-qubit operations.

You will probably also find my drag-and-drop quantum circuit simulator Quirk very useful. For example, I bet the truth table you have looks quite a lot like the grid on the right:

Screenshot from 2017-02-27 15:32:56.png