Skip to content

Conversation

mariaschuld
Copy link
Contributor

This demo was internally discussed, and is supposed to enlarge our portfolio of Fourier-theoretic methods in quantum algorithms.

Copy link

👋 Hey, looks like you've updated some demos!

🐘 Don't forget to update the dateOfLastModification in the associated metadata files so your changes are reflected in Glass Onion (search and recommendations).

Please hide this comment once the field(s) are updated. Thanks!

@mariaschuld mariaschuld requested a review from a user August 5, 2025 09:48
Comment on lines 7 to 8
],
"dateOfPublication": "2025-07-30T10:00:00+00:00",
Copy link
Collaborator

Choose a reason for hiding this comment

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

These new metadata fields will let you control the executability of the demo. Not needed now, but in case there are dependency issues in the future you can set these to false to make the demo non-executable temporarily, without having to change the name of the demo:

Suggested change
],
"dateOfPublication": "2025-07-30T10:00:00+00:00",
],
"executable_stable": true,
"executable_latest": true,
"dateOfPublication": "2025-07-30T10:00:00+00:00",

Copy link
Collaborator

Choose a reason for hiding this comment

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

I applied these to trigger a rebuild 😄

@PennyLaneAI PennyLaneAI deleted a comment from github-actions bot Aug 6, 2025
Copy link

github-actions bot commented Aug 6, 2025

Your preview is ready 🎉!

You can view your changes here

@mariaschuld mariaschuld requested a review from KetpuntoG August 19, 2025 11:40
@mariaschuld
Copy link
Contributor Author

@alvaro-at-xanadu the demo is now in a final draft stage, and I tagged Vasilis and Guillermo for a technical review. What else would I need to do to proceed? Shall I ask Tarik for images? :)

@ghost
Copy link

ghost commented Aug 19, 2025

@alvaro-at-xanadu the demo is now in a final draft stage, and I tagged Vasilis and Guillermo for a technical review. What else would I need to do to proceed? Shall I ask Tarik for images? :)

Hi @mariaschuld ! Yes, feel free to touch base with Tarik for images, and let us know when technical review is ready so we can do a quick product/content review.

Copy link

github-actions bot commented Aug 21, 2025

⚠️ Deprecation Warning ⚠️

You are modifying files in the demonstrations/ directory. This directory is no longer in use.

Please add or move your files to demonstrations_v2/, and use the following format:

your_demo_name/
    - demo.py
    - metadata.json
    - requirements.in (optional)

For additional information, please refer to the contributing guidelines

Copy link
Contributor

@KetpuntoG KetpuntoG left a comment

Choose a reason for hiding this comment

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

Nice work! 🥳 Here some comments

Comment on lines +292 to +295
# .. admonition:: Subgroup
# :class: note
#
# A subgroup is a subset of the original set that, under the group operation, fulfills all group axioms.
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 are defining the bases, you could also say what dual G was before, I actually forgot what that means 🙈

Copy link
Contributor Author

Choose a reason for hiding this comment

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

Ah, it's complicated...that's a can of worms I'd like to keep closed! :)

Comment on lines +307 to +314
# The entire trick of the Cooley-Tukey algorithm is a change of variables,
#
# .. math::
# \begin{align}
# x &\rightarrow 3 x_1 + x_2, \;\; x_1 = 0,1, \; x_2 = 0,1,2 \\
# k &\rightarrow 2k_2 + k_1 , \;\; k_1 = 0,1,2 \; k_2 = 0,1
# \end{align}
#
Copy link
Contributor

Choose a reason for hiding this comment

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

Where this come from? What should I do if I have a different m Z_m?

#
# Essentially, the change in variables turns the Fourier basis function over period 6 into a Fourier basis function with period 2,
# which makes the dependency on :math:`k_2` disappear. This effectively turns the Fourier transform into a sum of "smaller" Fourier transforms
# over :math:`3x_1`, namely :math:`\{0, 3\}`, :math:`\{1, 4\}`, and :math:`\{2, 5\}`. These are combined with
Copy link
Contributor

Choose a reason for hiding this comment

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

not sure what (0,3),(1,4), (2,5) is referring to

Comment on lines +310 to +313
# \begin{align}
# x &\rightarrow 3 x_1 + x_2, \;\; x_1 = 0,1, \; x_2 = 0,1,2 \\
# k &\rightarrow 2k_2 + k_1 , \;\; k_1 = 0,1,2 \; k_2 = 0,1
# \end{align}
Copy link
Contributor

Choose a reason for hiding this comment

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

render is not ideal, maybe \quad instead of ; solve the issue

#
# The splitting of the variable :math:`k` is related to the concept of "restricting a character" to the subgroup.
# Essentially, it allows us turn the characters, or Fourier basis functions :math:`e^{\frac{2 \pi i}{6} x k }`
# related to the original group, into characters of the subgroup, :math:`e^{\frac{2 \pi i}{2} x_1 k_1 }` by changing the period.
Copy link
Contributor

Choose a reason for hiding this comment

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

nice!

#

#######################################################################
# From FFTs to QFTs
Copy link
Contributor

Choose a reason for hiding this comment

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

In this section I have missed the connection with the previous section. After developing the mathematics I thought it would be clearer the connection. I saw the previous version where the formulas were and it was not clear to me neither, so I understand that it has been tried and it has not been easy 😅 (not a blocker but those were my thoughts after reading)

@mariaschuld mariaschuld requested a review from KetpuntoG August 28, 2025 15:11
@mariaschuld
Copy link
Contributor Author

Thanks @KetpuntoG I implemented all of your corrections, and it was reviewed by Joseph and Vasilis for technical content. @tarik-elkhateeb has a ticket open for the figures.

Handing this over to the product team now, let me know if more work is needed :)

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.

4 participants