📄 rfc1019.txt
字号:
Network Working Group D. Arnon
Request for Comments: 1019 Xerox PARC
September 1987
Report of the Workshop on Environments for Computational Mathematics
July 30, 1987
ACM SIGGRAPH Conference
Anaheim Convention Center, Anaheim, California
Status of This Memo
This memo is a report on the discussion of the representation of
equations in a workshop at the ACM SIGGRAPH Conference held in
Anaheim, California on 30 July 1987. Distribution of this memo is
unlimited.
Introduction
Since the 1950's, many researchers have worked to realize the vision
of natural and powerful computer systems for interactive mathematical
work. Nowadays this vision can be expressed as the goal of an
integrated system for symbolic, numerical, graphical, and
documentational mathematical work. Recently the development of
personal computers (with high resolution screens, window systems, and
mice), high-speed networks, electronic mail, and electronic
publishing, have created a technological base that is more than
adequate for the realization of such systems. However, the growth of
separate Mathematical Typesetting, Multimedia Electronic Mail,
Numerical Computation, and Computer Algebra communities, each with
its own conventions, threatens to prevent these systems from being
built.
To be specific, little thought has been given to unifying the
different expression representations currently used in the different
communities. This must take place if there is to be interchange of
mathematical expressions among Document, Display, and Computation
systems. Also, tools that are wanted in several communities (e.g.,
WYSIWYG mathematical expression editors), are being built
independently by each, with little awareness of the duplication of
effort that thereby occurs. Worst of all, the ample opportunities
for cross-fertilization among the different communities are not being
exploited. For example, some Computer Algebra systems explicitly
associate a type with a mathematical expression (e.g., 3 x 3 matrix
of polynomials with complex number coefficients), which could enable
automated math proofreaders, analogous to spelling checkers.
The goal of the Workshop on Environments for Computational
Mathematics was to open a dialogue among representatives of the
Arnon [Page 1]
RFC 1019 September 1987
Computer Algebra, Numerical Computation, Multimedia Electronic Mail,
and Mathematical Typesetting communities. In July 1986, during the
Computers and Mathematics Conference at Stanford University, a subset
of this year's participants met at Xerox PARC to discuss User
Interfaces for Computer Algebra Systems. This group agreed to hold
future meetings, of which the present Workshop is the first. Alan
Katz's recent essay, "Issues in Defining an Equations Representation
Standard", RFC-1003, DDN Network Information Center, March 1987
(reprinted in the ACM SIGSAM Bulletin May 1987, pp. 19-24),
influenced the discussion at the Workshop, especially since it
discusses the interchange of mathematical expressions.
This report does not aim to be a transcript of the Workshop, but
rather tries to extract the major points upon which (in the Editor's
view) rough consensus was reached. It is the Editor's view that the
Workshop discussion can be summarized in the form of a basic
architecture for "Standard Mathematical Systems", presented in
Section II below. Meeting participants seemed to agree that: (1)
existing mathematical systems should be augmented or modified to
conform to this architecture, and (2) future systems should be built
in accordance with it.
The Talks and Panel-Audience discussions at the Workshop were
videotaped. Currently, these tapes are being edited for submission
to the SIGGRAPH Video Review, to form a "Video Proceedings". If
accepted by SIGGRAPH, the Video Proceedings will be publicly
available for a nominal distribution charge.
One aspect of the mathematical systems vision that we explicitly left
out of this Workshop is the question of "intelligence" in
mathematical systems. This has been a powerful motivation to systems
builders since the early days. Despite its importance, we do not
expect intelligent behavior in mathematical systems to be realized in
the short term, and so we leave it aside. Computer Assisted
Instruction for mathematics also lies beyond the scope of the
Workshop. And although it might have been appropriate to invite
representatives of the Spreadsheets and Graphics communities, we did
not. Many of those who were at the Workshop have given considerable
thought to Spreadsheets and Graphics in mathematical systems.
Financial support from the Xerox Corporation for AudioVisual
equipment rental at SIGGRAPH is gratefully acknowledged. Thanks are
due to Kevin McIsaac for serving as chief cameraman, providing
critical comments on this report, and contributing in diverse other
ways to the Workshop. Thanks also to Richard Fateman, Michael
Spivak, and Neil Soiffer for critical comments on this report.
Subhana Menis and Erin Foley have helped with logistics and
documentation at several points along the way.
Information on the Video Proceedings, and any other aspect of the
Workshop can be obtained from the author of this report.
Arnon [Page 2]
RFC 1019 September 1987
I. Particulars of the meeting
The Workshop had four parts: (1) Talks, (2) Panel Discussion, (3)
Panel and Audience discussion, (4) and Live demos. Only a few of the
systems presented in the talks were demonstrated live. However, many
of the talks contained videotapes of the systems being discussed.
The talks, each 15 minutes in length, were:
1. "The MathCad System: a Graphical Interface for Computer
Mathematics", Richard Smaby, MathSOFT Inc.
2. "MATLAB - an Interactive Matrix Laboratory", Cleve Moler,
MathWorks Inc.
3. "Milo: A Macintosh System for Students", Ron Avitzur, Free Lance
Developer, Palo Alto, CA.
4. "MathScribe: A User Interface for Computer Algebra systems", Neil
Soiffer, Tektronix Labs.
5. "INFOR: an Interactive WYSIWYG System for Technical Text",
William Schelter, University of Texas.
6. "Iris User Interface for Computer Algebra Systems", Benton Leong,
University of Waterloo.
7. "CaminoReal: A Direct Manipulation Style User Interface for
Mathematical Software", Dennis Arnon, Xerox PARC.
8. "Domain-Driven Expression Display in Scratchpad II", Stephen
Watt, IBM Yorktown Heights.
9. "Internal and External Representations of Valid Mathematical
Reasoning", Tryg Ager, Stanford University.
10. "Presentation and Interchange of Mathematical Expressions in the
Andrew System", Maria Wadlow, Carnegie-Mellon University.
The Panel discussion lasted 45 minutes. The panelists were:
Richard Fateman, University of California at Berkeley
Richard Jenks, IBM Yorktown Heights
Michael Spivak, Personal TeX
Ronald Whitney, American Mathematical Society
Arnon [Page 3]
RFC 1019 September 1987
The panelists were asked to consider the following issues in planning
their presentations:
1. Should we try to build integrated documentation/computation
systems?
2. WYSIWYG editing of mathematical expressions.
3. Interchange representation of mathematics.
4. User interface design for integrated documentation/computation
systems.
5. Coping with large mathematical expressions.
A Panel-Audience discussion lasted another 45 minutes, and the Demos
lasted about one hour.
Other Workshop participants, besides those named above, included:
S. Kamal Abdali, Tektronix Labs
George Allen, Design Science
Alan Katz, Information Sciences Institute
J. Robert Cooke, Cornell University and Cooke Publications
Larry Lesser, Inference Corporation
Tom Libert, University of Michigan
Kevin McIsaac, Xerox PARC and University of Western Australia
Elizabeth Ralston, Inference Corporation
II. Standard Mathematical Systems - a Proposed Architecture
We postulate that there is an "Abstract Syntax" for any mathematical
expression. A piece of Abstract Syntax consists of an Operator and
an (ordered) list of Arguments, where each Argument is (recursively)
a piece of Abstract Syntax. Functional Notation, Lisp SExpressions,
Directed Acyclic Graphs, and N-ary Trees are equivalent
representations of Abstract Syntax, in the sense of being equally
expressive, although one or another might be considered preferable
from the standpoint of computation and algorithms. For example, the
functional expression "Plus[Times[a,b],c]" represents the Abstract
Syntax of an expression that would commonly be written "a*b+c".
A "Standard Mathematical Component" (abbreviated SMC) is a collection
of software and hardware modules, with a single function, which if it
reads mathematical expressions, reads them as Abstract Syntax, and if
it writes mathematical expressions, writes them as Abstract Syntax.
A "Standard Mathematical System" (abbreviated SMS) is a collection of
SMC's which are used together, and which communicate with each other
in Abstract Syntax.
We identify at least four possible types of components in an SMS.
Arnon [Page 4]
RFC 1019 September 1987
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -