toqito.matrix_props.is_circulant

Checks if the matrix is circulant.

Module Contents

toqito.matrix_props.is_circulant.is_circulant(mat)[source]

Determine if matrix is circulant [@WikiCirc].

A circulant matrix is a square matrix in which all row vectors are composed of the same elements and each row vector is rotated one element to the right relative to the preceding row vector.

Examples

Consider the following matrix:

[
C = begin{pmatrix}

4 & 1 & 2 & 3 \ 3 & 4 & 1 & 2 \ 2 & 3 & 4 & 1 \ 1 & 2 & 3 & 4

end{pmatrix}

]

As can be seen, this matrix is circulant. We can verify this in |toqito⟩ as

```python exec=”1” source=”above” import numpy as np from toqito.matrix_props import is_circulant

mat = np.array([[4, 1, 2, 3], [3, 4, 1, 2], [2, 3, 4, 1], [1, 2, 3, 4]])

print(is_circulant(mat)) ```

Parameters:

mat (numpy.ndarray) – Matrix to check the circulancy of.

Returns:

Return True if mat is circulant; False otherwise.

Return type:

bool