From 3cac8298f5b8b21ddd1aecbea42a135a9c5e4cb8 Mon Sep 17 00:00:00 2001 From: Karl Berry Date: Sat, 1 Feb 2020 22:09:55 +0000 Subject: xint (1feb20) git-svn-id: svn://tug.org/texlive/trunk@53622 c570f23f-e606-0410-a88d-b1316a301751 --- Master/texmf-dist/doc/generic/xint/CHANGES.html | 313 +++++++++++++--------- Master/texmf-dist/doc/generic/xint/CHANGES.pdf | Bin 105478 -> 0 bytes Master/texmf-dist/doc/generic/xint/README | 205 -------------- Master/texmf-dist/doc/generic/xint/README.html | 133 --------- Master/texmf-dist/doc/generic/xint/README.md | 116 ++++++++ Master/texmf-dist/doc/generic/xint/README.pdf | Bin 32975 -> 0 bytes Master/texmf-dist/doc/generic/xint/sourcexint.pdf | Bin 929151 -> 981183 bytes Master/texmf-dist/doc/generic/xint/xint.pdf | Bin 993327 -> 944806 bytes 8 files changed, 302 insertions(+), 465 deletions(-) delete mode 100644 Master/texmf-dist/doc/generic/xint/CHANGES.pdf delete mode 100644 Master/texmf-dist/doc/generic/xint/README delete mode 100644 Master/texmf-dist/doc/generic/xint/README.html create mode 100644 Master/texmf-dist/doc/generic/xint/README.md delete mode 100644 Master/texmf-dist/doc/generic/xint/README.pdf (limited to 'Master/texmf-dist/doc') diff --git a/Master/texmf-dist/doc/generic/xint/CHANGES.html b/Master/texmf-dist/doc/generic/xint/CHANGES.html index cf755b8ddb2..f6b53aa4470 100644 --- a/Master/texmf-dist/doc/generic/xint/CHANGES.html +++ b/Master/texmf-dist/doc/generic/xint/CHANGES.html @@ -4,7 +4,7 @@ - + CHANGE LOG - - - - -
-

README

-

xint 1.3f

-

2019/09/10

-
- -
Source:  xint.dtx 1.3f 2019/09/10 (doc 2019/09/10)
-Author:  Jean-Francois Burnol
-Info:    Expandable operations on big integers, decimals, fractions
-License: LPPL 1.3f
-

This README is also available as README.pdf and README.html.

-

Change log is to be found in CHANGES.pdf or CHANGES.html.

-

The user manual is xint.pdf, and the commented source code is available as sourcexint.pdf.

-

Aim

-

The basic aim is provide expandable computations on integers, fractions, and floating point numbers. For example

-
\xinttheexpr reduce(37189719/183618963+11390170/17310720)^17\relax
-

will evaluate exactly the fraction; the result has 462 characters (including the fraction slash.) One can also work with dummy variables:

-
\xinttheexpr mul(add(x(x+1)(x+2), x=y..y+15), y=171286,98762,9296)\relax
-

evaluates to 15979066346135829902328007959448563667099190784.

-

Float computations are possible at an adjustable precision (default 16).

-
\xintDigits:=48;\xintthefloatexpr 123_456_789^1_000.5\relax
-->3.63692761822782679930738270515740797370813691938e8095
-

(as this example shows the underscore character can be used to separate visually digits, one can also use the space character for that purpose).

-

Square-root and the four operations achieve correct rounding in the given arbitrary precision.

-

Trigonometric functions (direct and inverse) are available with a maximal precision of 60 digits.

-

Logarithms and exponentials are available using the poormanlog package which provides only 8 or 9 digits of precision. This will be increased in future.

-

Usage

-

It is possible to use the package both with Plain (\input xintexpr.sty) or with LaTeX (\usepackage{xintexpr}).

-

With LaTeX

-
\usepackage{xint}       % expandable arithmetic with big integers
-\usepackage{xintfrac}   % decimal numbers, fractions, floats
-\usepackage{xinttools}  % expandable and non expandable loops
-\usepackage{xintexpr}   % expressions with infix operators
-

The xinttrig and xintlog packages are loaded automatically by xintexpr and will refuse to be loaded directly.

-

Further packages: xintbinhex, xintgcd, xintseries and xintcfrac.

-

Main dependencies are handled automatically. For example xintexpr automatically loads xinttools and xintfrac (which itself loads xint). Hexadecimal input requires explicit loading of xintbinhex.

-

Package xintcore is the subset of xint providing only the five operations on big integers: \xintiiAdd, \xintiiMul, …

-

The LaTeX package bnumexpr defines a more light-weight parser of arithmetical expressions using big integers, which supports only the four operations, the modulo operation, the power operation, and the factorial. By default it uses the macros from xintcore but this can be customized.

-

The LaTeX package polexpr is based upon xintexpr and allows formal algebra with polynomials, and finding all real roots with arbitrary precision.

-

With TeX

-

One does for example:

-
\input xintexpr.sty
-

This will automatically load xintfrac.sty, xinttrig.sty, xintlog.sty and xinttools.sty. The packages may be loaded in any catcode context such that letters, digits, \ and % have their standard catcodes.

-

xintcore.sty and xinttools.sty both import xintkernel.sty which has the catcode handler and package identifier and defines a few utilities such as \oodef/\fdef, \xint_dothis/\xint_orthat, or \xintLength.

-

Since 1.3b, xintkernel.sty also provides \xintUniformDeviate which is a wrapper of the engine \pdfuniformdeviate or \uniformdeviate done to guarantee more uniformity of the pseudo-random integers.

-

Installation

-

Method A: using the package manager of your TeX distribution

-

xint is included in TeXLive (hence also MacTeX) and MikTeX.

-

There can be a few days of delay between apparition of a new version on CTAN and availability via the distribution package manager.

-

Method B: manual installation using xint.tds.zip and unzip

-

Assumes a GNU/Linux-like system (or Mac OS X).

-
    -
  1. obtain xint.tds.zip from CTAN: http://mirror.ctan.org/install/macros/generic/xint.tds.zip

  2. -
  3. cd to the download repertory and issue:

    -
     unzip xint.tds.zip -d <TEXMF>
    -

    where <TEXMF> is a suitable TDS-compliant destination repertory. For example, with TeXLive:

    -
      -
    • Linux, standard access rights, hence sudo is needed, installation into the “local” tree:

      -
        sudo unzip xint.tds.zip -d /usr/local/texlive/texmf-local
      -  sudo texhash /usr/local/texlive/texmf-local
    • -
    • Mac OS X, installation into user home folder (no sudo needed, and it is recommended to not have a ls-R file there, hence no texhash):

      -
        unzip xint.tds.zip -d  ~/Library/texmf
    • -
  4. -
-

Method C: manual installation using Makefile and xint.dtx

-

The Makefile automatizes rebuilding from xint.dtx all documentation files as well as xint.tds.zip. It is for GNU/Linux-like (inc. Mac OS X) systems, with a teTeX like installation such as TeXLive. The Latexmk and Pandoc softwares are required to build all the documentation.

-
    -
  1. obtain xint.dtx and Makefile from http://mirror.ctan.org/macros/generic/xint.

  2. -
  3. put them in an otherwise empty working repertory, run make or equivalently make help for further instructions.

  4. -
-

Method D: installation starting with only xint.dtx

-

Run etex xint.dtx to extract from xint.dtx all macro files as well as auxiliary files needed for building the documentation. Among them there is Makefile.mk. If you are on a GNU/Linux-type system, rename the file to Makefile and execute make on command line for further help. If you can’t use make read the contents of the Makefile for instructions.

-

Finishing the installation in a TDS hierarchy:

- -

Depending on the destination, it may then be necessary to refresh a filename database.

-

License

-
-

Copyright (C) 2013-2019 by Jean-Francois Burnol

-

This Work may be distributed and/or modified under the conditions of the LaTeX Project Public License version 1.3c. This version of this license is in

-
-

http://www.latex-project.org/lppl/lppl-1-3c.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 author-maintained.

-

The Author of this Work is Jean-Francois Burnol.

-This Work consists of the source file xint.dtx and of its derived files: xintkernel.sty, xintcore.sty, xint.sty, xintfrac.sty, xintexpr.sty, xinttrig.sty, xintlog.sty, xintbinhex.sty, xintgcd.sty, xintseries.sty, xintcfrac.sty, xinttools.sty, xint.ins, xint.tex, README, README.md, README.html, README.pdf, CHANGES.md, CHANGES.html, CHANGES.pdf, pandoctpl.latex, doHTMLs.sh, doPDFs.sh, xint.dvi, xint.pdf, and Makefile.mk. -
- - diff --git a/Master/texmf-dist/doc/generic/xint/README.md b/Master/texmf-dist/doc/generic/xint/README.md new file mode 100644 index 00000000000..06aa3d216af --- /dev/null +++ b/Master/texmf-dist/doc/generic/xint/README.md @@ -0,0 +1,116 @@ +% README +% xint 1.4 +% 2020/01/31 + + Source: xint.dtx 1.4 2020/01/31 (doc 2020/01/31) + Author: Jean-Francois Burnol + Info: Expandable operations on big integers, decimals, fractions + License: LPPL 1.3c + +Aim and usage +============= + +The basic aim is provide *expandable* computations on integers, +fractions, and floating point numbers. For example, with fractions: + + \xinteval{reduce(37189719/183618963+11390170/17310720)^17} + +The result has `462` characters (forward slash included.) +One can also work with dummy variables: + + \xinteval{mul(add(x(x+1)(x+2), x=y..y+15), y=171286,98762,9296)} + +and do computations with floating point numbers at an adjustable +precision (default `16`). + + \xintDigits:=48;\xintfloateval{123_456_789^10_000.5} + expands to 1.56866129625858270633170234772583710433908855336e80919 + +Release `1.4` adds support for nested structures: + + \xintthealign\xintexpr ndseq(1/(i+j), i=1..5; j=1..5)\relax + +will print on the page + + [[ 1/2, 1/3, 1/4, 1/5, 1/6 ], + [ 1/3, 1/4, 1/5, 1/6, 1/7 ], + [ 1/4, 1/5, 1/6, 1/7, 1/8 ], + [ 1/5, 1/6, 1/7, 1/8, 1/9 ], + [ 1/6, 1/7, 1/8, 1/9, 1/10 ]] + +The four operations and the square-root extraction achieve so-called +*correct rounding* in the given arbitrary precision. + +Trigonometric functions (direct and inverse) are available up to a +maximal precision of about `58` digits. Logarithms and exponentials are +currently evaluated only with `8` or `9` digits precision. + +It is possible to use the package both with Plain (`\input xintexpr.sty`) +or with the LaTeX macro format (`\usepackage{xintexpr}`). + +Installation +============ + +`xint` is included in [TeXLive](http://tug.org/texlive/) (hence +[MacTeX](http://tug.org/mactex/) also) and in +[MikTeX](http://www.miktex.org/). Thus, use the package manager to +update your distribution. + +Alternatives: + +- download + [`xint.tds.zip`](http://mirror.ctan.org/install/macros/generic/xint.tds.zip) + and install in a suitable TDS-compliant repertory via `unzip`. "admin" + privilges might be needed, as well as a file database rebuild (`texhash`). + For example, on macos x, installation into user home folder (no `sudo`, + and no `texhash` as it is recommended to not have a ls-R file there) + + unzip xint.tds.zip -d ~/Library/texmf + +- all files can be extracted using `etex xint.dtx`, or `make` if the + `Makefile` included in the CTAN upload is present; see the file `INSTALL`, + if present, else read the help in extracted file `Makefile.mk`. + +Documentation +============= + +`README.md`: this file + +`CHANGES.html`: change log as relevant to end users + (`texdoc --list xint`) + +`xint.pdf`: user manual + +`sourcexint.pdf`: commented source code + (`texdoc --list xint` or `texdoc sourcexint`) + +Requirements +============ + +Attention, release `1.4` requires the `\expanded` primitive available +in all major TeX engines since TeXLive 2019. + +License +======= + +Copyright (C) 2013-2020 by Jean-Francois Burnol + +This Work may be distributed and/or modified under the +conditions of the LaTeX Project Public License version 1.3c. +This version of this license is in + +> + +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 `author-maintained`. + +The Author of this Work is `Jean-Francois Burnol`. + +This Work consists of the files `Makefile`, `INSTALL`, and `xint.dtx` +and its extracted and derived files inclusive of the documentation +files `xint.pdf`, `sourcexint.pdf` and `CHANGES.html`. + +See `xint.pdf` for contact information. + diff --git a/Master/texmf-dist/doc/generic/xint/README.pdf b/Master/texmf-dist/doc/generic/xint/README.pdf deleted file mode 100644 index 9fa9fe6008e..00000000000 Binary files a/Master/texmf-dist/doc/generic/xint/README.pdf and /dev/null differ diff --git a/Master/texmf-dist/doc/generic/xint/sourcexint.pdf b/Master/texmf-dist/doc/generic/xint/sourcexint.pdf index 7a2465e3163..3cf21147b98 100644 Binary files a/Master/texmf-dist/doc/generic/xint/sourcexint.pdf and b/Master/texmf-dist/doc/generic/xint/sourcexint.pdf differ diff --git a/Master/texmf-dist/doc/generic/xint/xint.pdf b/Master/texmf-dist/doc/generic/xint/xint.pdf index d81acf490b6..2ba88c84fe2 100644 Binary files a/Master/texmf-dist/doc/generic/xint/xint.pdf and b/Master/texmf-dist/doc/generic/xint/xint.pdf differ -- cgit v1.2.3