toqito.perms.antisymmetric_projection

toqito.perms.antisymmetric_projection(dim: int, p_param: int = 2, partial: bool = False) → scipy.sparse._lil.lil_matrix[source]

Produce the projection onto the antisymmetric subspace [WikAsym].

Produces the orthogonal projection onto the anti-symmetric subspace of p_param copies of dim-dimensional space. If partial = True, then the antisymmetric projection (PA) isn’t the orthogonal projection itself, but rather a matrix whose columns form an orthonormal basis for the symmetric subspace (and hence the PA * PA’ is the orthogonal projection onto the symmetric subspace.)

Examples

The \(2\)-dimensional antisymmetric projection with \(p=1\) is given as \(2\)-by-\(2\) identity matrix

\[\begin{split}A_{2,1} = \begin{pmatrix} 1 & 0 \\ 0 & 1 \end{pmatrix}.\end{split}\]

Using toqito, we can see this gives the proper result.

>>> from toqito.perms import antisymmetric_projection
>>> antisymmetric_projection(2, 1).todense()
[[1., 0.],
 [0., 1.]]

When the \(p\) value is greater than the dimension of the antisymmetric projection, this just gives the matrix consisting of all zero entries. For instance, when \(d = 2\) and \(p = 3\) we have that

\[\begin{split}A_{2, 3} = \begin{pmatrix} 0 & 0 & 0 & 0 & 0 & 0 & 0 & 0 \\ 0 & 0 & 0 & 0 & 0 & 0 & 0 & 0 \\ 0 & 0 & 0 & 0 & 0 & 0 & 0 & 0 \\ 0 & 0 & 0 & 0 & 0 & 0 & 0 & 0 \\ 0 & 0 & 0 & 0 & 0 & 0 & 0 & 0 \\ 0 & 0 & 0 & 0 & 0 & 0 & 0 & 0 \\ 0 & 0 & 0 & 0 & 0 & 0 & 0 & 0 \\ 0 & 0 & 0 & 0 & 0 & 0 & 0 & 0 \end{pmatrix}.\end{split}\]

Using toqito we can see this gives the proper result.

>>> from toqito.perms import antisymmetric_projection
>>> antisymmetric_projection(2, 3).todense()
[[0., 0., 0., 0., 0., 0., 0., 0.],
 [0., 0., 0., 0., 0., 0., 0., 0.],
 [0., 0., 0., 0., 0., 0., 0., 0.],
 [0., 0., 0., 0., 0., 0., 0., 0.],
 [0., 0., 0., 0., 0., 0., 0., 0.],
 [0., 0., 0., 0., 0., 0., 0., 0.],
 [0., 0., 0., 0., 0., 0., 0., 0.],
 [0., 0., 0., 0., 0., 0., 0., 0.]]

References

[WikAsym]Wikipedia: Anti-symmetric operator https://en.wikipedia.org/wiki/Anti-symmetric_operator
Parameters:
  • dim – The dimension of the local systems.
  • p_param – Default value of 2.
  • partial – Default value of 0.
Returns:

Projection onto the antisymmetric subspace.