When students come to the College (first two years of the University system in most of the developped countries) to train in mathematics, they get a linear algebra / matrix analysis course. After a few months, perhaps after one year, they are taught about diagonalization of matrices. They learn many criteria that are either necessary or sufficient or both. This seems to be a mandatory step for future engineers and other categories of scientific workers.
My question is a bit provocative:
Is diagonalization that important? Should we teach it thoroughly to people who will have to use linear algebra and matrices in the future?
Here are a few arguments why we should refrain ourselves to enter this topic, except when teaching future mathematicians:
1- The solution of this problem is not so nice, many matrices being not diagonalizable. And the set of diagonalizable matrices is neither open nor close in any sense (usual, if the field is $\mathbb R$ or $\mathbb C$, Zariski otherwise).
2- Diagonalization is not effective. As a matter of fact, we cannot compute explicitely the eigenvalues of an $n\times n$ matrix if $n\ge5$ (Abel plus companion matrix).
3- Diagonalization is not really useful. You don't use it to calculate the exponential, or to invert, ... What engineers are interested in is often stability of dynamical systems. Thus a good problem is whether the spectrum belongs to either the left half-plane or the unit disk, whether there are eigenvalues on the unit circle or with vanishing real part.
I therefore open a discussion, in which I am looking for either pro- or con- arguments about teaching diagonalization to engineers.