This is a big-integer library for Lua. It is based on the arbitrary
precision library IMath written by Michael J. Fromberger available at
	https://github.com/creachadair/imath

To build the library and run a simple test, just do make.
If Lua is not installed in /usr/local, tell make:
	make LUA_TOPDIR=/var/tmp/lhf/lua-5.3.5/install

To install the library where Lua can find it, use a variant of these:
	make install
	sudo make install
	sudo make install LIBDIR=/usr/local/lib/lua/5.3

For detailed installation instructions, see
	http://www.tecgraf.puc-rio.br/~lhf/ftp/lua/install.html

The library is simple and intuitive; see the summary below.
Read test.lua to see the library in action.

This code is hereby placed in the public domain and also under the MIT license.
The IMath code in src/ has its own license. See src/README.md.

Please send comments, suggestions, and bug reports to lhf@tecgraf.puc-rio.br .

imath library:
__add(x,y)		add(x,y)		pow(x,y)
__div(x,y)		bits(x)			powmod(x,y,m)
__eq(x,y)		compare(x,y)		quotrem(x,y)
__idiv(x,y)		div(x,y)		root(x,n)
__le(x,y)		egcd(x,y)		shift(x,n)
__lt(x,y)		gcd(x,y)		sqr(x)
__mod(x,y)		invmod(x,m)		sqrt(x)
__mul(x,y)		iseven(x)		sub(x,y)
__pow(x,y)		isodd(x)		text(t)
__shl(x,n)		iszero(x)		tonumber(x)
__shr(x,n)		lcm(x,y)		tostring(x,[base])
__sub(x,y)		mod(x,y)		totext(x)
__tostring(x)		mul(x,y)		version
__unm(x)		neg(x)
abs(x)			new(x,[base])
