Hello,
I am using version 9.2 of Sage. I encountered the following error:
Input:
m = matrix([[1 - 2 * i, 2, 3 - i], [0, -1 + i, 4], [3, i, -1]])
t = linear_transformation(m)
t.eigenvalues()
Output:
TypeError Traceback (most recent call last)
<ipython-input-3-c9bd1ed2c26c> in <module>
----> 1 t.eigenvalues()
~/sage/sage-9.2/local/lib/python3.8/site-packages/sage/modules/free_module_morphism.py in eigenvalues(self, extend)
445 if self.base_ring().is_field():
446 if self.is_endomorphism():
--> 447 return self.matrix().eigenvalues(extend=extend)
448 else:
449 raise TypeError("not an endomorphism")
TypeError: eigenvalues() takes no keyword arguments
On looking into the source code (I built Sage from source), I found that the function eigenvalue(self, extend) defined in sage/modules/free_module_morphism.py calls the function eigenvalue(self) defined in sage/matrix/matrix_symbolic_dense.pyx. Hence the argument mismatch.
If it is indeed a bug, I would be happy to file a ticket.
Best,
Shashank