Added forward derivatives for neg, diag, inverse, linalg_eig (#67837)
Summary:
Recreated due to CI failures as per comment https://github.com/pytorch/pytorch/pull/67339#issuecomment-959893293
===
See also discussion in https://github.com/pytorch/pytorch/issues/10223, starting from [this](https://github.com/pytorch/pytorch/issues/10223#issuecomment-949499666) comment
The formulas for the derivatives are taken from https://people.maths.ox.ac.uk/gilesm/files/NA-08-01.pdf.
As indicated, the method linalg_eig_jvp should be used instead of linalg_eig_jvp_eigenvalues and linalg_eig_jvp_eigenvectors in the future. Due to a codegen limitation, this is not yet possible.
CC albanD Lezcano
Pull Request resolved: https://github.com/pytorch/pytorch/pull/67837
Reviewed By: mrshenli
Differential Revision: D32403662
Pulled By: soulitzer
fbshipit-source-id: 529cb93f865ce4cc2e24fa6f672d4234e7abe2b1