Hello.
I'm still trying to calculate nullspace for a 243x270 symbolic matrix
with lots of zeros. ( I posted a message here about it. ) Ploblem is
nullspace(m) is very slow.
I found out that it triangularize(m) is also slow.
So i wrote my own version of it to find out why.
First version of my code worked as slow as maxima's. I found out that
some of elements are just huge, like (it's just a part of it):
a (- b - a)
- ------------------------------------------------)
2
(- b - a) b a (- b - a)
a (------------ - -----------)
(- b - a) b a c c
b (----------- - ------------------------------)
c b
2
b c
+ (------------------------------------------------
2
(- b - a) b a (- b - a)
a (------------ - -----------)
(- b - a) b a c c
a (----------- - ------------------------------)
c b
But, actually, they must be zero. And, really, after applying rat()
turns out they are zeros.
So I added rat() to manipulations with rows.
Now my version of triangularize works for reasonable time.
Now i think, if all calculations would be simplified after, original
maxima's nullspace and triangularize would work ok.
Is there a good way to do this?
Thanks in advance, Fedor.