/* u3_zx_read_c(): */ u3_fox u3_zx_read_c(u3_z z, u3_fox a) { u3_rat rat = u3_b_read(&z->l, a); if ( u3_none == rat ) { return u3_zc_tank(z, c3__exit); } else return rat; }
/* u3_zx_bex(): */ u3_fox u3_zx_bex(u3_z z, u3_fox cor) { u3_fox sam = u3_zh(z, u3_zh(z, cor)); u3_fox a = sam; if ( u3_no == u3_lr_stud(z, a) ) { return u3_zc_tank(z, c3__punt); } else return u3_zx_bex_c(z, a); }
/* u3_zx_gt(): */ u3_fox u3_zx_gt(u3_z z, u3_fox cob) { u3_fox a, b; if ( (u3_no == u3_lr_cell(z, cob, &a, &b)) || (u3_no == u3_lr_pat(z, a)) || (u3_no == u3_lr_pat(z, b)) ) { return u3_zc_tank(z, u3_cm_punt); } else { return u3_zx_gt_c(z, a, b); } }
/* u3_zx_bex_c(): */ u3_fox u3_zx_bex_c(u3_z z, u3_fox a) { mpz_t mp_a; if ( !u3_rat_is_cat(a) ) { return u3_zc_tank(z, c3__punt); } else { mpz_init_set_ui(mp_a, 1); mpz_mul_2exp(mp_a, mp_a, a); return u3_zc_mp(z, mp_a); } }
/* u3_zx_mod(): */ u3_fox u3_zx_mod(u3_z z, u3_fox cor) { u3_fox sam = u3_zh(z, u3_zh(z, cor)); u3_fox a, b; if ( (u3_no == u3_lr_cell(z, sam, &a, &b)) || (u3_no == u3_lr_stud(z, a)) || (u3_no == u3_lr_stud(z, b)) ) { return u3_zc_tank(z, c3__punt); } else { return u3_zx_mod_c(z, a, b); } }
/* u3_zx_mod_c(): */ u3_fox u3_zx_mod_c(u3_z z, u3_fox a, u3_fox b) { if ( 0 == b ) { return u3_zc_tank(z, c3__exit); } else { mpz_t mp_a, mp_b; u3_lr_mp(z, mp_a, a); u3_lr_mp(z, mp_b, b); mpz_tdiv_r(mp_a, mp_a, mp_b); mpz_clear(mp_b); return u3_zc_mp(z, mp_a); } }