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

Line 1,371:
size_t ix;
size_t iy;
bool overflowxoverflow;
bool yoverflow;
};
 
Line 1,428 ⟶ 1,429:
for (int i = 0; i != 8; i += 1)
mpz_init_set (tmp[i], env->ng[i]);
mpz_t *term = (!env->overflowxoverflow) ? cf_ref (env->x, env->ix) : NULL;
env->ix += 1;
mpz_set (env->ng[ng8a2], tmp[ng8a12]);
Line 1,442 ⟶ 1,443:
if (ng8_too_big (env->ng))
{
env->overflowxoverflow = true;
mpz_set (env->ng[ng8a12], tmp[ng8a12]);
mpz_set (env->ng[ng8a1], tmp[ng8a1]);
Line 1,457 ⟶ 1,458:
for (int i = 0; i != 8; i += 1)
mpz_init_set (tmp[i], env->ng[i]);
mpz_t *term = (!env->overflowyoverflow) ? cf_ref (env->y, env->iy) : NULL;
env->iy += 1;
mpz_set (env->ng[ng8a1], tmp[ng8a12]);
Line 1,471 ⟶ 1,472:
if (ng8_too_big (env->ng))
{
env->overflowyoverflow = true;
mpz_set (env->ng[ng8a12], tmp[ng8a12]);
mpz_set (env->ng[ng8a2], tmp[ng8a2]);
Line 1,577 ⟶ 1,578:
env->ix = 0;
env->iy = 0;
env->overflowxoverflow = false;
env->yoverflow = false;
return make_cf (return_ng8_term, env);
}
1,448

edits