utility
QuICT.qcda.optimization.cnot_without_ancilla.utility ¶
Merged ¶
Merged points in heap
Attributes:
-
deg(int) –degree of x
-
nodes(List[int]) –node indices in a bipartite
Get a merged point
Parameters:
-
deg(int) –degree of x
-
nodes(List[int]) –node indices in a bipartite
Source code in QuICT/qcda/optimization/cnot_without_ancilla/utility.py
f2_half_gaussian_elimination ¶
Gaussian elimination to convert a matrix into triangular form over F_2. Args: mat_ (np.ndarray): Input boolean matrix.
Returns:
-
ndarray–np.ndarray: Eliminated triangular matrix.
Source code in QuICT/qcda/optimization/cnot_without_ancilla/utility.py
f2_inverse ¶
Matrix inverse over F_2. Args: mat_ (np.ndarray): Input boolean matrix.
Returns:
-
ndarray–np.ndarray: The inverse boolean matrix of mat_ over F_2.
Source code in QuICT/qcda/optimization/cnot_without_ancilla/utility.py
f2_matmul ¶
Multiply 2 matrices in F_2.
Parameters:
-
a(ndarray) –Input boolean matrix a.
-
b(ndarray) –Input boolean matrix b.
Returns:
-
ndarray–np.ndarray: Production of ab over F_2.
Source code in QuICT/qcda/optimization/cnot_without_ancilla/utility.py
f2_rank ¶
Rank of a matrix over F_2. Args: mat_ (np.ndarray): Input boolean matrix.
Returns:
-
int(int) –Rank of mat_ over F_2.