Math Archives Homepage


Dr. Keith Matthews
Department of Mathematics
University of Queensland
Brisbane Q4072

calc is a calculator program for doing arbitrary precision integer arithmetic. It is written in ANSI C and Yacc, along the lines of the calculator programs hoc1,2,3, Kernighan and Pike, The Unix Programming Environment, 233--254, 1984. There are a number of built--in functions accessible with CALC. These include: gcd, fp (the simplest form of the inhomogeneous Fincke-Pohst algorithm), lcm, pollard (Pollard's p-1 method), nprime(x) (the first integer after x which passes the strong base 2 pseudoprime test and the Lucas pseudoprime test), jacobi (Jacobi symbols), peralta (Peralta's algorithm), congr (the solution of congruences), chinese (the solution of a system of congruences), mthroot (the integer part of the m-th root of x), fund, pell (the continued fraction expansion of sqrt{d}), surd, mpower, inv, factor, tau (divisor function), sigma (the sum of the divisors), mobius, euler, lprimroot, orderm (the order of a(mod n)), lucas, serret (Serret's algorithm), collatz (Collatz' 3x+1 conjecture), miller (Miller's test), hermite (the Kannan-Bachem algorithm), improvep (LLL-Babai method), mlll (MLLL algorithm of M. Pohst), smith (Smith normal form), rsae, encode, decode.

(adapted from the documentation)

Download [234 KB].

Download source code - calc.tar.gz from the University of Queensland.

Other Internet Resources:

  • CALC Homepage from University of Queensland, Queensland, Australia