Hi Dima!

On 10 Jan., 13:47, Dima Pasechnik <dimp...@gmail.com> wrote:
> On Jan 10, 7:04 pm, javier <vengor...@gmail.com> wrote:
> well, there no "static type" matrices in GAP (well, unless you work
> with, say, matrix Lie algebras, and have multiplication overloaded).
> They are just lists of lists of right sizes, with entries in a common
> ring.
>
> I am surprised to hear that Sage is less flexible here

And I am surpised to hear that GAP has no proper matrices. Certainly a
matrix is MUCH more than a list of lists. For example, in order to
have a mathematical meaning, the marks of a matrix have to belong to
the same ring.

> (ok ,there
> could be, say, special matrices, say, dense numeric
> and bit matrices, that deserve a special treatment, but otherwise this
> seems strange...)

You seriously think that matrix multiplication, determinant, echelon
form etc. should be done with lists of lists? I doubt that this can be
any good. I acknowledge that GAP's main purpose is groups and not
linear algebra. But providing fast linear algebra is certainly an
objective of Sage.

What does all that mean for the sage() method of the GAP interface?

Do I understand correctly that IsMatrix just states that the object is
a list of lists of the same size?

Then, perhaps sage() could have an optional argument. For example, if
the user reckons that some GAP object L is formed by "matrices" (e.g.,
it is a list of lists of lists of the same size), then L.sage
(AsMatrix=True) would return a list of sage matrices, whereas L.sage()
would return a list of lists of lists.

But then, it would be challenging to make sage(AsMatrix=True) work for
a matrix of matrices...

Cheers,
Simon
-- 
To post to this group, send an email to sage-devel@googlegroups.com
To unsubscribe from this group, send an email to 
sage-devel+unsubscr...@googlegroups.com
For more options, visit this group at http://groups.google.com/group/sage-devel
URL: http://www.sagemath.org

Reply via email to