language.planar_hamiltonian package

WORK IN PROGRESS!!

class language.planar_hamiltonian.Grid(n: int, R: int, H: PlanarHamExpr)

Bases: object

class language.planar_hamiltonian.HoriProj(state1: str, state2: str, row: int, col: int)

Bases: PlanarHamExpr

Horizontal 2-local Hamiltonian.

class language.planar_hamiltonian.HoriSymProject(states1: tuple[str, str], states2: tuple[str, str], row: int, col: int)

Bases: PlanarHamExpr

Horizontal 2-local Hamiltonian.

class language.planar_hamiltonian.Identity(row: int, col: int)

Bases: PlanarHamExpr

Identity Operator.

I

class language.planar_hamiltonian.PlanarHamExpr(row=None, col=None)

Bases: ExpressionBase

Planar Hamiltonian Expression.

Example:

R = 2, C = 2 has a grid layout of R x (C + 1)

(r=1, c=0) (r=1, c=1) (r=1, c=2) (r=2, c=0) (r=2, c=1) (r=2, c=2)

class language.planar_hamiltonian.ScalarSum(Hs: list[PlanarHamExpr], scalar=1)

Bases: PlanarHamExpr

Sum of 2-local Hamiltonians.

class language.planar_hamiltonian.SingProj(state: str, row: int, col: int)

Bases: PlanarHamExpr

Single 2-local Hamiltonian.

class language.planar_hamiltonian.SymUnitary(U: spmatrix, row: int, col: int)

Bases: PlanarHamExpr

Vertical 2-local Hamiltonian that symmetrizes unitary.

0 U U^dagger 0

class language.planar_hamiltonian.VertProj(state1: str, state2: str, row: int, col: int)

Bases: PlanarHamExpr

Vertical 2-local Hamiltonian.

language.planar_hamiltonian.bin_strs(n: int) list[str]
language.planar_hamiltonian.encode3(s: str) str

Particle to 3 qubits.

Parameters:

st (str) – Particle State

Returns:

Encoding

Return type:

str

language.planar_hamiltonian.init_square_matrix(size: int) lil_matrix
language.planar_hamiltonian.kron_I(mat: lil_matrix, front: int, back: int) lil_matrix
language.planar_hamiltonian.reify3(n: int, R: int, H: PlanarHamExpr)