Skip to content

How to Estimate the Resources for QSVT#1682

Open
Jaybsoni wants to merge 14 commits intomasterfrom
how_to_qsvt_re
Open

How to Estimate the Resources for QSVT#1682
Jaybsoni wants to merge 14 commits intomasterfrom
how_to_qsvt_re

Conversation

@Jaybsoni
Copy link
Contributor

@Jaybsoni Jaybsoni commented Feb 3, 2026

Title:
A simple demo on how to do resource estimation for QSVT

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

@Jaybsoni Jaybsoni requested review from a team as code owners February 3, 2026 22:11
@github-actions
Copy link

github-actions bot commented Feb 3, 2026

👋 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!

@github-actions
Copy link

github-actions bot commented Feb 3, 2026

Your preview is ready 🎉!

You can view your changes here

Deployed at: 2026-02-03 23:34:12 UTC

Copy link
Contributor

@drdren drdren left a comment

Choose a reason for hiding this comment

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

Hi Jay, this is an excellent demo! We should be able to wrap this up quickly. We will brainstorm some ideas for images.

@@ -0,0 +1,192 @@
r"""
How to use PennyLane’s quantum resource estimator module for QSVT
Copy link
Contributor

Choose a reason for hiding this comment

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

Hi! I think we agreed to change the title to "How to estimate the resource cost of QSVT" for SEO reasons. Our posts that state "...PennyLane's resource estimation..." don't show up when people search for general resource estimation tools.

How to use PennyLane’s quantum resource estimator module for QSVT
=================================================================
.. meta::
:property="og:description": Learn how to use PennyLane's estimator module to estimate the cost of QSVT
Copy link
Contributor

Choose a reason for hiding this comment

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

Same title change here!

=================================================================
.. meta::
:property="og:description": Learn how to use PennyLane's estimator module to estimate the cost of QSVT
:property="og:image": https://pennylane.ai/qml/_static/demonstration_assets/resource_estimation.jpeg
Copy link
Contributor

Choose a reason for hiding this comment

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

We shall brainstorm a good and simple image here. How about the word QSVT and a resource scaling graph in the background going to the moon?

- `QSVT in Practice <tutorial_apply_qsvt>`_
- `How to implement QSVT on hardware <tutorial_qsvt_hardware>`_

However, simulations can only take us so far, and industrially relevant system sizes are often too large to
Copy link
Contributor

Choose a reason for hiding this comment

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

Instead, how about "It's important to estimate the resource cost of the QSVT algorithm, for any system size. Fortunately, PennyLane's resource :mod:~.pennylane.estimator module makes that easy, even if the QSVT problem you're interested in is too big to simulate right now. "


Estimating the cost of QSVT
---------------------------
The logical cost of QSVT depends primarily on two factors, the **block encoding** operator and the **degree** of
Copy link
Contributor

Choose a reason for hiding this comment

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

I don't think this sentence is necessary! It's reasonable for what we are trying to achieve to just demonstrate an arbitrary polynomial transformation & block encoding.

print(resources)

##############################################################################
# Representing the QSVT workflow like this allows us to easily upscale it to larger system sizes without
Copy link
Contributor

Choose a reason for hiding this comment

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

I absolutely love this paragraph.

Slight tweak:

Representing the QSVT workflow like this allows us to easily perform resource estimation of larger system sizes without any computational overheads.

Copy link
Contributor

Choose a reason for hiding this comment

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

What does computational overhead mean here? Why is the cost to do RE the same for large systems as for small systems?

encoding_wires = [f"e_{i}" for i in range(num_encoding_wires)]
lcu_wires = [f"t_{i}" for i in range(num_qubits)]

Prep = qre.QROMStatePreparation(
Copy link
Contributor

Choose a reason for hiding this comment

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

People will copy-and-paste qre.QROMStatePreparation(...) for this larger example rather than qre.QubitUnitary(...) that you used before. Is this desirable? If so, should we explain it?

print(resources)

##############################################################################
# With PennyLane's resource estimation functionality we can analyze the cost of QSVT workflows for large
Copy link
Contributor

Choose a reason for hiding this comment

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

easily analyze?

#
# Suppose we already had a PennyLane circuit which used QSVT to apply the quintic polynomial transformation to
# :math:`A`. Here we can use `estimate() <https://docs.pennylane.ai/en/stable/code/api/pennylane.estimator.estimate.estimate.html>`_
# on the circuit directly to obtain the resource estimate.
Copy link
Contributor

Choose a reason for hiding this comment

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

If that's the case, we can obtain the resource estimate with only a couple of lines of code with estimate() <https://docs.pennylane.ai/en/stable/code/api/pennylane.estimator.estimate.estimate.html>_.

"executable_stable": true,
"executable_latest": true,
"dateOfPublication": "2026-01-30T10:00:00+00:00",
"dateOfLastModification": "2026-01-30T10:00:00+00:00",
Copy link
Contributor

Choose a reason for hiding this comment

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

We shall deal with the dates later. This comment is just to remind us.

@Alex-Preciado Alex-Preciado removed the request for review from a team February 5, 2026 21:38
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