(phixonline)--> with javascript_semantics requires("1.0.0") include mpfr.e atom t0 = time() mpz z = mpz_init() for i=1 to 25 do integer pi = get_prime(i) mpz_ui_pow_ui(z,2,pi) mpz_sub_ui(z,z,1) string zs = mpz_get_str(z), fs = mpz_factorstring(mpz_pollard_rho(z)) if fs!=zs then zs &= " = "&fs end if printf(1,"2^%d-1 = %s\n",{pi,zs}) end for for s in {"600851475143","100000000000000000037"} do mpz_set_str(z,s) printf(1,"%s = %s\n",{s,mpz_factorstring(mpz_pollard_rho(z))}) end for ?elapsed(time()-t0)