Hello,

The bug is caused by FreeModule_generic._mul_():

def _mul_(self, other, switch_sides=False):
    if switch_sides:
        return self.span([v * other for v in self.basis()])
    return self.span([other * v for v in self.basis()])

It looks like the effect of the switch_sides flag is exactly the wrong
way around.

Peter


> Indeed
>
> sage: V.subspace([x*v]) == V.subspace([v])*x
> True
>
> Sage matrices are allow indifferently on vectors from left to right.
> But of course, the action is not the same but there is no row vectors
> vs column vectors.
>
> sage: v*x
> (1, 1)
> sage: x*v
> (1, 0)
>
> Your example shows that when acting on subspaces it is actually the
> left action which is used... which is silly, I definitely agree, since
> the action on subspaces is on right.
>
> Vincent
>
> 2015-01-30 15:51 UTC+01:00, Peter Mueller <ypf...@googlemail.com>:
>> After hours of debugging some program code, I found out that right
>> multiplication of a row subspace of K^n by an element x from GL(n,K) does
>> *not* do what I expected!
>>
>> sage: V = GF(2)^2
>> sage: v = V((1,0))
>> sage: x = GL(2,2)(matrix([[1,1],[0,1]]))
>> sage: V.subspace([v*x]) == V.subspace([v])*x
>> False
>>
>> It seems that right multiplication by x actually multiplies by the
>> *transpose* of x? Is there any reason for that? That is even worse than the
>>
>> completely silly and error prone notation for permutation groups, where a
>> *right action* is written from the left, so g(h(x)) isn't (g*h)(x).
>>
>> -- Peter Mueller
>>
>>
>> --
>> You received this message because you are subscribed to the Google Groups
>> "sage-support" group.
>> To unsubscribe from this group and stop receiving emails from it, send an
>> email to sage-support+unsubscr...@googlegroups.com.
>> To post to this group, send email to sage-support@googlegroups.com.
>> Visit this group at http://groups.google.com/group/sage-support.
>> For more options, visit https://groups.google.com/d/optout.
>>

-- 
You received this message because you are subscribed to the Google Groups 
"sage-support" group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to sage-support+unsubscr...@googlegroups.com.
To post to this group, send email to sage-support@googlegroups.com.
Visit this group at http://groups.google.com/group/sage-support.
For more options, visit https://groups.google.com/d/optout.

Reply via email to