https://en.wikipedia.org/w/index.php?action=history&feed=atom&title=Quantum_counting_algorithm Quantum counting algorithm - Revision history 2025-05-25T10:16:20Z Revision history for this page on the wiki MediaWiki 1.45.0-wmf.2 https://en.wikipedia.org/w/index.php?title=Quantum_counting_algorithm&diff=1270953001&oldid=prev A40585 at 00:54, 22 January 2025 2025-01-22T00:54:39Z <p></p> <table style="background-color: #fff; color: #202122;" data-mw="interface"> <col class="diff-marker" /> <col class="diff-content" /> <col class="diff-marker" /> <col class="diff-content" /> <tr class="diff-title" lang="en"> <td colspan="2" style="background-color: #fff; color: #202122; text-align: center;">← Previous revision</td> <td colspan="2" style="background-color: #fff; color: #202122; text-align: center;">Revision as of 00:54, 22 January 2025</td> </tr><tr> <td colspan="2" class="diff-lineno">Line 1:</td> <td colspan="2" class="diff-lineno">Line 1:</td> </tr> <tr> <td class="diff-marker"></td> <td style="background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;"><div>{{Short description|Quantum algorithm for counting solutions to search problems}}</div></td> <td class="diff-marker"></td> <td style="background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;"><div>{{Short description|Quantum algorithm for counting solutions to search problems}}</div></td> </tr> <tr> <td class="diff-marker" data-marker="−"></td> <td style="color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #ffe49c; vertical-align: top; white-space: pre-wrap;"><div>'''Quantum counting algorithm''' is a [[quantum algorithm]] for efficiently counting the number of solutions for a given search problem.</div></td> <td class="diff-marker" data-marker="+"></td> <td style="color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #a3d3ff; vertical-align: top; white-space: pre-wrap;"><div><ins style="font-weight: bold; text-decoration: none;">The </ins>'''Quantum counting algorithm''' is a [[quantum algorithm]] for efficiently counting the number of solutions for a given search problem.</div></td> </tr> <tr> <td class="diff-marker"></td> <td style="background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;"><div>The algorithm is based on the [[quantum phase estimation algorithm]] and on [[Grover's algorithm|Grover's search algorithm]].</div></td> <td class="diff-marker"></td> <td style="background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;"><div>The algorithm is based on the [[quantum phase estimation algorithm]] and on [[Grover's algorithm|Grover's search algorithm]].</div></td> </tr> <tr> <td class="diff-marker"></td> <td style="background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;"><br /></td> <td class="diff-marker"></td> <td style="background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;"><br /></td> </tr> <tr> <td class="diff-marker" data-marker="−"></td> <td style="color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #ffe49c; vertical-align: top; white-space: pre-wrap;"><div>Counting problems are common in diverse fields such as statistical estimation, statistical physics, networking, etc.</div></td> <td class="diff-marker" data-marker="+"></td> <td style="color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #a3d3ff; vertical-align: top; white-space: pre-wrap;"><div>Counting problems are common in diverse fields such as statistical estimation, statistical physics, networking, etc<ins style="font-weight: bold; text-decoration: none;">. As for [[quantum computing]], the ability to perform quantum counting efficiently is needed in order to use Grover's search algorithm (because running Grover's search algorithm requires knowing how many solutions exist). Moreover, this algorithm solves the quantum existence problem (namely, deciding whether ''any'' solution exists) as a special case</ins>.</div></td> </tr> <tr> <td class="diff-marker" data-marker="−"></td> <td style="color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #ffe49c; vertical-align: top; white-space: pre-wrap;"><div>As for [[quantum computing]], the ability to perform quantum counting efficiently is needed in order to use Grover's search algorithm (because running Grover's search algorithm requires knowing how many solutions exist). Moreover, this algorithm solves the quantum existence problem (namely, deciding whether ''any'' solution exists) as a special case.</div></td> <td colspan="2" class="diff-empty diff-side-added"></td> </tr> <tr> <td class="diff-marker"></td> <td style="background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;"><br /></td> <td class="diff-marker"></td> <td style="background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;"><br /></td> </tr> <tr> <td class="diff-marker"></td> <td style="background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;"><div>The algorithm was devised by [[Gilles Brassard]], Peter Høyer and Alain Tapp in 1998.</div></td> <td class="diff-marker"></td> <td style="background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;"><div>The algorithm was devised by [[Gilles Brassard]], Peter Høyer and Alain Tapp in 1998.</div></td> </tr> </table> A40585 https://en.wikipedia.org/w/index.php?title=Quantum_counting_algorithm&diff=1251564570&oldid=prev A40585: citation fix 2024-10-16T20:25:37Z <p>citation fix</p> <table style="background-color: #fff; color: #202122;" data-mw="interface"> <col class="diff-marker" /> <col class="diff-content" /> <col class="diff-marker" /> <col class="diff-content" /> <tr class="diff-title" lang="en"> <td colspan="2" style="background-color: #fff; color: #202122; text-align: center;">← Previous revision</td> <td colspan="2" style="background-color: #fff; color: #202122; text-align: center;">Revision as of 20:25, 16 October 2024</td> </tr><tr> <td colspan="2" class="diff-lineno">Line 15:</td> <td colspan="2" class="diff-lineno">Line 15:</td> </tr> <tr> <td class="diff-marker"></td> <td style="background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;"><div>In other words, &lt;math&gt;f&lt;/math&gt; is the [[indicator function]] of &lt;math&gt;B&lt;/math&gt;.</div></td> <td class="diff-marker"></td> <td style="background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;"><div>In other words, &lt;math&gt;f&lt;/math&gt; is the [[indicator function]] of &lt;math&gt;B&lt;/math&gt;.</div></td> </tr> <tr> <td class="diff-marker"></td> <td style="background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;"><br /></td> <td class="diff-marker"></td> <td style="background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;"><br /></td> </tr> <tr> <td class="diff-marker" data-marker="−"></td> <td style="color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #ffe49c; vertical-align: top; white-space: pre-wrap;"><div>Calculate the number of solutions &lt;math&gt; M = \left\vert f^{-1}(1) \right\vert = \vert B \vert&lt;/math&gt;.&lt;ref name<del style="font-weight: bold; text-decoration: none;"> </del>=<del style="font-weight: bold; text-decoration: none;"> </del>brassard&gt;{{<del style="font-weight: bold; text-decoration: none;">cite</del> <del style="font-weight: bold; text-decoration: none;">book</del>|title=Automata, Languages and Programming|<del style="font-weight: bold; text-decoration: none;">date</del>=<del style="font-weight: bold; text-decoration: none;">July</del> <del style="font-weight: bold; text-decoration: none;">13–17,</del> <del style="font-weight: bold; text-decoration: none;">1998</del>|<del style="font-weight: bold; text-decoration: none;">publisher</del>=<del style="font-weight: bold; text-decoration: none;">Springer</del> <del style="font-weight: bold; text-decoration: none;">Berlin Heidelberg</del>|<del style="font-weight: bold; text-decoration: none;">location</del>=<del style="font-weight: bold; text-decoration: none;">ICALP'98</del> <del style="font-weight: bold; text-decoration: none;">Aalborg,</del> <del style="font-weight: bold; text-decoration: none;">Denmark</del>|<del style="font-weight: bold; text-decoration: none;">isbn</del>=<del style="font-weight: bold; text-decoration: none;">978</del>-<del style="font-weight: bold; text-decoration: none;">3</del>-<del style="font-weight: bold; text-decoration: none;">540</del>-<del style="font-weight: bold; text-decoration: none;">64781-2</del>|<del style="font-weight: bold; text-decoration: none;">pages</del>=<del style="font-weight: bold; text-decoration: none;">820–831</del>|<del style="font-weight: bold; text-decoration: none;">edition</del>=<del style="font-weight: bold; text-decoration: none;">25th</del> <del style="font-weight: bold; text-decoration: none;">International</del> <del style="font-weight: bold; text-decoration: none;">Colloquium</del>|arxiv=quant-ph/9805082|doi=10.1007/<del style="font-weight: bold; text-decoration: none;">BFb0055105| last1 = Brassard</del> |<del style="font-weight: bold; text-decoration: none;"> first1 </del>=<del style="font-weight: bold; text-decoration: none;">Gilles</del> |<del style="font-weight: bold; text-decoration: none;"> </del>last2<del style="font-weight: bold; text-decoration: none;"> </del>=<del style="font-weight: bold; text-decoration: none;"> Hoyer</del> |<del style="font-weight: bold; text-decoration: none;"> </del>first2<del style="font-weight: bold; text-decoration: none;"> </del>=<del style="font-weight: bold; text-decoration: none;"> </del>Peter |<del style="font-weight: bold; text-decoration: none;"> </del>last3<del style="font-weight: bold; text-decoration: none;"> </del>=<del style="font-weight: bold; text-decoration: none;"> </del>Tapp |<del style="font-weight: bold; text-decoration: none;"> </del>first3<del style="font-weight: bold; text-decoration: none;"> </del>=Alain|<del style="font-weight: bold; text-decoration: none;">s2cid</del>=<del style="font-weight: bold; text-decoration: none;">14147978</del>}}&lt;/ref&gt;</div></td> <td class="diff-marker" data-marker="+"></td> <td style="color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #a3d3ff; vertical-align: top; white-space: pre-wrap;"><div>Calculate the number of solutions &lt;math&gt; M = \left\vert f^{-1}(1) \right\vert = \vert B \vert&lt;/math&gt;.&lt;ref name=<ins style="font-weight: bold; text-decoration: none;">"</ins>brassard<ins style="font-weight: bold; text-decoration: none;">"</ins>&gt;{{<ins style="font-weight: bold; text-decoration: none;">Citation |last=Brassard |first=Gilles</ins> |title<ins style="font-weight: bold; text-decoration: none;">=Quantum counting |date=1998 |work</ins>=Automata, Languages and Programming<ins style="font-weight: bold; text-decoration: none;"> </ins>|<ins style="font-weight: bold; text-decoration: none;">volume</ins>=<ins style="font-weight: bold; text-decoration: none;">1443</ins> <ins style="font-weight: bold; text-decoration: none;">|pages=820–831</ins> |<ins style="font-weight: bold; text-decoration: none;">editor-last</ins>=<ins style="font-weight: bold; text-decoration: none;">Larsen</ins> |<ins style="font-weight: bold; text-decoration: none;">editor-first</ins>=<ins style="font-weight: bold; text-decoration: none;">Kim</ins> <ins style="font-weight: bold; text-decoration: none;">G.</ins> |<ins style="font-weight: bold; text-decoration: none;">url</ins>=<ins style="font-weight: bold; text-decoration: none;">http://link.springer.com/10.1007/BFb0055105 |access</ins>-<ins style="font-weight: bold; text-decoration: none;">date=2024</ins>-<ins style="font-weight: bold; text-decoration: none;">10</ins>-<ins style="font-weight: bold; text-decoration: none;">16 </ins>|<ins style="font-weight: bold; text-decoration: none;">place</ins>=<ins style="font-weight: bold; text-decoration: none;">Berlin, Heidelberg </ins>|<ins style="font-weight: bold; text-decoration: none;">publisher</ins>=<ins style="font-weight: bold; text-decoration: none;">Springer</ins> <ins style="font-weight: bold; text-decoration: none;">Berlin Heidelberg</ins> |arxiv=quant-ph/9805082<ins style="font-weight: bold; text-decoration: none;"> </ins>|doi=10.1007/<ins style="font-weight: bold; text-decoration: none;">bfb0055105</ins> |<ins style="font-weight: bold; text-decoration: none;">isbn</ins>=<ins style="font-weight: bold; text-decoration: none;">978-3-540-64781-2</ins> |last2=<ins style="font-weight: bold; text-decoration: none;">HØyer</ins> |first2=Peter |last3=Tapp |first3=Alain<ins style="font-weight: bold; text-decoration: none;"> </ins>|<ins style="font-weight: bold; text-decoration: none;">editor2-last=Skyum |editor2-first=Sven |editor3-last=Winskel |editor3-first</ins>=<ins style="font-weight: bold; text-decoration: none;">Glynn</ins>}}&lt;/ref&gt;</div></td> </tr> <tr> <td class="diff-marker"></td> <td style="background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;"><br /></td> <td class="diff-marker"></td> <td style="background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;"><br /></td> </tr> <tr> <td class="diff-marker"></td> <td style="background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;"><div>=== Classical solution ===</div></td> <td class="diff-marker"></td> <td style="background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;"><div>=== Classical solution ===</div></td> </tr> </table> A40585 https://en.wikipedia.org/w/index.php?title=Quantum_counting_algorithm&diff=1229696821&oldid=prev Fawly: Undid revision 1227038056 by Orsgaba (talk) ; WP:LINKSPAM 2024-06-18T06:56:41Z <p>Undid revision <a href="/wiki/Special:Diff/1227038056" title="Special:Diff/1227038056">1227038056</a> by <a href="/wiki/Special:Contributions/Orsgaba" title="Special:Contributions/Orsgaba">Orsgaba</a> (<a href="/w/index.php?title=User_talk:Orsgaba&amp;action=edit&amp;redlink=1" class="new" title="User talk:Orsgaba (page does not exist)">talk</a>) ; <a href="/wiki/Wikipedia:LINKSPAM" class="mw-redirect" title="Wikipedia:LINKSPAM">WP:LINKSPAM</a></p> <table style="background-color: #fff; color: #202122;" data-mw="interface"> <col class="diff-marker" /> <col class="diff-content" /> <col class="diff-marker" /> <col class="diff-content" /> <tr class="diff-title" lang="en"> <td colspan="2" style="background-color: #fff; color: #202122; text-align: center;">← Previous revision</td> <td colspan="2" style="background-color: #fff; color: #202122; text-align: center;">Revision as of 06:56, 18 June 2024</td> </tr><tr> <td colspan="2" class="diff-lineno">Line 114:</td> <td colspan="2" class="diff-lineno">Line 114:</td> </tr> <tr> <td class="diff-marker"></td> <td style="background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;"><br /></td> <td class="diff-marker"></td> <td style="background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;"><br /></td> </tr> <tr> <td class="diff-marker"></td> <td style="background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;"><div>{{Reflist}}</div></td> <td class="diff-marker"></td> <td style="background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;"><div>{{Reflist}}</div></td> </tr> <tr> <td class="diff-marker" data-marker="−"></td> <td style="color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #ffe49c; vertical-align: top; white-space: pre-wrap;"><br /></td> <td colspan="2" class="diff-empty diff-side-added"></td> </tr> <tr> <td class="diff-marker" data-marker="−"></td> <td style="color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #ffe49c; vertical-align: top; white-space: pre-wrap;"><div>== External links ==</div></td> <td colspan="2" class="diff-empty diff-side-added"></td> </tr> <tr> <td class="diff-marker" data-marker="−"></td> <td style="color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #ffe49c; vertical-align: top; white-space: pre-wrap;"><div>* [https://short.classiq.io/quantum_counting Implementation of the Quantum counting algorithm with Classiq]</div></td> <td colspan="2" class="diff-empty diff-side-added"></td> </tr> <tr> <td class="diff-marker" data-marker="−"></td> <td style="color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #ffe49c; vertical-align: top; white-space: pre-wrap;"><div> </div></td> <td colspan="2" class="diff-empty diff-side-added"></td> </tr> <tr> <td class="diff-marker"></td> <td style="background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;"><br /></td> <td class="diff-marker"></td> <td style="background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;"><br /></td> </tr> <tr> <td class="diff-marker"></td> <td style="background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;"><div>{{Quantum information}}</div></td> <td class="diff-marker"></td> <td style="background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;"><div>{{Quantum information}}</div></td> </tr> </table> Fawly https://en.wikipedia.org/w/index.php?title=Quantum_counting_algorithm&diff=1227098990&oldid=prev David Radcliffe: Removed math tag from subsection title because it produced strange output in the table of contents 2024-06-03T18:07:35Z <p>Removed math tag from subsection title because it produced strange output in the table of contents</p> <table style="background-color: #fff; color: #202122;" data-mw="interface"> <col class="diff-marker" /> <col class="diff-content" /> <col class="diff-marker" /> <col class="diff-content" /> <tr class="diff-title" lang="en"> <td colspan="2" style="background-color: #fff; color: #202122; text-align: center;">← Previous revision</td> <td colspan="2" style="background-color: #fff; color: #202122; text-align: center;">Revision as of 18:07, 3 June 2024</td> </tr><tr> <td colspan="2" class="diff-lineno">Line 64:</td> <td colspan="2" class="diff-lineno">Line 64:</td> </tr> <tr> <td class="diff-marker"></td> <td style="background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;"><div>From the [[Rotation matrix#Properties of a rotation matrix|properties of rotation matrices]] we know that &lt;math&gt;G&lt;/math&gt; is a [[unitary matrix]] with the two [[eigenvalues]] &lt;math&gt;e^{\pm i \theta}&lt;/math&gt;.&lt;ref name= nielchuan /&gt;{{rp|253}}</div></td> <td class="diff-marker"></td> <td style="background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;"><div>From the [[Rotation matrix#Properties of a rotation matrix|properties of rotation matrices]] we know that &lt;math&gt;G&lt;/math&gt; is a [[unitary matrix]] with the two [[eigenvalues]] &lt;math&gt;e^{\pm i \theta}&lt;/math&gt;.&lt;ref name= nielchuan /&gt;{{rp|253}}</div></td> </tr> <tr> <td class="diff-marker"></td> <td style="background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;"><br /></td> <td class="diff-marker"></td> <td style="background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;"><br /></td> </tr> <tr> <td class="diff-marker" data-marker="−"></td> <td style="color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #ffe49c; vertical-align: top; white-space: pre-wrap;"><div>===Estimating the value of <del style="font-weight: bold; text-decoration: none;">&lt;math&gt;\theta&lt;/math&gt;</del>===</div></td> <td class="diff-marker" data-marker="+"></td> <td style="color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #a3d3ff; vertical-align: top; white-space: pre-wrap;"><div>===Estimating the value of <ins style="font-weight: bold; text-decoration: none;">θ</ins>===</div></td> </tr> <tr> <td class="diff-marker"></td> <td style="background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;"><div>From here onwards, we follow the [[quantum phase estimation algorithm]] scheme: we apply [[Quantum gate#Controlled gates|controlled Grover]] operations followed by inverse [[quantum Fourier transform]]; and according to the [[Quantum phase estimation algorithm#Analysis|analysis]], we will find the best &lt;math&gt;p&lt;/math&gt;-bit approximation to the [[real number]] &lt;math&gt;\theta&lt;/math&gt; (belonging to the eigenvalues &lt;math&gt;e^{\pm i \theta}&lt;/math&gt; of the Grover operator) with probability higher than &lt;math&gt;\frac{4}{\pi^2}&lt;/math&gt;.&lt;ref name = ekert&gt;{{cite journal|last1=Cleve|first1=R.|last2=Ekert|first2=A.|last3=Macchiavello|first3=C.|last4=Mosca|first4=M.|title=Quantum algorithms revisited|journal=Proceedings of the Royal Society A: Mathematical, Physical and Engineering Sciences|date=8 January 1998|volume=454|issue=1969|pages=339–354|arxiv=quant-ph/9708016|doi=10.1098/rspa.1998.0164|bibcode=1998RSPSA.454..339C|s2cid=16128238}}&lt;/ref&gt;{{rp|348}}&lt;ref name = benet /&gt;{{rp|157}}</div></td> <td class="diff-marker"></td> <td style="background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;"><div>From here onwards, we follow the [[quantum phase estimation algorithm]] scheme: we apply [[Quantum gate#Controlled gates|controlled Grover]] operations followed by inverse [[quantum Fourier transform]]; and according to the [[Quantum phase estimation algorithm#Analysis|analysis]], we will find the best &lt;math&gt;p&lt;/math&gt;-bit approximation to the [[real number]] &lt;math&gt;\theta&lt;/math&gt; (belonging to the eigenvalues &lt;math&gt;e^{\pm i \theta}&lt;/math&gt; of the Grover operator) with probability higher than &lt;math&gt;\frac{4}{\pi^2}&lt;/math&gt;.&lt;ref name = ekert&gt;{{cite journal|last1=Cleve|first1=R.|last2=Ekert|first2=A.|last3=Macchiavello|first3=C.|last4=Mosca|first4=M.|title=Quantum algorithms revisited|journal=Proceedings of the Royal Society A: Mathematical, Physical and Engineering Sciences|date=8 January 1998|volume=454|issue=1969|pages=339–354|arxiv=quant-ph/9708016|doi=10.1098/rspa.1998.0164|bibcode=1998RSPSA.454..339C|s2cid=16128238}}&lt;/ref&gt;{{rp|348}}&lt;ref name = benet /&gt;{{rp|157}}</div></td> </tr> <tr> <td class="diff-marker"></td> <td style="background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;"><br /></td> <td class="diff-marker"></td> <td style="background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;"><br /></td> </tr> </table> David Radcliffe https://en.wikipedia.org/w/index.php?title=Quantum_counting_algorithm&diff=1227038056&oldid=prev Orsgaba: Added an external link for the algorithm's implementation 2024-06-03T08:52:06Z <p>Added an external link for the algorithm&#039;s implementation</p> <table style="background-color: #fff; color: #202122;" data-mw="interface"> <col class="diff-marker" /> <col class="diff-content" /> <col class="diff-marker" /> <col class="diff-content" /> <tr class="diff-title" lang="en"> <td colspan="2" style="background-color: #fff; color: #202122; text-align: center;">← Previous revision</td> <td colspan="2" style="background-color: #fff; color: #202122; text-align: center;">Revision as of 08:52, 3 June 2024</td> </tr><tr> <td colspan="2" class="diff-lineno">Line 114:</td> <td colspan="2" class="diff-lineno">Line 114:</td> </tr> <tr> <td class="diff-marker"></td> <td style="background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;"><br /></td> <td class="diff-marker"></td> <td style="background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;"><br /></td> </tr> <tr> <td class="diff-marker"></td> <td style="background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;"><div>{{Reflist}}</div></td> <td class="diff-marker"></td> <td style="background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;"><div>{{Reflist}}</div></td> </tr> <tr> <td colspan="2" class="diff-empty diff-side-deleted"></td> <td class="diff-marker" data-marker="+"></td> <td style="color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #a3d3ff; vertical-align: top; white-space: pre-wrap;"><br /></td> </tr> <tr> <td colspan="2" class="diff-empty diff-side-deleted"></td> <td class="diff-marker" data-marker="+"></td> <td style="color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #a3d3ff; vertical-align: top; white-space: pre-wrap;"><div>== External links ==</div></td> </tr> <tr> <td colspan="2" class="diff-empty diff-side-deleted"></td> <td class="diff-marker" data-marker="+"></td> <td style="color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #a3d3ff; vertical-align: top; white-space: pre-wrap;"><div>* [https://short.classiq.io/quantum_counting Implementation of the Quantum counting algorithm with Classiq]</div></td> </tr> <tr> <td colspan="2" class="diff-empty diff-side-deleted"></td> <td class="diff-marker" data-marker="+"></td> <td style="color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #a3d3ff; vertical-align: top; white-space: pre-wrap;"><div> </div></td> </tr> <tr> <td class="diff-marker"></td> <td style="background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;"><br /></td> <td class="diff-marker"></td> <td style="background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;"><br /></td> </tr> <tr> <td class="diff-marker"></td> <td style="background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;"><div>{{Quantum information}}</div></td> <td class="diff-marker"></td> <td style="background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;"><div>{{Quantum information}}</div></td> </tr> </table> Orsgaba https://en.wikipedia.org/w/index.php?title=Quantum_counting_algorithm&diff=1156607465&oldid=prev Deep Gabriel: Adding local short description: "Quantum algorithm for counting solutions to search problems", overriding Wikidata description "quantum algorithm for efficiently counting the number of solutions for a given search problem" 2023-05-23T18:25:36Z <p>Adding local <a href="/wiki/Wikipedia:Short_description" title="Wikipedia:Short description">short description</a>: &quot;Quantum algorithm for counting solutions to search problems&quot;, overriding Wikidata description &quot;quantum algorithm for efficiently counting the number of solutions for a given search problem&quot;</p> <table style="background-color: #fff; color: #202122;" data-mw="interface"> <col class="diff-marker" /> <col class="diff-content" /> <col class="diff-marker" /> <col class="diff-content" /> <tr class="diff-title" lang="en"> <td colspan="2" style="background-color: #fff; color: #202122; text-align: center;">← Previous revision</td> <td colspan="2" style="background-color: #fff; color: #202122; text-align: center;">Revision as of 18:25, 23 May 2023</td> </tr><tr> <td colspan="2" class="diff-lineno">Line 1:</td> <td colspan="2" class="diff-lineno">Line 1:</td> </tr> <tr> <td colspan="2" class="diff-empty diff-side-deleted"></td> <td class="diff-marker" data-marker="+"></td> <td style="color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #a3d3ff; vertical-align: top; white-space: pre-wrap;"><div>{{Short description|Quantum algorithm for counting solutions to search problems}}</div></td> </tr> <tr> <td class="diff-marker"></td> <td style="background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;"><div>'''Quantum counting algorithm''' is a [[quantum algorithm]] for efficiently counting the number of solutions for a given search problem.</div></td> <td class="diff-marker"></td> <td style="background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;"><div>'''Quantum counting algorithm''' is a [[quantum algorithm]] for efficiently counting the number of solutions for a given search problem.</div></td> </tr> <tr> <td class="diff-marker"></td> <td style="background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;"><div>The algorithm is based on the [[quantum phase estimation algorithm]] and on [[Grover's algorithm|Grover's search algorithm]].</div></td> <td class="diff-marker"></td> <td style="background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;"><div>The algorithm is based on the [[quantum phase estimation algorithm]] and on [[Grover's algorithm|Grover's search algorithm]].</div></td> </tr> </table> Deep Gabriel https://en.wikipedia.org/w/index.php?title=Quantum_counting_algorithm&diff=1120926359&oldid=prev Hannes.nutzernameistbereitsvergeben: The log^3 that was previously here is wrong. There is no exponential stuff involved. The given source states: "computational complexity we can state that the quantum existence tester saves n/2 qbits and 3 qbits in classical accuracy and quantum uncertainty compared to the quantum counting circuit" 2022-11-09T15:35:07Z <p>The log^3 that was previously here is wrong. There is no exponential stuff involved. The given source states: &quot;computational complexity we can state that the quantum existence tester saves n/2 qbits and 3 qbits in classical accuracy and quantum uncertainty compared to the quantum counting circuit&quot;</p> <table style="background-color: #fff; color: #202122;" data-mw="interface"> <col class="diff-marker" /> <col class="diff-content" /> <col class="diff-marker" /> <col class="diff-content" /> <tr class="diff-title" lang="en"> <td colspan="2" style="background-color: #fff; color: #202122; text-align: center;">← Previous revision</td> <td colspan="2" style="background-color: #fff; color: #202122; text-align: center;">Revision as of 15:35, 9 November 2022</td> </tr><tr> <td colspan="2" class="diff-lineno">Line 98:</td> <td colspan="2" class="diff-lineno">Line 98:</td> </tr> <tr> <td class="diff-marker"></td> <td style="background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;"><div>Quantum existence problem is a special case of quantum counting where we do not want to calculate the value of &lt;math&gt;M&lt;/math&gt;, but we only wish to know whether &lt;math&gt; M \neq 0 &lt;/math&gt; or not.&lt;ref name=imres1&gt;{{Cite book|last1=Imre|first1=Sandor|last2=Balazs|first2=Ferenc|title=Quantum Computing and Communications - An Engineering Approach|date=January 2005|publisher=Wiley|isbn=978-0470869024}}&lt;/ref&gt;{{rp|147}}</div></td> <td class="diff-marker"></td> <td style="background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;"><div>Quantum existence problem is a special case of quantum counting where we do not want to calculate the value of &lt;math&gt;M&lt;/math&gt;, but we only wish to know whether &lt;math&gt; M \neq 0 &lt;/math&gt; or not.&lt;ref name=imres1&gt;{{Cite book|last1=Imre|first1=Sandor|last2=Balazs|first2=Ferenc|title=Quantum Computing and Communications - An Engineering Approach|date=January 2005|publisher=Wiley|isbn=978-0470869024}}&lt;/ref&gt;{{rp|147}}</div></td> </tr> <tr> <td class="diff-marker"></td> <td style="background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;"><br /></td> <td class="diff-marker"></td> <td style="background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;"><br /></td> </tr> <tr> <td class="diff-marker" data-marker="−"></td> <td style="color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #ffe49c; vertical-align: top; white-space: pre-wrap;"><div>A trivial solution to this problem is directly using the quantum counting algorithm: the algorithm yields &lt;math&gt;M&lt;/math&gt;, so by checking whether &lt;math&gt;M \neq 0&lt;/math&gt; we get the answer to the existence problem. This approach involves some overhead information because we are not interested in the value of &lt;math&gt;M&lt;/math&gt;. Quantum phase estimation can be optimized to eliminate this overhead<del style="font-weight: bold; text-decoration: none;">, i.e., to reduce its computational complexity from &lt;math&gt; \log^3(N) &lt;/math&gt; to &lt;math&gt; \log^3(\sqrt{N}) &lt;/math&gt;</del>.&lt;ref name = imres1 /&gt;{{rp|148}} </div></td> <td class="diff-marker" data-marker="+"></td> <td style="color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #a3d3ff; vertical-align: top; white-space: pre-wrap;"><div>A trivial solution to this problem is directly using the quantum counting algorithm: the algorithm yields &lt;math&gt;M&lt;/math&gt;, so by checking whether &lt;math&gt;M \neq 0&lt;/math&gt; we get the answer to the existence problem. This approach involves some overhead information because we are not interested in the value of &lt;math&gt;M&lt;/math&gt;. Quantum phase estimation can be optimized to eliminate this overhead.&lt;ref name = imres1 /&gt;{{rp|148}} </div></td> </tr> <tr> <td class="diff-marker"></td> <td style="background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;"><br /></td> <td class="diff-marker"></td> <td style="background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;"><br /></td> </tr> <tr> <td class="diff-marker"></td> <td style="background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;"><div>If you are not interested in the control of error probability then using a setup with small number of qubits in the upper register will not produce an accurate estimation of the value of &lt;math&gt;\theta&lt;/math&gt;, but will suffice to determine whether &lt;math&gt;M&lt;/math&gt; equals zero or not.&lt;ref name = nielchuan /&gt;{{rp|263}}</div></td> <td class="diff-marker"></td> <td style="background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;"><div>If you are not interested in the control of error probability then using a setup with small number of qubits in the upper register will not produce an accurate estimation of the value of &lt;math&gt;\theta&lt;/math&gt;, but will suffice to determine whether &lt;math&gt;M&lt;/math&gt; equals zero or not.&lt;ref name = nielchuan /&gt;{{rp|263}}</div></td> </tr> </table> Hannes.nutzernameistbereitsvergeben https://en.wikipedia.org/w/index.php?title=Quantum_counting_algorithm&diff=1081209011&oldid=prev Citation bot: Alter: journal. Add: doi, pages, s2cid, authors 1-1. Removed parameters. Formatted dashes. Some additions/deletions were parameter name changes. Upgrade ISBN10 to 13. | Use this bot. Report bugs. | Suggested by Headbomb | Linked from Wikipedia:WikiProject_Academic_Journals/Journals_cited_by_Wikipedia/Sandbox | #UCB_webform_linked 315/409 2022-04-06T00:09:26Z <p>Alter: journal. Add: doi, pages, s2cid, authors 1-1. Removed parameters. Formatted <a href="/wiki/Wikipedia:ENDASH" class="mw-redirect" title="Wikipedia:ENDASH">dashes</a>. Some additions/deletions were parameter name changes. Upgrade ISBN10 to 13. | <a href="/wiki/Wikipedia:UCB" class="mw-redirect" title="Wikipedia:UCB">Use this bot</a>. <a href="/wiki/Wikipedia:DBUG" class="mw-redirect" title="Wikipedia:DBUG">Report bugs</a>. | Suggested by Headbomb | Linked from Wikipedia:WikiProject_Academic_Journals/Journals_cited_by_Wikipedia/Sandbox | #UCB_webform_linked 315/409</p> <table style="background-color: #fff; color: #202122;" data-mw="interface"> <col class="diff-marker" /> <col class="diff-content" /> <col class="diff-marker" /> <col class="diff-content" /> <tr class="diff-title" lang="en"> <td colspan="2" style="background-color: #fff; color: #202122; text-align: center;">← Previous revision</td> <td colspan="2" style="background-color: #fff; color: #202122; text-align: center;">Revision as of 00:09, 6 April 2022</td> </tr><tr> <td colspan="2" class="diff-lineno">Line 14:</td> <td colspan="2" class="diff-lineno">Line 14:</td> </tr> <tr> <td class="diff-marker"></td> <td style="background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;"><div>In other words, &lt;math&gt;f&lt;/math&gt; is the [[indicator function]] of &lt;math&gt;B&lt;/math&gt;.</div></td> <td class="diff-marker"></td> <td style="background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;"><div>In other words, &lt;math&gt;f&lt;/math&gt; is the [[indicator function]] of &lt;math&gt;B&lt;/math&gt;.</div></td> </tr> <tr> <td class="diff-marker"></td> <td style="background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;"><br /></td> <td class="diff-marker"></td> <td style="background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;"><br /></td> </tr> <tr> <td class="diff-marker" data-marker="−"></td> <td style="color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #ffe49c; vertical-align: top; white-space: pre-wrap;"><div>Calculate the number of solutions &lt;math&gt; M = \left\vert f^{-1}(1) \right\vert = \vert B \vert&lt;/math&gt;.&lt;ref name = brassard&gt;{{cite book|title=Automata, Languages and Programming|date=July 13–17, 1998|publisher=Springer Berlin Heidelberg|location=ICALP'98 Aalborg, Denmark|isbn=978-3-540-64781-2|pages=820–831|edition=25th International Colloquium|arxiv=quant-ph/9805082|doi=10.1007/BFb0055105| last1 = Brassard | first1 =Gilles | last2 = Hoyer | first2 = Peter | last3 = Tapp | first3 =Alain}}&lt;/ref&gt;</div></td> <td class="diff-marker" data-marker="+"></td> <td style="color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #a3d3ff; vertical-align: top; white-space: pre-wrap;"><div>Calculate the number of solutions &lt;math&gt; M = \left\vert f^{-1}(1) \right\vert = \vert B \vert&lt;/math&gt;.&lt;ref name = brassard&gt;{{cite book|title=Automata, Languages and Programming|date=July 13–17, 1998|publisher=Springer Berlin Heidelberg|location=ICALP'98 Aalborg, Denmark|isbn=978-3-540-64781-2|pages=820–831|edition=25th International Colloquium|arxiv=quant-ph/9805082|doi=10.1007/BFb0055105| last1 = Brassard | first1 =Gilles | last2 = Hoyer | first2 = Peter | last3 = Tapp | first3 =Alain<ins style="font-weight: bold; text-decoration: none;">|s2cid=14147978</ins>}}&lt;/ref&gt;</div></td> </tr> <tr> <td class="diff-marker"></td> <td style="background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;"><br /></td> <td class="diff-marker"></td> <td style="background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;"><br /></td> </tr> <tr> <td class="diff-marker"></td> <td style="background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;"><div>=== Classical solution ===</div></td> <td class="diff-marker"></td> <td style="background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;"><div>=== Classical solution ===</div></td> </tr> <tr> <td colspan="2" class="diff-lineno">Line 64:</td> <td colspan="2" class="diff-lineno">Line 64:</td> </tr> <tr> <td class="diff-marker"></td> <td style="background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;"><br /></td> <td class="diff-marker"></td> <td style="background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;"><br /></td> </tr> <tr> <td class="diff-marker"></td> <td style="background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;"><div>===Estimating the value of &lt;math&gt;\theta&lt;/math&gt;===</div></td> <td class="diff-marker"></td> <td style="background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;"><div>===Estimating the value of &lt;math&gt;\theta&lt;/math&gt;===</div></td> </tr> <tr> <td class="diff-marker" data-marker="−"></td> <td style="color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #ffe49c; vertical-align: top; white-space: pre-wrap;"><div>From here onwards, we follow the [[quantum phase estimation algorithm]] scheme: we apply [[Quantum gate#Controlled gates|controlled Grover]] operations followed by inverse [[quantum Fourier transform]]; and according to the [[Quantum phase estimation algorithm#Analysis|analysis]], we will find the best &lt;math&gt;p&lt;/math&gt;-bit approximation to the [[real number]] &lt;math&gt;\theta&lt;/math&gt; (belonging to the eigenvalues &lt;math&gt;e^{\pm i \theta}&lt;/math&gt; of the Grover operator) with probability higher than &lt;math&gt;\frac{4}{\pi^2}&lt;/math&gt;.&lt;ref name = ekert&gt;{{cite journal|last1=Cleve|first1=R.|last2=Ekert|first2=A.|last3=Macchiavello|first3=C.|last4=Mosca|first4=M.|title=Quantum algorithms revisited|journal=Proceedings of the Royal Society A: Mathematical, Physical and Engineering Sciences|date=8 January 1998|volume=454|issue=1969|arxiv=quant-ph/9708016|doi=10.1098/rspa.1998.0164|bibcode=1998RSPSA.454..339C}}&lt;/ref&gt;{{rp|348}}&lt;ref name = benet /&gt;{{rp|157}}</div></td> <td class="diff-marker" data-marker="+"></td> <td style="color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #a3d3ff; vertical-align: top; white-space: pre-wrap;"><div>From here onwards, we follow the [[quantum phase estimation algorithm]] scheme: we apply [[Quantum gate#Controlled gates|controlled Grover]] operations followed by inverse [[quantum Fourier transform]]; and according to the [[Quantum phase estimation algorithm#Analysis|analysis]], we will find the best &lt;math&gt;p&lt;/math&gt;-bit approximation to the [[real number]] &lt;math&gt;\theta&lt;/math&gt; (belonging to the eigenvalues &lt;math&gt;e^{\pm i \theta}&lt;/math&gt; of the Grover operator) with probability higher than &lt;math&gt;\frac{4}{\pi^2}&lt;/math&gt;.&lt;ref name = ekert&gt;{{cite journal|last1=Cleve|first1=R.|last2=Ekert|first2=A.|last3=Macchiavello|first3=C.|last4=Mosca|first4=M.|title=Quantum algorithms revisited|journal=Proceedings of the Royal Society A: Mathematical, Physical and Engineering Sciences|date=8 January 1998|volume=454|issue=1969<ins style="font-weight: bold; text-decoration: none;">|pages=339–354</ins>|arxiv=quant-ph/9708016|doi=10.1098/rspa.1998.0164|bibcode=1998RSPSA.454..339C<ins style="font-weight: bold; text-decoration: none;">|s2cid=16128238</ins>}}&lt;/ref&gt;{{rp|348}}&lt;ref name = benet /&gt;{{rp|157}}</div></td> </tr> <tr> <td class="diff-marker"></td> <td style="background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;"><br /></td> <td class="diff-marker"></td> <td style="background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;"><br /></td> </tr> <tr> <td class="diff-marker"></td> <td style="background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;"><div>Note that the second register is actually in a [[quantum superposition|superposition]] of the [[eigenvectors]] of the Grover operator (while in the original quantum phase estimation algorithm, the second register is the required eigenvector). This means that with some probability, we approximate &lt;math&gt;\theta&lt;/math&gt;, and with some probability, we approximate &lt;math&gt;2\pi - \theta&lt;/math&gt;; those two approximations are equivalent.&lt;ref name = nielchuan /&gt;{{rp|224–225}}</div></td> <td class="diff-marker"></td> <td style="background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;"><div>Note that the second register is actually in a [[quantum superposition|superposition]] of the [[eigenvectors]] of the Grover operator (while in the original quantum phase estimation algorithm, the second register is the required eigenvector). This means that with some probability, we approximate &lt;math&gt;\theta&lt;/math&gt;, and with some probability, we approximate &lt;math&gt;2\pi - \theta&lt;/math&gt;; those two approximations are equivalent.&lt;ref name = nielchuan /&gt;{{rp|224–225}}</div></td> </tr> <tr> <td colspan="2" class="diff-lineno">Line 96:</td> <td colspan="2" class="diff-lineno">Line 96:</td> </tr> <tr> <td class="diff-marker"></td> <td style="background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;"><br /></td> <td class="diff-marker"></td> <td style="background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;"><br /></td> </tr> <tr> <td class="diff-marker"></td> <td style="background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;"><div>===Quantum existence problem===</div></td> <td class="diff-marker"></td> <td style="background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;"><div>===Quantum existence problem===</div></td> </tr> <tr> <td class="diff-marker" data-marker="−"></td> <td style="color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #ffe49c; vertical-align: top; white-space: pre-wrap;"><div>Quantum existence problem is a special case of quantum counting where we do not want to calculate the value of &lt;math&gt;M&lt;/math&gt;, but we only wish to know whether &lt;math&gt; M \neq 0 &lt;/math&gt; or not.&lt;ref name=imres1&gt;{{Cite book|<del style="font-weight: bold; text-decoration: none;">last</del>=Imre|<del style="font-weight: bold; text-decoration: none;">first</del>=Sandor|last2=Balazs|first2=Ferenc|title=Quantum Computing and Communications - An Engineering Approach|date=January 2005|publisher=Wiley|isbn=978-0470869024}}&lt;/ref&gt;{{rp|147}}</div></td> <td class="diff-marker" data-marker="+"></td> <td style="color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #a3d3ff; vertical-align: top; white-space: pre-wrap;"><div>Quantum existence problem is a special case of quantum counting where we do not want to calculate the value of &lt;math&gt;M&lt;/math&gt;, but we only wish to know whether &lt;math&gt; M \neq 0 &lt;/math&gt; or not.&lt;ref name=imres1&gt;{{Cite book|<ins style="font-weight: bold; text-decoration: none;">last1</ins>=Imre|<ins style="font-weight: bold; text-decoration: none;">first1</ins>=Sandor|last2=Balazs|first2=Ferenc|title=Quantum Computing and Communications - An Engineering Approach|date=January 2005|publisher=Wiley|isbn=978-0470869024}}&lt;/ref&gt;{{rp|147}}</div></td> </tr> <tr> <td class="diff-marker"></td> <td style="background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;"><br /></td> <td class="diff-marker"></td> <td style="background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;"><br /></td> </tr> <tr> <td class="diff-marker"></td> <td style="background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;"><div>A trivial solution to this problem is directly using the quantum counting algorithm: the algorithm yields &lt;math&gt;M&lt;/math&gt;, so by checking whether &lt;math&gt;M \neq 0&lt;/math&gt; we get the answer to the existence problem. This approach involves some overhead information because we are not interested in the value of &lt;math&gt;M&lt;/math&gt;. Quantum phase estimation can be optimized to eliminate this overhead, i.e., to reduce its computational complexity from &lt;math&gt; \log^3(N) &lt;/math&gt; to &lt;math&gt; \log^3(\sqrt{N}) &lt;/math&gt;.&lt;ref name = imres1 /&gt;{{rp|148}} </div></td> <td class="diff-marker"></td> <td style="background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;"><div>A trivial solution to this problem is directly using the quantum counting algorithm: the algorithm yields &lt;math&gt;M&lt;/math&gt;, so by checking whether &lt;math&gt;M \neq 0&lt;/math&gt; we get the answer to the existence problem. This approach involves some overhead information because we are not interested in the value of &lt;math&gt;M&lt;/math&gt;. Quantum phase estimation can be optimized to eliminate this overhead, i.e., to reduce its computational complexity from &lt;math&gt; \log^3(N) &lt;/math&gt; to &lt;math&gt; \log^3(\sqrt{N}) &lt;/math&gt;.&lt;ref name = imres1 /&gt;{{rp|148}} </div></td> </tr> <tr> <td colspan="2" class="diff-lineno">Line 103:</td> <td colspan="2" class="diff-lineno">Line 103:</td> </tr> <tr> <td class="diff-marker"></td> <td style="background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;"><br /></td> <td class="diff-marker"></td> <td style="background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;"><br /></td> </tr> <tr> <td class="diff-marker"></td> <td style="background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;"><div>===Quantum relation testing problem===</div></td> <td class="diff-marker"></td> <td style="background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;"><div>===Quantum relation testing problem===</div></td> </tr> <tr> <td class="diff-marker" data-marker="−"></td> <td style="color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #ffe49c; vertical-align: top; white-space: pre-wrap;"><div>Quantum relation testing &lt;math&gt; QRT(value,relation)&lt;/math&gt;. is an extension of quantum existence testing, it decides whether at least one entry can be found in the data base which fulfils the relation to a certain reference value. &lt;ref name=imres2&gt;{{Cite journal| <del style="font-weight: bold; text-decoration: none;">last</del>=Elgaily |<del style="font-weight: bold; text-decoration: none;">first</del>=Sara|last2=Imre|first2=Sandor|title=Constrained Quantum Optimization for Resource Distribution Management|journal = <del style="font-weight: bold; text-decoration: none;">INTERNATIONAL</del> <del style="font-weight: bold; text-decoration: none;">JOURNAL</del> <del style="font-weight: bold; text-decoration: none;">OF</del> <del style="font-weight: bold; text-decoration: none;">ADVANCED</del> <del style="font-weight: bold; text-decoration: none;">COMPUTER</del> <del style="font-weight: bold; text-decoration: none;">SCIENCE</del> <del style="font-weight: bold; text-decoration: none;">AND</del> <del style="font-weight: bold; text-decoration: none;">APPLICATIONS</del>|date=2021|volume=12|issue=8}}&lt;/ref&gt; E.g. &lt;math&gt; QRT(5,&gt;)&lt;/math&gt; gives back YES if the data base contains any value larger than 5 else it returns NO. Quantum relation testing combined with classical logarithmic search forms an efficient quantum min/max searching algorithm. &lt;ref name = imres1 /&gt;{{rp|152}} &lt;ref name=imres3&gt;{{Cite journal|last=Imre|first=Sandor|title=Quantum Existence Testing and its Application for Finding Extreme Values in Unsorted Databases|journal = IEEE <del style="font-weight: bold; text-decoration: none;">TRANSACTIONS</del> <del style="font-weight: bold; text-decoration: none;">ON</del> <del style="font-weight: bold; text-decoration: none;">COMPUTERS</del>|date=2007|volume=56|issue=5}}&lt;/ref&gt;</div></td> <td class="diff-marker" data-marker="+"></td> <td style="color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #a3d3ff; vertical-align: top; white-space: pre-wrap;"><div>Quantum relation testing &lt;math&gt; QRT(value,relation)&lt;/math&gt;. is an extension of quantum existence testing, it decides whether at least one entry can be found in the data base which fulfils the relation to a certain reference value. &lt;ref name=imres2&gt;{{Cite journal| <ins style="font-weight: bold; text-decoration: none;">last1</ins>=Elgaily |<ins style="font-weight: bold; text-decoration: none;">first1</ins>=Sara|last2=Imre|first2=Sandor|title=Constrained Quantum Optimization for Resource Distribution Management|journal = <ins style="font-weight: bold; text-decoration: none;">International</ins> <ins style="font-weight: bold; text-decoration: none;">Journal</ins> <ins style="font-weight: bold; text-decoration: none;">of</ins> <ins style="font-weight: bold; text-decoration: none;">Advanced</ins> <ins style="font-weight: bold; text-decoration: none;">Computer</ins> <ins style="font-weight: bold; text-decoration: none;">Science</ins> <ins style="font-weight: bold; text-decoration: none;">and</ins> <ins style="font-weight: bold; text-decoration: none;">Applications</ins>|date=2021|volume=12|issue=8}}&lt;/ref&gt; E.g. &lt;math&gt; QRT(5,&gt;)&lt;/math&gt; gives back YES if the data base contains any value larger than 5 else it returns NO. Quantum relation testing combined with classical logarithmic search forms an efficient quantum min/max searching algorithm. &lt;ref name = imres1 /&gt;{{rp|152}} &lt;ref name=imres3&gt;{{Cite journal|last=Imre|first=Sandor|title=Quantum Existence Testing and its Application for Finding Extreme Values in Unsorted Databases|journal = IEEE <ins style="font-weight: bold; text-decoration: none;">Transactions</ins> <ins style="font-weight: bold; text-decoration: none;">on</ins> <ins style="font-weight: bold; text-decoration: none;">Computers</ins>|date=2007|volume=56|issue=5<ins style="font-weight: bold; text-decoration: none;">|pages=706–710|doi=10.1109/TC.2007.1032|s2cid=29588344</ins>}}&lt;/ref&gt;</div></td> </tr> <tr> <td class="diff-marker"></td> <td style="background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;"><br /></td> <td class="diff-marker"></td> <td style="background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;"><br /></td> </tr> <tr> <td class="diff-marker"></td> <td style="background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;"><div>== See also ==</div></td> <td class="diff-marker"></td> <td style="background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;"><div>== See also ==</div></td> </tr> </table> Citation bot https://en.wikipedia.org/w/index.php?title=Quantum_counting_algorithm&diff=1078617387&oldid=prev ImreSandor69 at 13:07, 22 March 2022 2022-03-22T13:07:33Z <p></p> <table style="background-color: #fff; color: #202122;" data-mw="interface"> <col class="diff-marker" /> <col class="diff-content" /> <col class="diff-marker" /> <col class="diff-content" /> <tr class="diff-title" lang="en"> <td colspan="2" style="background-color: #fff; color: #202122; text-align: center;">← Previous revision</td> <td colspan="2" style="background-color: #fff; color: #202122; text-align: center;">Revision as of 13:07, 22 March 2022</td> </tr><tr> <td colspan="2" class="diff-lineno">Line 96:</td> <td colspan="2" class="diff-lineno">Line 96:</td> </tr> <tr> <td class="diff-marker"></td> <td style="background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;"><br /></td> <td class="diff-marker"></td> <td style="background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;"><br /></td> </tr> <tr> <td class="diff-marker"></td> <td style="background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;"><div>===Quantum existence problem===</div></td> <td class="diff-marker"></td> <td style="background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;"><div>===Quantum existence problem===</div></td> </tr> <tr> <td class="diff-marker" data-marker="−"></td> <td style="color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #ffe49c; vertical-align: top; white-space: pre-wrap;"><div>Quantum existence problem is a special case of quantum counting where we do not want to calculate the value of &lt;math&gt;M&lt;/math&gt;, but we only wish to know whether &lt;math&gt; M \neq 0 &lt;/math&gt; or not.</div></td> <td class="diff-marker" data-marker="+"></td> <td style="color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #a3d3ff; vertical-align: top; white-space: pre-wrap;"><div>Quantum existence problem is a special case of quantum counting where we do not want to calculate the value of &lt;math&gt;M&lt;/math&gt;, but we only wish to know whether &lt;math&gt; M \neq 0 &lt;/math&gt; or not.<ins style="font-weight: bold; text-decoration: none;">&lt;ref name=imres1&gt;{{Cite book|last=Imre|first=Sandor|last2=Balazs|first2=Ferenc|title=Quantum Computing and Communications - An Engineering Approach|date=January 2005|publisher=Wiley|isbn=978-0470869024}}&lt;/ref&gt;{{rp|147}}</ins></div></td> </tr> <tr> <td class="diff-marker"><a class="mw-diff-movedpara-left" title="Paragraph was moved. Click to jump to new location." href="#movedpara_4_0_rhs">&#x26AB;</a></td> <td style="color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #ffe49c; vertical-align: top; white-space: pre-wrap;"><div><a name="movedpara_2_0_lhs"></a>A trivial solution to this problem is directly using the quantum counting algorithm: the algorithm yields &lt;math&gt;M&lt;/math&gt;, so by checking whether &lt;math&gt;M \neq 0&lt;/math&gt; we get the answer to the existence problem. This approach involves some overhead information because we are not interested in the value of &lt;math&gt;M&lt;/math&gt;.</div></td> <td colspan="2" class="diff-empty diff-side-added"></td> </tr> <tr> <td class="diff-marker"></td> <td style="background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;"><br /></td> <td class="diff-marker"></td> <td style="background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;"><br /></td> </tr> <tr> <td colspan="2" class="diff-empty diff-side-deleted"></td> <td class="diff-marker"><a class="mw-diff-movedpara-right" title="Paragraph was moved. Click to jump to old location." href="#movedpara_2_0_lhs">&#x26AB;</a></td> <td style="color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #a3d3ff; vertical-align: top; white-space: pre-wrap;"><div><a name="movedpara_4_0_rhs"></a>A trivial solution to this problem is directly using the quantum counting algorithm: the algorithm yields &lt;math&gt;M&lt;/math&gt;, so by checking whether &lt;math&gt;M \neq 0&lt;/math&gt; we get the answer to the existence problem. This approach involves some overhead information because we are not interested in the value of &lt;math&gt;M&lt;/math&gt;.<ins style="font-weight: bold; text-decoration: none;"> Quantum phase estimation can be optimized to eliminate this overhead, i.e., to reduce its computational complexity from &lt;math&gt; \log^3(N) &lt;/math&gt; to &lt;math&gt; \log^3(\sqrt{N}) &lt;/math&gt;.&lt;ref name = imres1 /&gt;{{rp|148}} </ins></div></td> </tr> <tr> <td class="diff-marker"><a class="mw-diff-movedpara-left" title="Paragraph was moved. Click to jump to new location." href="#movedpara_6_1_rhs">&#x26AB;</a></td> <td style="color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #ffe49c; vertical-align: top; white-space: pre-wrap;"><div><a name="movedpara_5_0_lhs"></a><del style="font-weight: bold; text-decoration: none;">Using</del> a setup with small number of qubits in the upper register will not produce an accurate estimation of the value of &lt;math&gt;\theta&lt;/math&gt;, but will suffice to determine whether &lt;math&gt;M&lt;/math&gt; equals zero or not.&lt;ref name = nielchuan /&gt;{{rp|263}}</div></td> <td colspan="2" class="diff-empty diff-side-added"></td> </tr> <tr> <td colspan="2" class="diff-empty diff-side-deleted"></td> <td class="diff-marker" data-marker="+"></td> <td style="color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #a3d3ff; vertical-align: top; white-space: pre-wrap;"><br /></td> </tr> <tr> <td colspan="2" class="diff-empty diff-side-deleted"></td> <td class="diff-marker"><a class="mw-diff-movedpara-right" title="Paragraph was moved. Click to jump to old location." href="#movedpara_5_0_lhs">&#x26AB;</a></td> <td style="color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #a3d3ff; vertical-align: top; white-space: pre-wrap;"><div><a name="movedpara_6_1_rhs"></a><ins style="font-weight: bold; text-decoration: none;">If you are not interested in the control of error probability then using</ins> a setup with small number of qubits in the upper register will not produce an accurate estimation of the value of &lt;math&gt;\theta&lt;/math&gt;, but will suffice to determine whether &lt;math&gt;M&lt;/math&gt; equals zero or not.&lt;ref name = nielchuan /&gt;{{rp|263}}</div></td> </tr> <tr> <td colspan="2" class="diff-empty diff-side-deleted"></td> <td class="diff-marker" data-marker="+"></td> <td style="color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #a3d3ff; vertical-align: top; white-space: pre-wrap;"><br /></td> </tr> <tr> <td colspan="2" class="diff-empty diff-side-deleted"></td> <td class="diff-marker" data-marker="+"></td> <td style="color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #a3d3ff; vertical-align: top; white-space: pre-wrap;"><div>===Quantum relation testing problem===</div></td> </tr> <tr> <td colspan="2" class="diff-empty diff-side-deleted"></td> <td class="diff-marker" data-marker="+"></td> <td style="color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #a3d3ff; vertical-align: top; white-space: pre-wrap;"><div>Quantum relation testing &lt;math&gt; QRT(value,relation)&lt;/math&gt;. is an extension of quantum existence testing, it decides whether at least one entry can be found in the data base which fulfils the relation to a certain reference value. &lt;ref name=imres2&gt;{{Cite journal| last=Elgaily |first=Sara|last2=Imre|first2=Sandor|title=Constrained Quantum Optimization for Resource Distribution Management|journal = INTERNATIONAL JOURNAL OF ADVANCED COMPUTER SCIENCE AND APPLICATIONS|date=2021|volume=12|issue=8}}&lt;/ref&gt; E.g. &lt;math&gt; QRT(5,&gt;)&lt;/math&gt; gives back YES if the data base contains any value larger than 5 else it returns NO. Quantum relation testing combined with classical logarithmic search forms an efficient quantum min/max searching algorithm. &lt;ref name = imres1 /&gt;{{rp|152}} &lt;ref name=imres3&gt;{{Cite journal|last=Imre|first=Sandor|title=Quantum Existence Testing and its Application for Finding Extreme Values in Unsorted Databases|journal = IEEE TRANSACTIONS ON COMPUTERS|date=2007|volume=56|issue=5}}&lt;/ref&gt;</div></td> </tr> <tr> <td class="diff-marker"></td> <td style="background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;"><br /></td> <td class="diff-marker"></td> <td style="background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;"><br /></td> </tr> <tr> <td class="diff-marker"></td> <td style="background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;"><div>== See also ==</div></td> <td class="diff-marker"></td> <td style="background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;"><div>== See also ==</div></td> </tr> <tr> <td colspan="2" class="diff-lineno">Line 107:</td> <td colspan="2" class="diff-lineno">Line 111:</td> </tr> <tr> <td class="diff-marker"></td> <td style="background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;"><br /></td> <td class="diff-marker"></td> <td style="background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;"><br /></td> </tr> <tr> <td class="diff-marker"></td> <td style="background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;"><div>== References ==</div></td> <td class="diff-marker"></td> <td style="background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;"><div>== References ==</div></td> </tr> <tr> <td colspan="2" class="diff-empty diff-side-deleted"></td> <td class="diff-marker" data-marker="+"></td> <td style="color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #a3d3ff; vertical-align: top; white-space: pre-wrap;"><br /></td> </tr> <tr> <td class="diff-marker"></td> <td style="background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;"><div>{{Reflist}}</div></td> <td class="diff-marker"></td> <td style="background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;"><div>{{Reflist}}</div></td> </tr> <tr> <td class="diff-marker"></td> <td style="background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;"><br /></td> <td class="diff-marker"></td> <td style="background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;"><br /></td> </tr> </table> ImreSandor69 https://en.wikipedia.org/w/index.php?title=Quantum_counting_algorithm&diff=1025919623&oldid=prev ReyHahn: /* Estimating the value of \theta */ uppercase 2021-05-30T10:20:55Z <p><span class="autocomment">Estimating the value of \theta: </span> uppercase</p> <table style="background-color: #fff; color: #202122;" data-mw="interface"> <col class="diff-marker" /> <col class="diff-content" /> <col class="diff-marker" /> <col class="diff-content" /> <tr class="diff-title" lang="en"> <td colspan="2" style="background-color: #fff; color: #202122; text-align: center;">← Previous revision</td> <td colspan="2" style="background-color: #fff; color: #202122; text-align: center;">Revision as of 10:20, 30 May 2021</td> </tr><tr> <td colspan="2" class="diff-lineno">Line 64:</td> <td colspan="2" class="diff-lineno">Line 64:</td> </tr> <tr> <td class="diff-marker"></td> <td style="background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;"><br /></td> <td class="diff-marker"></td> <td style="background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;"><br /></td> </tr> <tr> <td class="diff-marker"></td> <td style="background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;"><div>===Estimating the value of &lt;math&gt;\theta&lt;/math&gt;===</div></td> <td class="diff-marker"></td> <td style="background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;"><div>===Estimating the value of &lt;math&gt;\theta&lt;/math&gt;===</div></td> </tr> <tr> <td class="diff-marker" data-marker="−"></td> <td style="color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #ffe49c; vertical-align: top; white-space: pre-wrap;"><div>From here onwards, we follow the [[quantum phase estimation algorithm]] scheme: we apply [[Quantum gate#Controlled gates|controlled Grover]] operations followed by inverse [[<del style="font-weight: bold; text-decoration: none;">Quantum</del> Fourier<del style="font-weight: bold; text-decoration: none;"> transform|quantum fourier</del> transform]]; and according to the [[Quantum phase estimation algorithm#Analysis|analysis]], we will find the best &lt;math&gt;p&lt;/math&gt;-bit approximation to the [[real number]] &lt;math&gt;\theta&lt;/math&gt; (belonging to the eigenvalues &lt;math&gt;e^{\pm i \theta}&lt;/math&gt; of the Grover operator) with probability higher than &lt;math&gt;\frac{4}{\pi^2}&lt;/math&gt;.&lt;ref name = ekert&gt;{{cite journal|last1=Cleve|first1=R.|last2=Ekert|first2=A.|last3=Macchiavello|first3=C.|last4=Mosca|first4=M.|title=Quantum algorithms revisited|journal=Proceedings of the Royal Society A: Mathematical, Physical and Engineering Sciences|date=8 January 1998|volume=454|issue=1969|arxiv=quant-ph/9708016|doi=10.1098/rspa.1998.0164|bibcode=1998RSPSA.454..339C}}&lt;/ref&gt;{{rp|348}}&lt;ref name = benet /&gt;{{rp|157}}</div></td> <td class="diff-marker" data-marker="+"></td> <td style="color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #a3d3ff; vertical-align: top; white-space: pre-wrap;"><div>From here onwards, we follow the [[quantum phase estimation algorithm]] scheme: we apply [[Quantum gate#Controlled gates|controlled Grover]] operations followed by inverse [[<ins style="font-weight: bold; text-decoration: none;">quantum</ins> Fourier transform]]; and according to the [[Quantum phase estimation algorithm#Analysis|analysis]], we will find the best &lt;math&gt;p&lt;/math&gt;-bit approximation to the [[real number]] &lt;math&gt;\theta&lt;/math&gt; (belonging to the eigenvalues &lt;math&gt;e^{\pm i \theta}&lt;/math&gt; of the Grover operator) with probability higher than &lt;math&gt;\frac{4}{\pi^2}&lt;/math&gt;.&lt;ref name = ekert&gt;{{cite journal|last1=Cleve|first1=R.|last2=Ekert|first2=A.|last3=Macchiavello|first3=C.|last4=Mosca|first4=M.|title=Quantum algorithms revisited|journal=Proceedings of the Royal Society A: Mathematical, Physical and Engineering Sciences|date=8 January 1998|volume=454|issue=1969|arxiv=quant-ph/9708016|doi=10.1098/rspa.1998.0164|bibcode=1998RSPSA.454..339C}}&lt;/ref&gt;{{rp|348}}&lt;ref name = benet /&gt;{{rp|157}}</div></td> </tr> <tr> <td class="diff-marker"></td> <td style="background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;"><br /></td> <td class="diff-marker"></td> <td style="background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;"><br /></td> </tr> <tr> <td class="diff-marker"></td> <td style="background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;"><div>Note that the second register is actually in a [[quantum superposition|superposition]] of the [[eigenvectors]] of the Grover operator (while in the original quantum phase estimation algorithm, the second register is the required eigenvector). This means that with some probability, we approximate &lt;math&gt;\theta&lt;/math&gt;, and with some probability, we approximate &lt;math&gt;2\pi - \theta&lt;/math&gt;; those two approximations are equivalent.&lt;ref name = nielchuan /&gt;{{rp|224–225}}</div></td> <td class="diff-marker"></td> <td style="background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;"><div>Note that the second register is actually in a [[quantum superposition|superposition]] of the [[eigenvectors]] of the Grover operator (while in the original quantum phase estimation algorithm, the second register is the required eigenvector). This means that with some probability, we approximate &lt;math&gt;\theta&lt;/math&gt;, and with some probability, we approximate &lt;math&gt;2\pi - \theta&lt;/math&gt;; those two approximations are equivalent.&lt;ref name = nielchuan /&gt;{{rp|224–225}}</div></td> </tr> </table> ReyHahn