Continued fraction/Arithmetic/G(matrix ng, continued fraction n1, continued fraction n2): Difference between revisions

Content added Content deleted
Line 3,777: Line 3,777:
ix = 1
ix = 1
iy = 2
iy = 2
overflow = 3
xoverflow = 3
yoverflow = 4


def too_big (values):
def too_big (values):
Line 3,791: Line 3,792:
def absorb_x_term ():
def absorb_x_term ():
(a12, a1, a2, a, b12, b1, b2, b) = env[ng]
(a12, a1, a2, a, b12, b1, b2, b) = env[ng]
if env[overflow]:
if env[xoverflow]:
term = None
term = None
else:
else:
Line 3,803: Line 3,804:
else:
else:
env[ng] = (a12, a1, a12, a1, b12, b1, b12, b1)
env[ng] = (a12, a1, a12, a1, b12, b1, b12, b1)
env[overflow] = True
env[xoverflow] = True
else:
else:
env[ng] = (a12, a1, a12, a1, b12, b1, b12, b1)
env[ng] = (a12, a1, a12, a1, b12, b1, b12, b1)
Line 3,810: Line 3,811:
def absorb_y_term ():
def absorb_y_term ():
(a12, a1, a2, a, b12, b1, b2, b) = env[ng]
(a12, a1, a2, a, b12, b1, b2, b) = env[ng]
if env[overflow]:
if env[yoverflow]:
term = None
term = None
else:
else:
Line 3,822: Line 3,823:
else:
else:
env[ng] = (a12, a12, a2, a2, b12, b12, b2, b2)
env[ng] = (a12, a12, a2, a2, b12, b12, b2, b2)
env[overflow] = True
env[yoverflow] = True
else:
else:
env[ng] = (a12, a12, a2, a2, b12, b12, b2, b2)
env[ng] = (a12, a12, a2, a2, b12, b12, b2, b2)
Line 3,868: Line 3,869:
return retval
return retval


return ContinuedFraction (func, [ng8_tuple, 0, 0, False])
return ContinuedFraction (func, [ng8_tuple, 0, 0, False, False])


#---------------------------------------------------------------------
#---------------------------------------------------------------------