Skip to content

Commit

Permalink
Add demo "How to Quantum Just-In-Time Compile Grover's Algorithm with…
Browse files Browse the repository at this point in the history
… Catalyst" (#1219)

**Title:** How to Quantum Just-In-Time Compile Grover's Algorithm with
Catalyst

**Summary:** This demo uses the existing [Grover's
Algorithm](https://pennylane.ai/qml/demos/tutorial_grovers_algorithm/)
tutorial to describe how to just-in-time (JIT) compile a quantum circuit
using Catalyst. It also includes runtime benchmarks to demonstrate the
performance improvements that JIT compiling with Catalyst offers.

**Relevant references:** [L. K. Grover (1996) "A fast quantum mechanical
algorithm for database
search"](https://dl.acm.org/doi/10.1145/237814.237866)

**Possible Drawbacks:** None

**Related GitHub Issues:** None


[[sc-72939](https://app.shortcut.com/xanaduai/story/72939/convert-another-selected-demo)]

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

* GOALS — Why are we working on this now?

* Promote Catalyst by demonstrating the performance improvements it
offers by QJIT compiling a relatively simple quantum circuit.


* AUDIENCE — Who is this for?

* Users of PennyLane looking to compile and optimize their circuits for
better performance.


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

  * Grover's algorithm
  * Catalyst
  * QJIT

* Which of the following types of documentation is most similar to your
file?
(more details
[here](https://www.notion.so/xanaduai/Different-kinds-of-documentation-69200645fe59442991c71f9e7d8a77f8))
    
- [ ] Tutorial
- [ ] Demo
- [x] How-to

---------

Co-authored-by: Josh Izaac <[email protected]>
Co-authored-by: Ivana Kurečić <[email protected]>
  • Loading branch information
3 people authored Nov 7, 2024
1 parent 120e1f1 commit 22a06cd
Show file tree
Hide file tree
Showing 5 changed files with 463 additions and 0 deletions.
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Original file line number Diff line number Diff line change
@@ -0,0 +1,64 @@
{
"title": "How to quantum just-in-time (QJIT) compile Grover's algorithm with Catalyst",
"authors": [
{
"username": "joeycarter"
}
],
"dateOfPublication": "2024-11-07T00:00:00+00:00",
"dateOfLastModification": "2024-11-07T00:00:00+00:00",
"categories": [
"Algorithms",
"Devices and Performance",
"How-to",
"Quantum Computing"
],
"tags": [],
"previewImages": [
{
"type": "thumbnail",
"uri": "/_static/demo_thumbnails/regular_demo_thumbnails/thumbnail_qjit_compile_grovers_algorithm_with_catalyst.png"
},
{
"type": "large_thumbnail",
"uri": "/_static/demo_thumbnails/large_demo_thumbnails/thumbnail_large_qjit_compile_grovers_algorithm_with_catalyst.png"
}
],
"seoDescription": "See how to use Catalyst to just-in-time (QJIT) compile a PennyLane circuit implementing Grover's algorithm.",
"doi": "",
"references": [
{
"id": "Grover1996",
"type": "article",
"title": "A fast quantum mechanical algorithm for database search",
"authors": "L. K. Grover",
"year": "1996",
"journal": "Proceedings of the twenty-eighth annual ACM symposium on Theory of Computing",
"doi": "10.1145/237814.237866"
},
{
"id": "NandC2000",
"type": "book",
"title": "Quantum Computation and Quantum Information",
"authors": "M. A. Nielsen, and I. L. Chuang",
"year": "2000",
"publisher": "Cambridge University Press",
"journal": "",
"url": ""
}
],
"basedOnPapers": [],
"referencedByPapers": [],
"relatedContent": [
{
"type": "demonstration",
"id": "tutorial_grovers_algorithm",
"weight": 1.0
},
{
"type": "demonstration",
"id": "tutorial_how_to_quantum_just_in_time_compile_vqe_catalyst",
"weight": 1.0
}
]
}
Loading

0 comments on commit 22a06cd

Please sign in to comment.