Right now `Sympy` returns not simplified general form.If you paste this 
`solveset(cos(x) + cos(3*x) + cos(5*x),x)` then you will get 

`ImageSet(Lambda(_n, 2*_n*pi + pi/2), Integers()) U ImageSet(Lambda(_n, 
2*_n*pi - pi/2), Integers()) U                       ImageSet(Lambda(_n, 
2*_n*pi - 2*pi/3), Integers()) U ImageSet(Lambda(_n, 2*_n*pi + 2*pi/3), 
Integers()) U    ImageSet(Lambda(_n, 2*_n*pi - pi/3), Integers()) U 
ImageSet(Lambda(_n, 2*_n*pi + pi/3), Integers()) U ImageSet(Lambda(_n, 
2*_n*pi - 5*pi/6), Integers()) U ImageSet(Lambda(_n, 2*_n*pi + 5*pi/6), 
Integers()) U ImageSet(Lambda(_n, 2*_n*pi - pi/6), Integers()) U 
ImageSet(Lambda(_n, 2*_n*pi + pi/6), Integers())`

which can be simplified as `(2*n +1)*pi/6`, `(2*n -1)*pi/6`. Similarly many 
other solutions can be simplified.
I found a solution for this after some discussion in Quora, thanks to 
active Mathematicians in Quora: 

If we have terms like  `pi/6`, `pi/2`, `5*pi/6`, `7*pi/6`, `3*pi/2`.


   - Take differences until the differences are all equal. In this case, 
   the first differences are all pi/3. This indicates that you can fit a 
   linear function in nn . If it had been necessary to calculate the second 
   differences then one would have had to fit a quadratic function in n . And 
   so on. Very often one can calculate all possible differences without 
   reaching equal differences. Then it's necessary to try something else.
   - Since a linear function will work fit a*n+b , where a and b are 
   arbitrary constants. To do this, set: pi/6=a+b (using the first term) and 
   pi/2=2*a+b (using the second term), then solve for a and b . Now you have a 
   function that should represent all of the terms.

.

So actually we need a method that can make general from from the given 
terms.


I have updated the wiki page of* solvers and solveset , *please have a look 
and give your valuable suggestions.
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
>   
> <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/82b7bd34-549d-4c8f-ad81-2a030833cc65%40googlegroups.com.
For more options, visit https://groups.google.com/d/optout.

Reply via email to