Hi Aaron and everyone Now that a mandatory patch for the application is in, I can discuss in details regarding the application which I wish to propose. This is gonna be a series of short posts where I can discuss individual elements which I can/should include or what may not be necessary. These are the first set of changes I wish to implement:
1. I have started on Chetna's branch and have dealt with the issue of not hardcoding 'a' Reference : https://github.com/sympy/sympy/pull/2380 What I have seen by going through the code that at some places she has diverged from keeping the variables same as in the book. I have taken the liberty to change the variable names and keep the implementation as close to the book as possible. Is it okay to do that ? Since the code is not merged I guess it wont hurt to change names and do the modifications. Also she was passing 'a' in all the functions but using the default value '-1' inside. When I replace that with 'a' I find that a doesn't always carry '-1' value. Rather in a recursive call its values changes to '+1' at some instances because she is using the same variable inside the loop too. 2. In rde.py and prde.py I want to merge special_denom in one file, as they are very similar. 3. To recognize whether a rational function is derivative of a rational function we right now use Laurent Series method and then hermite reduction if the first one fails. I think we can/should also Marik's Criteria as Chetna had suggested and as this mathstackexchange answer tells us : http://math.stackexchange.com/questions/418482/primitive-of-a-rational-function This will save us from using "costly" hermite reduction in more cases. And implementation shouldn't be tough as we already have subroutines required for the algorithm. What does the community say about it ? Cheers Anurag P.S Aaron I deleted the merge_cds branch after the changes were merged yesterday from my github repo. I still have that branch on my system because that is the only branch which has cds.py and rde.py etc in the latest version (chetna's version) In case I want you to show my hack for [1] Should i send a new PR from this branch. This PR wont get merged before the deadline but will serve as a mark on my progress on chetna's work. On Wednesday, January 22, 2014 8:00:08 PM UTC+5:30, Anurag Sharma wrote: > > Hello everyone. > > This post is regarding the gsoc idea of implementing (or continuing ) the > work of Aaron Meurer and Chetna Gupta on implementation of Risch Algorithm > for symbolic integrations. I have gone through the PR mentioned on the > ideas page. It seems there has been good progress last summer. > I have fairly decent background in abstract algebra and universal algebra. > Though I haven't formally done anything related to Differential Algebra. > > I wished to know the following things: > > 1. There are 3 remaining tasks mentioned in the PR. Would it be okay to > start on one of them ? (Most probably the one which asks to not hard code > the value of 'a' ) > > 2. Has there been any progress other than that mentioned in that PR? > > 3. I have skimmed through the first chapter of Bronstein's book. Algebraic > Preliminaries. Nothing new there. But the second chapter introduces > algorithms which I have never implemented and some of them I had not even > heard of. I would be really glad if you could tell me what sort of > mathematical background is required to contribute efficiently to this part > of the project. > > I would be really glad if you could link me to some literature on net > which explains the Risch algorithm and implementation issues. In the > meanwhile I'll try to procure the mentioned text from my college library. > > Apart from Aaron Meurer and Chetna Gupta who else has worked on this part > ? It would be really nice if I knew more people familiar to this part of > sympy so that I wont have to bug Aaron with every little issue :).. I have > tried contacting Chetna but I guess she is not much active now. > > Cheers > Anurag > > > -- 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 http://groups.google.com/group/sympy. To view this discussion on the web visit https://groups.google.com/d/msgid/sympy/46cf5047-fe58-40b5-931a-d8360c1ecccc%40googlegroups.com. For more options, visit https://groups.google.com/d/optout.
