We describe in this paper the WWW Interactive Mathematics Server (WIMS), a project aimed at a systematic approach for providing Internet-accessible mathematical computations.
Internet-accessed mathematical computations present several advantages over locally installed mathematical software. With interfaces based on the html protocol, many common computational needs can be carried out by the user without having to first learn the syntax of a particular software system. And software installation and maintenance costs are considerably reduced.
User-friendly access to mathematical computations also means the design of computer-generated mathematical exercises with sophisticated analyses of answers. When an Internet server generates the exercises and processes the answers, analyses of students' progress can be easily achieved, with data and results well-protected against cheating, a feature otherwise hard to realize by locally installed software.
To obtain a high degree of mathematical sophistication, the basic design concept of the WIMS project is server-side interactivity via http protocol, with a modular structure at two levels, which makes the system easily enhanceable.
On the one hand, each application (exercise or tool) under the system can be independently created, modified, or removed, allowing the system to host a large number of such applications. On the other hand, the system calls various mathematical software packages (e.g., numeric or symbolic computation, visualization, proof assistant) as background engines, with an independent interface designed for each such package. This provides an easy and versatile way for WIMS applications to make use of the power of these packages.
As a result, we can create applications with unique features for web-based mathematics -- interactive theorem proving, animated visualization for user-supplied expressions, exercises with multiple correct answers or multistep answers, and so on. And in a few domains, such as first-year linear algebra, where enough applications have been developed, the system is ready for serving mainstream educational use.
Design choices, capabilities, shortcomings, and unsolved problems of the system are all discussed in the paper. Most technical details are omitted in order to keep the paper within reasonable length and readability. Interested readers can refer to WIMSdoc or the source code for these details. A few other topics are also omitted here, such as facilities for user contributions.