Hi Drenwal, On 25 Jul., 10:52, drenwal <dren...@free.fr> wrote: > But, I would prefer to use a more mathematical notation, like Y[k] or > y...@k or whatever non already used symbol instead of Ac(y,k).
As Johannes has pointed out, Y[k] is already used, so, this might not be what you want. But, if it is, overwrite __getitem__ of matrices (this is the method that Python expects if you do Y[...]). '^' is also used; if you still want to use it, overwrite __pow__. > How is it possible to do that? I don't know if/how '@' can be made use of. Usually, it seems that @ indicates that a so-called decorator is being used. Talking about generators: There is a decorator that allows to define a custom infix operator (see http://www.sagemath.org/doc/reference/sage/misc/misc.html#sage.misc.misc.infix_operator). This might be what you were looking for, because it allows to create new operator names. Example: sage: from sage.all import infix_operator sage: @infix_operator('multiply') ....: def foo(a,b): ....: return '%s acts from the right on %s'%(b,a) ....: sage: 5 *foo* 2 '2 acts from the right on 5' Of course, in your case, it would be return b.transpose()*a*b Cheers, Simon -- To post to this group, send email to sage-support@googlegroups.com To unsubscribe from this group, send email to sage-support+unsubscr...@googlegroups.com For more options, visit this group at http://groups.google.com/group/sage-support URL: http://www.sagemath.org