Skip to content
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

[WIP] Demo about implementing Shor's algorithm with Catalyst #1010

Draft
wants to merge 10 commits into
base: master
Choose a base branch
from

Conversation

glassnotes
Copy link
Contributor

Before submitting

Please complete the following checklist when submitting a PR:

  • Ensure that your tutorial executes correctly, and conforms to the
    guidelines specified in the README.

  • Remember to do a grammar check of the content you include.

  • All tutorials conform to
    PEP8 standards.
    To auto format files, simply pip install black, and then
    run black -l 100 path/to/file.py.

When all the above are checked, delete everything above the dashed
line and fill in the pull request template.


Title:

Summary:

Relevant references:

Possible Drawbacks:

Related GitHub Issues:


If you are writing a demonstration, please answer these questions to facilitate the marketing process.

  • GOALS — Why are we working on this now?

    Eg. Promote a new PL feature or show a PL implementation of a recent paper.

  • AUDIENCE — Who is this for?

    Eg. Chemistry researchers, PL educators, beginners in quantum computing.

  • KEYWORDS — What words should be included in the marketing post?

  • Which of the following types of documentation is most similar to your file?
    (more details here)

  • Tutorial
  • Demo
  • How-to

Comment on lines 102 to 103
# TODO: explain how the modular exponentiation circuits work (not sure yet how to
# best include these, because some are quite large)
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

If you don't want to go into too much detail here, there is an option to upload a .py and simply import the operator. However, I think it would be worth a small tutorial in the future. People would love it!

Comment on lines 26 to 28
a positive step in this direction. In this demonstration we will show how
Catalyst enables an implementation of Shor's factoring algorithm that is
just-in-time compiled from end-to-end, classical control structure and all.
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I think we should recommend to the reader something about just-in-time since I think it is super important here and it is not a known term in quantum computing: "If you still don't know what this Jit thing is and the potential it has, I invite you to take a look to ..." or similar

# The quantum part
# ^^^^^^^^^^^^^^^^
#
# TODO: explain how the modular exponentiation circuits work (not sure yet how to
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Update: pennylane now has qml.ModExp. So we can probably save the explanation here 😄

Copy link
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I saw! Are they qjit compatible? There is a fair amount of customization in my implementation so I will probably still provide brief explanations, and the circuits, but only what's needed.

Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

It should be, let me know if you have any problems :)

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

2 participants