Title: Computer algebra systems, mathematical representation, and the DLMF
1Computer algebra systems, mathematical
representation, and the DLMF
- Richard Fateman, Bruce Char, Jeremy Johnson
- University of California, Berkeley
- Drexel University, Philadelphia
- National Institute of Standards and Technology
- DLMF Seminar Series, November 6, 2000
2Desiderata for the Digital Library of
Mathematical Functions
- Traditional usage
- New modes of interaction
- Examples
- New ambitions
3Non-digital tradition Finding Out Stuff
- Individually owned reference works
- Access to libraries references works
- Access to colleagues by letter, phone, email
- Paper and pencil exploration
- Numerical experimentation
4Wolfram Researchs Special Functions site 3
versions
- Huge posters
- Interactive web site/ Mathematica notebooks
- Printed form (or the equivalent PDF)
5The posters
6The web site (here, the Arcsin page)
7WRIs Categories/ Some Subcategories
- continued fractions
- generating functions
- group representations
- differential equations
- difference equations
- transformations
- addition formulas etc
- operations
- integral transforms
- identities
- representations through more general functions
- relations with other functions
- zeros
- inequalities
- theorems
- other information
- history and applications
- references
primary definition specific values general
characteristics series representations
generalized power series at various points
q-series exponential fourier series
dirichlet series asymptotic series other
series integral reprsentations on the real axis
contour integrals multiple integral
representation analytic continuations product
representations limit representations
8Click on Series Representations
9This is not very useful
- These are blurry pictures of math formulas.
- The most plausible next step seems to be to copy
them down on paper and check by hand. - There is a possibility of making typos or fresh
algebra mistakes. - The notation might be different from what you are
using. - Sparse (or no) info on singularities, regions of
validity. - To run some numbers through, you need to write a
computer program (Fortran? Matlab? C?)
10Notebook form (I)
Input form
ArcSinz z3/6 z (3z5)/40 \Ellipsis
Sum(Pochhammer1/2, kz(2k 1))/((2k
1)k!), k, 0, Infinity
zHypergeometric2F11/2, 1/2, 3/2, z2 / Absz
lt 1
One could imagine that a system independent
language such as proposed by the OpenMath
consortium would replace this language. Note
however that agreement on the semantics of
\Ellipsis would be difficult.
11Notebook form (II)
Displayed form (one version)
In reality, Mathematica does not look quite as
good as this in the interactive mode.
12Notebook form (III)
TeX form
Condition(\arcsin (z) \frac\Mfunction
z36 z \frac3\,z540
\ldots \Mfunction\sum_k 0\infty
\frac\MfunctionPochhammer(\frac12
,k)\, \Mfunctionz2\,k
1\left( 2\,k 1 \right) \,k!
\Mfunctionz\,\MfunctionHypergeometric2F1
( \frac12,\frac12,\frac32
,z2), \MfunctionAbs(z) lt 1))
Useful in case you wanted to paste/edit this into
another paper, using Mathematica TeX macros.
13Computing Inside the Notebook
How good is the 3-term approximation at z ½ ?
ArcSinz z z3/6 (3z5)/40 ... /. z
-gt 1/2 ?
Pi/6 2009/3840 ... Surprised?
N Pi/6 2009/3840 ... ? 0.523599
0.523177 ...
N Pi/6 2009/3840 ..., 30 ? 0.523599
0.523177 ...
N Pi/6 2009/3840 ..., 30 ?
0.52359877559829887307710723055
0.52317708333333333333333333333 ...
14Simplification Inside the Notebook
In30 z Hypergeometric2F11/2, 1/2, 3/2, z2
Note this is how Mathematica interactive output
looks. This should be the same as ArcSinz for
zlt1. And yes, z/Sqrtz2 is not the same as 1.
15All commercial computer algebra systems (CAS)
have essentially the same notebook paradigm
- Macsyma
- Maple
- Mathematica
- Axiom
- MuPad
- Scientific Word / Maple
- Derive
16Advice on coding a reference chapter
17What about legacy knowledge? Can we convert
from scanned text?
- Example from integral table
- In practice, we can do some parsing using OCR if
we know about the domains. - But in general, we cannot read with
understanding.
18What about using LaTeX as source and then
converting to OpenMath/ CAS?
- Generally speaking not automatically
- TeX does not distinguish semantically between
123 and 123. - Or between x cos x and xfoox.
- It has no notion of precedence of operators
- Gradshteyn and Rhyzik, Table of Integrals and
Series (Academic Press) was re-typeset
completely in TeX TWICE, because the first
version did not reflect semantics. MathML, XML,
and OpenMath are inadequate.
19Using OpenMath as original source is pretty much
out of the question.
Intent is to code x cos x ltOMOBJgt ltOMAgt
ltOMS cd "arith1" name"times"/gt ltOMV
name"x"/gt ltOMAgt ltOMS cd"transc1"
name"cos"/gt ltOMV name"x"/gt lt/OMAgt
lt/OMAgt lt/OMOBJgt
20Using MathML as original source is pretty much
out of the question, too.
ltmathgt ltmsqrtgt ltmfracgt ltmrowgtltmngt2lt/mngtltmi
gtpilt/migtlt/mrowgt ltmrowgtltmigtkappalt/migtlt/mrow
gt lt/mfracgt ltmfenced open"(" close")"gt
ltmngt1lt/mngt ltmigtminuslt/migt
ltmigtbetalt/migt ltmsupgt ltmrowgtltmngt2lt/mngtlt/m
rowgt lt/msupgt ltmigt/lt/migtltmngt2lt/mngtlt/mfencedgtlt/ms
qrtgtlt/mathgt
21What can a CAS do better?
- Semantics for what makes sense to the CAS is
immediate. - Presentation for what doesnt make sense to the
CAS - Advantage There is an immediate computational
ontology - Immediate syntactic disambiguation
- Easy translation into MathML for display
- Easy translation into OpenMath, if anyone else
cares.
22What about using Java Applets?
- Pro
- an applet provides more intimate interaction with
a user. - Examples from Math Forum
- Con
- Only Java-enabled clients can use such applets.
- Java standardization is problematical
- High quality numerical software in Java?
- Symbolic computation in Java?
- Poor access to underlying computer.
23What about Server Side software?
- Pro
- arbitrarily powerful could be huge database and
super-fast computer - always up-to-date
- controlled by validation team?
- Can collect / re-distribute new data
24What about Server Side software?
- Con
- Risk/cost of computation at server
- Communication requirement
- Cost
- Connection reliability
25What about no software?
- Pro
- You can run DLMF without a computer
- You can work on a desert island
- Con
- Anyone with a computer or electricity will be
disappointed
26What about only browser software?
- Pro
- You can run DLMF on an appliance (300)
- Con
- Loss in the marketplace of ideas
- In some respects it will suffer from comparison
with software, some of which is free today - Students who are used to (say) Mathematica will
use other resources, even if less authoritative
27What about numeric-only software?
- Pro
- You print numeric tables as needed
- Con
- Symbolic data is endlessly tabulated instead.
etc
28What about symbolic software
- Now we can consider including algorithms for
- trig(n/m ?)
- Indefinite integrals (replacing 10-20,000)
- Summation, Limits
- Definite integrals (a challenge still)
- Implicit application of identities, reduction of
argument or order by recursion, etc. - Generation of any number of terms in series
- Expansion in Chebyshev or other polynomials
- Exact arithmetic or bigfloat arithmetic
29A challenge Include a CAS in DLMF
- Free Macsyma (c. 1982)
- (buy) Commercial system
- Macsyma, Maple, Mathematica, Axiom
- alternatively
- Require the user to have a CAS separately (like
requiring a Fortran compiler to use GAMS)
30What do we want? What can we attempt?
- Exhaustive hierarchical hyperlinks to everything
known - Human readable form
- Computer usable form ALGORITHMS
- Searchable form /Unique identifiers for formulas
- Provenance of information
- Annotations from other users
- Corrections current or past
- Cross-reference hyperlinks to all of mathematics
- Applications
- A bridge across paper/pencil ??computer gap
- A tireless, accurate and efficient robot to help
us
31Computers do more than arithmetic
- Many persons who are not conversant with
mathematical studies imagine - that because the business of Babbage's
Analytical Engine is to give - its results in numerical notation, the nature of
its processes must - consequently be arithmetical and numerical,
rather than algebraical and - analytical. This is an error. The engine can
arrange and combine its - numerical quantities exactly as if they were
letters or any other - general symbols and in fact it might bring out
its results in - algebraic notation, were provisions made
accordingly. - -- Ada Augusta, Countess of Lovelace, (1844)