New on CTAN: bnumexpr
Date: September 22, 2014 8:46:28 PM CEST
Jean-François Burnol submitted the
bnumexpr
package.
Version number: 1.1
License type: lppl1.3
Summary description: Extends eTeX’s \numexpr...\relax construct to big
integers.
Announcement text:
v1.1 of 2014/09/21 \thebnumexpr...\relax is analogous to \the\numexpr...\relax but for arbitrarily big integers. Example: \thebnumexpr 30*(21-43*(512-67*(6133-812*2897)))\relax which outputs -202785405180. Option allowpower furthermore enables ^ for power operations. By default, bnumexpr uses the arithmetic macros from xint (with / doing rounded division for compatibility with \numexpr). To reduce overhead, perhaps at some point these could get extracted from xint.sty/xinttools.sty and moved to a smaller core package. Option bigintcalc tells bnumexpr to load package bigintcalc rather than package xint (however / does then truncated division). With option custom, neither xint nor bigintcalc are loaded and it is up to the user to provide suitable definitions for expandable macros \bnumexprAdd, \bnumexprSub, \bnumexprMul, \bnumexprDiv and, in case of option allowpower, also \bnumexprPow. The \bnumexpr parser is a scaled down version of \xintiiexpr from xintexpr.sty (which loads the whole chain xintfrac/xint/xinttools) Currently it is provided only as a LaTeX2e package.
This package is located at http://mirror.ctan.org/macros/latex/contrib/bnumexpr More information is at http://www.ctan.org/pkg/bnumexpr We are supported by the TeX Users Group http://www.tug.org . Please join a users group; see http://www.tug.org/usergroups.html .
Thanks for the upload. For the CTAN Team Manfred Lotz
v1.1 of 2014/09/21 \thebnumexpr...\relax is analogous to \the\numexpr...\relax but for arbitrarily big integers. Example: \thebnumexpr 30*(21-43*(512-67*(6133-812*2897)))\relax which outputs -202785405180. Option allowpower furthermore enables ^ for power operations. By default, bnumexpr uses the arithmetic macros from xint (with / doing rounded division for compatibility with \numexpr). To reduce overhead, perhaps at some point these could get extracted from xint.sty/xinttools.sty and moved to a smaller core package. Option bigintcalc tells bnumexpr to load package bigintcalc rather than package xint (however / does then truncated division). With option custom, neither xint nor bigintcalc are loaded and it is up to the user to provide suitable definitions for expandable macros \bnumexprAdd, \bnumexprSub, \bnumexprMul, \bnumexprDiv and, in case of option allowpower, also \bnumexprPow. The \bnumexpr parser is a scaled down version of \xintiiexpr from xintexpr.sty (which loads the whole chain xintfrac/xint/xinttools) Currently it is provided only as a LaTeX2e package.
This package is located at http://mirror.ctan.org/macros/latex/contrib/bnumexpr More information is at http://www.ctan.org/pkg/bnumexpr We are supported by the TeX Users Group http://www.tug.org . Please join a users group; see http://www.tug.org/usergroups.html .
Thanks for the upload. For the CTAN Team Manfred Lotz
bnumexpr – Extends ε-TeX’s \numexpr...\relax construct to big integers
The package extends ε-TeX \numexpr...\relax operation to allow big integers, powers, factorials, truncated division and its associated modulo.
By default, bnumexpr loads package xintcore (part of the xint bundle) and uses its arithmetic macros.
Package | bnumexpr |
Version | 1.5 2021-05-17 |
Copyright | 2014–2021 Jean-François Burnol |
Maintainer | Jean-François Burnol |