// MuPAD で rho 法を書いてみたもの。 // 関数の書き方などに癖がある。 // なお、MuPAD で整数を素因数分解するという目的なら ifactor // をつかって一発でやった方が格段に高速で、しかも楽である。 f:=proc(a,n) begin return((a^2+1)mod n); end_proc: n:=607143768775207: a:=2: b:=a: while TRUE do; a:=f(a,n): b:=f(b,n): b:=f(b,n): x:=(a-b)mod n: if( gcd(x,n)<>1) then gcd(x,n); break; end_if end_while; quit;