#15688: matrix*vector coercion
----------------------------+------------------------
Reporter: barbules | Owner:
Type: defect | Status: new
Priority: major | Milestone: sage-6.1
Component: coercion | Resolution:
Keywords: | Merged in:
Authors: | Reviewers:
Report Upstream: N/A | Work issues:
Branch: | Commit:
Dependencies: | Stopgaps:
----------------------------+------------------------
Changes (by nbruin):
* type: PLEASE CHANGE => defect
* component: PLEASE CHANGE => coercion
Comment:
The problem is this:
{{{
sage: parent(m*w)
Ambient free module of rank 1 over Ring of integers modulo 1
}}}
which is just the action that gets discovered by sage:
{{{
c=get_coercion_model()
sage: l=c.discover_action(parent(m),parent(w),operator.mul)
sage: l.codomain()
Ambient free module of rank 1 over Ring of integers modulo 1
}}}
(sage uses the term action rather liberally. I think normally a left
action would have right domain equal to its codomain)
The problem is of course that if you want to find a ring to which both QQ
and GF(p) have a homomorphism, then the trivial ring is the only option.
There is a ''conversion'' from QQ to GF(p), which is used by
`w.change_ring`, but no ''coercion''. It would be nice if we could raise
an error in this case rather than return a useless answer.
Note that
{{{
sage: c.discover_action(GF(3),QQ,operator.mul) == None
True
}}}
so somewhere the matrix action discovery tries too hard.
--
Ticket URL: <http://trac.sagemath.org/ticket/15688#comment:2>
Sage <http://www.sagemath.org>
Sage: Creating a Viable Open Source Alternative to Magma, Maple, Mathematica,
and MATLAB
--
You received this message because you are subscribed to the Google Groups
"sage-trac" group.
To unsubscribe from this group and stop receiving emails from it, send an email
to [email protected].
To post to this group, send email to [email protected].
Visit this group at http://groups.google.com/group/sage-trac.
For more options, visit https://groups.google.com/groups/opt_out.