# Cyclotomic Linear Algebra

This wiki page is about implementing optimized algorithms for linear algebra over cyclotomic fields.

This trac ticket has relevant code.

## Some specific tasks

(mostly done --works) Come up with a fast characteristic polynomial algorithm over cyclotomic fields.

- Implement a class Matrix_dense_cyclotomic_field that derives from the above class.
- Make very fast random_element methods for those matrix types. This will be needed for testing out our algorithms easily, and for tuning them.
Implement multimodular matrix multiplication. This will reduce to doing a bunch of multiplies over GF(p) for many primes p.

Implement p-adic solver with cyclotomic p-adic reconstruction algorithm.

- Implement echelon form using solver algorithm (just like we have for QQ).
- Maybe implement multimodular echelon form. Might as well.
- Implement decomposition.
- Sparse multimodular echelon form (this is a case where multimodular makes good sense). This will be needed for presentations of weight 2 modular symbols over cyclotomic fields.