CharacteristicPolynomial2(F)

charpol.spad line 1 [edit on github]

This package computes characteristic polynomial using Danilewski method.

char_pol : Matrix(F) -> SparseUnivariatePolynomial(F)

char_pol(m) computes characteristic polynomial of m.

danilewski : Matrix(F) -> Record(matrix : Matrix(F), block_list : List(Integer))

danilewski(m) converts m to block form where each block represents transposition of multiplication by a polynomial.