summaryrefslogtreecommitdiff
path: root/Master/texmf-dist/doc/latex/bnumexpr/README
blob: 113af60fe754530c4becee1dd0a1c3d4e09085f4 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
Source: bnumexpr.dtx
Version: v1.1b, 2014/10/28
Author: Jean-Francois Burnol
Info: Expressions with big integers
License: LPPL 1.3c or later



README: USAGE, INSTALLATION, LICENSE


Usage

    \usepackage{bnumexpr}

Then

    \thebnumexpr <expression with +,-,*,/,(,)> \relax

is like

    \the\numexpr <expression with +,-,*,/,(,)> \relax

with the difference of accepting or producing arbitrarily big integers.
For example,

    \thebnumexpr 30*(21-43*(512-67*(6133-812*2897)))\relax

outputs -202785405180 and this computation would have created an
arithmetic overflow in \numexpr.

\bnumexpr...\relax is a scaled down version of \xintiiexpr...\relax from
package xintexpr.[1]

By default, bnumexpr loads xintcore [2] for its arithmetic macros doing
addition, subtraction, multiplication, division.

-   With option _custom_, xintcore is not loaded and it is up to the
    user to define suitably the expandable macros\bnumexprAdd,
    \bnumexprSub, \bnumexprMul, and \bnumexprDiv.

-   Option _bigintcalc_ loads package bigintcalc [3] and uses its
    arithmetic macros rather than those from xintcore.

-   Option _l3bigint_ loads rather package l3bigint [4], which is in the
    experimental trunk of the on-going LaTeX3 project.

Option _allowpower_ enables ^ as power operator.


Installation

Obtain bnumexpr.dtx (and possibly, bnumexpr.ins and the README) from
CTAN:

  http://www.ctan.org/pkg/bnumexpr

Both "tex bnumexpr.ins" and "tex bnumexpr.dtx" extract from bnumexpr.dtx
the following files:

bnumexpr.sty
    this is the style file.

bnumexprReadme.md
    reconstitutes this README.

bnumexpr.changes
    lists changes from the initial version.

bnumexpr.tex

    can be used to generate the documentation:

    -   with latex+dvipdfmx: "latex bnumexpr.tex" (thrice) then
        "dvipdfmx bnumexpr.dvi".

        Ignore dvipdfmx warnings, but if the pdf file has problems with
        fonts (possibly from an old dvipdfmx), use then rather pdflatex.

    -   with pdflatex: set the suitable toggle in bnumexpr.tex to
        disable dvipdfmx settings then "pdflatex bnumexpr.tex" (thrice).

    In both cases files bnumexprReadme.md and bnumexpr.changes must be
    present in the same repertory.

Without bnumexpr.tex:
    "pdflatex bnumexpr.dtx" (thrice) extracts all files and
    simultaneously generates the pdf documentation.

Finishing the installation:

           bnumexpr.sty   --> TDS:tex/latex/bnumexpr/

           bnumexpr.dtx   --> TDS:source/latex/bnumexpr/
           bnumexpr.ins   --> TDS:source/latex/bnumexpr/

           bnumexpr.pdf   --> TDS:doc/latex/bnumexpr/
                 README   --> TDS:doc/latex/bnumexpr/

Files bnumexpr.tex, bnumexpr.changes, bnumexprReadme.md may be
discarded.


License

Copyright (C) 2014 by Jean-Francois Burnol

This Work may be distributed and/or modified under the
conditions of the LaTeX Project Public License, either
version 1.3c of this license or (at your option) any later
version. This version of this license is in

  http://www.latex-project.org/lppl/lppl-1-3c.txt

and the latest version of this license is in

  http://www.latex-project.org/lppl.txt

and version 1.3 or later is part of all distributions of
LaTeX version 2005/12/01 or later.

This Work has the LPPL maintenance status "maintained".

The Current Maintainer of this Work is Jean-Francois Burnol.

This Work consists of the main source file bnumexpr.dtx and the derived
files

    bnumexpr.sty, bnumexpr.pdf, bnumexpr.ins, bnumexpr.tex,
    bnumexpr.changes, bnumexprReadme.md

[1] http://www.ctan.org/pkg/xint

[2] http://www.ctan.org/pkg/xint

[3] http://www.ctan.org/pkg/bigintcalc

[4] http://latex-project.org/svnroot/experimental/trunk/l3trial/l3bigint,
or from https://github.com/latex3/svn-mirror.