Quil

Quil is an open quantum instruction language based on a shared classical/quantum memory model. Quil has been designed specifically for near-term quantum computers, while remaining expressive enough for general development.

pyQuil

pyQuil is an open-source Python library for constructing, analyzing, and running quantum programs. It is built on top of Quil, and integrates with Rigetti’s Forest API for quantum computation in the cloud.

from pyquil.quil import Program
from pyquil.gates import H, CNOT
from pyquil.api import SyncConnection
# construct a Bell State program
p = Program()
p.inst(H(0))
p.inst(CNOT(0, 1))
# run the program on a QVM
qvm = SyncConnection()
result = qvm.wavefunction(p)

Grove

Grove is a repository to showcase quantum programs developed using Forest. It includes the quantum Fourier transform, phase estimation, the quantum approximate optimization algorithm, and others.

pyQAOA

The quantum approximate optimization algorithm is a great example of a classical/quantum hybrid algorithm that does combinatorial optimization. Included in Grove is an implementation of this algorithm using Forest.