I also wanted to work on solvers,can you please lead me the way to start. On Sun 10 Mar, 2019, 6:16 PM Yathartha Joshi <yatharth...@gmail.com wrote:
> 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 > <https://groups.google.com/d/msgid/sympy/43a1c00f-3659-4a3c-a96b-9f136d06058a%40googlegroups.com?utm_medium=email&utm_source=footer> > . > 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 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/CAAXyjUpRfnh9GXwTqZVNnJyjXeNo40g3bzfwUYa4fnvTevWUzw%40mail.gmail.com. For more options, visit https://groups.google.com/d/optout.