  This is the documentation for the tensor library QSpace (v4.0), a toolbox to
exploit `quantum symmetry spaces' in tensor network states in the quantum
many-body context. QSpace permits arbitrary combinations of symmetries
including the abelian symmetries $\mathbb{Z}_n$ and $U(1)$, as well as all
non-abelian symmetries based on the semisimple classical Lie algebras: $A_n$,
$B_n$, $C_n$, and $D_n$, or respectively, the special unitary group SU($n$),
the odd orthogonal group SO($2n+1$), the symplectic group Sp($2n$), and the
even orthogonal group SO($2n$). The code (C++ embedded via the MEX interface
into Matlab) is available open source as of QSpace v4.0 at
https://bitbucket.org/qspace4u/ under the Apache 2.0 license.
  QSpace is designed as a bottom-up approach for non-abelian symmetries. It
starts from the defining representation and the respective Lie algebra. By
explicitly computing and tabulating generalized Clebsch-Gordan coefficient
tensors, QSpace is versatile in the type of operations that it can perform
across all symmetries. At the level of an application, much of the
symmetry-related details are hidden within the QSpace C++ core libraries. Hence
when developing tensor network algorithms with QSpace, these can be coded
(nearly) as if there are no symmetries at all, despite being able to fully
exploit general non-abelian symmetries.
