On Wed, Feb 11, 2009 at 8:32 AM, Greg Kuperberg <[email protected]> wrote: > > On Feb 11, 8:10 am, William Stein <[email protected]> wrote: >> By echelon form do you mean Hermite Normal Form over that base ring, >> or do you mean echelon form over the fraction field? If you just want >> the dimension, is their any chance you can specialize one of the variables >> and >> compute the rank there -- if you do this for enough values it's likely >> to give you the correct rank, and of course is very fast. > > Yes, I meant Hermite Normal Form. > > The code that I have now basically specializes the (lone) variable d. > I make 14x14 matrices e[0] through e[6] and then the last two lines of > the code are this: > > L = gap.LieAlgebra('Rationals',e) > print 'Dimension:',gap.Dimension > (L) > > What I really wanted to say in the paper is that L is the full 14x14 > matrix algebra for all real values of d with |d| >= 2. I was already > 90% sure that this is true. I wanted to use SAGE to provide a > computational proof, because if I worked out a human proof then I > would have to digress into a topic for a later paper. The problem, I > realized, is that with this code SAGE cannot provide a proof for all > relevant d, only for specific values of d. (Moreover there exist > algebraic values of d for which L is smaller.) > > In truth, SAGE is missing two things for what I wanted. First, there > is no equivalent of gap.LieAlgebra. Second, the submodule method of > the FreeModule class is not implemented for Euclidean domains, even > though it is implemented for ZZ. Of course, if gap.LieAlgebra worked > over a Euclidean domain, that would also solve the problem, but I > don't think that it does. >
I hope somebody implements Hermite normal form over a general PID. It would probably take one day for somebody who knows what they're doing. One student did do it once about 18 months ago, but lacked follow through. I wrote a lot of the code in FreeModule in such a way that as long as there is a hermite_form command then the algorithms should work -- i.e., the one and only reason all the general free module machinery doesn't work over anything but ZZ is the lack of a Hermite form command. -- William --~--~---------~--~----~------------~-------~--~----~ To post to this group, send email to [email protected] To unsubscribe from this group, send email to [email protected] For more options, visit this group at http://groups.google.com/group/sage-support URLs: http://www.sagemath.org -~----------~----~----~----~------~----~------~--~---
