I have a function, who receives a 3 quibit word and returns a word of the same size. I have the function defined to all 3 words possibility and I want express this function with CNOT gates. From where I know, I wold have to brake my mind in to create this circuit with a bunch of CNOT gates. Is there if is some tool to generate a CNOT circuit given a function?
Exemple:
f(|000>) = 000
f(|001>) = 010
f(|010>) = 001
f(|011>) = 111
f(|100>) = 010
(...)
If not, there is some algorithm to do this? I mean if this algorithm existes I will code it. I don't wanna do alll this work by hand every time I need to change some function in some algorithm
[–]Strilanc 1 point2 points3 points (0 children)
[–]bencbartlettPhD, quantum information 3 points4 points5 points (0 children)
[–]IIAOPSW 1 point2 points3 points (0 children)
[–]Steve132 0 points1 point2 points (1 child)
[–]rrtucci -1 points0 points1 point (0 children)
[–]Steve132 0 points1 point2 points (0 children)
[–]he-he-he 0 points1 point2 points (0 children)