Division algorithm in one variable
Hi! I'm trying to implement the division algorithm 'by hand' (yes, I know the existence of f.maxima_methods().divide(g)
)
So far I've came up with this:
def div(f,g):
q==0; r==f;
while r != 0 and g.lt().divides(r.lt()):
q==q+r.lt()/g.lt()
r==r-(r.lt()/g.lt())*g
return q,r
but I'm getting an error on the "while" line. I'm following Ideals, Varieties and Algorithms by Cox (page 39 of the book), and they insert a "do" at the end of the while line, but I'm getting an "invalid syntax" error there. I'm pretty inexperienced with coding, and even more with Python/Sage (I've only taken a numerical methods course with Fortran).
I've gotten this "far" reading the book + documentation. Any ideas on how to proceed here?