|Alexander Shumakovitch on Thu, 29 May 2003 23:41:37 +0200|
[Date Prev] [Date Next] [Thread Prev] [Thread Next] [Date Index] [Thread Index]
|Re: matsnf segfaults|
On Thu, May 29, 2003 at 11:06:41PM +0200, Karim BELABAS wrote: > Having fiddled some more with the routine, I committed another patch to > matsnf to allow arbitrary rectangular matrices [ for integer matrices only ], > as a preliminary cleanup for the introduction a modular algorithm. > > When the matrix is singular, modular HNF reductions are done to reduce to > that case. This already reduces your example to a trivial form (dealt with > in half a second). > > It's quite straightforward to make the resulting algorithm modular > [ provided one doesn't ask for transformation matrices ], but I'd like to > know first whether the above works as expected ! Yes it does. Partially ;-) SNF works perfectly now and going through HNF requires twice as little time. The reason could be that, since I'm interested in the torsion only, I remove all columns on the right side of the matrix brought to HNF that have pivot 1. I used to pad the matrix with zeros to make it square. Now if I remove this padding, matsnf doesn't complain anymore and produces the correct result 10% faster than before. But if I go through HNF again, Pari immediately complains about low memory (200MB stack not enough!). The padding is obviously done _after_ mathnf is completed, so it's not to blame. I can send you the original matrix, if you like to test it. Thanks for your quick response! --- Alexander.