-
Notifications
You must be signed in to change notification settings - Fork 3
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
Add ProjectQ #18
Add ProjectQ #18
Conversation
Thanks @mlazzarin for fixing the transpose state. |
We should double-check that our implementation is the optimal way of using ProjectQ, then enable gate fusion (once PR #17 is merged), finally we should run benchmarks and see if the results make sense somehow. |
I added the |
I found a way to add gate fusion. I think that we are ready for review. |
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.
Thanks for the implementation, looks good. Do you know if ProjectQ allows defining an arbitrary gate from matrix? If yes, we could give a try defining the U3 and unlock the qv circuit which works for all other libraries. If no, I guess there is no simple solution other than decomposing the U3 to other rotation which is probably not fair in terms of benchmarks.
Otherwise, if you agree, I will merge #17 to libraries and implement the options
mechanism to switch the fusion flag here.
Yes, I'll give it a try. |
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.
Everything looks good to me.
I can also have a look at the U3 matrix.
Now I merged the latest |
Add ProjectQ to our benchmark suite.