Hi Aaron Thanks for your reply. I have got hold of Bronstein book and the tutorial. I find the tutorial much more accessible right now. I think I will go through it first and worry about the correctness of algorithms later.
I don't find all the algorithms being implemented in sympy (eg Bernoulli, Hermite Reduction etc. ). And I guess we done need them when we have better ones available. Expect some queries and doubts related to maths involved in next couple of days while I read on. Cheers Anurag On Friday, January 24, 2014 5:18:52 AM UTC+5:30, Aaron Meurer wrote: > > On Thu, Jan 23, 2014 at 4:19 AM, someone <some...@bluewin.ch <javascript:>> > wrote: > >> > 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. > >> > >> Well really Bronstein's book is self-contained. The unfortunate thing > >> for you is that half of it is already implemented, so the > >> prerequisites are really more like "the first half of Bronstein's > >> book". I think you have a good opportunity to catch up, especially > >> since you are still early. You should read through chapter 2. This > >> gives a more algorithmic introduction to abstract algebra than you may > >> have seen before. Chapter 3 gives a good understanding of the rational > >> algorithm, but it is not necessary to understand all the algorithms > >> there, except the Lazard-Rioboo-Trager, which is the one actually > >> used. This is important because the full algorithm is just an > >> extension of this algorithm, so understanding the basics of how it > >> works is important. Chapter 4 is entirely theoretical. You should get > >> an understanding of differential algebra, but a deep understanding of > >> chapter 4 is not fully required. Most of it is just there to prove the > >> theorems, particularly the Liouville theorem. A lot of it is there > >> only to prove the algebraic case, which is not even described in the > >> book. > > > > We all miss the volume II he wanted to write :-( > > > >> It really depends on how you learn, though. If you feel you > >> learn better by really understanding all the mathematics, then you > >> should read chapter 4 more carefully. > >> > >> Chapter 5 is the most important. This you should read and understand > >> (with the possible exception of the proof of Liouville's theorem, > >> assuming I remember correctly that it's in this chapter). This is the > >> "base" algorithm. Most of it is already implemented, in risch.py. > >> > >> Chapters 6, 7, and 8 are nitty-gritty details of the sub-algorithms. > >> You really don't need to worry so much about the parts that are > >> already implemented. It depends on what you plan to do in your project > >> too, but in many cases you can worry about things when you get to them > >> too. > >> > >> Chapter 9 is more heavy on the math than what you really need to know > >> to implement it. > >> > >> I recommend starting with chapter 2. Try to find the implementation in > >> SymPy of the algorithms as you go through them, and play with them > >> using your own inputs. This will help you learn SymPy and the polys > >> module as well (the polys module can be a bit confusing so let us know > >> if you can't figure stuff out with it). > >> > >> You should also try to follow the Risch code, say for some simple > >> inputs, alongside the pseudocode in Bronstein. Don't worry too much > >> about the code in DifferentialExtension to start with. > >> > >> > 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. > >> > >> Read Bronstein's "symbolic integration tutorial" > > > > Yes, this a great "short version". > > There is also a Thesis called "Symbolic Integration" > > by BJÖRN TERELIUS. (You should be able to find this on > > the net, otherwise I'll send you a copy.) > > There is also some paper that I found pretty useful for understanding > the extension tower concept. I can't remember who wrote it or what > it's called. It might not even be a paper, just a chapter from a > textbook on computer algebra, but I do remember that it has the > example from https://code.google.com/p/sympy/issues/detail?id=2010#c1. > > There are also a ton of references in Bronstein's book. > > But I would always start with Bronstein, because his writing is the > best, and then fill the gaps with other resources. > > Aaron Meurer > > > > > -- > > 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+un...@googlegroups.com <javascript:>. > > To post to this group, send email to sy...@googlegroups.com<javascript:>. > > > Visit this group at http://groups.google.com/group/sympy. > > For more options, visit https://groups.google.com/groups/opt_out. > -- 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. For more options, visit https://groups.google.com/groups/opt_out.