-
Notifications
You must be signed in to change notification settings - Fork 121
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Implement graphical fourier transform and inverse #92
Comments
Hello, I would love to work on this. |
Hoi Aryan, how familiar are you with ZX/ZH? If you are not that familiar with it, this might not be the best issue to start with it. You could either start by implementing just the decomposition of the 3-ary H-box, or immediately try to do the general case. |
Hi, is this issue still open for contributors? I'd be interested in implement this to get a better feel for how ZX/ZH relate. I have basic familiarity with both. |
I believe someone started on this a long time ago, and showed me showed progress. But I haven't heard from this in months, and it is not pushed, so go for it! |
Ok cool! Looking forward to working on this |
Implement the graphical Fourier transform, and its inverse. This would allow converting back and forth between ZX and ZH diagrams.
See the paper: Graphical Fourier Theory and the Cost of Quantum Addition.
A subtle point when working with ZH diagrams in pyzx: the pyzx
Graph
data structure does not support parallel edges. However, sometimes parallel edges are unavoidable between H-boxes. As a result, some care should be taken in how rewrites involving H-boxes are implemented to work around this (e.g. by introducing an identity-spider on one of the edges).The text was updated successfully, but these errors were encountered: