Thank you Mike and John. It seemed unlikely to me that there was a bug anyway, but I had to ask. I used the 'simplify_rational' and it worked perfectly. Also, I noticed that Mike used 'apply_map'. That and lambda make it look rather close to Lisp; it looks like the more I look at sagemath, the better it seems to be.
Thanks again, and the software seems to be *very* addictive! I wish I had had something like this when I was in graduate school. Regards, SK On Oct 7, 2:05 am, John Cremona <[EMAIL PROTECTED]> wrote: > On Oct 7, 8:45 am, "Mike Hansen" <[EMAIL PROTECTED]> wrote: > > > > > Hello, > > > On Mon, Oct 6, 2008 at 6:50 PM, SK <[EMAIL PROTECTED]> wrote: > > > Now, I try and compute X * (X^(-1)). Instead of getting an identity > > > matrix, I get a complicated matrix in x, y and z. Thinking that the > > > "^" may be the issue, I tried X * (X.inverse()), but got the same > > > issue. > > > > Am I doing something wrong? Or is there a way to simplify and reduce > > > it to an identity matrix? I tried Y = X * (X.inverse()) and then > > > Y.simplify(), but it did not help. > > > The simplification routine you want is simplify_rational. This > > notation / simplification comes from Maxima. For example, > > > sage: x,y,z = var('x,y,z') > > sage: X = matrix( [ [x, y, z], [y, z, x], [z, x, y] ]) > > sage: Y = X*X^-1 > > sage: Y.simplify_rational() > > [1 0 0] > > [0 1 0] > > [0 0 1] > > > Note you could do this by calling simplify_rational on each of the > > elements of the matrix. The method that allows you to do this is > > apply_map(). It takes in a function and replaces each entry with the > > result of calling that function on the entry. > > > sage: Y.apply_map(lambda a: a.simplify_rational()) > > [1 0 0] > > [0 1 0] > > [0 0 1] > > > --Mike > > What about this for a not-quite solution? > > sage: R.<x,y,z>=QQ[] > sage: X = matrix( [ [x, y, z], [y, z, x], [z, x, y] ]) > sage: Y = X*X^-1 > sage: Y > > [(-1)/(-1) 0 0] > [ 0 (-1)/(-1) 0] > [ 0 0 (-1)/(-1)] > > John --~--~---------~--~----~------------~-------~--~----~ To post to this group, send email to sage-support@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-support URLs: http://www.sagemath.org -~----------~----~----~----~------~----~------~--~---