Algorithms to solve multivariate polynomials are already implemented (although there are definitely places where they can be improved). See solve_poly_system.
Aaron Meurer On Tue, Mar 8, 2016 at 9:57 AM, Harsh Gupta <[email protected]> wrote: > Some comments on your wiki entry, > https://github.com/sympy/sympy/wiki/Solveset-and-Solver-Discussion > > * As you noticed there exists a diophantine equation solver written by > Thilina, that work was done before solveset was developed and imageset > weren't well developed at that time either. It will be totally a > worthwhile project to interface the diophantine solver with solveset. > I think you should think more on this direction. > > * I like the direction of your idea on simplifying unions but I need > to think more on it. One of the issue I feel is, how do determine the > points between which you are talking the difference? Also can you > provide a link to the original Quora discussion. > > * You can also try to implement the collapsing constants paper [1] > mentioned in the professor Fateman's paper on solvers. Though it is > not immediately useful it will help us simplfiy imagesets like {n + k, > n \in Integers, k \in Integers} and also be useful in solutions of > PDEs. > > * You need not worry about "Handling large expression and nested > operation", at least for now. It will be premature optimization. > > * The method to solve system of polynomial equations above looks good, > the book also mentions that they have discussed an alternate technique > in Chapter 4 using Grober Basis. Have a look at it and let us know. > > * The checksol for inequalities is not required as, we can substitute > a number in the inequalities to see if it satisfies it or not, for > example you can do (2*(x-5) <= 4*x).subs(x, 0) > > > > [1]: > http://www.cs.berkeley.edu/~fateman/papers/CollapsingConstants-Soiffer.pdf > > On 8 March 2016 at 15:20, Shekhar Prasad Rajak > <[email protected]> wrote: >> Right now solveset can't solve multivariate polynomial equation system . >> For example : >> >> >>> solve([x*y -1 , 4*x**2 + y**2 -5],(x,y)) >> [(1/2, 2), (1, 1)] >> >> Even solve also don't give two more solutions >> `(-1/2 , -2) and (-1,-1) ` >> >> I found a good way to solve these types of equations, after reading some >> good books on this topic. >> Link is : (page 9 example 2.2) >> http://people.math.gatech.edu/~aleykin3/math4803spr13/BOOK/chapter1.pdf >> >> So here we need to construct a `Res(f1,f2 )` matrix.I hope this method will >> work for most of the equation. >> >> Please share your view on this approach. >> >> I also updated the Solveset and solver wiki, please have a look : >> https://github.com/sympy/sympy/wiki/Solveset-and-Solver-Discussion >> >> >> -- >> Shekhar Prasad Rajak >> >> On Thursday, 4 February 2016 00:40:34 UTC+5:30, Shekhar Prasad Rajak wrote: >>> >>> >>> Hello, >>> my name is Shekhar Prasad Rajak.I want to discuss about Solver and >>> Solveset module >>> https://github.com/sympy/sympy/wiki/GSoC-2016-Ideas#solvers .I am going to >>> apply for GSoc'16, so trying to know >>> what sympy community expecting. >>> Solveset came to Replace all internal solve() calls >>> https://github.com/sympy/sympy/issues/8711 >>> So I should focus on Solveset,right? >>> I have some questions : >>> 1.What are the main problems/issues in Solver and Solveset right now? >>> 2.Is Solveset module done?If not,what are the main features, that should >>> be added ? >>> I have seen Harsh's PR : https://github.com/sympy/sympy/pull/7523 >>> It seems, these need some works : >>> -functions solvable by LambertW >>> -functions that can be recast as polynomials with a change of variables >>> this, for example; this can be >>> factored out of solve where multiple generators are handled >>> -use something like this : >>> https://github.com/sympy/sympy/pull/7523#issuecomment-62198981 >>> to handle the XFAILed test test_real_imag_splitting1, this will be >>> handled in the set module. >>> >>> 3.This is list of Issues/ Discussions I found. >>> >>> https://github.com/sympy/sympy/wiki/GSoC-2014-Application-Harsh-Gupta:-Solvers#relevant-issues-discussions-and-references >>> but I don't know, whether they are solved or not. >>> Issues which are still open in github repo, need solutions. >>> There are also links of pdf and research papers, I am not sure whether >>> they are implemented or not. >>> >>> 4.Can we use python library multiprocessing,Synchronization for the faster >>> execution?one issue was opened for the same,which is closed now.But it is >>> always better to take less time. >>> >>> >>> -- >>> Shekhar Prasad Rajak >>> >> -- >> 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 https://groups.google.com/group/sympy. >> To view this discussion on the web visit >> https://groups.google.com/d/msgid/sympy/31ad019e-e223-4211-8060-697e99cac725%40googlegroups.com. >> >> For more options, visit https://groups.google.com/d/optout. > > > > -- > Harsh > Sent from a GNU/Linux > > -- > 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 https://groups.google.com/group/sympy. > To view this discussion on the web visit > https://groups.google.com/d/msgid/sympy/CADN8iupQY3LSPFjG%3DT%3DEsWkH6z1Ad%3Dt19FkhwpPjBav8zASc2w%40mail.gmail.com. > For more options, visit https://groups.google.com/d/optout. -- 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 https://groups.google.com/group/sympy. To view this discussion on the web visit https://groups.google.com/d/msgid/sympy/CAKgW%3D6JEwUdEx9n_3o75B7ZrfxxShc5_tn%2BJWQQ-3FBC-rL%2BZQ%40mail.gmail.com. For more options, visit https://groups.google.com/d/optout.
