A polynomial is said to have rank r if it can be written as
a sum of r powers of linear forms. Waring's problem is to find this
decomposition. While a naive algorithm exists, it is unlikely to
succeed even in modest examples. One goal is to provide algorithms
which succeed to decompose polynomials of low rank as quickly as
possible. With Ottaviani we have developed new algorithms for Waring
decomposition, which generalize Sylvester's algorithm for binary forms,
using vector bundle techniques together with the notion of an
eigenvector of a tensor. Despite their perhaps sophisticated
appearance, our algorithms mainly consist of computations involving
linear algebra and succeed to quickly decompose polynomials in a larger
range of ranks than was previously available. I will explain these
algorithms from the level of linear algebra and show their
implementation in Macaulay 2.