Conjugacy of integral matrices
is_GLZ_conjugate
— Methodis_GLZ_conjugate(A::MatElem, B::MatElem) -> Bool, MatElem
Given two integral or rational matrices, determine whether there exists an invertible integral matrix $T$ with $TA = BT$. If true, the second argument is such a matrix $T$. Otherwise, the second argument is unspecified.
julia> A = matrix(ZZ, 4, 4, [ 0, 1, 0, 0,
-4, 0, 0, 0,
0, 0, 0, 1,
0, 0, -4, 0]);
julia> B = matrix(ZZ, 4, 4, [ 0, 1, 4, 0,
-4, 0, 0, -4,
0, 0, 0, 1,
0, 0, -4, 0]);
julia> fl, T = is_GLZ_conjugate(A, B);
julia> isone(abs(det(T))) && T * A == B * T
true