Thank you so much Yathartha for giving the latest updates. I am planning to complete the lambert first. I had added some reviews and comments over your PR for lambert. Please review them and let me know what you think. And i will focus on modular equations and set infrastructure after this.
I went through most of the issues and PRs. Many of them are related to the project. I think it can be covered side by side as my work proceeds. I will be updating you about my work. Sincerely, Jogi Miglani On Sun, Mar 10, 2019 at 7:15 PM Nabanita Dash <dashnaban...@gmail.com> wrote: > 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 > <https://groups.google.com/d/msgid/sympy/CAAXyjUpRfnh9GXwTqZVNnJyjXeNo40g3bzfwUYa4fnvTevWUzw%40mail.gmail.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/CAGPLj2286jgBrSC0Pa_G%3DcsBNY5hiLxNpL-OrOeivMqtZro8Gw%40mail.gmail.com. For more options, visit https://groups.google.com/d/optout.