Algorithmic Assertions - Craig Gidney's Computer Science BlogA blog about computer science, software engineering, quantum computing, mathematical puzzles, and so forth.
http://algassert.com
Shor's Quantum Factoring Algorithm<p>A few years ago, I wrote a post on <a href="http://twistedoakstudios.com/blog/Post2644_grovers-quantum-search-algorithm">how Grover's quantum search algorithm works</a>. I think it went over quite well. I've heard from several people that it was the first time they "got" anything about quantum computing. Today I want to do the same thing, but with...Mon, 28 Aug 2017 06:10:20 -0700
http://algassert.com/post/1718
http://algassert.com/post/1718Breaking Down the Quantum Swap<p>Suppose you have two qubits. For evocative purposes, suppose you're literally holding them as <a href="https://en.wikipedia.org/wiki/Bloch_sphere">balls</a> in your hands: one in the left hand, and one in the right hand. Your goal is to swap the qubits, so that your right hand ends up holding a qubit storing the state...Tue, 22 Aug 2017 13:10:20 -0700
http://algassert.com/post/1717
http://algassert.com/post/1717Visualizing 2-Qubit Entanglement<p>One of the annoying things about quantum computing is that it's not very amenable to visualization. We do have a great way to draw the state of one qubit, i.e. the <a href="https://en.wikipedia.org/wiki/Bloch_sphere">Bloch sphere</a>, but it doesn't work very well for more qubits. This makes the Bloch sphere a double-edged...Sun, 06 Aug 2017 13:10:20 -0700
http://algassert.com/post/1716
http://algassert.com/post/1716My Second Paper: A Slightly Smaller Surface Code S Gate<p>Recently, I was trying to learn more about the surface code by reading through the 2012 paper "<a href="https://arxiv.org/abs/1208.0928">Surface codes: Towards practical large-scale quantum computation</a>" by Austin Fowler et al. The paper is great; it uses lots of concepts and ways of thinking about quantum states that I'm not used...Mon, 31 Jul 2017 20:10:20 -0700
http://algassert.com/post/1715
http://algassert.com/post/1715Reversible Computation isn't Free<p><a href="https://en.wikipedia.org/wiki/Landauer%27s_principle">Landauer's principle</a> puts a lower limit on the cost of irreversible computations. Basically: clearing a bit requires a minimum amount of energy (that depends on the ambient temperature), so a computation must consume an amount of energy proportional to how many bits it clears. (The energy efficiency of current...Sun, 23 Jul 2017 13:10:20 -0700
http://algassert.com/post/1714
http://algassert.com/post/1714Impractical Experiments #4: High Powered Phase Estimation<p>In <a href="/post/1710">a previous post</a>, I explained how using quantum phase estimation on an operation can provide a mechanism for applying fractional powers of that operation. The basic idea being that the register containing the phase estimation acts as an index into the eigenspaces of the operation, allowing you phase...Sun, 09 Jul 2017 13:10:20 -0700
http://algassert.com/post/1713
http://algassert.com/post/1713My First Paper: Dirty Period Finding<p>A couple years ago, I was stuck on a question from <a href="https://www.amazon.com/Quantum-Computation-Information-10th-Anniversary/dp/1107002176">Mike & Ike</a>. This was partially because I knew nothing about how to make circuits, and partially because as soon as I had the question figured out I made it harder:</p> <p><img style="max-width:100%; border:1px solid gray; padding: 5px;"...Wed, 28 Jun 2017 13:10:10 -0700
http://algassert.com/post/1712
http://algassert.com/post/1712[Meta] Who Owns Quirk?<p>When I first started making Quirk, the toy drag-and-drop quantum circuit simulator at <a href="http://algassert.com/quirk">algassert.com/quirk</a>, it was clearly separate from my day job at Google. After I joined the quantum computing team, that separation wasn't so obvious. So I decided it was worth going through the internal process to get...Sun, 18 Jun 2017 13:10:10 -0700
http://algassert.com/post/1711
http://algassert.com/post/1711Computing Fractional Fourier Transforms<p>Recently, I was side-tracked by a stumble into the <a href="https://en.wikipedia.org/wiki/Fractional_Fourier_transform">Wikipedia article on fractional Fourier transforms</a>. I found it interesting, because normally I think of the Fourier transform as an all-or-nothing proposition. I'm either thinking in the frequency domain or in the time domain, not some combination both. What would...Sun, 11 Jun 2017 12:11:11 -0700
http://algassert.com/post/1710
http://algassert.com/post/1710Simple Algorithm for Multiplicative Inverses mod 2ⁿ<p>Lately, as part of writing a paper, I've been thinking about quantum circuits for doing multiplication while using very little workspace. Surprisingly, this stumbled me into a nice way to compute multiplicative-inverses.</p> <p>Consider that multiplying by 3 is equivalent to adding a register into itself, left-shifted:</p> <div class="highlight"><pre><code class="language-python" data-lang="python"><span></span><span...Tue, 06 Jun 2017 10:10:10 -0700
http://algassert.com/post/1709
http://algassert.com/post/1709