On Thu, Feb 19, 2015 at 5:35 AM, Petr Baudis <[email protected]> wrote: > On Wed, Feb 18, 2015 at 11:01:54AM -0600, Aaron Meurer wrote: >> On Tue, Feb 17, 2015 at 10:41 PM, Petr Baudis <[email protected]> wrote: >> > So one curious observation I have is that even if sym.solve() is given >> > multiple equations and only a single variable, it does yield a solution >> > in this case. I'm still confused about what the exact API contract of >> > sym.solve() is. Working "sometimes" leaves me unsure about what I can >> > or cannot rely on... >> >> Sadly, there is none. Part of this is due to algorithmic limitations >> (solve() is basically a bunch of heuristics, there are few guarantees >> that it will find a solution if it exists). But a lot of it is just >> poor design. We are trying to make the design better with the new >> solveset module. > > Thanks! Knowing this is quite valuable for me. > >> >> Right now I'm inclined to conclude that what I want to do *is* rather >> >> hard and I'd have to come up with some new algorithms to deal with this. >> >> (Or likely take a look at some other CASes first if any handle this case >> >> for me already.) >> >> If you find some other CAS that can do this better, please let us know >> and post here your solution. As Aaron said, we would like to improve >> our solver module. > > I will for sure - my plan is to take a hard look at Maple and a brief > look at Mathematica. If I won't be successful, I might come back to > SymPy and try to help improve the solveset module (I can't promise > I will have the time though, this was supposed to be just a small piece > of puzzle in a larger project - http://21robot.org/).
Are you trying to do all of this: http://21robot.org/research_activities/math/ ? If so, that's a *major* project. There is Wolfram Alpha (http://www.wolframalpha.com/), that has some understanding of a human language, e.g.: http://www.wolframalpha.com/input/?i=integrate+cos^2x+from+0+to+2pi&lk=4&num=1 But in my experience once things get a little more complicated, it can't understand it either, e.g.: http://www.wolframalpha.com/input/?i=Solve%5B{v%5Bt%5D+%3D%3D+x0%2Ft%2C+a+%3D%3D+v%5Bt%5D%2F%282*t%29}%2C+{v%5Bt%5D%2C+t}%5D The same expression in Mathematica returns the correct answer (as in SymPy). Ondrej -- You received this message because you are subscribed to the Google Groups "sympy" 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/sympy. To view this discussion on the web visit https://groups.google.com/d/msgid/sympy/CADDwiVBCSrD4YSEivt7JTQpwLzpB%3DJpO1Crpykfx_yytH05jcg%40mail.gmail.com. For more options, visit https://groups.google.com/d/optout.
