---------- Forwarded message ---------- From: Thilina Rathnayake <[email protected]> Date: Wed, Jul 3, 2013 at 2:17 AM Subject: [GSoC] Diophantine Module To: Ondřej Čertík <[email protected]> Cc: Aaron Meurer <[email protected]>
Hi Ondrej, I am really excited to tell you that I implemented the algorithm for solving generalized Pell equation. For the past week or so I was working on the case B**2 - 4*A*C > 0 in quadratic DEs. Now, since the pell equation is solved, I can solve the above case by transforming it to a Pell equation. I looked a bit at the transformation and it's not that hard. I will be able to code it and finish implementing quadratic DEs at the end of this week. Currently, solutions returned for the Pell equations are the basic solutions of the particular equation passed to the Pell equation solver. We can represent other solutions by a recurrence. Both you and Aaron had answered on how to represent the recurrence in the solution. If I am not mistaken rsolve() currently solves the recurrences in one variable. But recurrences we are talking here involves two variables. So returning the recurrence itself won't be a good idea. What Wolfram alpha currently does is, it solves the recurrence and returns the general solution without returning any other specific solutions. Would that be a bad idea since I am implementing lower level API's? I coded the algorithms mostly looking at these two papers. [1] Solving the generalized Pell equation x**2 - D*y**2 = N, John P. Robertson, July 31, 2004, Pages 16 - 17 and 4 - 8. http://www.jpr2718.org/pell.pdf [2] Solving the equation ax**2 + bxy + cx**2 + dx + ey + f = 0, by John P. Robertson. http://www.jpr2718.org/ax2p.pdf I added a commit. I would love to have your feedback on that. Please take a look at that when you are free. Regards, Thilina -- 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. For more options, visit https://groups.google.com/groups/opt_out.
