Hi Jogi,

Sorry for the late reply, it has been a busy week for me.
Thanks for your interest in this project. I definitely want `solveset` to 
overtake `solve` as quickly as we can. 

- Regarding `transolve`, yeah the Lambert solver needs to be completed. 
There were few bivariate type equations that weren't able to pass in my PR 
#14972 <https://github.com/sympy/sympy/pull/14972>. I will add more 
comments there, and update you soon.

- Regarding the modular equations, I think it will be a good idea to have 
`invert_modular`, I also liked the approach that is implemented in #14284 
<https://github.com/sympy/sympy/pull/14284>, but some of the work needs to 
be done in terms of generalisation.

- For set infrastructure, a good place to start with would be #11188 
<https://github.com/sympy/sympy/pull/11188> and #12011 
<https://github.com/sympy/sympy/pull/12011> and #16033 
<https://github.com/sympy/sympy/pull/16033> (@oscargus made the PR recently 
you can probably work along with him).

- Also as I try to recollect now, there were some discussions on to include 
BigUnion and BigIntersection. Refer: #9815 
<https://github.com/sympy/sympy/issues/9815>, and some discussions in #14566 
<https://github.com/sympy/sympy/issues/14566>. It definitely needs a 
discussion on their addition. Probably you can add your thoughts on this.

Apart from this, there are a lot of issues and PR's that are undone. I 
suggest you start off by fixing them one by one. Also, feel free to ask any 
of your doubts here. I will try to reply you as soon as I can.

Cheers!
Yathartha Joshi

On Monday, March 4, 2019 at 2:50:39 PM UTC+5:30, Jogi Miglani wrote:
>
> Hello,
>
> As we know that the work for solvers i.e replacing solve with solveset is 
> being in progress from last four years. A lot of work has been done during 
> this period by Harsh Gupta(@hargup), Amit Kumar(@aktech), Kshitij 
> Saraogi(@kshitij10496), Shekhar Rajak(@Shekharrajak) and Yathartha 
> Joshi(@Yathartha22). I want to summarize whats left to be done. I want to 
> work on this project as I had quite a good experience with solvers and had 
> implemented solving specific type of exponential equation recently. 
>
> Mainly three things are left to be done and the order in which it should 
> be done:
>
> 1. Transolve :
>     * Lambert Solver - It has been implemented and need to be passed some 
> tests which i am working on now.
>     * Modular Equation - I went through #13178 
> <https://github.com/sympy/sympy/issues/13178> . It would be good to have 
> more discussion on how to implement this and the equations which come under 
> this.
>     * Extending transolve to complex domain - needs discussion and proper 
> plan of implementation.
>
> 2. Set Infrastructure(Image Set) : Many of the things depend on this in 
> solveset. So I think this should be the next task done after transolve 
> above.
>
> 3. Extending nonlinsove for trigonometric/transcedental equations.
>
> First of we I think we should discuss about Transolve to complete. 
> For lambert solver I think @Yathartha22, you should tell here that whats 
> exactly left to be done so that all can give suggestions. 
> For handling modular equations - @smichr, @asmeurer What do you think how 
> should we approach this?
> Example
> This problem is expected to return {100}
>
> n = symbols('n', integer=True)
> a = 742938285
> z = 1898888478
> m = 2**31 - 1
> x = 20170816
> solveset(x – Mod(a**n*z, m), n, S.Integers)
>
> Above can be implemented in sympy as suggested by @smichr
>
> a = 742938285
> z = 1898888478
> m = 2**31 - 1
> x = 20170816
> arg = x*invert(z, m)  
>
> n = discrete_log(m, arg, a) 
>
> What do you think @smichr, @asmeurer here? Should we define (in the 
> solveset module) an _invert (modulo m) function by the model of 
> _invert_real and _invert_complex?
>
> Suggestions on rest of the points can also be given here.
>
> I request to mentors to please give suggestions and have a discussion on 
> this to proceed further.
>
>

-- 
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 https://groups.google.com/group/sympy.
To view this discussion on the web visit 
https://groups.google.com/d/msgid/sympy/43a1c00f-3659-4a3c-a96b-9f136d06058a%40googlegroups.com.
For more options, visit https://groups.google.com/d/optout.

Reply via email to