Title: Research Topics: Symbolic Math, Web Interfaces, Document Understanding
1Research Topics Symbolic Math, Web Interfaces,
Document Understanding
- Richard Fateman
- Computer Science Division
- University of California, Berkeley
- (NSF funding room for more grad students)
2I - Table of Integrals Look UP (TILU)
- A (simplified) interaction
- A brief defense of why it is interesting to look
up integrals this way
3TILU Table of Integrals Look Up Welcome to
TILU, a web server that looks up integrals in a
reference table. If you have never used this
page before, or if you need some review on the
syntax for describing your integral, please be
sure to check in the frame on the left. Once you
have figured out how to ask your question, type
or paste the integrand in the big box below
Select language
Indefinite Integral
X2Sina x
4Lookup begun Jul 12, 1999 161929, completed in
140 ms. processor time, 171.0 ms. elapsed real
time. Actual cpu time in computing the answer 0
ms. The result of looking up this integral
INTEGRATE(X SIN(A X), X) -3
2 2 -2 COS(A X) A (2 - A X )
2 X SIN(A X) A
5Lookup begun Jul 12, 1999 162440, completed in
120 ms. processor time, 139.0 ms. elapsed real
time. Actual cpu time in computing the answer 0
ms. 2 INTEGRATE(X
ERF(X), X) was not found. We tried sending your
integral request to Wolfram's Integrator and
their answer was (1/(3SqrtPi)
x2/(3SqrtPi))/Ex2 (x3Erfx)/3
6Why is web lookup interesting?
- Inferiority of algorithmically generated answers
in some cases. Not just an integration issue but
a simplification issue. Tables have neat answers
when algorithms give poor or no answer (of
course algorithms sometimes do win...so the best
approach is probably to combine). - Once you get the integrand and limits into the
system, we can further process them, including
calling Mathematica, Maple, Macsyma servers. - Provides insight into storage and retrieval of
mathematics generally on the web. - other reference material, textbooks.
- An integral archive/knowledge base for all the
net.
7Typing Math is a bad interface. What is better?
- Fill in the boxes
- Graphical feedback
- Possibly handwritten (or voice!) input
noun only
noun or verb
NEXT
optional
x2y x y xy
x
x
8Typing sequentially in boxes...
Tab, 2,
cos (
)
cos (
x
)
...
2
cos (
x
)
- direct manipulation design intuition is tricky
how does the user know to hit lttabgt or click with
mouse (where)? - time will tell if this can be made to work
9Selection of previous expressions
Select box by click or backtab, arrow
2
y
y
cos (
x
)
Insert brackets in pairs only
2
y
y
cos (
x
)
- Insert/Delete brackets, Show/Hide boxes, Name?
- Appeal to menu if necessary for more structures
user-templates?
10Future Prospects for Tilu
- More ambitious web server processing
- Entirely new services symbolic, numeric
- Hooking up to XML based front-ends (via a Lisp
XML reader) - New front end
11II - An application of computer algebra Symbolic
Execution Proof
The idea is simple run your favorite program f
with a symbolic input. If f(x) computes x2 then
there is a good reason to believe that we have in
effect also proved that f(3)9 etc. Symbolic
execution runs into trouble with more complicated
calculations. That is, the size of expressions
involving symbolic parameters can grow quite
rapidly. Here is an example Consider Newton's
method to find the square root of v. Each
iteration is
Three iterations starting with the symbolic root
r gives us this rather complicated result.
In fact, this result is actually a pretty good
estimate! Not easy to prove though. If r is
between 0.5 and 4, and v is 2, then x3 gives at
least 3 correct decimals of ?2.
12III- Document Analysis/ OCR
- Encoding a picture of a printed page
- bitmap a picture of words, diagrams, photos etc
- recognized characters as ASCII or word.doc
- re-usable forms
- searching, indexing
- (for math) computing, plotting, etc.
- compressed
- If legacy documents are to make it to the WWW,
how will we understand them? - Many tricky problems, few principled approaches.
13One problem Ambiguity of printed math
We mostly believe that if you see cos(p)q that
the argument of cos is p. What about this piece
of clip-art from a well-known table of integrals
(Gradshteyn, 4.384.4)?
14Odds and Ends
- Parallel distributed Matlab
- Variable (high) precision polynomial zero-finding
- Lisp/numerical compilation