Question: 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,
This has been branched into the following page(s):
Please Wait...