How do I diagonalize a symmetric matrix over Z_p in or find the discriminant of a rank r quadratic form over finite fields
I was wondering if there is a way to compute the discriminant of a
rank r quadratic form in maple?
Alternatively, is there a way to diagonalize, via symmetric row and
col operations, a symmetric matrix A over Z_p? For instance, modifying
RowReduce in LinearAlgebra[Modular]. If I can do this then I can
obtain the discriminant.
Example:
>with(LinearAlgebra[Modular]):
>p:=5;
>Matrix(4,4,[[0, 1, 1, 4], [1, 0, 1, 0], [1, 1, 0, 1], [4, 0, 1, 0]]);
>RowReduce(p,A,4,4,0,0,0,0,0,0,0);
# would like a symmetric row and column reduction
>Matrix(4, 4, [[1,0,1,0],[0,1,1,4],[0,0,1,4],[0,0,0,1]])
Thanks a lot,

Loading Comments & Answers