New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Linear algebra over all rings (which are not fields) #15160
Comments
comment:1
Attachment: fix_inversion_for_matrix_with_unital_det-nb.patch.gz This ticket follow the conversation on Sage-combinat-devel : https://groups.google.com/forum/#!topic/sage-combinat-devel/CJRnG1ppBe0 |
comment:4
A fix for this would likely include/fix #15947. |
comment:6
Actually, to define the |
comment:7
Do you have a concrete example of something that doesn't work currently? |
comment:8
Hello, sorry for my version of Sage but I think nothing has move for enabling matrices and linear algebra in general for general rings (these using the category framework and not using the class RingElement). The mercurial patch attached on this ticket did break the multiplication between matrix and vector. This is not the right way to fix that. I don't know how to fix that, this go far beyond my knowledge with the category framework, coercions, actions... On cocalc and my (old) version of Sage (sorry one more time), I still have things that the following tests... For that reason, I did locally implement an horrible hack to invert matrix with unitary determinant.
You could try these short examples on the current Sage version. Same error appear with the following :
All these kind of tests can be read in the very old bugged patch. Hope this could help. |
comment:9
Sorry for my English btw. Same problem with FreeAlgebra
Since I did not contribute to Sage these last... two years (perhaps). I am not aware of the list of algebraic construction for which this bug pop. I am really afraid the list can be very large. I did work on basis changes of the coinvariant of the symmetric group (Schubert polynomials, Harmonic polynomials, Descents Monomials, Monomials under staircase, Higher Specht Polynomials). This topic is closed to representation theory of the symmetric group (linear algebra on some strange ring). All my basis changes (binomial(5, 2) different) are matrices with unital determinant that Sage can't inverse. Oh, In fact Sage can do that for sure (all good algorithms are inside for that...), but I really don't know how to fix it. I did try but I did not succeed... I will compile an up to date version of Sage this night to check the bug is still here... |
comment:10
nborie: I understand your last comments, but my impression was that the ticket was talking also about much more elementary stuff than inverting matrices. For example, one of the "goals" stated is "Try to modify |
comment:11
Ok, I know have a 8.1 and things seems now better... I did check on my small set of exotic rings (they don't all come from the combinat crew, Steenrod come from number theorists I guess...) It seems to me that very basic stuff work fine :
I did run that (I create a vector with the first column of the identity matrix, I did not use the vector( ...data... ) function)
and I did get:
So It seems to me that error appears when using any algo using a division in coefficient ring... So this ticket should just enable the possibility of doing silently divisions by unital elements of the coefficient ring without searching for fraction_field, is_field or whatever. This remains me the method After, the problem stays very technical since, for speed issues, we don't want to overload all divisions. Can it be done softly ? Is Implementing a new method Feel free to reformulate/update/correct the ticket description. My English is pretty horrible and I don't use often the right words. |
This comment has been minimized.
This comment has been minimized.
Changed keywords from matrix, RingElement, ring to matrix, ring |
Basic arithmetic works for matrices over exotic rings, but many linear algebra algorithms do not, such as computing rank, inverse (when the matrix is invertible), ...
CC: @sagetrac-sage-combinat
Component: linear algebra
Keywords: matrix, ring
Issue created by migration from https://trac.sagemath.org/ticket/15160
The text was updated successfully, but these errors were encountered: