# 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. Projection onto the antisymmetric subspace.