Rank of matrix with some elements limited to inf



Maybe this question is related to my mathematical ignorance :-|

In a previous e-mail, I had to map a limit over a matrix. Some elements were 
limited to inf. Rank of original (K) and modified (K2) matrix are both 42, but 
with K2 rank is very slow. There area lot of elements that were limited to 
inf.


(%i3) rank(K2);
Evaluation took 90.1376 seconds (103.4664 elapsed) using 898.014 MB.
(%o3)                                 42

(%i4) rank(K);
Evaluation took 0.5800 seconds (0.6525 elapsed) using 3.068 MB.
(%o4)                                 42


I don't know nothing about theory of matrices rank when some elements are non-
finite, this is a curiosity. Nor I know how rank() computes the rank, I'm aware 
inf is not like other finite symbols...
Anyway, in my code I'm computing the rank over K and not K2 :-)

Thanks
Stefano


P.S. I repeat here the original matrix:

K:matrix([1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
               0,0,0,0,0,0,0,0,0,0,0],                                       
              [0,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
               0,0,0,0,0,0,0,0,0,0,0],                                       
              [0,0,4*E*I/l,0,0,0,3*sqrt(3)*E*I/l^2,-3*E*I/l^2,2*E*I/l,0,0,0,0,
               0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0],    
              [0,0,0,A*E/l+bk,0,0,0,0,0,0,0,0,0,0,0,-A*E/l,0,0,0,0,0,0,0,0,0, 
               0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0],                            
              [0,0,0,0,12*E*I/l^3+bk,6*E*I/l^2,0,0,0,0,0,0,0,0,0,0,           
               -12*E*I/l^3,6*E*I/l^2,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0, 
               0,0,0,0],                                                      
              [0,0,0,0,6*E*I/l^2,4*E*I/l,0,0,0,0,0,0,0,0,0,0,-6*E*I/l^2,      
               2*E*I/l,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0],      
              [0,0,3*sqrt(3)*E*I/l^2,0,0,0,9*E*I/l^3+A*E/(4*l)+bk,            
               sqrt(3)*A*E/(4*l)-3*sqrt(3)*E*I/l^3,3*sqrt(3)*E*I/l^2,-bk,0,0, 
               0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0],  
              [0,0,-3*E*I/l^2,0,0,0,sqrt(3)*A*E/(4*l)-3*sqrt(3)*E*I/l^3,      
               3*E*I/l^3+3*A*E/(4*l)+bk,-3*E*I/l^2,0,-bk,0,0,0,0,0,0,0,0,0,0, 
               0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0],                    
              [0,0,2*E*I/l,0,0,0,3*sqrt(3)*E*I/l^2,-3*E*I/l^2,4*E*I/l,0,0,0,0,
               0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0],    
              [0,0,0,0,0,0,-bk,0,0,9*E*I/l^3+A*E/(4*l)+2*bk,                  
               3*sqrt(3)*E*I/l^3-sqrt(3)*A*E/(4*l),3*sqrt(3)*E*I/l^2,-bk,0,0, 
               0,0,0,-9*E*I/l^3-A*E/(4*l),sqrt(3)*A*E/(4*l)-3*sqrt(3)*E*I/l^3,
               3*sqrt(3)*E*I/l^2,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0],  
              [0,0,0,0,0,0,0,-bk,0,3*sqrt(3)*E*I/l^3-sqrt(3)*A*E/(4*l),       
               3*E*I/l^3+3*A*E/(4*l)+2*bk,3*E*I/l^2,0,-bk,0,0,0,0,            
               sqrt(3)*A*E/(4*l)-3*sqrt(3)*E*I/l^3,-3*E*I/l^3-3*A*E/(4*l),    
               3*E*I/l^2,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0],          
              [0,0,0,0,0,0,0,0,0,3*sqrt(3)*E*I/l^2,3*E*I/l^2,4*E*I/l,0,0,0,0, 
               0,0,-3*sqrt(3)*E*I/l^2,-3*E*I/l^2,2*E*I/l,0,0,0,0,0,0,0,0,0,0, 
               0,0,0,0,0,0,0,0,0,0,0],                                        
              [0,0,0,0,0,0,0,0,0,-bk,0,0,A*E/l+bk,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
               -A*E/l,0,0,0,0,0,0,0,0,0,0,0,0,0,0],                           
              [0,0,0,0,0,0,0,0,0,0,-bk,0,0,12*E*I/l^3+bk,6*E*I/l^2,0,0,0,0,0, 
               0,0,0,0,0,0,0,0,-12*E*I/l^3,6*E*I/l^2,0,0,0,0,0,0,0,0,0,0,0,0],
              [0,0,0,0,0,0,0,0,0,0,0,0,0,6*E*I/l^2,4*E*I/l,0,0,0,0,0,0,0,0,0, 
               0,0,0,0,-6*E*I/l^2,2*E*I/l,0,0,0,0,0,0,0,0,0,0,0,0],           
              [0,0,0,-A*E/l,0,0,0,0,0,0,0,0,0,0,0,A*E/l+bk,0,0,-bk,0,0,0,0,0, 
               0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0],                          
              [0,0,0,0,-12*E*I/l^3,-6*E*I/l^2,0,0,0,0,0,0,0,0,0,0,            
               12*E*I/l^3+bk,-6*E*I/l^2,0,-bk,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
               0,0,0,0,0,0],                                                  
              [0,0,0,0,6*E*I/l^2,2*E*I/l,0,0,0,0,0,0,0,0,0,0,-6*E*I/l^2,      
               4*E*I/l,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0],      
              [0,0,0,0,0,0,0,0,0,-9*E*I/l^3-A*E/(4*l),                        
               sqrt(3)*A*E/(4*l)-3*sqrt(3)*E*I/l^3,-3*sqrt(3)*E*I/l^2,0,0,0,  
               -bk,0,0,9*E*I/l^3+A*E/(4*l)+2*bk,                              
               3*sqrt(3)*E*I/l^3-sqrt(3)*A*E/(4*l),-3*sqrt(3)*E*I/l^2,-bk,0,0,
               0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0],                          
              [0,0,0,0,0,0,0,0,0,sqrt(3)*A*E/(4*l)-3*sqrt(3)*E*I/l^3,         
               -3*E*I/l^3-3*A*E/(4*l),-3*E*I/l^2,0,0,0,0,-bk,0,               
               3*sqrt(3)*E*I/l^3-sqrt(3)*A*E/(4*l),3*E*I/l^3+3*A*E/(4*l)+2*bk,
               -3*E*I/l^2,0,-bk,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0],       
              [0,0,0,0,0,0,0,0,0,3*sqrt(3)*E*I/l^2,3*E*I/l^2,2*E*I/l,0,0,0,0, 
               0,0,-3*sqrt(3)*E*I/l^2,-3*E*I/l^2,4*E*I/l,0,0,0,0,0,0,0,0,0,0, 
               0,0,0,0,0,0,0,0,0,0,0],                                        
              [0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,-bk,0,0,                   
               9*E*I/l^3+A*E/(4*l)+2*bk,sqrt(3)*A*E/(4*l)-3*sqrt(3)*E*I/l^3,  
               -3*sqrt(3)*E*I/l^2,-bk,0,0,0,0,0,-9*E*I/l^3-A*E/(4*l),         
               3*sqrt(3)*E*I/l^3-sqrt(3)*A*E/(4*l),-3*sqrt(3)*E*I/l^2,0,0,0,0,
               0,0,0,0,0],                                                    
              [0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,-bk,0,                   
               sqrt(3)*A*E/(4*l)-3*sqrt(3)*E*I/l^3,3*E*I/l^3+3*A*E/(4*l)+2*bk,
               3*E*I/l^2,0,-bk,0,0,0,0,3*sqrt(3)*E*I/l^3-sqrt(3)*A*E/(4*l),   
               -3*E*I/l^3-3*A*E/(4*l),3*E*I/l^2,0,0,0,0,0,0,0,0,0],           
              [0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,-3*sqrt(3)*E*I/l^2,  
               3*E*I/l^2,4*E*I/l,0,0,0,0,0,0,3*sqrt(3)*E*I/l^2,-3*E*I/l^2,    
               2*E*I/l,0,0,0,0,0,0,0,0,0],                                    
              [0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,-bk,0,0,A*E/l+bk,0,0,
               0,0,0,0,0,0,0,0,0,-A*E/l,0,0,0,0,0],                           
              [0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,-bk,0,0,           
               12*E*I/l^3+bk,6*E*I/l^2,0,0,0,0,0,0,0,0,0,0,-12*E*I/l^3,       
               6*E*I/l^2,0,0,0],                                              
              [0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,6*E*I/l^2,   
               4*E*I/l,0,0,0,0,0,0,0,0,0,0,-6*E*I/l^2,2*E*I/l,0,0,0],         
              [0,0,0,0,0,0,0,0,0,0,0,0,-A*E/l,0,0,0,0,0,0,0,0,0,0,0,0,0,0,    
               A*E/l+bk,0,0,-bk,0,0,0,0,0,0,0,0,0,0,0],                       
              [0,0,0,0,0,0,0,0,0,0,0,0,0,-12*E*I/l^3,-6*E*I/l^2,0,0,0,0,0,0,0,
               0,0,0,0,0,0,12*E*I/l^3+bk,-6*E*I/l^2,0,-bk,0,0,0,0,0,0,0,0,0,  
               0],                                                            
              [0,0,0,0,0,0,0,0,0,0,0,0,0,6*E*I/l^2,2*E*I/l,0,0,0,0,0,0,0,0,0, 
               0,0,0,0,-6*E*I/l^2,4*E*I/l,0,0,0,0,0,0,0,0,0,0,0,0],           
              [0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,-9*E*I/l^3-A*E/(4*l),
               3*sqrt(3)*E*I/l^3-sqrt(3)*A*E/(4*l),3*sqrt(3)*E*I/l^2,0,0,0,   
               -bk,0,0,9*E*I/l^3+A*E/(4*l)+2*bk,                              
               sqrt(3)*A*E/(4*l)-3*sqrt(3)*E*I/l^3,3*sqrt(3)*E*I/l^2,-bk,0,0, 
               0,0,0,0,0,0],                                                  
              [0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,                     
               3*sqrt(3)*E*I/l^3-sqrt(3)*A*E/(4*l),-3*E*I/l^3-3*A*E/(4*l),    
               -3*E*I/l^2,0,0,0,0,-bk,0,sqrt(3)*A*E/(4*l)-3*sqrt(3)*E*I/l^3,  
               3*E*I/l^3+3*A*E/(4*l)+2*bk,-3*E*I/l^2,0,-bk,0,0,0,0,0,0,0],    
              [0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,-3*sqrt(3)*E*I/l^2,  
               3*E*I/l^2,2*E*I/l,0,0,0,0,0,0,3*sqrt(3)*E*I/l^2,-3*E*I/l^2,    
               4*E*I/l,0,0,0,0,0,0,0,0,0],                                    
              [0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
               -bk,0,0,9*E*I/l^3+A*E/(4*l)+bk,
               3*sqrt(3)*E*I/l^3-sqrt(3)*A*E/(4*l),3*sqrt(3)*E*I/l^2,0,0,0,0,
               0,3*sqrt(3)*E*I/l^2],
              [0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
               -bk,0,3*sqrt(3)*E*I/l^3-sqrt(3)*A*E/(4*l),
               3*E*I/l^3+3*A*E/(4*l)+bk,3*E*I/l^2,0,0,0,0,0,3*E*I/l^2],
              [0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
               0,0,3*sqrt(3)*E*I/l^2,3*E*I/l^2,4*E*I/l,0,0,0,0,0,2*E*I/l],
              [0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,-A*E/l,0,0,0,0,
               0,0,0,0,0,0,0,A*E/l+bk,0,0,0,0,0],
              [0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,-12*E*I/l^3,
               -6*E*I/l^2,0,0,0,0,0,0,0,0,0,0,12*E*I/l^3+bk,-6*E*I/l^2,0,0,0],
              [0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,6*E*I/l^2,
               2*E*I/l,0,0,0,0,0,0,0,0,0,0,-6*E*I/l^2,4*E*I/l,0,0,0],
              [0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
               0,0,0,0,0,0,0,0,1,0,0],
              [0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
               0,0,0,0,0,0,0,0,0,1,0],
              [0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
               0,0,3*sqrt(3)*E*I/l^2,3*E*I/l^2,2*E*I/l,0,0,0,0,0,4*E*I/l])$


K2 : matrixmap(lambda([e],if e=0 then 0 else limit(e,bk,inf)), K)$