Two comments, without a great deal of thought or justification. > if self[i,j] != self[j,i]: return False
This could be getting compiled to a default Python object indexing, which is slow like molasses. You might want to check the generated C code and change it to use faster indexing if necessary. > Doit1 is a loop that calls ".is_symmetric()", for the given count. This might be compiled to a default Python call, which has a name lookup that is again very slow. You might want to write a test loop in Pyrex that you know has optimized C calls. Nick --~--~---------~--~----~------------~-------~--~----~ To post to this group, send email to sage-devel@googlegroups.com To unsubscribe from this group, send email to [EMAIL PROTECTED] For more options, visit this group at http://groups.google.com/group/sage-devel URLs: http://sage.scipy.org/sage/ and http://modular.math.washington.edu/sage/ -~----------~----~----~----~------~----~------~--~---