Opened 12 years ago
Last modified 7 years ago
#10311 new defect
solve()-ing Equations in CC
Reported by: | Christoph Hack | Owned by: | Burcin Erocal |
---|---|---|---|
Priority: | major | Milestone: | |
Component: | symbolics | Keywords: | |
Cc: | Christoph Hack | Merged in: | |
Authors: | Reviewers: | ||
Report Upstream: | N/A | Work issues: | |
Branch: | Commit: | ||
Dependencies: | Stopgaps: |
Description
The following looks like a bug to me, but feel free to correct me if I'm mistaken.
sage: var('z') sage: g1 = z^5 - (2 - I)*z^4 - (34 + 13*I)*z^3 + (22 - 51*I)*z^2 \ + (53 - I)*z - 728 - 196*I == 0 sage: sage: solve([g1], z) [0 == z^5 + (I - 2)*z^4 - (13*I + 34)*z^3 - (51*I - 22)*z^2 - (I - 53)*z - 196*I - 728] sage: sage: solve([g1, I == I], z) [[z == (-4.00420663449 - 1.03443096055*I)], [z == (7.03872088238 + 1.11154206861*I)], [z == (1.40276621 - 2.70758376454*I)], [z == ( -3.78854832152 - 0.122376366114*I)], [z == (1.35126786363 + 1.7528490226*I)]] sage: sage: solve([g1, z == z], z) [[z == (-4.00420663449 - 1.03443096055*I)], [z == (7.03872088238 + 1.11154206861*I)], [z == (1.40276621 - 2.70758376454*I)], [z == ( -3.78854832152 - 0.122376366114*I)], [z == (1.35126786363 + 1.7528490226*I)]]
I think the problem is that solve()
refuses to solve equation systems with more variables than equations, even if some of the variables are already known.
Regards
Christoph
Change History (3)
comment:1 Changed 12 years ago by
Component: | linear algebra → symbolics |
---|---|
Owner: | changed from jason, was to Burcin Erocal |
Note: See
TracTickets for help on using
tickets.
Yes, that looks suspicious to me. I tried replacing all the instances of I in g1 by
imag=CC((0,1))
, with no better luck.This is not really a linear algebra problem, but more of something to do with symbolics (where g1 lives) so I am going to change the component on this so it might get noticed sooner. If you haven't already, you might bring this up on sage-devel or sage-support - somebody might be able to confirm this as undesirable behavior, or offer a workaround.