Skip to main content

Quantum Algorithms

I've added a few examples to my quantum circuit editor / simulator. The most interesting of which being Grover's Algorithm for unsorted search.

Go ahead and try it out.

Hit "Enter" to evaluate the circuit and get a table of probable outcomes.

The gate F7 makes the fifth qubit in the "|1>" state if the first four qubits are in the state "|0111>" (seven). The circuit is able to determine that "|0111>" is the magic number with over 96% accuracy and only three calls to F7.

I also included an F5 gate. Go ahead and right click those F7 gates away, select the F5 gate, and then drag it into the three places the F7 was. Now it will find "|0101>".

You can save the entire circuit by pressing Ctrl+S. Double click on the GROV, F7, and F5 gates to see what their circuits look like (or to edit them to create your own versions).

Some of the other examples include:

  • Toffoli gate (you can make one simply by dragging to controls onto an X gate, but this is an implementation using only CNots and single-qubit gates)
  • Bell State (the "Hello World" of quantum computing)
  • 2 Qubit QFT and 4 Qubit QFT (again, the editor has it's own quantum fourier transform gate, but these are implementations using only Hadamard gates, controlled rotations, and swaps)
More general info can be found in the help menu on the very top right of the application.

Comments

Popular posts from this blog

Procedural music with PyAudio and NumPy

Combining two of my favorite pastimes, programming and music... This is the hacky "reduced to it's basic components" version of a library I've been working on for generating music and dealing with music theory.

Tweaking the harmonics by changing the shape of the harmonic components and ratios can produce some interesting sounds. This one only uses sine waveforms, but a square / saw generator is trivial with numpy.

It takes a second to generate, so don't turn your volume up too loud in anticipation (it may be loud).

import math
import numpy
import pyaudio
import itertools
from scipy import interpolate
from operator import itemgetter


class Note:

NOTES = ['c','c#','d','d#','e','f','f#','g','g#','a','a#','b']

def __init__(self, note, octave=4):
self.octave = octave
if isinstance(note, int):
self.index = note
self.note = Note.NOTES[note]
elif isinstance(note, st…

Build a Feed Reader in Python (Parts 7-9)

Part 07 Adding Jinja2 templates to a flask web application.

 Part 08 Adding static files so we can serve some CSS to style our app.

Part 09 Adding a background task to continuously update the articles while the application is running.

Write a Feed Reader in Python

I just started a new video tutorial series. This time it'll cover the entire process of writing an RSS feed reader in Python from start to finish using the feedparser module, flask, and SQLAlchemy. Expect to see about 3-4 new videos a week until this thing is finished!
Click to watch