-
Notifications
You must be signed in to change notification settings - Fork 59
Create a bloq for Semi-Classical QFT #1610
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
base: main
Are you sure you want to change the base?
Conversation
@mpharrigan I'm not sure whether this should be bloq or a shim.. if we make it a bloq it will be a good application of your classical control design, what do you think? |
Yes, the decomposition requires measurement / feedback, so depends on having that functionality merged. That shouldn't block committing a placeholder with just call graph / resource counts |
Args: | ||
bitsize: Size of the input register to apply QFT on. | ||
is_adjoint: Whether to apply QFT or QFT†. |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
we usually put Args first
is_adjoint: Whether to apply QFT or QFT†. | ||
|
||
References: | ||
[Semiclassical Fourier Transform for Quantum Computation, Griffiths & Niu](https://arxiv.org/abs/quant-ph/9511007) |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
can you follow the standard reference format https://qualtran.readthedocs.io/en/latest/Autodoc.html#references
[title](url).
author. 2000. Fig x.
|
||
[Implementation of the Semiclassical Quantum Fourier Transform in a Scalable System](https://www.science.org/doi/10.1126/science.1110335) | ||
|
||
[stackexchange answer, Gidney](https://quantumcomputing.stackexchange.com/a/23712) |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
you can use the stack exchange title as the title
t = ssa.new_symbol('t') | ||
return {Hadamard(): self.bitsize, Measure(): self.bitsize, Rz(t): self.bitsize - 1} |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
👍
Second PR in the series for reproducing https://arxiv.org/abs/1905.09749
followup to #1602