## Richard Zippel
Dept. of Computer Science, Email: rz@cs.cornell.edu |

**Current Research Activities****Short projects**

A number of short topics that are appropriate for Master of Engineering projects and that might be suitable for a Ph.D. thesis if one where to probe more deeply.**Courses**

Information about current, past and future courses.**Biographical Information**

Contains a list of publications, profession responsibilites, presentations, etc.

The key to effective collaboration is efficient communication. More important than how fast the bits flow between the collaborators, is how much meaning and understanding is shared in each interaction. For scientists and engineers, the most efficient and precise language for interaction has always been mathematics. Whether describing the shape of an object we want to build, how it bends under loading, or some other property, desired or observed we always rely on mathematics specifications. Over the past several years, we have developed a variety of tools and technologies that allow scientists and engineers to collaborate more effectively using mathematics.

The computer algebra substrate Weyl extends the data structures available in Common Lisp to include objects like polynomials, matrices, rational functions, rings, vector spaces, and ideals. The introduction of these new objects into a programming language provides a number of new challenges to the language's type system and provides new opportunities for deductive reasoning, which we are pursuing.

SPL is a programming language that combines both constraint-based programming and imperative programming. However, the constraints can be non-linear algebraic equations, or as complex as partial differential equations. This allows physical phenomena to be specified in a succinct and natural mathematical fashion. A library of program transformation tools has been developed that convert SPL programs in to purely imperative programs, which can then be executed. The specification of a fluid flow problem is only a few lines, although the actual running program that is produced may be tens of thousands.

Technology is needed that allows scientific and engineering information to be exchanged, embedded in mail, placed in data bases, used in Web pages, indexed and used as input to programs as easily as ASCII text is now. Towards this end, we have been developing a simple technology for exchange and embedding mathematical objects of all types, equations, geometric specification and logical formulas, called the MathBus. The MathBus structure is lightweight, language independent and efficient. It embodies, in a sense, a "RISC" approach to inter-application communications. MathBus expressions can be embedded in mail messages and web pages, and cut and pasted between these applications and mathematical tools like Maple and Mathematica.

We are integrating all of these tools to create
*Active Models*. The simplest specification of an
artifact is a textual one. But, graphical images of an artifact
are better than textual descriptions, and precise geometric
models superior to graphical images. Each of these is an
increasingly accurate and complete description of the artifact.
The limit of this sequence is a mathematical description that not
only captures externally visible characteristics of the artifact,
but also captures behavior. We call such a description an *active
model*. This is the research of the **Active Models in Support of
Collaborative Engineering** project.

**Computer Algebra**- I have been involved in computer algebra research for many years. For more information see my page on computer algebra.
**ISAT Complex Systems Study Group**- This study focuses on ways to predict anomalous behavior, partition, abstract, and model complex systems.
**Complexity Theory**- Over the years, I've been intrigued by the power of randomized algorithms when compared to deterministic algorithms. While it is often the case that we can create deterministic algorithms that solve problems with the same asymptotic complexity as randomized algorithms, the randomized algorithms are usually much simpler and natural, and often they are also much faster than the deterministic algorithms. Recently, I developed a relationship that ties NP hard problems to computing the value of a relatively well behaved multidimensional integral. Most multidimensional integral can be computed quite effectively using randomized algorithms, but not deterministic algorithms. This paper discusses this relationship.
**Microstorage Architecture**- This project focuses on new, flexible techniques for dealing with storage systems. For more information see the microstorage architecture page.
**Electronic Notebook**- A significant component of the ASCI proposal being submitted to the Department of Energy is the creation of electronic Notebooks of scientific information. My thoughts on this are contained here.

- CS601
*Principles of Systems*, Fall 1996 recitations

Last revised: August 26, 1998 by *CUCS\rz@cs.cornell.edu*