Hi!

I have updated my Proposal by making a few substantial changes, at SymPy 
wiki:
https://github.com/sympy/sympy/wiki/GSoC-2015-Application-AMiT-Kumar--Solvers-:-Extending-Solveset

Please have a look.

AMiT Kumar
3rd Year Undergrad
Delhi Technological University
www.iamit.in

On Thursday, March 19, 2015 at 8:46:08 PM UTC+5:30, AMiT Kumar wrote:
>
> Hi,
>
> Since there is only 1 week left for Student Application Deadline,
> I have Uploaded my Proposal on Melange as well:
>
> Project Title: SymPy Improving Solvers : Extending Solveset
> *Organization:* Python Software Foundation
> *Organization:* NumFOCUS
> User Name: aktech_amit
>
> Please have a look and suggest changes, I have fixed the formatting as 
> well.
>
> AMiT Kumar
> 3rd Year Undergrad
> Delhi Technological University
> www.iamit.in
>
> On Friday, February 6, 2015 at 12:08:45 AM UTC+5:30, AMiT Kumar wrote:
>>
>> Hi, 
>> I am AMiT Kumar, I would be GSoC Applicant to SymPy this year. I have 
>> been following the SymPy Community for quite sometime now and have also got 
>> around 11-12 patches Merged in the Code base. So, now, I have got a decent 
>> idea of `How things works`.
>>
>> I would like to work on Solvers as Mentioned on the Ideas Page. Last year 
>> Harsh Gupta did a very good job by Rewriting the Univariate solvers 
>> (solveset.py), I have gone through his work. After having conversation with 
>> him and digging into solveset, I got to know there is still a lot of work 
>> which needs to be done.
>>
>> I could see a couple of entry points on the Ideas page:
>> https://github.com/sympy/sympy/issues/8725  (I have Merged a PR for this)
>> https://github.com/sympy/sympy/issues/8711  (Replace all internal 
>> solve() calls with solveset() ): TODO
>>
>> Things, I would like to implement in solveset includes:
>>
>> Multivariate Equation solving:
>>
>> I think for solving multivariate equations, the order of variables should 
>> be given as input, so that we don't need to have a dict as output and we 
>> can return Set, as if we automatically detect variables, we need to output 
>> the dict of results.
>>
>>    - Multivariate functions with non point solution: (solvemv)
>>    - 
>>    
>>    In [0] solveset((x - 1)*(y - 2), (x, y))
>>    Out[1] {{1, arbitrary}, {arbitrary, 2}}
>>    
>>    
>> or we may return:
>>
>> Out[1] {{1, (-oo, oo)}, {(-oo, oo), 2}}
>>
>>
>>
>>    - Multivariate functions with point solutions: (solvemv)
>>    
>>
>>
>>    - 
>>    
>>    In [0] solveset(x**2 + y**2, (x, y))
>>    Out[1] {0, 0}
>>    
>>    
>> Solve System of Equation: (solvesys)
>> (For system of Equation, we can have this): 
>>
>>
>>    - 
>>    
>>    In [0] solveset([x + y == 1, x - y == 0], (x,y))
>>    Out[1] {{1/2, 1/2}}
>>    
>>    - For inequality solver (or for solvers in general) we also need to 
>>    extend singularities module (though useful in general), so as to prevent 
>>    getting wrong results, caused due to incorrect simplification of 
>>    expression, as we saw in this issue: 
>>    https://github.com/sympy/sympy/issues/8715 , Example: x + 1/x > -2 + 
>>    1/x  this inequality is written as expr = expr. lhs - expr.rhs , 
>>    which cancels 1/x and gives wrong result, by including singular point in 
>>    the solution.
>>    - inequality solver in solveset currently uses inequalities.py 
>>    (dependent on solve) (some discussion here: 
>>    https://groups.google.com/forum/#!topic/sympy/Yp5NqrXmp2U). It is 
>>    related to the next point below. 
>>    - All internal solve() calls needs to be replaced with solveset() , this 
>>    is very important for bringing out the solveset from sandbox to 
>>    eventually replace solve().   (we need to consider the output API 
>>    (return type) also while replacing).
>>    - We also need to extend the set - boolean (relational) conversion 
>>    methods to handle multivariate variables.
>>    - Complex set Infrastructure is also not there (though I see a WIP PR 
>>    for that), and yes we also need to see what other set capabilities we 
>> need 
>>    to implement to support various other kinds of solutions.
>>    
>> And also other solvers as mentioned on ideas page like 'Equations 
>> solvable by LambertW function' also needs to work.
>>
>> I would love to get feedback from the community before presenting my 
>> proposal.
>>
>> Cheers!
>> AMiT Kumar
>> 3rd Year Undergrad
>> Delhi Technological University
>> www.iamit.in
>>
>

-- 
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 sympy+unsubscr...@googlegroups.com.
To post to this group, send email to sympy@googlegroups.com.
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/e2d93d31-e0be-4cfa-924a-e1707ae2350a%40googlegroups.com.
For more options, visit https://groups.google.com/d/optout.

Reply via email to