System Types
Up until this point, we have only considered quantum mechanical systems
composed of "spinless fermions".  HQS Quantum Solver, however, provides
further types of quantum systems. Each of these systems is implemented
in its own module, and all these modules are structured in a similar way,
meaning that they all provide a VectorSpace, an Operator, and a set
of functions providing operator terms.
Spins
The spins module implements systems
consisting of  spin- particles.
The VectorSpace is spanned by
vectors of the form
As a shorthand, we usually write, e.g.,
With this module, e.g., the
quantum Heisenberg model,
can be simulated. See the spin_waves.ipynb example for details.
Spinless Fermions
The spinless_fermions module implements
systems of fermions having a site index but no (dedicated) spin index.
The VectorSpace is spanned
by vectors of the form
and  is the creation operator for site .
With this module, e.g., the tight-binding model, can be simulated, as was shown in the "Getting Started" section.
Spinful Fermions
The spinful_fermions module implements
system of fermions having a site index and a spin index.
The VectorSpace is spanned
by vectors of the form
and  is the creation operator for site  and spin
polarization .
With this module, e.g., the Hubbard model,
can be simulated. See the spinful_fermions_groundstate.ipynb example for
details.
Bosons
The bosons module implements systems
of bosons.
The VectorSpace is spanned
by vectors of the form
and  is the creation operator for site .
The variable  is the maximal occupation of site .
With this module, e.g., the Bose-Hubbard model,
can be simulated. See the bose_hubbard_groundstate.ipynb example for
details.